libpurple/plugins.h

Thu, 06 Feb 2014 20:02:57 +0530

author
Ankit Vani <a@nevitus.org>
date
Thu, 06 Feb 2014 20:02:57 +0530
branch
soc.2013.gobjectification.plugins
changeset 37075
cf3f735b09b7
parent 35472
libpurple/plugin.h@474e26199560
parent 37074
libpurple/plugin.h@1e7b4b3741a0
child 37076
38040771ae12
permissions
-rw-r--r--

Merge gtkdoc-conversion

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19897
diff changeset
1 /* purple
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8028
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 8028
diff changeset
5 * source distribution.
6485
3c7ba18e32f1 [gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents: 5949
diff changeset
6 *
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 * (at your option) any later version.
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 *
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 * GNU General Public License for more details.
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 *
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 18412
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 */
37060
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
21 /**
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
22 * SECTION:plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
23 * @section_id: libpurple-plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
24 * @short_description: <filename>plugins.h</filename>
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
25 * @title: Plugin API
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
26 * @see_also: <link linkend="chapter-signals-plugin">Plugin signals</link>,
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
27 * <link linkend="chapter-plugin-ids">Plugin IDs</link>,
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
28 * <link linkend="chapter-plugin-i18n">Third Party Plugin Translation</link>
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
29 */
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
30
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
31 #ifndef _PURPLE_PLUGINS_H_
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
32 #define _PURPLE_PLUGINS_H_
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
33
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
34 #ifdef PURPLE_PLUGINS
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
35 #include <gplugin.h>
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
36 #include <gplugin-native.h>
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
37 #else
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
38 #include <glib.h>
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
39 #include <glib-object.h>
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
40 #endif
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41
36450
ffa06ea2a4f8 Added PURPLE_ABI_VERSION macro to use for the "abi_version" property of PurplePluginInfo
Ankit Vani <a@nevitus.org>
parents: 36447
diff changeset
42 #include "version.h"
ffa06ea2a4f8 Added PURPLE_ABI_VERSION macro to use for the "abi_version" property of PurplePluginInfo
Ankit Vani <a@nevitus.org>
parents: 36447
diff changeset
43
36509
86e882c3cfdf Refactored libpurple according to the changes
Ankit Vani <a@nevitus.org>
parents: 36508
diff changeset
44 #define PURPLE_PLUGINS_DOMAIN (g_quark_from_static_string("plugins"))
86e882c3cfdf Refactored libpurple according to the changes
Ankit Vani <a@nevitus.org>
parents: 36508
diff changeset
45
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
46 #ifdef PURPLE_PLUGINS
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
47
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
48 #define PURPLE_TYPE_PLUGIN GPLUGIN_TYPE_PLUGIN
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
49 #define PURPLE_PLUGIN(obj) GPLUGIN_PLUGIN(obj)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
50 #define PURPLE_PLUGIN_CLASS(klass) GPLUGIN_PLUGIN_CLASS(klass)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
51 #define PURPLE_IS_PLUGIN(obj) GPLUGIN_IS_PLUGIN(obj)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
52 #define PURPLE_IS_PLUGIN_CLASS(klass) GPLUGIN_IS_PLUGIN_CLASS(klass)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
53 #define PURPLE_PLUGIN_GET_CLASS(obj) GPLUGIN_PLUGIN_GET_CLASS(obj)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
54
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
55 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
56 * PurplePlugin:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
57 *
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
58 * Represents a plugin handle.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
59 * This type is an alias for GPluginPlugin.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
60 */
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
61 typedef GPluginPlugin PurplePlugin;
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
62
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
63 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
64 * PurplePluginClass:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
65 *
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
66 * The base class for all #PurplePlugin's.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
67 * This type is an alias for GPluginPluginClass.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
68 */
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
69 typedef GPluginPluginClass PurplePluginClass;
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
70
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
71 #else /* !defined(PURPLE_PLUGINS) */
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
72
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
73 #define PURPLE_TYPE_PLUGIN G_TYPE_OBJECT
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
74 #define PURPLE_PLUGIN(obj) G_OBJECT(obj)
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
75 #define PURPLE_PLUGIN_CLASS(klass) G_OBJECT_CLASS(klass)
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
76 #define PURPLE_IS_PLUGIN(obj) G_IS_OBJECT(obj)
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
77 #define PURPLE_IS_PLUGIN_CLASS(klass) G_IS_OBJECT_CLASS(klass)
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
78 #define PURPLE_PLUGIN_GET_CLASS(obj) G_OBJECT_GET_CLASS(obj)
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
79
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
80 typedef GObject PurplePlugin;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
81 typedef GObjectClass PurplePluginClass;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
82
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
83 #endif /* PURPLE_PLUGINS */
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
84
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
85 #define PURPLE_TYPE_PLUGIN_INFO (purple_plugin_info_get_type())
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
86 #define PURPLE_PLUGIN_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_PLUGIN_INFO, PurplePluginInfo))
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
87 #define PURPLE_PLUGIN_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_PLUGIN_INFO, PurplePluginInfoClass))
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
88 #define PURPLE_IS_PLUGIN_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_PLUGIN_INFO))
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
89 #define PURPLE_IS_PLUGIN_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_PLUGIN_INFO))
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
90 #define PURPLE_PLUGIN_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_PLUGIN_INFO, PurplePluginInfoClass))
34783
cefe6df8c6c6 Made PurplePlugin a GBoxed
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
91
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
92 typedef struct _PurplePluginInfo PurplePluginInfo;
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
93 typedef struct _PurplePluginInfoClass PurplePluginInfoClass;
8749
fb487e9e101a [gaim-migrate @ 9504]
Christian Hammond <chipx86@chipx86.com>
parents: 8735
diff changeset
94
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
95 #define PURPLE_TYPE_PLUGIN_ACTION (purple_plugin_action_get_type())
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
96
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
97 typedef struct _PurplePluginAction PurplePluginAction;
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
98
36395
a27e8b7a2938 Added a callback to return preferences frame to plugin info.
Ankit Vani <a@nevitus.org>
parents: 36392
diff changeset
99 #include "pluginpref.h"
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
100
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
101 typedef void (*PurplePluginActionCb)(PurplePluginAction *);
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
102 typedef GList *(*PurplePluginActionsCb)(PurplePlugin *);
36976
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
103 typedef gchar *(*PurplePluginExtraCb)(PurplePlugin *);
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
104 typedef PurplePluginPrefFrame *(*PurplePluginPrefFrameCb)(PurplePlugin *);
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
105 typedef gpointer (*PurplePluginPrefRequestCb)(PurplePlugin *);
36364
4a5544383bc8 Refactored account to use the initial GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 36357
diff changeset
106
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
107 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
108 * PurplePluginInfoFlags:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
109 * @PURPLE_PLUGIN_INFO_FLAGS_INTERNAL: Plugin is not shown in UI lists
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
110 * @PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD: Auto-load the plugin
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
111 *
36653
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
112 * Flags that can be used to treat plugins differently.
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
113 */
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
114 typedef enum /*< flags >*/
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
115 {
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
116 PURPLE_PLUGIN_INFO_FLAGS_INTERNAL = 1 << 1,
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
117 PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD = 1 << 2,
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
118
36653
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
119 } PurplePluginInfoFlags;
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
120
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
121 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
122 * PurplePluginInfo:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
123 * @ui_data: The UI data associated with the plugin. This is a convenience
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
124 * field provided to the UIs -- it is not used by the libpurple core.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
125 *
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
126 * Holds information about a plugin.
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
127 */
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
128 struct _PurplePluginInfo {
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
129 #ifdef PURPLE_PLUGINS
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
130 GPluginPluginInfo parent;
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
131 #else
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
132 GObject parent;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
133 #endif
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
135 gpointer ui_data;
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
136 };
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
137
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
138 /**
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
139 * PurplePluginInfoClass:
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
140 *
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
141 * The base class for all #PurplePluginInfo's.
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
142 */
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
143 struct _PurplePluginInfoClass {
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
144 #ifdef PURPLE_PLUGINS
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
145 GPluginPluginInfoClass parent_class;
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
146 #else
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
147 GObjectClass parent_class;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
148 #endif
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
149
36896
3865997e388b Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 36810
diff changeset
150 /*< private >*/
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
151 void (*_purple_reserved1)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
152 void (*_purple_reserved2)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
153 void (*_purple_reserved3)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
154 void (*_purple_reserved4)(void);
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
155 };
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
156
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
157 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
158 * PurplePluginAction:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
159 *
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
160 * Represents an action that the plugin can perform. This shows up in the Tools
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
161 * menu, under a submenu with the name of the plugin.
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
162 */
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
163 struct _PurplePluginAction {
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
164 char *label;
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
165 PurplePluginActionCb callback;
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
166 PurplePlugin *plugin;
36495
a9e328e153ab will document id format later
Ankit Vani <a@nevitus.org>
parents: 36493
diff changeset
167 gpointer user_data;
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
168 };
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
169
36989
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
170 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
171 * PURPLE_PLUGIN_ABI_VERSION:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
172 *
36989
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
173 * Returns an ABI version to set in plugins using major and minor versions.
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
174 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
175 * Note: The lower six nibbles represent the ABI version for libpurple, the
36989
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
176 * rest are required by GPlugin.
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
177 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
178 #define PURPLE_PLUGIN_ABI_VERSION(major,minor) \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
179 (0x01000000 | ((major) << 16) | (minor))
36505
60c161851325 Integrated purple ABI requirement into GPlugin's "abi-version" property
Ankit Vani <a@nevitus.org>
parents: 36499
diff changeset
180
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
181 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
182 * PURPLE_PLUGIN_ABI_MAJOR_VERSION:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
183 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
184 * Returns the major version from an ABI version
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
185 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
186 #define PURPLE_PLUGIN_ABI_MAJOR_VERSION(abi) \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
187 ((abi >> 16) & 0xff)
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
188
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
189 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
190 * PURPLE_PLUGIN_ABI_MINOR_VERSION:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
191 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
192 * Returns the minor version from an ABI version
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
193 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
194 #define PURPLE_PLUGIN_ABI_MINOR_VERSION(abi) \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
195 (abi & 0xffff)
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
196
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
197 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
198 * PURPLE_ABI_VERSION:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
199 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
200 * A convenience‎ macro that returns an ABI version using PURPLE_MAJOR_VERSION
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
201 * and PURPLE_MINOR_VERSION
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
202 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
203 #define PURPLE_ABI_VERSION PURPLE_PLUGIN_ABI_VERSION(PURPLE_MAJOR_VERSION, PURPLE_MINOR_VERSION)
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
204
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
205 /**
36611
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
206 * PURPLE_PLUGIN_INIT:
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
207 *
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
208 * Defines the plugin's entry points.
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
209 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
210 #if !defined(PURPLE_PLUGINS) || defined(PURPLE_STATIC_PRPL)
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
211 #define PURPLE_PLUGIN_INIT(pluginname,pluginquery,pluginload,pluginunload) \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
212 PurplePluginInfo * pluginname##_plugin_query(void); \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
213 PurplePluginInfo * pluginname##_plugin_query(void) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
214 return pluginquery(NULL); \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
215 } \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
216 gboolean pluginname##_plugin_load(void); \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
217 gboolean pluginname##_plugin_load(void) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
218 GError *e = NULL; \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
219 gboolean loaded = pluginload(NULL, &e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
220 if (e) g_error_free(e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
221 return loaded; \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
222 } \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
223 gboolean pluginname##_plugin_unload(void); \
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
224 gboolean pluginname##_plugin_unload(void) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
225 GError *e = NULL; \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
226 gboolean unloaded = pluginunload(NULL, &e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
227 if (e) g_error_free(e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
228 return unloaded; \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
229 }
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
230 #else /* PURPLE_PLUGINS && !PURPLE_STATIC_PRPL */
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
231 #define PURPLE_PLUGIN_INIT(pluginname,pluginquery,pluginload,pluginunload) \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
232 G_MODULE_EXPORT GPluginPluginInfo *gplugin_query(GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
233 G_MODULE_EXPORT GPluginPluginInfo *gplugin_query(GError **e) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
234 return GPLUGIN_PLUGIN_INFO(pluginquery(e)); \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
235 } \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
236 G_MODULE_EXPORT gboolean gplugin_load(GPluginNativePlugin *p, GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
237 G_MODULE_EXPORT gboolean gplugin_load(GPluginNativePlugin *p, GError **e) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
238 return pluginload(PURPLE_PLUGIN(p), e); \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
239 } \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
240 G_MODULE_EXPORT gboolean gplugin_unload(GPluginNativePlugin *p, GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
241 G_MODULE_EXPORT gboolean gplugin_unload(GPluginNativePlugin *p, GError **e) { \
36486
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
242 return pluginunload(PURPLE_PLUGIN(p), e); \
36458
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
243 }
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
244 #endif
a9cccad073e9 Static prpls now work. Added macro PURPLE_PLUGIN_INIT(plugin-name, query-func, load-func, unload-func).
Ankit Vani <a@nevitus.org>
parents: 36450
diff changeset
245
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
246 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
247 * PURPLE_DEFINE_TYPE:
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
248 * @TN: The name of the new type, in Camel case.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
249 * @t_n: The name of the new type, in lowercase, words separated by '_'.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
250 * @T_P: The #GType of the parent type.
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
251 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
252 * A convenience macro for type implementations, which defines a *_get_type()
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
253 * function; and a *_register_type() function for use in your plugin's load
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
254 * function. You must define an instance initialization function *_init()
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
255 * and a class initialization function *_class_init() for the type.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
256 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
257 * The type will be registered statically if used in a static protocol or if
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
258 * plugins support is disabled.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
259 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
260 #if !defined(PURPLE_PLUGINS) || defined(PURPLE_STATIC_PRPL)
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
261 #define PURPLE_DEFINE_TYPE(TN, t_n, T_P) \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
262 PURPLE_DEFINE_STATIC_TYPE(TN, t_n, T_P)
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
263 #else
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
264 #define PURPLE_DEFINE_TYPE(TN, t_n, T_P) \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
265 PURPLE_DEFINE_DYNAMIC_TYPE(TN, t_n, T_P)
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
266 #endif
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
267
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
268 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
269 * PURPLE_DEFINE_TYPE_EXTENDED:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
270 * @TN: The name of the new type, in Camel case.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
271 * @t_n: The name of the new type, in lowercase, words separated by '_'.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
272 * @T_P: The #GType of the parent type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
273 * @flags: #GTypeFlags to register the type with.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
274 * @CODE: Custom code that gets inserted in *_get_type().
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
275 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
276 * A more general version of PURPLE_DEFINE_TYPE() which allows you to
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
277 * specify #GTypeFlags and custom code.
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
278 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
279 #if !defined(PURPLE_PLUGINS) || defined(PURPLE_STATIC_PRPL)
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
280 #define PURPLE_DEFINE_TYPE_EXTENDED \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
281 PURPLE_DEFINE_STATIC_TYPE_EXTENDED
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
282 #else
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
283 #define PURPLE_DEFINE_TYPE_EXTENDED \
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
284 PURPLE_DEFINE_DYNAMIC_TYPE_EXTENDED
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
285 #endif
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
286
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
287 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
288 * PURPLE_IMPLEMENT_INTERFACE_STATIC:
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
289 * @TYPE_IFACE: The #GType of the interface to add.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
290 * @iface_init: The interface init function.
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
291 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
292 * A convenience macro to ease static interface addition in the CODE section
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
293 * of PURPLE_DEFINE_TYPE_EXTENDED(). You should use this macro if the
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
294 * interface is a part of the libpurple core.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
295 */
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
296 #define PURPLE_IMPLEMENT_INTERFACE_STATIC(TYPE_IFACE, iface_init) { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
297 const GInterfaceInfo interface_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
298 (GInterfaceInitFunc) iface_init, NULL, NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
299 }; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
300 g_type_add_interface_static(type_id, TYPE_IFACE, &interface_info); \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
301 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
302
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
303 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
304 * PURPLE_IMPLEMENT_INTERFACE:
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
305 * @TYPE_IFACE: The #GType of the interface to add.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
306 * @iface_init: The interface init function.
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
307 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
308 * A convenience macro to ease interface addition in the CODE section
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
309 * of PURPLE_DEFINE_TYPE_EXTENDED(). You should use this macro if the
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
310 * interface lives in the plugin.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
311 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
312 #if !defined(PURPLE_PLUGINS) || defined(PURPLE_STATIC_PRPL)
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
313 #define PURPLE_IMPLEMENT_INTERFACE(TYPE_IFACE, iface_init) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
314 PURPLE_IMPLEMENT_INTERFACE_STATIC(TYPE_IFACE, iface_init)
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
315 #else
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
316 #define PURPLE_IMPLEMENT_INTERFACE(TYPE_IFACE, iface_init) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
317 PURPLE_IMPLEMENT_INTERFACE_DYNAMIC(TYPE_IFACE, iface_init)
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
318 #endif
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
319
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
320 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
321 * PURPLE_DEFINE_DYNAMIC_TYPE:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
322 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
323 * A convenience macro for dynamic type implementations.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
324 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
325 #define PURPLE_DEFINE_DYNAMIC_TYPE(TN, t_n, T_P) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
326 PURPLE_DEFINE_DYNAMIC_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
327
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
328 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
329 * PURPLE_DEFINE_DYNAMIC_TYPE_EXTENDED:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
330 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
331 * A more general version of PURPLE_DEFINE_DYNAMIC_TYPE().
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
332 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
333 #define PURPLE_DEFINE_DYNAMIC_TYPE_EXTENDED(TypeName, type_name, TYPE_PARENT, flags, CODE) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
334 static GType type_name##_type_id = 0; \
36776
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
335 G_MODULE_EXPORT GType type_name##_get_type(void) { \
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
336 return type_name##_type_id; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
337 } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
338 void type_name##_register_type(PurplePlugin *); \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
339 void type_name##_register_type(PurplePlugin *plugin) { \
36776
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
340 GType type_id; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
341 const GTypeInfo type_info = { \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
342 sizeof (TypeName##Class), \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
343 (GBaseInitFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
344 (GBaseFinalizeFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
345 (GClassInitFunc) type_name##_class_init, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
346 (GClassFinalizeFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
347 NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
348 sizeof (TypeName), \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
349 0, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
350 (GInstanceInitFunc) type_name##_init, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
351 NULL \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
352 }; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
353 type_id = purple_plugin_register_type(plugin, TYPE_PARENT, #TypeName, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
354 &type_info, (GTypeFlags) flags); \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
355 type_name##_type_id = type_id; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
356 { CODE ; } \
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
357 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
358
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
359 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
360 * PURPLE_IMPLEMENT_INTERFACE_DYNAMIC:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
361 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
362 * A convenience macro to ease dynamic interface addition.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
363 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
364 #define PURPLE_IMPLEMENT_INTERFACE_DYNAMIC(TYPE_IFACE, iface_init) { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
365 const GInterfaceInfo interface_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
366 (GInterfaceInitFunc) iface_init, NULL, NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
367 }; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
368 purple_plugin_add_interface(plugin, type_id, TYPE_IFACE, &interface_info); \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
369 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
370
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
371 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
372 * PURPLE_DEFINE_STATIC_TYPE:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
373 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
374 * A convenience macro for static type implementations.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
375 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
376 #define PURPLE_DEFINE_STATIC_TYPE(TN, t_n, T_P) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
377 PURPLE_DEFINE_STATIC_TYPE_EXTENDED (TN, t_n, T_P, 0, {})
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
378
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
379 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
380 * PURPLE_DEFINE_STATIC_TYPE_EXTENDED:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
381 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
382 * A more general version of PURPLE_DEFINE_STATIC_TYPE().
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
383 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
384 #define PURPLE_DEFINE_STATIC_TYPE_EXTENDED(TypeName, type_name, TYPE_PARENT, flags, CODE) \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
385 static GType type_name##_type_id = 0; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
386 GType type_name##_get_type(void) { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
387 if (G_UNLIKELY(type_name##_type_id == 0)) { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
388 GType type_id; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
389 const GTypeInfo type_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
390 sizeof (TypeName##Class), \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
391 (GBaseInitFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
392 (GBaseFinalizeFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
393 (GClassInitFunc) type_name##_class_init, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
394 (GClassFinalizeFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
395 NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
396 sizeof (TypeName), \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
397 0, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
398 (GInstanceInitFunc) type_name##_init, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
399 NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
400 }; \
36703
ff84e2510bb7 Removed unused variable warning
Ankit Vani <a@nevitus.org>
parents: 36699
diff changeset
401 type_id = g_type_register_static(TYPE_PARENT, #TypeName, &type_info, \
ff84e2510bb7 Removed unused variable warning
Ankit Vani <a@nevitus.org>
parents: 36699
diff changeset
402 (GTypeFlags) flags); \
ff84e2510bb7 Removed unused variable warning
Ankit Vani <a@nevitus.org>
parents: 36699
diff changeset
403 type_name##_type_id = type_id; \
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
404 { CODE ; } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
405 } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
406 return type_name##_type_id; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
407 } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
408 void type_name##_register_type(PurplePlugin *); \
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
409 void type_name##_register_type(PurplePlugin *plugin) { }
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
410
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
411 G_BEGIN_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
412
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
413 /**************************************************************************/
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
414 /** @name Plugin API */
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
415 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
416 /*@{*/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
417
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
418 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
419 * purple_plugin_load:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
420 * @plugin: The plugin to load.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
421 * @error: Return location for a #GError or %NULL. If provided, this
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
422 * will be set to the reason if the load fails.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
423 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
424 * Attempts to load a plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
425 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
426 * Returns: %TRUE if successful or already loaded, %FALSE otherwise.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
427 *
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
428 * @see purple_plugin_unload()
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
429 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
430 gboolean purple_plugin_load(PurplePlugin *plugin, GError **error);
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
431
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
432 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
433 * purple_plugin_unload:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
434 * @plugin: The plugin handle.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
435 * @error: Return location for a #GError or %NULL. If provided, this
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
436 * will be set to the reason if the unload fails.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
437 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
438 * Unloads the specified plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
439 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
440 * Returns: %TRUE if successful or not loaded, %FALSE otherwise.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
441 *
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
442 * @see purple_plugin_load()
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
443 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
444 gboolean purple_plugin_unload(PurplePlugin *plugin, GError **error);
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
445
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
446 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
447 * purple_plugin_is_loaded:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
448 * @plugin: The plugin.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
449 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
450 * Returns whether or not a plugin is currently loaded.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
451 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
452 * Returns: %TRUE if loaded, or %FALSE otherwise.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
453 */
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
454 gboolean purple_plugin_is_loaded(const PurplePlugin *plugin);
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
455
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
456 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
457 * purple_plugin_get_filename:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
458 * @info: The plugin.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
459 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
460 * Returns a plugin's filename, along with the path.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
461 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
462 * Returns: The plugin's filename.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
463 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
464 const gchar *purple_plugin_get_filename(const PurplePlugin *plugin);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
465
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
466 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
467 * purple_plugin_get_info:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
468 * @info: The plugin.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
469 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
470 * Returns a plugin's #PurplePluginInfo instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
471 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
472 * Returns: The plugin's #PurplePluginInfo instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
473 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
474 PurplePluginInfo *purple_plugin_get_info(const PurplePlugin *plugin);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
475
36396
add1d5e2314c Renamed actions_add functions to add_action functions
Ankit Vani <a@nevitus.org>
parents: 36395
diff changeset
476 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
477 * purple_plugin_disable:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
478 *
36439
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
479 * Disable a plugin.
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
480 *
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
481 * This function adds the plugin to a list of plugins to "disable at the next
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
482 * startup" by excluding said plugins from the list of plugins to save. The
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
483 * UI needs to call purple_plugins_save_loaded() after calling this for it
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
484 * to have any effect.
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
485 */
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
486 void purple_plugin_disable(PurplePlugin *plugin);
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
487
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
488 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
489 * purple_plugin_register_type:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
490 * @plugin: The plugin that is registering the type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
491 * @parent: Type from which this type will be derived.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
492 * @name: Name of the new type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
493 * @info: Information to initialize and destroy a type's classes and
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
494 * instances.
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
495 * @flags: Bitwise combination of values that determines the nature
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
496 * (e.g. abstract or not) of the type.
36460
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
497 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
498 * Registers a new dynamic type.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
499 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
500 * Returns: The new GType, or %G_TYPE_INVALID if registration failed.
36460
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
501 */
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
502 GType purple_plugin_register_type(PurplePlugin *plugin, GType parent,
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
503 const gchar *name, const GTypeInfo *info,
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
504 GTypeFlags flags);
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
505
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
506 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
507 * purple_plugin_add_interface:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
508 * @plugin: The plugin that is adding the interface type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
509 * @instance_type: The GType of the instantiable type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
510 * @interface_type: The GType of the interface type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
511 * @interface_info: Information used to manage the interface type.
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
512 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
513 * Adds a dynamic interface type to an instantiable type.
36460
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
514 */
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
515 void purple_plugin_add_interface(PurplePlugin *plugin, GType instance_type,
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
516 GType interface_type,
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
517 const GInterfaceInfo *interface_info);
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
518
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
519 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
520 * purple_plugin_is_internal:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
521 * @plugin: The plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
522 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
523 * Returns whether a plugin is an internal plugin. Internal plugins provide
36473
96218ce54785 Mention that internal plugins must not be shown in plugin lists
Ankit Vani <a@nevitus.org>
parents: 36470
diff changeset
524 * required additional functionality to the libpurple core. These plugins must
96218ce54785 Mention that internal plugins must not be shown in plugin lists
Ankit Vani <a@nevitus.org>
parents: 36470
diff changeset
525 * not be shown in plugin lists. Examples of such plugins are in-tree protocol
96218ce54785 Mention that internal plugins must not be shown in plugin lists
Ankit Vani <a@nevitus.org>
parents: 36470
diff changeset
526 * plugins, loaders etc.
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
527 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
528 * Returns: %TRUE if the plugin is an internal plugin, %FALSE otherwise.
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
529 */
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
530 gboolean purple_plugin_is_internal(const PurplePlugin *plugin);
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
531
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
532 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
533 * purple_plugin_get_dependent_plugins:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
534 * @plugin: The plugin whose dependent plugins are returned.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
535 *
36439
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
536 * Returns a list of plugins that depend on a particular plugin.
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
537 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
538 * Returns: (transfer none): The list of a plugins that depend on the specified
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
539 * plugin.
36439
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
540 */
7f8921ef1bfc Moved PurplePluginInfo's get_actions(), is_loadable(), get_error(), get_dependent_plugins() API to PurplePlugin
Ankit Vani <a@nevitus.org>
parents: 36437
diff changeset
541 GSList *purple_plugin_get_dependent_plugins(const PurplePlugin *plugin);
36397
4ae45b445bb9 Added purple_plugin_disable()
Ankit Vani <a@nevitus.org>
parents: 36396
diff changeset
542
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
543 /*@}*/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
544
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
545 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
546 /** @name PluginInfo API */
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
547 /**************************************************************************/
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
548 /*@{*/
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
549
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
550 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
551 * purple_plugin_info_get_type:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
552 *
37071
3ebf3bb2d317 Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35462 37060
diff changeset
553 * Returns: The #GType for the #PurplePluginInfo object.
34783
cefe6df8c6c6 Made PurplePlugin a GBoxed
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
554 */
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
555 GType purple_plugin_info_get_type(void);
34783
cefe6df8c6c6 Made PurplePlugin a GBoxed
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
556
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
557 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
558 * purple_plugin_info_new:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
559 * @first_property: The first property name
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
560 * @...: The value of the first property, followed optionally by more
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
561 * name/value pairs, followed by %NULL
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
562 *
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
563 * Creates a new #PurplePluginInfo instance to be returned from
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
564 * gplugin_plugin_query() of a plugin, using the provided name/value pairs.
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
565 *
37047
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
566 * All properties except <literal>"id"</literal> and
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
567 * <literal>"purple-abi"</literal> are optional.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
568 *
37047
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
569 * Valid property names are:
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
570 * <informaltable frame='none'>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
571 * <tgroup cols='2'><tbody>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
572 * <row><entry><literal>"id"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
573 * <entry>(string) The ID of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
574 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
575 * <row><entry><literal>"abi-version"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
576 * <entry>(<type>guint32</type>) The ABI version required by the
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
577 * plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
578 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
579 * <row><entry><literal>"name"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
580 * <entry>(string) The translated name of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
581 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
582 * <row><entry><literal>"version"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
583 * <entry>(string) Version of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
584 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
585 * <row><entry><literal>"category"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
586 * <entry>(string) Primary category of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
587 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
588 * <row><entry><literal>"summary"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
589 * <entry>(string) Brief summary of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
590 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
591 * <row><entry><literal>"description"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
592 * <entry>(string) Full description of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
593 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
594 * <row><entry><literal>"authors"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
595 * <entry>(<type>const gchar * const *</type>) A %NULL-terminated list of
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
596 * plugin authors. format: First Last &lt;user\@domain.com&gt;</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
597 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
598 * <row><entry><literal>"website"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
599 * <entry>(string) Website of the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
600 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
601 * <row><entry><literal>"icon"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
602 * <entry>(string) Path to a plugin's icon.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
603 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
604 * <row><entry><literal>"license-id"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
605 * <entry>(string) Short name of the plugin's license. This should
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
606 * either be an identifier of the license from
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
607 * <ulink url="http://dep.debian.net/deps/dep5/#license-specification"/>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
608 * or "Other" for custom licenses.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
609 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
610 * <row><entry><literal>"license-text"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
611 * <entry>(string) The text of the plugin's license, if unlisted on
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
612 * DEP5.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
613 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
614 * <row><entry><literal>"license-url"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
615 * <entry>(string) The plugin's license URL, if unlisted on DEP5.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
616 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
617 * <row><entry><literal>"dependencies"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
618 * <entry>(<type>const gchar * const *</type>) A %NULL-terminated list of
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
619 * plugin IDs required by the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
620 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
621 * <row><entry><literal>"actions-cb"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
622 * <entry>(#PurplePluginActionsCb) Callback that returns a list of
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
623 * actions the plugin can perform.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
624 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
625 * <row><entry><literal>"extra-cb"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
626 * <entry>(#PurplePluginExtraCb) Callback that returns a newly
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
627 * allocated string denoting extra information about a plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
628 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
629 * <row><entry><literal>"pref-frame-cb"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
630 * <entry>(#PurplePluginPrefFrameCb) Callback that returns a
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
631 * preferences frame for the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
632 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
633 * <row><entry><literal>"pref-request-cb"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
634 * <entry>(#PurplePluginPrefRequestCb) Callback that returns a
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
635 * preferences request handle for the plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
636 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
637 * <row><entry><literal>"flags"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
638 * <entry>(#PurplePluginInfoFlags) The flags for a plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
639 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
640 * </tbody></tgroup>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
641 * </informaltable>
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
642 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
643 * Returns: A new #PurplePluginInfo instance.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
644 *
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
645 * @see PURPLE_PLUGIN_ABI_VERSION
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
646 * @see @ref plugin-ids
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
647 */
36565
8ca8acc22763 Added G_GNUC_NULL_TERMINATED to [purple,finch,pidgin]_plugin_info_new() declarations
Ankit Vani <a@nevitus.org>
parents: 36545
diff changeset
648 PurplePluginInfo *purple_plugin_info_new(const char *first_property, ...)
8ca8acc22763 Added G_GNUC_NULL_TERMINATED to [purple,finch,pidgin]_plugin_info_new() declarations
Ankit Vani <a@nevitus.org>
parents: 36545
diff changeset
649 G_GNUC_NULL_TERMINATED;
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
650
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
651 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
652 * purple_plugin_info_get_id:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
653 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
654 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
655 * Returns a plugin's ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
656 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
657 * Returns: The plugin's ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
658 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
659 const gchar *purple_plugin_info_get_id(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
660
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
661 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
662 * purple_plugin_info_get_name:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
663 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
664 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
665 * Returns a plugin's translated name.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
666 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
667 * Returns: The name of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
668 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
669 const gchar *purple_plugin_info_get_name(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
670
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
671 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
672 * purple_plugin_info_get_version:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
673 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
674 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
675 * Returns a plugin's version.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
676 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
677 * Returns: The version of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
678 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
679 const gchar *purple_plugin_info_get_version(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
680
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
681 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
682 * purple_plugin_info_get_category:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
683 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
684 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
685 * Returns a plugin's primary category.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
686 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
687 * Returns: The primary category of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
688 */
36435
f3ae5a24fb61 Added get functions for GPlugin's plugin icon and license. Added category for plugins.
Ankit Vani <a@nevitus.org>
parents: 36429
diff changeset
689 const gchar *purple_plugin_info_get_category(const PurplePluginInfo *info);
f3ae5a24fb61 Added get functions for GPlugin's plugin icon and license. Added category for plugins.
Ankit Vani <a@nevitus.org>
parents: 36429
diff changeset
690
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
691 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
692 * purple_plugin_info_get_summary:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
693 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
694 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
695 * Returns a plugin's summary.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
696 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
697 * Returns: The summary of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
698 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
699 const gchar *purple_plugin_info_get_summary(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
700
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
701 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
702 * purple_plugin_info_get_description:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
703 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
704 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
705 * Returns a plugin's description.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
706 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
707 * Returns: The description of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
708 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
709 const gchar *purple_plugin_info_get_description(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
710
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
711 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
712 * purple_plugin_info_get_authors:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
713 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
714 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
715 * Returns a NULL-terminated list of the plugin's authors.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
716 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
717 * Returns: The authors of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
718 */
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
719 const gchar * const *
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
720 purple_plugin_info_get_authors(const PurplePluginInfo *info);
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
721
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
722 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
723 * purple_plugin_info_get_website:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
724 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
725 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
726 * Returns a plugin's website.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
727 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
728 * Returns: The website of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
729 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
730 const gchar *purple_plugin_info_get_website(const PurplePluginInfo *info);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
731
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
732 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
733 * purple_plugin_info_get_icon:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
734 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
735 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
736 * Returns the path to a plugin's icon.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
737 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
738 * Returns: The path to the plugin's icon, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
739 */
36435
f3ae5a24fb61 Added get functions for GPlugin's plugin icon and license. Added category for plugins.
Ankit Vani <a@nevitus.org>
parents: 36429
diff changeset
740 const gchar *purple_plugin_info_get_icon(const PurplePluginInfo *info);
f3ae5a24fb61 Added get functions for GPlugin's plugin icon and license. Added category for plugins.
Ankit Vani <a@nevitus.org>
parents: 36429
diff changeset
741
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
742 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
743 * purple_plugin_info_get_license_id:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
744 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
745 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
746 * Returns a short name of the plugin's license.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
747 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
748 * Returns: The license name of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
749 */
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
750 const gchar *purple_plugin_info_get_license_id(const PurplePluginInfo *info);
36435
f3ae5a24fb61 Added get functions for GPlugin's plugin icon and license. Added category for plugins.
Ankit Vani <a@nevitus.org>
parents: 36429
diff changeset
751
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
752 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
753 * purple_plugin_info_get_license_text:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
754 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
755 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
756 * Returns the text of a plugin's license.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
757 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
758 * Returns: The license text of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
759 */
36480
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
760 const gchar *purple_plugin_info_get_license_text(const PurplePluginInfo *info);
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
761
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
762 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
763 * purple_plugin_info_get_license_url:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
764 * @info: The plugin's info instance.
36480
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
765 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
766 * Returns the URL of a plugin's license.
36480
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
767 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
768 * Returns: The license URL of the plugin, or %NULL.
36480
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
769 */
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
770 const gchar *purple_plugin_info_get_license_url(const PurplePluginInfo *info);
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
771
36389
8d86658a3b68 Added 'plugin' field to PurplePluginAction. Added purple_plugin_info_get_actions().
Ankit Vani <a@nevitus.org>
parents: 36387
diff changeset
772 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
773 * purple_plugin_info_get_dependencies:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
774 * @info: The plugin's info instance.
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
775 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
776 * Returns a NULL-terminated list of IDs of plugins required by a plugin.
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
777 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
778 * Returns: The dependencies of the plugin, or %NULL.
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
779 */
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
780 const gchar * const *
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
781 purple_plugin_info_get_dependencies(const PurplePluginInfo *info);
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
782
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
783 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
784 * purple_plugin_info_get_abi_version:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
785 * @info: The plugin's info instance.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
786 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
787 * Returns the required purple ABI version for a plugin.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
788 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
789 * Returns: The required purple ABI version for the plugin.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
790 */
36482
fbddfc86848d Renamed purple-version to purple-abi. Removed abi-version from docs
Ankit Vani <a@nevitus.org>
parents: 36481
diff changeset
791 guint32 purple_plugin_info_get_abi_version(const PurplePluginInfo *info);
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
792
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
793 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
794 * purple_plugin_info_get_actions_cb:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
795 * @info: The plugin info to get the callback from.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
796 *
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
797 * Returns the callback that retrieves the list of actions a plugin can perform
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
798 * at that moment.
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
799 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
800 * Returns: The callback that returns a list of #PurplePluginAction
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
801 * instances corresponding to the actions a plugin can perform.
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
802 */
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
803 PurplePluginActionsCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
804 purple_plugin_info_get_actions_cb(const PurplePluginInfo *info);
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
805
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
806 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
807 * purple_plugin_info_get_extra_cb:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
808 * @info: The plugin info to get extra information from.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
809 *
36976
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
810 * Returns a callback that gives extra information about a plugin. You must
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
811 * free the string returned by this callback.
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
812 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
813 * Returns: The callback that returns extra information about a plugin.
36976
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
814 */
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
815 PurplePluginExtraCb
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
816 purple_plugin_info_get_extra_cb(const PurplePluginInfo *info);
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
817
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
818 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
819 * purple_plugin_info_get_pref_frame_cb:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
820 * @info: The plugin info to get the callback from.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
821 *
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
822 * Returns the callback that retrieves the preferences frame for a plugin, set
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
823 * via the "pref-frame-cb" property of the plugin info.
36395
a27e8b7a2938 Added a callback to return preferences frame to plugin info.
Ankit Vani <a@nevitus.org>
parents: 36392
diff changeset
824 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
825 * Returns: The callback that returns the preferences frame.
36395
a27e8b7a2938 Added a callback to return preferences frame to plugin info.
Ankit Vani <a@nevitus.org>
parents: 36392
diff changeset
826 */
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
827 PurplePluginPrefFrameCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
828 purple_plugin_info_get_pref_frame_cb(const PurplePluginInfo *info);
36395
a27e8b7a2938 Added a callback to return preferences frame to plugin info.
Ankit Vani <a@nevitus.org>
parents: 36392
diff changeset
829
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
830 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
831 * purple_plugin_info_get_pref_request_cb:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
832 * @info: The plugin info to get the callback from.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
833 *
36929
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
834 * Returns the callback that retrieves the preferences request handle for a
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
835 * plugin, set via the "pref-request-cb" property of the plugin info.
36929
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
836 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
837 * Returns: The callback that returns the preferences request handle.
36929
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
838 */
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
839 PurplePluginPrefRequestCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
840 purple_plugin_info_get_pref_request_cb(const PurplePluginInfo *info);
36929
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
841
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
842 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
843 * purple_plugin_info_get_flags:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
844 * @info: The plugin's info instance.
36653
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
845 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
846 * Returns the plugin's flags.
36653
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
847 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
848 * Returns: The flags of the plugin.
36653
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
849 */
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
850 PurplePluginInfoFlags
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
851 purple_plugin_info_get_flags(const PurplePluginInfo *info);
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
852
4084c34c051d Override gplugin info's "flags" property. Added PURPLE_PLUGIN_INFO_FLAGS_INTERNAL and PURPLE_PLUGIN_INFO_FLAGS_AUTO_LOAD.
Ankit Vani <a@nevitus.org>
parents: 36642
diff changeset
853 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
854 * purple_plugin_info_get_error:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
855 * @info: The plugin info.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
856 *
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
857 * Returns an error in the plugin info that would prevent the plugin from being
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
858 * loaded.
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
859 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
860 * Returns: The plugin info error, or %NULL.
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
861 */
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
862 const gchar *purple_plugin_info_get_error(const PurplePluginInfo *info);
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
863
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
864 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
865 * purple_plugin_info_set_ui_data:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
866 * @info: The plugin's info instance.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
867 * @ui_data: A pointer to associate with this object.
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
868 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
869 * Set the UI data associated with a plugin.
11772
0124b31e896a [gaim-migrate @ 14063]
Gary Kramlich <grim@reaperworld.com>
parents: 10759
diff changeset
870 */
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
871 void purple_plugin_info_set_ui_data(PurplePluginInfo *info, gpointer ui_data);
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
872
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
873 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
874 * purple_plugin_info_get_ui_data:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
875 * @info: The plugin's info instance.
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
876 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
877 * Returns the UI data associated with a plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
878 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
879 * Returns: The UI data associated with this plugin. This is a
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
880 * convenience field provided to the UIs--it is not
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
881 * used by the libpurple core.
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
882 */
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
883 gpointer purple_plugin_info_get_ui_data(const PurplePluginInfo *info);
11772
0124b31e896a [gaim-migrate @ 14063]
Gary Kramlich <grim@reaperworld.com>
parents: 10759
diff changeset
884
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
885 /*@}*/
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
886
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
887 /**************************************************************************/
36396
add1d5e2314c Renamed actions_add functions to add_action functions
Ankit Vani <a@nevitus.org>
parents: 36395
diff changeset
888 /** @name PluginAction API */
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
889 /**************************************************************************/
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
890 /*@{*/
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
891
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
892 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
893 * purple_plugin_action_get_type:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
894 *
37071
3ebf3bb2d317 Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35462 37060
diff changeset
895 * Returns: The #GType for the #PurplePluginAction boxed structure.
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
896 */
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
897 GType purple_plugin_action_get_type(void);
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
898
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
899 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
900 * purple_plugin_action_new:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
901 * @label: The description of the action to show to the user.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
902 * @callback: The callback to call when the user selects this action.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
903 *
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
904 * Allocates and returns a new PurplePluginAction. Use this to add actions in a
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
905 * list in the "actions-cb" callback for your plugin.
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
906 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
907 PurplePluginAction *purple_plugin_action_new(const char* label,
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
908 PurplePluginActionCb callback);
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
909
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
910 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
911 * purple_plugin_action_free:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
912 * @action: The PurplePluginAction to free.
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
913 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
914 * Frees a PurplePluginAction
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
915 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
916 void purple_plugin_action_free(PurplePluginAction *action);
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
917
36386
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
918 /*@}*/
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
919
d402ca995746 Added a boxed type PurplePluginAction with purple_plugin_actions_add() to add an action to a plugin.
Ankit Vani <a@nevitus.org>
parents: 36377
diff changeset
920 /**************************************************************************/
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
921 /** @name Plugins API */
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
922 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
923 /*@{*/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
924
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
925 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
926 * purple_plugins_find_all:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
927 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
928 * Returns a list of all plugins, whether loaded or not.
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
929 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
930 * Returns: A list of all plugins. The list is owned by the caller, and must be
36461
e769bd450874 Add a note in the documentation for purple_plugins_find_all() that the list is owned by caller
Ankit Vani <a@nevitus.org>
parents: 36460
diff changeset
931 * g_list_free()d to avoid leaking the nodes.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
932 */
36400
2ccd829171ec Renamed purple_plugins_get_all() to purple_plugins_find_all() since the list is generated.
Ankit Vani <a@nevitus.org>
parents: 36399
diff changeset
933 GList *purple_plugins_find_all(void);
2ccd829171ec Renamed purple_plugins_get_all() to purple_plugins_find_all() since the list is generated.
Ankit Vani <a@nevitus.org>
parents: 36399
diff changeset
934
2ccd829171ec Renamed purple_plugins_get_all() to purple_plugins_find_all() since the list is generated.
Ankit Vani <a@nevitus.org>
parents: 36399
diff changeset
935 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
936 * purple_plugins_get_loaded:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
937 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
938 * Returns a list of all loaded plugins.
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
939 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
940 * Returns: (transfer none): A list of all loaded plugins.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
941 */
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
942 GList *purple_plugins_get_loaded(void);
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
943
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
944 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
945 * purple_plugins_add_search_path:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
946 * @path: The new search path.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
947 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
948 * Add a new directory to search for plugins
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
949 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
950 void purple_plugins_add_search_path(const gchar *path);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
951
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
952 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
953 * purple_plugins_refresh:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
954 *
36463
b1ce7f2998e4 Added purple_plugin_loads_on_query()
Ankit Vani <a@nevitus.org>
parents: 36461
diff changeset
955 * Forces a refresh of all plugins found in the search paths, and loads plugins
36810
f16708ed084b Fixed documentation regarding AUTO_LOAD flag
Ankit Vani <a@nevitus.org>
parents: 36776
diff changeset
956 * that are to be auto-loaded.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
957 *
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
958 * @see purple_plugins_add_search_path()
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
959 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
960 void purple_plugins_refresh(void);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
961
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
962 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
963 * purple_plugins_find_plugin:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
964 * @id: The plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
965 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
966 * Finds a plugin with the specified plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
967 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
968 * Returns: The plugin if found, or %NULL if not found.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
969 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
970 PurplePlugin *purple_plugins_find_plugin(const gchar *id);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
971
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
972 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
973 * purple_plugins_find_by_filename:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
974 * @filename: The plugin filename.
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
975 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
976 * Finds a plugin with the specified filename (filename with a path).
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
977 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
978 * Returns: The plugin if found, or %NULL if not found.
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
979 */
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
980 PurplePlugin *purple_plugins_find_by_filename(const char *filename);
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
981
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
982 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
983 * purple_plugins_save_loaded:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
984 * @key: The preference key to save the list of plugins to.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
985 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
986 * Saves the list of loaded plugins to the specified preference key.
36810
f16708ed084b Fixed documentation regarding AUTO_LOAD flag
Ankit Vani <a@nevitus.org>
parents: 36776
diff changeset
987 * Plugins that are set to auto-load are not saved.
36377
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
988 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
989 void purple_plugins_save_loaded(const char *key);
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
990
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
991 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
992 * purple_plugins_load_saved:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
993 * @key: The preference key containing the list of plugins.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
994 *
36377
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
995 * Attempts to load all the plugins in the specified preference key
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
996 * that were loaded when purple last quit.
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
997 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
998 void purple_plugins_load_saved(const char *key);
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
999
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1000 /*@}*/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1001
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1002 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1003 /** @name Plugins Subsystem API */
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1004 /**************************************************************************/
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1005 /*@{*/
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1006
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1007 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1008 * purple_plugins_get_handle:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1009 *
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1010 * Returns the plugin subsystem handle.
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1011 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
1012 * Returns: The plugin sybsystem handle.
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1013 */
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1014 void *purple_plugins_get_handle(void);
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1015
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1016 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1017 * purple_plugins_init:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1018 *
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1019 * Initializes the plugin subsystem
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1020 */
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1021 void purple_plugins_init(void);
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1022
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1023 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1024 * purple_plugins_uninit:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1025 *
36367
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1026 * Uninitializes the plugin subsystem
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1027 */
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1028 void purple_plugins_uninit(void);
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1029
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1030 /*@}*/
891eea799578 Renamed plugin.[ch] to plugins.[ch], since we (will) no longer have a PurplePlugin structure.
Ankit Vani <a@nevitus.org>
parents: 36364
diff changeset
1031
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
1032 G_END_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
1033
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
1034 #endif /* _PURPLE_PLUGINS_H_ */

mercurial