libpurple/plugins.h

Wed, 20 Jun 2018 02:13:44 -0400

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 20 Jun 2018 02:13:44 -0400
changeset 39181
f0cd633d86d4
parent 38745
f4376b1f4682
child 39380
3088866c22f4
child 39405
2a47b5830909
permissions
-rw-r--r--

prefs: Add binding versions of pref widget functions.

These just bind settings to existing widgets and copy the saved value to
the widget, except for combos which are produced from runtime lists.
Those are populated in a similar way as before.

There are some extra _bind_ words that will probably be dropped once the
other functions are unused.

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 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35486
diff changeset
21
37094
84873ce721dc Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35487 37089
diff changeset
22 #ifndef _PURPLE_PLUGINS_H_
84873ce721dc Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35487 37089
diff changeset
23 #define _PURPLE_PLUGINS_H_
37060
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
24 /**
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
25 * SECTION:plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
26 * @section_id: libpurple-plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
27 * @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
28 * @title: Plugin API
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
29 * @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
30 * <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
31 * <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
32 */
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
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 typedef GPluginPluginClass PurplePluginClass;
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
64
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
65 #else /* !defined(PURPLE_PLUGINS) */
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
66
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
67 #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
68 #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
69 #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
70 #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
71 #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
72 #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
73
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
74 typedef GObject PurplePlugin;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
75 typedef GObjectClass PurplePluginClass;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
76
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
77 #endif /* PURPLE_PLUGINS */
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
78
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
79 #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
80 #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
81 #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
82 #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
83 #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
84 #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
85
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
86 typedef struct _PurplePluginInfo PurplePluginInfo;
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
87 typedef struct _PurplePluginInfoClass PurplePluginInfoClass;
8749
fb487e9e101a [gaim-migrate @ 9504]
Christian Hammond <chipx86@chipx86.com>
parents: 8735
diff changeset
88
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
89 #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
90
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
91 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
92
36395
a27e8b7a2938 Added a callback to return preferences frame to plugin info.
Ankit Vani <a@nevitus.org>
parents: 36392
diff changeset
93 #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
94
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
95 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
96 * PurplePluginActionCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
97 * @action: the action information.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
98 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
99 * A function called when the related Action Menu is activated.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
100 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
101 typedef void (*PurplePluginActionCb)(PurplePluginAction *action);
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
102
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
103 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
104 * PurplePluginActionsCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
105 * @plugin: the plugin associated with this callback.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
106 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
107 * Returns a list of actions the plugin can perform.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
108 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
109 * Returns: (transfer none): A list of actions the plugin can perform.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
110 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
111 typedef GList *(*PurplePluginActionsCb)(PurplePlugin *plugin);
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
112
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
113 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
114 * PurplePluginExtraCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
115 * @plugin: the plugin associated with this callback.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
116 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
117 * Gives extra information about the plguin.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
118 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
119 * Returns: a newly allocated string denoting extra information
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
120 * about a plugin.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
121 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
122 typedef gchar *(*PurplePluginExtraCb)(PurplePlugin *plugin);
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
123
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
124 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
125 * PurplePluginPrefFrameCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
126 * @plugin: the plugin associated with this callback.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
127 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
128 * Returns the preferences frame for the plugin.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
129 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
130 * Returns: Preference frame.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
131 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
132 typedef PurplePluginPrefFrame *(*PurplePluginPrefFrameCb)(PurplePlugin *plugin);
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
133
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
134 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
135 * PurplePrefRequestCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
136 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
137 * Returns the preferences request handle for a plugin.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
138 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
139 * Returns: Preferences request handle.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
140 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
141 typedef gpointer (*PurplePluginPrefRequestCb)(PurplePlugin *plugin);
36364
4a5544383bc8 Refactored account to use the initial GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 36357
diff changeset
142
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
143 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
144 * PurplePluginInfoFlags:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
145 * @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
146 * @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
147 *
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
148 * 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
149 */
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
150 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
151 {
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
152 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
153 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
154
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
155 } 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
156
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
157 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
158 * PurplePluginInfo:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
159 * @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
160 * 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
161 *
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
162 * Holds information about a plugin.
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
163 */
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
164 struct _PurplePluginInfo {
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
165 #ifdef PURPLE_PLUGINS
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
166 GPluginPluginInfo parent;
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
167 #else
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
168 GObject parent;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
169 #endif
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
170
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
171 /*< public >*/
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
172 gpointer ui_data;
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
173 };
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
174
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
175 struct _PurplePluginInfoClass {
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
176 #ifdef PURPLE_PLUGINS
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
177 GPluginPluginInfoClass parent_class;
36441
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
178 #else
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
179 GObjectClass parent_class;
f50c47e1c469 Disable all GPlugin stuff when PURPLE_PLUGINS is not defined
Ankit Vani <a@nevitus.org>
parents: 36439
diff changeset
180 #endif
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
181
36896
3865997e388b Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 36810
diff changeset
182 /*< private >*/
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
183 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
184 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
185 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
186 void (*_purple_reserved4)(void);
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
187 };
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
188
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
189 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
190 * PurplePluginAction:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
191 *
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
192 * 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
193 * 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
194 */
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
195 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
196 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
197 PurplePluginActionCb callback;
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
198 PurplePlugin *plugin;
36495
a9e328e153ab will document id format later
Ankit Vani <a@nevitus.org>
parents: 36493
diff changeset
199 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
200 };
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
201
36989
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
202 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
203 * 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
204 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
205 * 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
206 * rest are required by GPlugin.
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
207 *
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
208 * Returns: An ABI version to set in plugins using major and minor versions.
36989
5bbf6d7050d8 Document the ABI version bitwise magic
Ankit Vani <a@nevitus.org>
parents: 36976
diff changeset
209 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
210 #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
211 (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
212
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
213 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
214 * 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
215 *
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
216 * Returns: The major version from an ABI version
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
217 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
218 #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
219 ((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
220
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
221 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
222 * 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
223 *
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
224 * Returns: The minor version from an ABI version
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
225 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
226 #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
227 (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
228
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 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
230 * PURPLE_ABI_VERSION:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
231 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
232 * 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
233 * 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
234 */
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
235 #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
236
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
237 /**
36611
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
238 * PURPLE_PLUGIN_INIT:
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
239 *
07d5c0892315 Added macros PURPLE_PLUGIN_INIT_VAL, PURPLE_PROTOCOL_DEFINE_{STATIC,DYNAMIC}.
Ankit Vani <a@nevitus.org>
parents: 36565
diff changeset
240 * 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
241 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
242 #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
243 #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
244 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
245 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
246 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
247 } \
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
248 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
249 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
250 GError *e = NULL; \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
251 gboolean loaded = pluginload(NULL, &e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
252 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
253 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
254 } \
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
255 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
256 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
257 GError *e = NULL; \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
258 gboolean unloaded = pluginunload(NULL, &e); \
b5167dc125f5 Plugins can return an error when failing to load
Ankit Vani <a@nevitus.org>
parents: 36482
diff changeset
259 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
260 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
261 }
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
262 #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
263 #define PURPLE_PLUGIN_INIT(pluginname,pluginquery,pluginload,pluginunload) \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
264 G_MODULE_EXPORT GPluginPluginInfo *gplugin_query(GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
265 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
266 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
267 } \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
268 G_MODULE_EXPORT gboolean gplugin_load(GPluginNativePlugin *p, GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
269 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
270 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
271 } \
36944
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
272 G_MODULE_EXPORT gboolean gplugin_unload(GPluginNativePlugin *p, GError **e); \
03eabcfba5ba Updated gplugin external functions
Ankit Vani <a@nevitus.org>
parents: 36934
diff changeset
273 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
274 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
275 }
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
276 #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
277
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
278 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
279 * 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
280 * @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
281 * @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
282 * @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
283 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
284 * 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
285 * 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
286 * 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
287 * 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
288 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
289 * 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
290 * plugins support is disabled.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
291 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
292 #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
293 #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
294 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
295 #else
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
296 #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
297 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
298 #endif
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 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
301 * PURPLE_DEFINE_TYPE_EXTENDED:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
302 * @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
303 * @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
304 * @T_P: The #GType of the parent type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
305 * @flags: #GTypeFlags to register the type with.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
306 * @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
307 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
308 * 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
309 * 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
310 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
311 #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
312 #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
313 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
314 #else
36899
b2591070c07b Rearranged macro definitions so that gtk-doc does not show incorrent expansions
Ankit Vani <a@nevitus.org>
parents: 36896
diff changeset
315 #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
316 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
317 #endif
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
318
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
319 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
320 * 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
321 * @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
322 * @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
323 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
324 * 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
325 * 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
326 * 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
327 */
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
328 #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
329 const GInterfaceInfo interface_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
330 (GInterfaceInitFunc) iface_init, NULL, NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
331 }; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
332 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
333 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
334
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
335 /**
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
336 * 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
337 * @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
338 * @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
339 *
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
340 * 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
341 * 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
342 * interface lives in the plugin.
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
343 */
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
344 #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
345 #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
346 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
347 #else
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
348 #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
349 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
350 #endif
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
351
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
352 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
353 * 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
354 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
355 * 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
356 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
357 #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
358 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
359
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
360 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
361 * 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
362 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
363 * 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
364 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
365 #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
366 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
367 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
368 return type_name##_type_id; \
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 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
371 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
372 GType type_id; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
373 const GTypeInfo type_info = { \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
374 sizeof (TypeName##Class), \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
375 (GBaseInitFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
376 (GBaseFinalizeFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
377 (GClassInitFunc) type_name##_class_init, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
378 (GClassFinalizeFunc) NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
379 NULL, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
380 sizeof (TypeName), \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
381 0, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
382 (GInstanceInitFunc) type_name##_init, \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
383 NULL \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
384 }; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
385 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
386 &type_info, (GTypeFlags) flags); \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
387 type_name##_type_id = type_id; \
5f61d5e5cf47 Allow register_type() to be executed multiple times
Ankit Vani <a@nevitus.org>
parents: 36750
diff changeset
388 { CODE ; } \
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
389 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
390
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
391 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
392 * 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
393 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
394 * 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
395 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
396 #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
397 const GInterfaceInfo interface_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
398 (GInterfaceInitFunc) iface_init, NULL, NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
399 }; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
400 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
401 }
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
402
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
403 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
404 * 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
405 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
406 * 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
407 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
408 #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
409 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
410
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
411 /**
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
412 * 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
413 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
414 * 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
415 */
36697
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
416 #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
417 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
418 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
419 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
420 GType type_id; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
421 const GTypeInfo type_info = { \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
422 sizeof (TypeName##Class), \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
423 (GBaseInitFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
424 (GBaseFinalizeFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
425 (GClassInitFunc) type_name##_class_init, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
426 (GClassFinalizeFunc) NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
427 NULL, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
428 sizeof (TypeName), \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
429 0, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
430 (GInstanceInitFunc) type_name##_init, \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
431 NULL \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
432 }; \
36703
ff84e2510bb7 Removed unused variable warning
Ankit Vani <a@nevitus.org>
parents: 36699
diff changeset
433 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
434 (GTypeFlags) flags); \
ff84e2510bb7 Removed unused variable warning
Ankit Vani <a@nevitus.org>
parents: 36699
diff changeset
435 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
436 { CODE ; } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
437 } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
438 return type_name##_type_id; \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
439 } \
114b217537c2 Added generic type registration macros for use in plugins
Ankit Vani <a@nevitus.org>
parents: 36696
diff changeset
440 void type_name##_register_type(PurplePlugin *); \
36750
b860bdf364a1 Fixed static linking of protocols
Ankit Vani <a@nevitus.org>
parents: 36703
diff changeset
441 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
442
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
443 G_BEGIN_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
444
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
445 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
446 /* Plugin API */
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
447 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
448
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 * purple_plugin_load:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
451 * @plugin: The plugin to load.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
452 * @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
453 * 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
454 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
455 * 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
456 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
457 * Also see purple_plugin_unload().
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
458 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
459 * 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
460 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
461 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
462
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
463 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
464 * purple_plugin_unload:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
465 * @plugin: The plugin handle.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
466 * @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
467 * 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
468 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
469 * 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
470 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
471 * Also see purple_plugin_load().
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
472 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
473 * 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
474 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
475 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
476
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
477 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
478 * 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
479 * @plugin: The plugin.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
480 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
481 * 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
482 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
483 * 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
484 */
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
485 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
486
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
487 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
488 * purple_plugin_get_filename:
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
489 * @plugin: The plugin.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
490 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
491 * 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
492 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
493 * Returns: The plugin's filename.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
494 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
495 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
496
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
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 * purple_plugin_get_info:
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
499 * @plugin: The plugin.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
500 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
501 * Returns a plugin's #PurplePluginInfo instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
502 *
38745
f4376b1f4682 A ton more of introspection cleanups
Gary Kramlich <grim@reaperworld.com>
parents: 38016
diff changeset
503 * Returns: (transfer none): The plugin's #PurplePluginInfo instance.
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
504 * GPlugin refs the plugin info object before returning it. This workaround
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
505 * is to avoid managing the reference counts everywhere in our codebase
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
506 * where we use the plugin info. The plugin info instance is guaranteed to
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
507 * exist as long as the plugin exists.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
508 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
509 PurplePluginInfo *purple_plugin_get_info(const PurplePlugin *plugin);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
510
36396
add1d5e2314c Renamed actions_add functions to add_action functions
Ankit Vani <a@nevitus.org>
parents: 36395
diff changeset
511 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
512 * purple_plugin_disable:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
513 *
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
514 * 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
515 *
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
516 * 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
517 * 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
518 * 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
519 * 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
520 */
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
521 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
522
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
523 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
524 * purple_plugin_register_type:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
525 * @plugin: The plugin that is registering the type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
526 * @parent: Type from which this type will be derived.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
527 * @name: Name of the new type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
528 * @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
529 * instances.
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
530 * @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
531 * (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
532 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
533 * 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
534 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
535 * 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
536 */
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
537 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
538 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
539 GTypeFlags flags);
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
540
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
541 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
542 * purple_plugin_add_interface:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
543 * @plugin: The plugin that is adding the interface type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
544 * @instance_type: The GType of the instantiable type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
545 * @interface_type: The GType of the interface type.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
546 * @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
547 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
548 * 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
549 */
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
550 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
551 GType interface_type,
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
552 const GInterfaceInfo *interface_info);
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
553
8c939ea45957 Added purple_plugin_register_type() and purple_plugin_add_interface()
Ankit Vani <a@nevitus.org>
parents: 36458
diff changeset
554 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
555 * 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
556 * @plugin: The plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
557 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
558 * 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
559 * 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
560 * 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
561 * 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
562 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
563 * 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
564 */
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
565 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
566
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
567 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
568 * 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
569 * @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
570 *
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
571 * 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
572 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
573 * Returns: (element-type PurplePlugin) (transfer none): The list of a plugins that depend on the specified
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
574 * 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
575 */
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
576 GSList *purple_plugin_get_dependent_plugins(const PurplePlugin *plugin);
36397
4ae45b445bb9 Added purple_plugin_disable()
Ankit Vani <a@nevitus.org>
parents: 36396
diff changeset
577
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
578 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
579 /* PluginInfo API */
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
580 /**************************************************************************/
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
581
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
582 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
583 * 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
584 *
37071
3ebf3bb2d317 Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35462 37060
diff changeset
585 * Returns: The #GType for the #PurplePluginInfo object.
34783
cefe6df8c6c6 Made PurplePlugin a GBoxed
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
586 */
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
587 GType purple_plugin_info_get_type(void);
34783
cefe6df8c6c6 Made PurplePlugin a GBoxed
Ankit Vani <a@nevitus.org>
parents: 34778
diff changeset
588
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
589 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
590 * 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
591 * @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
592 * @...: 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
593 * 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
594 *
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
595 * Creates a new #PurplePluginInfo instance to be returned from
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
596 * #plugin_query of a plugin, using the provided name/value pairs.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
597 *
37047
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
598 * 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
599 * <literal>"purple-abi"</literal> are optional.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
600 *
37047
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
601 * Valid property names are:
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
602 * <informaltable frame='none'>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
603 * <tgroup cols='2'><tbody>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
604 * <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
605 * <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
606 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
607 * <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
608 * <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
609 * plugin.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
610 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
611 * <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
612 * <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
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>"version"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
615 * <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
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>"category"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
618 * <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
619 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
620 * <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
621 * <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
622 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
623 * <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
624 * <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
625 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
626 * <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
627 * <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
628 * 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
629 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
630 * <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
631 * <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
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>"icon"</literal></entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
634 * <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
635 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
636 * <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
637 * <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
638 * either be an identifier of the license from
37087
197d965cec97 Fix gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37085
diff changeset
639 * <ulink url="http://dep.debian.net/deps/dep5/#license-specification">
197d965cec97 Fix gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37085
diff changeset
640 * DEP5</ulink> or "Other" for custom licenses.</entry>
37047
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
641 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
642 * <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
643 * <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
644 * DEP5.</entry>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
645 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
646 * <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
647 * <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
648 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
649 * <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
650 * <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
651 * 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
652 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
653 * <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
654 * <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
655 * 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
656 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
657 * <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
658 * <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
659 * 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
660 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
661 * <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
662 * <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
663 * 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
664 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
665 * <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
666 * <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
667 * 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
668 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
669 * <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
670 * <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
671 * </row>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
672 * </tbody></tgroup>
3ec5ce6a6494 Show list of plugin info properties as a table
Ankit Vani <a@nevitus.org>
parents: 37042
diff changeset
673 * </informaltable>
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
674 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
675 * See #PURPLE_PLUGIN_ABI_VERSION,
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
676 * <link linkend="chapter-plugin-ids">Plugin IDs</link>.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
677 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
678 * Returns: A new #PurplePluginInfo instance.
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
679 */
36565
8ca8acc22763 Added G_GNUC_NULL_TERMINATED to [purple,finch,pidgin]_plugin_info_new() declarations
Ankit Vani <a@nevitus.org>
parents: 36545
diff changeset
680 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
681 G_GNUC_NULL_TERMINATED;
36446
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
682
e75794a5a7f0 Added [purple,pidgin,finch]_plugin_info_new()
Ankit Vani <a@nevitus.org>
parents: 36441
diff changeset
683 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
684 * 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
685 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
686 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
687 * Returns a plugin's ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
688 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
689 * Returns: The plugin's ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
690 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
691 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
692
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
693 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
694 * 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
695 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
696 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
697 * Returns a plugin's translated name.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
698 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
699 * Returns: The name of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
700 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
701 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
702
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
703 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
704 * 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
705 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
706 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
707 * Returns a plugin's version.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
708 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
709 * Returns: The version of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
710 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
711 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
712
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
713 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
714 * 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
715 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
716 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
717 * Returns a plugin's primary category.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
718 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
719 * 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
720 */
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
721 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
722
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
723 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
724 * 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
725 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
726 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
727 * Returns a plugin's summary.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
728 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
729 * Returns: The summary of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
730 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
731 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
732
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
733 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
734 * 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
735 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
736 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
737 * Returns a plugin's description.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
738 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
739 * Returns: The description of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
740 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
741 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
742
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
743 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
744 * 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
745 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
746 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
747 * 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
748 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
749 * Returns: The authors of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
750 */
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
751 const gchar * const *
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
752 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
753
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
754 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
755 * 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
756 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
757 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
758 * Returns a plugin's website.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
759 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
760 * Returns: The website of the plugin, or %NULL.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
761 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
762 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
763
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
764 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
765 * 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
766 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
767 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
768 * Returns the path to a plugin's icon.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
769 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
770 * 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
771 */
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
772 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
773
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
774 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
775 * 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
776 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
777 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
778 * 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
779 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
780 * 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
781 */
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
782 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
783
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
784 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
785 * 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
786 * @info: The plugin's info instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
787 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
788 * Returns the text of a plugin's license.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
789 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
790 * 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
791 */
36480
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
792 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
793
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
794 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
795 * 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
796 * @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
797 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
798 * 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
799 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
800 * 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
801 */
ea193a32e6c9 Documented all info properties according to GPlugin changes
Ankit Vani <a@nevitus.org>
parents: 36479
diff changeset
802 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
803
36389
8d86658a3b68 Added 'plugin' field to PurplePluginAction. Added purple_plugin_info_get_actions().
Ankit Vani <a@nevitus.org>
parents: 36387
diff changeset
804 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
805 * 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
806 * @info: The plugin's info instance.
36642
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
807 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
808 * 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
809 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
810 * 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
811 */
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
812 const gchar * const *
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
813 purple_plugin_info_get_dependencies(const PurplePluginInfo *info);
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
814
b8ba53daa445 Updated libpurple to use current GPlugin
Ankit Vani <a@nevitus.org>
parents: 36611
diff changeset
815 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
816 * 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
817 * @info: The plugin's info instance.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
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 * Returns the required purple ABI version for a plugin.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
820 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
821 * Returns: The required purple ABI version for the plugin.
36481
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
822 */
36482
fbddfc86848d Renamed purple-version to purple-abi. Removed abi-version from docs
Ankit Vani <a@nevitus.org>
parents: 36481
diff changeset
823 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
824
76943492ab1b Added property "purple-version"
Ankit Vani <a@nevitus.org>
parents: 36480
diff changeset
825 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
826 * 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
827 * @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
828 *
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
829 * 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
830 * 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
831 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
832 * 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
833 * 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
834 */
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 PurplePluginActionsCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
836 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
837
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
838 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
839 * 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
840 * @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
841 *
36976
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
842 * 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
843 * free the string returned by this callback.
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
844 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
845 * 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
846 */
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
847 PurplePluginExtraCb
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
848 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
849
46c2822b7c58 Added the "extra-cb" property for plugins.
Ankit Vani <a@nevitus.org>
parents: 36944
diff changeset
850 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
851 * 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
852 * @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
853 *
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
854 * 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
855 * 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
856 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
857 * 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
858 */
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
859 PurplePluginPrefFrameCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
860 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
861
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
862 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
863 * 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
864 * @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
865 *
36929
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
866 * 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
867 * 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
868 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
869 * 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
870 */
36934
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
871 PurplePluginPrefRequestCb
e7268aeb3b89 Renamed plugin info callback properties to end with "-cb", and their respective symbols.
Ankit Vani <a@nevitus.org>
parents: 36929
diff changeset
872 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
873
eed15b8d51a1 Merged soc.2013.gobjectification branch
Ankit Vani <a@nevitus.org>
parents: 35045 36926
diff changeset
874 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
875 * 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
876 * @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
877 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
878 * 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
879 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
880 * 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
881 */
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
882 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
883 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
884
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
885 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
886 * 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
887 * @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
888 *
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
889 * 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
890 * loaded.
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
891 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
892 * Returns: The plugin info error, or %NULL.
36515
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
893 */
28631d5a44f5 Added purple_plugin_info_get_error()
Ankit Vani <a@nevitus.org>
parents: 36511
diff changeset
894 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
895
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
896 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
897 * purple_plugin_info_set_ui_data:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
898 * @info: The plugin's info instance.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
899 * @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
900 *
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
901 * Set the UI data associated with a plugin.
11772
0124b31e896a [gaim-migrate @ 14063]
Gary Kramlich <grim@reaperworld.com>
parents: 10759
diff changeset
902 */
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
903 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
904
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
905 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
906 * purple_plugin_info_get_ui_data:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
907 * @info: The plugin's info instance.
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
908 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
909 * 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
910 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
911 * 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
912 * 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
913 * used by the libpurple core.
36926
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
914 */
d2c0c68a9816 Merged soc.2013.gobjectification branch.
Ankit Vani <a@nevitus.org>
parents: 35037 36899
diff changeset
915 gpointer purple_plugin_info_get_ui_data(const PurplePluginInfo *info);
11772
0124b31e896a [gaim-migrate @ 14063]
Gary Kramlich <grim@reaperworld.com>
parents: 10759
diff changeset
916
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
917 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
918 /* 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
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
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
921 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
922 * 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
923 *
37071
3ebf3bb2d317 Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35462 37060
diff changeset
924 * 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
925 */
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
926 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
927
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
928 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
929 * 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
930 * @label: The description of the action to show to the user.
37132
f4740b6e7525 Add (scope) annotation to callback parameters in plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37131
diff changeset
931 * @callback: (scope call): The callback to call when the user selects this
f4740b6e7525 Add (scope) annotation to callback parameters in plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37131
diff changeset
932 * action.
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
933 *
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
934 * 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
935 * 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
936 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
937 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
938 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
939
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
940 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
941 * 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
942 * @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
943 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
944 * 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
945 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
946 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
947
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
948 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
949 /* Plugins API */
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
950 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
951
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
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_find_all:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
954 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
955 * 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
956 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
957 * Returns: (element-type PurplePlugin) (transfer full): A list of all plugins.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
958 * 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
959 * 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
960 */
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
961 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
962
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
963 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
964 * 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
965 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
966 * Returns a list of all loaded plugins.
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
967 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
968 * Returns: (element-type PurplePlugin) (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
969 */
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
970 GList *purple_plugins_get_loaded(void);
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
971
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
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_add_search_path:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
974 * @path: The new search path.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
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 * Add a new directory to search for plugins
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
977 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
978 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
979
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
980 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
981 * purple_plugins_refresh:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
982 *
36463
b1ce7f2998e4 Added purple_plugin_loads_on_query()
Ankit Vani <a@nevitus.org>
parents: 36461
diff changeset
983 * 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
984 * that are to be auto-loaded.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
985 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
986 * See purple_plugins_add_search_path().
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
987 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
988 void purple_plugins_refresh(void);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
989
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
990 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
991 * 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
992 * @id: The plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
993 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
994 * Finds a plugin with the specified plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
995 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
996 * Returns: (transfer none): 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
997 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
998 PurplePlugin *purple_plugins_find_plugin(const gchar *id);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
999
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1000 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1001 * 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
1002 * @filename: The plugin filename.
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
1003 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1004 * 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
1005 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
1006 * Returns: (transfer none): 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
1007 */
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
1008 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
1009
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
1010 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1011 * 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
1012 * @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
1013 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
1014 * 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
1015 * 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
1016 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
1017 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
1018
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
1019 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1020 * 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
1021 * @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
1022 *
36377
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
1023 * 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
1024 * 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
1025 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
1026 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
1027
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
1028 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
1029 /* 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
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
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
1032 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1033 * 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
1034 *
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
1035 * 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
1036 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
1037 * Returns: (transfer none): 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
1038 */
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
1039 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
1040
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
1041 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1042 * purple_plugins_init:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1043 *
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
1044 * 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
1045 */
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
1046 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
1047
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
1048 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1049 * purple_plugins_uninit:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
1050 *
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
1051 * 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
1052 */
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
1053 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
1054
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
1055 G_END_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
1056
36368
0898810f4e9c Removed PurplePlugin and added PurplePluginInfo, which inherits GPluginPluginInfo
Ankit Vani <a@nevitus.org>
parents: 36367
diff changeset
1057 #endif /* _PURPLE_PLUGINS_H_ */

mercurial