libpurple/plugins.h

Mon, 18 Oct 2021 02:44:32 -0500

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Mon, 18 Oct 2021 02:44:32 -0500
changeset 41111
19acd30c5000
parent 40963
f2abd04191b7
child 41201
0df058800827
permissions
-rw-r--r--

Close the Debug Window on shutdown

Otherwise, it tries to read prefs after that subsystem is shut down.

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
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40188
diff changeset
22 #if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION)
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40188
diff changeset
23 # error "only <purple.h> may be included directly"
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40188
diff changeset
24 #endif
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40188
diff changeset
25
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39420
diff changeset
26 #ifndef PURPLE_PLUGINS_H
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39420
diff changeset
27 #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
28 /**
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
29 * SECTION:plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
30 * @section_id: libpurple-plugins
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
31 * @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
32 * @title: Plugin API
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
33 * @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
34 * <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
35 * <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
36 */
e5206d7698e5 Add section blocks for plugins.h, protocol.h, protocols.h
Ankit Vani <a@nevitus.org>
parents: 37059
diff changeset
37
36357
1a49a1a9ce18 Started the new GObject plugin API
Ankit Vani <a@nevitus.org>
parents: 34801
diff changeset
38 #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
39 #include <gplugin-native.h>
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40
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
41 #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
42
36509
86e882c3cfdf Refactored libpurple according to the changes
Ankit Vani <a@nevitus.org>
parents: 36508
diff changeset
43 #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
44
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
45 #define PURPLE_TYPE_PLUGIN GPLUGIN_TYPE_PLUGIN
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
46 #define PURPLE_PLUGIN(obj) GPLUGIN_PLUGIN(obj)
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
47 #define PURPLE_IS_PLUGIN(obj) GPLUGIN_IS_PLUGIN(obj)
39419
e8e189c88b13 libpurple: Port to new, refactored API of GPlugin 0.28
Mike Ruprecht <cmaiku@gmail.com>
parents: 39411
diff changeset
48 #define PURPLE_PLUGIN_GET_IFACE(obj) GPLUGIN_PLUGIN_GET_IFACE(obj)
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
49
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
50 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
51 * PurplePlugin:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
52 *
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
53 * Represents a plugin handle.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
54 * This type is an alias for GPluginPlugin.
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
55 */
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
56 typedef GPluginPlugin PurplePlugin;
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
57
39419
e8e189c88b13 libpurple: Port to new, refactored API of GPlugin 0.28
Mike Ruprecht <cmaiku@gmail.com>
parents: 39411
diff changeset
58 typedef GPluginPluginInterface PurplePluginInterface;
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
59
40963
f2abd04191b7 Split PurplePluginInfo out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40945
diff changeset
60 #include "purpleplugininfo.h"
8749
fb487e9e101a [gaim-migrate @ 9504]
Christian Hammond <chipx86@chipx86.com>
parents: 8735
diff changeset
61
40524
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
62 /**
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
63 * PURPLE_TYPE_PLUGIN_ACTION:
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
64 *
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
65 * The standard _get_type macro for #PurplePluginAction.
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
66 */
a3b1cde8d2d8 Add documentation for all PURPLE_TYPE_ functions as well as PURPLE_TUNE_ constants
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
67 #define PURPLE_TYPE_PLUGIN_ACTION (purple_plugin_action_get_type())
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
68 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
69
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
70 /**
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
71 * PurplePluginActionCb:
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
72 * @action: the action information.
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
73 *
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
74 * 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
75 */
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
76 typedef void (*PurplePluginActionCb)(PurplePluginAction *action);
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
77
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
78 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
79 * PurplePluginAction:
39872
669d3113448d Document the fields of PurplePluginAction
Gary Kramlich <grim@reaperworld.com>
parents: 39837
diff changeset
80 * @label: The label to display in the user interface.
669d3113448d Document the fields of PurplePluginAction
Gary Kramlich <grim@reaperworld.com>
parents: 39837
diff changeset
81 * @callback: The function to call when the user wants to perform this action.
669d3113448d Document the fields of PurplePluginAction
Gary Kramlich <grim@reaperworld.com>
parents: 39837
diff changeset
82 * @plugin: The plugin that this action belongs to.
669d3113448d Document the fields of PurplePluginAction
Gary Kramlich <grim@reaperworld.com>
parents: 39837
diff changeset
83 * @user_data: User data to pass to @callback.
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
84 *
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
85 * 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
86 * 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
87 */
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
88 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
89 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
90 PurplePluginActionCb callback;
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
91 PurplePlugin *plugin;
36495
a9e328e153ab will document id format later
Ankit Vani <a@nevitus.org>
parents: 36493
diff changeset
92 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
93 };
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
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
95 G_BEGIN_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
96
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
97 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
98 /* Plugin API */
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
99 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
100
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
101 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
102 * purple_plugin_load:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
103 * @plugin: The plugin to load.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
104 * @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
105 * 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
106 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
107 * 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
108 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
109 * Also see purple_plugin_unload().
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
110 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
111 * 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
112 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
113 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
114
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
115 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
116 * purple_plugin_unload:
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
117 * @plugin: The plugin handle.
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
118 * @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
119 * 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
120 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
121 * 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
122 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
123 * Also see purple_plugin_load().
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
124 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
125 * 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
126 */
36508
88400e054286 Return a GError if load or unload fails
Ankit Vani <a@nevitus.org>
parents: 36505
diff changeset
127 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
128
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
129 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
130 * 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
131 * @plugin: The plugin.
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
132 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
133 * 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
134 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
135 * 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
136 */
39420
92213bd9538b plugins: Drop consts from arguments to mirror new GPlugin 0.28 API
Mike Ruprecht <cmaiku@gmail.com>
parents: 39419
diff changeset
137 gboolean purple_plugin_is_loaded(PurplePlugin *plugin);
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
138
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
139 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
140 * purple_plugin_get_info:
37084
5cf27e3320e1 Fix some gtk-doc warnings
Ankit Vani <a@nevitus.org>
parents: 37076
diff changeset
141 * @plugin: The plugin.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
142 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
143 * Returns a plugin's #PurplePluginInfo instance.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
144 *
38745
f4376b1f4682 A ton more of introspection cleanups
Gary Kramlich <grim@reaperworld.com>
parents: 38016
diff changeset
145 * 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
146 * 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
147 * 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
148 * 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
149 * exist as long as the plugin exists.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
150 */
39420
92213bd9538b plugins: Drop consts from arguments to mirror new GPlugin 0.28 API
Mike Ruprecht <cmaiku@gmail.com>
parents: 39419
diff changeset
151 PurplePluginInfo *purple_plugin_get_info(PurplePlugin *plugin);
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
152
36396
add1d5e2314c Renamed actions_add functions to add_action functions
Ankit Vani <a@nevitus.org>
parents: 36395
diff changeset
153 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
154 * purple_plugin_disable:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
155 *
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
156 * 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
157 *
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
158 * 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
159 * 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
160 * 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
161 * 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
162 */
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
163 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
164
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
165 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
166 * 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
167 * @plugin: The plugin.
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
168 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
169 * 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
170 * 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
171 * 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
172 * 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
173 *
37034
9d6765962b22 Initial replacements for this branch
Ankit Vani <a@nevitus.org>
parents: 37023
diff changeset
174 * 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
175 */
39420
92213bd9538b plugins: Drop consts from arguments to mirror new GPlugin 0.28 API
Mike Ruprecht <cmaiku@gmail.com>
parents: 39419
diff changeset
176 gboolean purple_plugin_is_internal(PurplePlugin *plugin);
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
177
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
178 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
179 * 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
180 * @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
181 *
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
182 * 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
183 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
184 * 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
185 * 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
186 */
39420
92213bd9538b plugins: Drop consts from arguments to mirror new GPlugin 0.28 API
Mike Ruprecht <cmaiku@gmail.com>
parents: 39419
diff changeset
187 GSList *purple_plugin_get_dependent_plugins(PurplePlugin *plugin);
36397
4ae45b445bb9 Added purple_plugin_disable()
Ankit Vani <a@nevitus.org>
parents: 36396
diff changeset
188
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
189 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
190 /* 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
191 /**************************************************************************/
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
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 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
194 * 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
195 *
37071
3ebf3bb2d317 Merge gtkdoc-conversion
Ankit Vani <a@nevitus.org>
parents: 35462 37060
diff changeset
196 * 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
197 */
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
198 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
199
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
200 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
201 * 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
202 * @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
203 * @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
204 * action.
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
205 *
36487
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
206 * 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
207 * 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
208 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
209 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
210 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
211
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
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 * 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
214 * @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
215 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
216 * 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
217 */
725e37471387 Make actions a callback again, so that a plugin/protocol can change them
Ankit Vani <a@nevitus.org>
parents: 36486
diff changeset
218 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
219
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
220 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
221 /* Plugins API */
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
222 /**************************************************************************/
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
223
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
224 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
225 * 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
226 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
227 * 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
228 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
229 * 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
230 * 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
231 * 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
232 */
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
233 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
234
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
235 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
236 * 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
237 *
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
238 * Returns a list of all loaded plugins.
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
239 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
240 * 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
241 */
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
242 GList *purple_plugins_get_loaded(void);
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
243
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
244 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
245 * 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
246 * @path: The new search path.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
247 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
248 * Add a new directory to search for plugins
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
249 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
250 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
251
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
252 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
253 * purple_plugins_refresh:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
254 *
36463
b1ce7f2998e4 Added purple_plugin_loads_on_query()
Ankit Vani <a@nevitus.org>
parents: 36461
diff changeset
255 * 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
256 * that are to be auto-loaded.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
257 *
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
258 * See purple_plugins_add_search_path().
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
259 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
260 void purple_plugins_refresh(void);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
261
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
262 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
263 * 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
264 * @id: The plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
265 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
266 * Finds a plugin with the specified plugin ID.
36436
28bd31dc7287 Added documentation for all functions
Ankit Vani <a@nevitus.org>
parents: 36435
diff changeset
267 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
268 * 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
269 */
36429
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
270 PurplePlugin *purple_plugins_find_plugin(const gchar *id);
5c2bc13927b0 Added wrappers for some gplugin functions
Ankit Vani <a@nevitus.org>
parents: 36428
diff changeset
271
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
272 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
273 * 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
274 * @filename: The plugin filename.
36399
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
275 *
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
276 * 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
277 *
37402
404282320cf8 Improve GIntrospection annotations for Plugins API
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37146
diff changeset
278 * 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
279 */
36428
ba8ead8477cb Added PurplePlugin as an alias for GPluginPlugin
Ankit Vani <a@nevitus.org>
parents: 36412
diff changeset
280 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
281
f5d2c9da9ea0 Added purple_plugins_find_by_filename()
Ankit Vani <a@nevitus.org>
parents: 36398
diff changeset
282 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
283 * 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
284 * @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
285 *
36467
52aa83c47311 Replaced purple_plugin_loads_on_query() with purple_plugin_is_internal().
Ankit Vani <a@nevitus.org>
parents: 36463
diff changeset
286 * 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
287 * 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
288 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
289 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
290
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
291 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
292 * 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
293 * @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
294 *
36377
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
295 * 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
296 * 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
297 */
28ec73fbb37d Added purple_plugins_save_loaded() and purple_plugins_load_saved()
Ankit Vani <a@nevitus.org>
parents: 36370
diff changeset
298 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
299
36370
04a6a552bee4 Added the following functions to plugins.[ch]:
Ankit Vani <a@nevitus.org>
parents: 36368
diff changeset
300 /**************************************************************************/
37076
38040771ae12 Remove @name from plugins.h
Ankit Vani <a@nevitus.org>
parents: 37075
diff changeset
301 /* 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
302 /**************************************************************************/
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
303
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
304 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
305 * purple_plugins_init:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
306 *
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
307 * 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
308 */
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
309 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
310
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
311 /**
37036
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
312 * purple_plugins_uninit:
a8e12bcb0a74 Convert the new .h files for this branch for gtk-doc
Ankit Vani <a@nevitus.org>
parents: 37035
diff changeset
313 *
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
314 * 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
315 */
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
316 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
317
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
318 G_END_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5840
diff changeset
319
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39420
diff changeset
320 #endif /* PURPLE_PLUGINS_H */

mercurial