IAnjutaProject

IAnjutaProject — Interface implemented by project backend

Stability Level

Unstable, unless otherwise indicated

Signals

void file-changed Run Last
void node-changed Run Last
void node-loaded Run Last
void node-saved Run Last

Object Hierarchy

    GEnum
    ├── IAnjutaProjectError
    ╰── IAnjutaProjectProbe
    GInterface
    ╰── IAnjutaProject

Includes

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

Description

This is the new interface that is replacing Gnome Build.

Functions

ianjuta_project_error_quark ()

GQuark
ianjuta_project_error_quark (void);

Returns


ianjuta_project_add_node_after ()

AnjutaProjectNode *
ianjuta_project_add_node_after (IAnjutaProject *obj,
                                AnjutaProjectNode *parent,
                                AnjutaProjectNode *sibling,
                                AnjutaProjectNodeType type,
                                GFile *file,
                                const gchar *name,
                                GError **err);

Create a new node and insert it after sibling

Parameters

obj

Self

 

parent

Parent.

[transfer none]

sibling

Sibling.

[allow-none][transfer none]

type

Node type

 

file

Optional file object for the node.

[allow-none][transfer none]

name

Optional name for the node.

[allow-none][transfer none]

err

Error propagation and reporting

 

Returns

The new node, NULL if error.

[transfer none]


ianjuta_project_add_node_before ()

AnjutaProjectNode *
ianjuta_project_add_node_before (IAnjutaProject *obj,
                                 AnjutaProjectNode *parent,
                                 AnjutaProjectNode *sibling,
                                 AnjutaProjectNodeType type,
                                 GFile *file,
                                 const gchar *name,
                                 GError **err);

Create a new node and insert it before sibling

Parameters

obj

Self

 

parent

Parent.

[transfer none]

sibling

Sibling.

[allow-none][transfer none]

type

Node type

 

file

Optional file object for the node.

[allow-none][transfer none]

name

Optional name for the node.

[allow-none][transfer none]

err

Error propagation and reporting

 

Returns

The new node, NULL if error.

[transfer none]


ianjuta_project_get_node_info ()

const GList *
ianjuta_project_get_node_info (IAnjutaProject *obj,
                               GError **err);

Return a list of possible node;

Parameters

obj

Self

 

err

Error propagation and reporting

 

Returns

A list containing information on all node supported by the project.

[element-type Anjuta.ProjectNodeInfo][transfer none]


ianjuta_project_get_root ()

AnjutaProjectNode *
ianjuta_project_get_root (IAnjutaProject *obj,
                          GError **err);

Get root_node

Parameters

obj

Self

 

err

Error propagation and reporting

 

Returns

The root node.

[transfer none]


ianjuta_project_is_loaded ()

gboolean
ianjuta_project_is_loaded (IAnjutaProject *obj,
                           GError **err);

Return TRUE if the project is loaded;

Parameters

obj

Self

 

err

Error propagation and reporting

 

Returns

TRUE if the project is completely loaded.


ianjuta_project_load_node ()

gboolean
ianjuta_project_load_node (IAnjutaProject *obj,
                           AnjutaProjectNode *node,
                           GError **err);

Reload a project node

Parameters

obj

Self

 

node

Project node to reload.

[transfer none]

err

Error propagation and reporting

 

Returns

TRUE if the node has been loaded without error


ianjuta_project_remove_node ()

gboolean
ianjuta_project_remove_node (IAnjutaProject *obj,
                             AnjutaProjectNode *node,
                             GError **err);

Remove a node

Parameters

obj

Self

 

node

Node.

[transfer none]

err

Error propagation and reporting

 

Returns

TRUE if the node can be removed


ianjuta_project_remove_property ()

gboolean
ianjuta_project_remove_property (IAnjutaProject *obj,
                                 AnjutaProjectNode *node,
                                 const gchar *id,
                                 const gchar *name,
                                 GError **err);

Remove a property of the node

Parameters

obj

Self

 

node

Node.

[transfer none]

id

Property.

[transfer none]

name

Name for map property.

[allow-none][transfer none]

err

Error propagation and reporting

 

Returns

TRUE if the node is removed


ianjuta_project_save_node ()

gboolean
ianjuta_project_save_node (IAnjutaProject *obj,
                           AnjutaProjectNode *node,
                           GError **err);

Save a project node

Parameters

obj

Self

 

node

Project node to save.

[transfer none]

err

Error propagation and reporting

 

Returns

TRUE if the node has been saved without error


ianjuta_project_set_property ()

AnjutaProjectProperty *
ianjuta_project_set_property (IAnjutaProject *obj,
                              AnjutaProjectNode *node,
                              const gchar *id,
                              const gchar *name,
                              const gchar *value,
                              GError **err);

Change a properties on node.

Parameters

obj

Self

 

node

Node.

[transfer none]

id

Property.

[transfer none]

name

Name for map property.

[allow-none][transfer none]

value

Value.

[transfer none]

err

Error propagation and reporting

 

Returns

The new property of NULL if the property cannot be set.

[allow-none][transfer none]

Types and Values

Signal Details

The “file-changed” signal

void
user_function (IAnjutaProject *obj,
               gpointer        node,
               gpointer        user_data)

Flags: Run Last


The “node-changed” signal

void
user_function (IAnjutaProject *obj,
               gpointer        node,
               GError         *error,
               gpointer        user_data)

Flags: Run Last


The “node-loaded” signal

void
user_function (IAnjutaProject *obj,
               gpointer        node,
               GError         *error,
               gpointer        user_data)

Flags: Run Last


The “node-saved” signal

void
user_function (IAnjutaProject *obj,
               gpointer        node,
               GError         *error,
               gpointer        user_data)

Flags: Run Last