/usr/include/libanjuta-3.0/libanjuta/anjuta-plugin-manager.h is in libanjuta-dev 2:3.18.2-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 4; tab-width: 4 -*- */
/*
* anjuta-plugin-manager.h
* Copyright (C) Naba Kumar <naba@gnome.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef _ANJUTA_PLUGIN_MANAGER_H_
#define _ANJUTA_PLUGIN_MANAGER_H_
#include <glib-object.h>
#include <libanjuta/anjuta-status.h>
#include <libanjuta/anjuta-plugin-handle.h>
G_BEGIN_DECLS
#define ANJUTA_TYPE_PLUGIN_MANAGER (anjuta_plugin_manager_get_type ())
#define ANJUTA_PLUGIN_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ANJUTA_TYPE_PLUGIN_MANAGER, AnjutaPluginManager))
#define ANJUTA_PLUGIN_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ANJUTA_TYPE_PLUGIN_MANAGER, AnjutaPluginManagerClass))
#define ANJUTA_IS_PLUGIN_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ANJUTA_TYPE_PLUGIN_MANAGER))
#define ANJUTA_IS_PLUGIN_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ANJUTA_TYPE_PLUGIN_MANAGER))
#define ANJUTA_PLUGIN_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ANJUTA_TYPE_PLUGIN_MANAGER, AnjutaPluginManagerClass))
#define ANJUTA_PLUGIN_MANAGER_ERROR (anjuta_plugin_manager_error_quark())
/**
* AnjutaPluginManagerError:
* @ANJUTA_PLUGIN_MANAGER_MISSING_FACTORY: The factory for the plugin couldn't be found
* @ANJUTA_PLUGIN_MANAGER_ERROR_UNKNOWN: Unknown error
*/
typedef enum
{
ANJUTA_PLUGIN_MANAGER_MISSING_FACTORY,
ANJUTA_PLUGIN_MANAGER_ERROR_UNKNOWN
} AnjutaPluginManagerError;
typedef struct _AnjutaPluginManagerClass AnjutaPluginManagerClass;
typedef struct _AnjutaPluginManager AnjutaPluginManager;
typedef struct _AnjutaPluginManagerPriv AnjutaPluginManagerPriv;
struct _AnjutaPluginManagerClass
{
GObjectClass parent_class;
/* Signals */
void(* plugin_activated) (AnjutaPluginManager *self,
AnjutaPluginHandle* handle,
GObject *plugin);
void(* plugin_deactivated) (AnjutaPluginManager *self,
AnjutaPluginHandle* handle,
GObject *plugin);
};
struct _AnjutaPluginManager
{
GObject parent_instance;
AnjutaPluginManagerPriv *priv;
};
GQuark anjuta_plugin_manager_error_quark (void);
GType anjuta_plugin_manager_get_type (void) G_GNUC_CONST;
AnjutaPluginManager* anjuta_plugin_manager_new (GObject *shell,
AnjutaStatus *status,
GList* plugin_search_paths);
/* Plugin activation, deactivation and retrival */
gboolean anjuta_plugin_manager_is_active_plugin (AnjutaPluginManager *plugin_manager,
const gchar *iface_name);
GObject* anjuta_plugin_manager_get_plugin (AnjutaPluginManager *plugin_manager,
const gchar *iface_name);
GObject* anjuta_plugin_manager_get_plugin_by_handle (AnjutaPluginManager *plugin_manager,
AnjutaPluginHandle *handle);
gboolean anjuta_plugin_manager_unload_plugin (AnjutaPluginManager *plugin_manager,
GObject *plugin_object);
gboolean anjuta_plugin_manager_unload_plugin_by_handle (AnjutaPluginManager *plugin_manager,
AnjutaPluginHandle *handle);
GList* anjuta_plugin_manager_get_active_plugins (AnjutaPluginManager *plugin_manager);
GList* anjuta_plugin_manager_get_active_plugin_objects (AnjutaPluginManager *plugin_manager);
/* Selection dialogs */
GtkWidget* anjuta_plugin_manager_get_plugins_page (AnjutaPluginManager *plugin_manager);
GtkWidget* anjuta_plugin_manager_get_remembered_plugins_page (AnjutaPluginManager *plugin_manager);
/* Plugin queries based on meta-data */
/* Returns a list of plugin Descriptions */
GList* anjuta_plugin_manager_query (AnjutaPluginManager *plugin_manager,
const gchar *section_names,
const gchar *attribute_names,
const gchar *attribute_values,
...);
GList* anjuta_plugin_manager_list_query (AnjutaPluginManager *plugin_manager,
GList *section_names,
GList *attribute_names,
GList *attribute_values);
/* Returns the plugin description that has been selected from the list */
AnjutaPluginHandle* anjuta_plugin_manager_select (AnjutaPluginManager *plugin_manager,
gchar *title, gchar *description,
GList *plugin_handles);
GObject* anjuta_plugin_manager_select_and_activate (AnjutaPluginManager *plugin_manager,
gchar *title, gchar *description,
GList *plugin_handles);
AnjutaPluginHandle* anjuta_plugin_manager_get_plugin_handle (AnjutaPluginManager *plugin_manager,
GObject *plugin);
void anjuta_plugin_manager_activate_plugins (AnjutaPluginManager *plugin_manager,
GList *plugin_handles);
void anjuta_plugin_manager_unload_all_plugins (AnjutaPluginManager *plugin_manager);
gchar* anjuta_plugin_manager_get_remembered_plugins (AnjutaPluginManager *plugin_manager);
void anjuta_plugin_manager_set_remembered_plugins (AnjutaPluginManager *plugin_manager,
const gchar *remembered_plugins);
void anjuta_plugin_manager_set_disable_plugins (AnjutaPluginManager *plugin_manager,
GList *plugin_handles,
gboolean disable);
/**
* anjuta_plugin_manager_get_interface:
* @plugin_manager: A #AnjutaPluginManager object
* @iface_type: The interface type implemented by the object to be found
* @error: Error propagation object.
*
* Equivalent to anjuta_plugin_manager_get_object(), but additionally
* typecasts returned object to the interface type. It also takes
* interface type directly. A usage of this function is:
* <programlisting>
* IAnjutaDocumentManager *docman =
* anjuta_plugin_manager_get_interface (plugin_manager, IAnjutaDocumentManager, error);
* </programlisting>
*/
#define anjuta_plugin_manager_get_interface(plugin_manager, iface_type, error) \
(((iface_type*) anjuta_plugin_manager_get_plugin((plugin_manager), #iface_type, (error)))
G_END_DECLS
#endif /* _ANJUTA_PLUGIN_MANAGER_H_ */
|