## AnjutaPluginHandle AnjutaPluginHandle — Handle used by plugin manager to keep track of plugins. |

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <libanjuta/anjuta-plugin-handle.h>

                        AnjutaPluginHandlePriv;
                        AnjutaPluginHandle;
    AnjutaPluginHandle* anjuta_plugin_handle_new            (const gchar *plugin_desc_path);
    const char*         anjuta_plugin_handle_get_id         (AnjutaPluginHandle *plugin_handle);
    const char*         anjuta_plugin_handle_get_name       (AnjutaPluginHandle *plugin_handle);
    const char*         anjuta_plugin_handle_get_about      (AnjutaPluginHandle *plugin_handle);
    const char*         anjuta_plugin_handle_get_icon_path  (AnjutaPluginHandle *plugin_handle);
    const char*         anjuta_plugin_handle_get_path       (AnjutaPluginHandle *plugin_handle);
    gboolean            anjuta_plugin_handle_get_user_activatable
                                                            (AnjutaPluginHandle *plugin_handle);
    gboolean            anjuta_plugin_handle_get_resident   (AnjutaPluginHandle *plugin_handle);
    const char*         anjuta_plugin_handle_get_language   (AnjutaPluginHandle *plugin_handle);
    AnjutaPluginDescription* anjuta_plugin_handle_get_description
                                                            (AnjutaPluginHandle *plugin_handle);
    GList*              anjuta_plugin_handle_get_dependency_names
                                                            (AnjutaPluginHandle *plugin_handle);
    GHashTable*         anjuta_plugin_handle_get_dependencies
                                                            (AnjutaPluginHandle *plugin_handle);
    GHashTable*         anjuta_plugin_handle_get_dependents (AnjutaPluginHandle *plugin_handle);
    GList*              anjuta_plugin_handle_get_interfaces (AnjutaPluginHandle *plugin_handle);
    gboolean            anjuta_plugin_handle_get_can_load   (AnjutaPluginHandle *plugin_handle);
    gboolean            anjuta_plugin_handle_get_checked    (AnjutaPluginHandle *plugin_handle);
    gint                anjuta_plugin_handle_get_resolve_pass
                                                            (AnjutaPluginHandle *plugin_handle);
    void                anjuta_plugin_handle_set_can_load   (AnjutaPluginHandle *plugin_handle,
                                                             gboolean can_load);
    void                anjuta_plugin_handle_set_checked    (AnjutaPluginHandle *plugin_handle,
                                                             gboolean checked);
    void                anjuta_plugin_handle_set_resolve_pass
                                                            (AnjutaPluginHandle *plugin_handle,
                                                             gboolean resolve_pass);
    void                anjuta_plugin_handle_unresolve_dependencies
                                                            (AnjutaPluginHandle *plugin_handle);

## Object Hierarchy

      GObject
       +----AnjutaPluginHandle

## Properties

      "about"                    gchar*                : Read
      "can-load"                 gboolean              : Read
      "checked"                  gboolean              : Read
      "dependencies"             gpointer              : Read
      "dependency-names"         gpointer              : Read
      "dependents"               gpointer              : Read
      "description"              gpointer              : Read
      "icon-path"                gchar*                : Read
      "id"                       gchar*                : Read
      "interfaces"               gpointer              : Read
      "language"                 gchar*                : Read
      "name"                     gchar*                : Read
      "path"                     gchar*                : Read
      "resident"                 gboolean              : Read
      "resolve-pass"             gint                  : Read
      "user-activatable"         gboolean              : Read

## Description

Plugin handle is wrapper for installed plugins. For each installed plugin there will be one corresponding plugin handle. It is mainly used by plugin manager to keep track of loading and unloading of plugins.

## Details

### AnjutaPluginHandlePriv

    typedef struct _AnjutaPluginHandlePriv AnjutaPluginHandlePriv;

### AnjutaPluginHandle

    typedef struct _AnjutaPluginHandle AnjutaPluginHandle;

### anjuta_plugin_handle_new ()

    AnjutaPluginHandle* anjuta_plugin_handle_new            (const gchar *plugin_desc_path);

`plugin_desc_path` : |
Returns : |

### anjuta_plugin_handle_get_id ()

    const char*         anjuta_plugin_handle_get_id         (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_name ()

    const char*         anjuta_plugin_handle_get_name       (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_about ()

    const char*         anjuta_plugin_handle_get_about      (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_icon_path ()

    const char*         anjuta_plugin_handle_get_icon_path  (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_path ()

    const char*         anjuta_plugin_handle_get_path       (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_user_activatable ()

    gboolean            anjuta_plugin_handle_get_user_activatable
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_resident ()

    gboolean            anjuta_plugin_handle_get_resident   (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_language ()

    const char*         anjuta_plugin_handle_get_language   (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_description ()

    AnjutaPluginDescription* anjuta_plugin_handle_get_description
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_dependency_names ()

    GList*              anjuta_plugin_handle_get_dependency_names
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_dependencies ()

    GHashTable*         anjuta_plugin_handle_get_dependencies
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_dependents ()

    GHashTable*         anjuta_plugin_handle_get_dependents (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_interfaces ()

    GList*              anjuta_plugin_handle_get_interfaces (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_can_load ()

    gboolean            anjuta_plugin_handle_get_can_load   (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_checked ()

    gboolean            anjuta_plugin_handle_get_checked    (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_get_resolve_pass ()

    gint                anjuta_plugin_handle_get_resolve_pass
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |
Returns : |

### anjuta_plugin_handle_set_can_load ()

    void                anjuta_plugin_handle_set_can_load   (AnjutaPluginHandle *plugin_handle,
                                                             gboolean can_load);

`plugin_handle` : |
`can_load` : |

### anjuta_plugin_handle_set_checked ()

    void                anjuta_plugin_handle_set_checked    (AnjutaPluginHandle *plugin_handle,
                                                             gboolean checked);

`plugin_handle` : |
`checked` : |

### anjuta_plugin_handle_set_resolve_pass ()

    void                anjuta_plugin_handle_set_resolve_pass
                                                            (AnjutaPluginHandle *plugin_handle,
                                                             gboolean resolve_pass);

`plugin_handle` : |
`resolve_pass` : |

### anjuta_plugin_handle_unresolve_dependencies ()

    void                anjuta_plugin_handle_unresolve_dependencies
                                                            (AnjutaPluginHandle *plugin_handle);

`plugin_handle` : |

## Property Details

### The `"about"` property

      "about"                    gchar*                : Read

About description of the plugin.

Default value: NULL

### The `"can-load"` property

      "can-load"                 gboolean              : Read

If the plugin can be loaded.

Default value: FALSE

### The `"checked"` property

      "checked"                  gboolean              : Read

If the plugin is checked in UI.

Default value: FALSE

### The `"dependencies"` property

      "dependencies"             gpointer              : Read

Plugin dependencies.

### The `"dependency-names"` property

      "dependency-names"         gpointer              : Read

Plugin dependency names listed in oaf file.

### The `"dependents"` property

      "dependents"               gpointer              : Read

Plugin dependents.

### The `"description"` property

      "description"              gpointer              : Read

Plugin description.

### The `"icon-path"` property

      "icon-path"                gchar*                : Read

Icon path of the plugin.

Default value: NULL

### The `"id"` property

      "id"                       gchar*                : Read

Unique plugin ID.

Default value: NULL

### The `"interfaces"` property

      "interfaces"               gpointer              : Read

Interfaces exported by the plugin.

### The `"language"` property

      "language"                 gchar*                : Read

Language used to write the plugin.

Default value: NULL

### The `"name"` property

      "name"                     gchar*                : Read

Plugin name.

Default value: NULL

### The `"path"` property

      "path"                     gchar*                : Read

Path of the plugin.

Default value: NULL

### The `"resident"` property

      "resident"                 gboolean              : Read

If the plugin cannot be unloaded.

Default value: FALSE

### The `"resolve-pass"` property

      "resolve-pass"             gint                  : Read

Dependency resolution pass.

Default value: 0

### The `"user-activatable"` property

      "user-activatable"         gboolean              : Read

If the plugin is user activatable.

Default value: FALSE

## See Also

#AnjutaPluginManager, AnjutaPluginDescription, AnjutaPlugin