IAnjutaProjectManager

IAnjutaProjectManager — Interface for project managers

Stability Level

Unstable, unless otherwise indicated

Synopsis


#include <libanjuta/interfaces/ianjuta-project-manager.h>

#define             IANJUTA_PROJECT_MANAGER_ERROR
#define             IANJUTA_PROJECT_MANAGER_PROJECT_ROOT_URI
#define             IANJUTA_PROJECT_MANAGER_CURRENT_URI
                    IAnjutaProjectManager;
                    IAnjutaProjectManagerIface;
GQuark              ianjuta_project_manager_error_quark (void);
GType               ianjuta_project_manager_get_type    (void);
gchar*              ianjuta_project_manager_add_group   (IAnjutaProjectManager *obj,
                                                         const gchar *group_name_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);
gchar*              ianjuta_project_manager_add_source  (IAnjutaProjectManager *obj,
                                                         const gchar *source_uri_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);
GList*              ianjuta_project_manager_add_sources (IAnjutaProjectManager *obj,
                                                         GList *source_uris_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);
gchar*              ianjuta_project_manager_add_target  (IAnjutaProjectManager *obj,
                                                         const gchar *target_name_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);
guint               ianjuta_project_manager_get_capabilities
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);
GList*              ianjuta_project_manager_get_children
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);
AnjutaProjectNodeType  ianjuta_project_manager_get_element_type
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);
GList*              ianjuta_project_manager_get_elements
                                                        (IAnjutaProjectManager *obj,
                                                         AnjutaProjectNodeType element_type,
                                                         GError **err);
GList*              ianjuta_project_manager_get_packages
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);
gchar*              ianjuta_project_manager_get_parent  (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);
gchar*              ianjuta_project_manager_get_selected
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);
AnjutaProjectTargetClass  ianjuta_project_manager_get_target_type
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *target_uri,
                                                         GError **err);
GList*              ianjuta_project_manager_get_targets (IAnjutaProjectManager *obj,
                                                         AnjutaProjectTargetClass target_type,
                                                         GError **err);
gboolean            ianjuta_project_manager_is_open     (IAnjutaProjectManager *obj,
                                                         GError **err);

Object Hierarchy

  GInterface
   +----IAnjutaProjectManager

Prerequisites

IAnjutaProjectManager requires GObject.

Signals

  "element-added"                                  : Run Last
  "element-removed"                                : Run Last
  "element-selected"                               : Run Last

Description

Details

IANJUTA_PROJECT_MANAGER_ERROR

#define IANJUTA_PROJECT_MANAGER_ERROR ianjuta_project_manager_error_quark()


IANJUTA_PROJECT_MANAGER_PROJECT_ROOT_URI

#define	IANJUTA_PROJECT_MANAGER_PROJECT_ROOT_URI	"project_root_uri"

Anjuta shell value set by project manager to the project root uri.


IANJUTA_PROJECT_MANAGER_CURRENT_URI

#define	IANJUTA_PROJECT_MANAGER_CURRENT_URI	"project_manager_current_uri"

Anjuta shell value set by project manager to the current uri.


IAnjutaProjectManager

typedef struct _IAnjutaProjectManager IAnjutaProjectManager;


IAnjutaProjectManagerIface

typedef struct {
	GTypeInterface g_iface;
	
	/* Signal */
	void (*element_added) (IAnjutaProjectManager *obj, const gchar *element_uri);
	/* Signal */
	void (*element_removed) (IAnjutaProjectManager *obj, const gchar *element_uri);
	/* Signal */
	void (*element_selected) (IAnjutaProjectManager *obj, const gchar *element_uri);

	gchar* (*add_group) (IAnjutaProjectManager *obj, const gchar *group_name_to_add,  const gchar *default_location_uri, GError **err);
	gchar* (*add_source) (IAnjutaProjectManager *obj, const gchar *source_uri_to_add,  const gchar *default_location_uri, GError **err);
	gchar* (*add_source_quiet) (IAnjutaProjectManager *obj, const gchar *source_uri_to_add,  const gchar *target_uri, GError **err);
	GList* (*add_sources) (IAnjutaProjectManager *obj, GList* source_uris_to_add,  const gchar *default_location_uri, GError **err);
	gchar* (*add_target) (IAnjutaProjectManager *obj, const gchar *target_name_to_add,  const gchar *default_location_uri, GError **err);
	guint (*get_capabilities) (IAnjutaProjectManager *obj, GError **err);
	GList* (*get_children) (IAnjutaProjectManager *obj, const gchar *element_uri, GError **err);
	AnjutaProjectNodeType (*get_element_type) (IAnjutaProjectManager *obj, const gchar *element_uri, GError **err);
	GList* (*get_elements) (IAnjutaProjectManager *obj, AnjutaProjectNodeType element_type, GError **err);
	GList* (*get_packages) (IAnjutaProjectManager *obj, GError **err);
	gchar* (*get_parent) (IAnjutaProjectManager *obj, const gchar *element_uri, GError **err);
	gchar* (*get_selected) (IAnjutaProjectManager *obj, GError **err);
	gchar* (*get_selected_id) (IAnjutaProjectManager *obj, AnjutaProjectNodeType element_type, GError **err);
	AnjutaProjectTargetClass (*get_target_type) (IAnjutaProjectManager *obj, const gchar *target_uri, GError **err);
	GList* (*get_targets) (IAnjutaProjectManager *obj, AnjutaProjectTargetClass target_type, GError **err);
	gboolean (*is_open) (IAnjutaProjectManager *obj, GError **err);
} IAnjutaProjectManagerIface;


ianjuta_project_manager_error_quark ()

GQuark              ianjuta_project_manager_error_quark (void);

Returns :


ianjuta_project_manager_get_type ()

GType               ianjuta_project_manager_get_type    (void);

Returns :


ianjuta_project_manager_add_group ()

gchar*              ianjuta_project_manager_add_group   (IAnjutaProjectManager *obj,
                                                         const gchar *group_name_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);

fixme

obj :

Self

group_name_to_add :

fixme

default_location_uri :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_add_source ()

gchar*              ianjuta_project_manager_add_source  (IAnjutaProjectManager *obj,
                                                         const gchar *source_uri_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);

Prompt the user to add a file to the project. If the user selects multiple files only the first uri is returned.

obj :

Self

source_uri_to_add :

Target name or uri

default_location_uri :

Default source location or NULL if don't care

err :

Error propagation and reporting.

Returns :

element URIs. Must be freed when no longer required.

ianjuta_project_manager_add_sources ()

GList*              ianjuta_project_manager_add_sources (IAnjutaProjectManager *obj,
                                                         GList *source_uris_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);

Prompt the user to add a file to the project. Depending on the project backend, it can be possible that the source files must be located in a particular directory. You can pass to this function relative URI and it will return absolute URI valid for the target selected by the user.

You can add non existing file. In this case the element_added signal will be emitted with a non existing file. So it is up to the caller to reemit this signal later when the file is created.

obj :

Self

source_uris_to_add :

sources URI to add

default_location_uri :

fixme

err :

Error propagation and reporting.

Returns :

absolute element URIs. Must be freed when no longer required.

ianjuta_project_manager_add_target ()

gchar*              ianjuta_project_manager_add_target  (IAnjutaProjectManager *obj,
                                                         const gchar *target_name_to_add,
                                                         const gchar *default_location_uri,
                                                         GError **err);

fixme

obj :

Self

target_name_to_add :

fixme

default_location_uri :

fixme

err :

Error propagation and reporting.

Returns :


ianjuta_project_manager_get_capabilities ()

guint               ianjuta_project_manager_get_capabilities
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);

Returns the capabilites of project whether it can add group, target sources etc.

obj :

Self

err :

Error propagation and reporting.

Returns :

Supported capabilites.

ianjuta_project_manager_get_children ()

GList*              ianjuta_project_manager_get_children
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);

fixme

obj :

Self

element_uri :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_get_element_type ()

AnjutaProjectNodeType  ianjuta_project_manager_get_element_type
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);

fixme

obj :

Self

element_uri :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_get_elements ()

GList*              ianjuta_project_manager_get_elements
                                                        (IAnjutaProjectManager *obj,
                                                         AnjutaProjectNodeType element_type,
                                                         GError **err);

fixme

obj :

Self

element_type :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_get_packages ()

GList*              ianjuta_project_manager_get_packages
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);

obj :

err :

Returns :


ianjuta_project_manager_get_parent ()

gchar*              ianjuta_project_manager_get_parent  (IAnjutaProjectManager *obj,
                                                         const gchar *element_uri,
                                                         GError **err);

fixme

obj :

Self

element_uri :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_get_selected ()

gchar*              ianjuta_project_manager_get_selected
                                                        (IAnjutaProjectManager *obj,
                                                         GError **err);

fixme

obj :

Self

err :

Error propagation and reporting.

Returns :


ianjuta_project_manager_get_target_type ()

AnjutaProjectTargetClass  ianjuta_project_manager_get_target_type
                                                        (IAnjutaProjectManager *obj,
                                                         const gchar *target_uri,
                                                         GError **err);

fixme

obj :

Self

target_uri :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_get_targets ()

GList*              ianjuta_project_manager_get_targets (IAnjutaProjectManager *obj,
                                                         AnjutaProjectTargetClass target_type,
                                                         GError **err);

fixme

obj :

Self

target_type :

fixme

err :

Error propagation and reporting.

Returns :

fixme

ianjuta_project_manager_is_open ()

gboolean            ianjuta_project_manager_is_open     (IAnjutaProjectManager *obj,
                                                         GError **err);

fixme

obj :

Self

err :

Error propagation and reporting.

Returns :

Signal Details

The "element-added" signal

void                user_function                      (IAnjutaProjectManager *ianjutaprojectmanager,
                                                        gchar                 *arg1,
                                                        gpointer               user_data)                  : Run Last

ianjutaprojectmanager :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "element-removed" signal

void                user_function                      (IAnjutaProjectManager *ianjutaprojectmanager,
                                                        gchar                 *arg1,
                                                        gpointer               user_data)                  : Run Last

ianjutaprojectmanager :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.

The "element-selected" signal

void                user_function                      (IAnjutaProjectManager *ianjutaprojectmanager,
                                                        gchar                 *arg1,
                                                        gpointer               user_data)                  : Run Last

ianjutaprojectmanager :

the object which received the signal.

arg1 :

user_data :

user data set when the signal handler was connected.