pidgin/gtkplugin.h

changeset 40221
e34d79e34f9f
parent 38744
48a376346964
equal deleted inserted replaced
40220:1af60f2ac6b6 40221:e34d79e34f9f
29 */ 29 */
30 30
31 #include "pidgin.h" 31 #include "pidgin.h"
32 #include "plugins.h" 32 #include "plugins.h"
33 33
34 #define PIDGIN_TYPE_PLUGIN_INFO (pidgin_plugin_info_get_type()) 34 #include "pidginplugininfo.h"
35 #define PIDGIN_PLUGIN_INFO(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PIDGIN_TYPE_PLUGIN_INFO, PidginPluginInfo))
36 #define PIDGIN_PLUGIN_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PIDGIN_TYPE_PLUGIN_INFO, PidginPluginInfoClass))
37 #define PIDGIN_IS_PLUGIN_INFO(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PIDGIN_TYPE_PLUGIN_INFO))
38 #define PIDGIN_IS_PLUGIN_INFO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PIDGIN_TYPE_PLUGIN_INFO))
39 #define PIDGIN_PLUGIN_INFO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PIDGIN_TYPE_PLUGIN_INFO, PidginPluginInfoClass))
40
41 typedef struct _PidginPluginInfo PidginPluginInfo;
42 typedef struct _PidginPluginInfoClass PidginPluginInfoClass;
43
44 typedef GtkWidget *(*PidginPluginConfigFrameCb)(PurplePlugin *plugin);
45
46 /**
47 * PidginPluginInfo:
48 *
49 * Extends #PurplePluginInfo to hold UI information for pidgin.
50 */
51 struct _PidginPluginInfo {
52 PurplePluginInfo parent;
53 };
54
55 /**
56 * PidginPluginInfoClass:
57 *
58 * The base class for all #PidginPluginInfo's.
59 */
60 struct _PidginPluginInfoClass {
61 PurplePluginInfoClass parent_class;
62
63 /*< private >*/
64 void (*_pidgin_reserved1)(void);
65 void (*_pidgin_reserved2)(void);
66 void (*_pidgin_reserved3)(void);
67 void (*_pidgin_reserved4)(void);
68 };
69 35
70 G_BEGIN_DECLS 36 G_BEGIN_DECLS
71
72 /**
73 * pidgin_plugin_info_get_type:
74 *
75 * Returns: The #GType for the #PidginPluginInfo object.
76 */
77 GType pidgin_plugin_info_get_type(void);
78
79 /**
80 * pidgin_plugin_info_new:
81 * @first_property: The first property name
82 * @...: The value of the first property, followed optionally by more
83 * name/value pairs, followed by %NULL
84 *
85 * Creates a new #PidginPluginInfo instance to be returned from
86 * #plugin_query of a pidgin plugin, using the provided name/value
87 * pairs.
88 *
89 * See purple_plugin_info_new() for a list of available property names.
90 * Additionally, you can provide the property
91 * <literal>"gtk-config-frame-cb"</literal>, which should be a callback that
92 * returns a #GtkWidget for the plugin's configuration
93 * (see #PidginPluginConfigFrameCb).
94 *
95 * See purple_plugin_info_new().
96 *
97 * Returns: A new #PidginPluginInfo instance.
98 */
99 PidginPluginInfo *pidgin_plugin_info_new(const char *first_property, ...)
100 G_GNUC_NULL_TERMINATED;
101 37
102 /** 38 /**
103 * pidgin_plugins_save: 39 * pidgin_plugins_save:
104 * 40 *
105 * Saves all loaded plugins. 41 * Saves all loaded plugins.

mercurial