Mercurial > pidgin.yaz
comparison src/plugin.h @ 8713:7024b595b6ae
[gaim-migrate @ 9467]
" Expansion from my original protocol prefs to plugin prefs.
Things are handled a bit different in this iteration of
it, but I have already modified msn and jabber to use
it, and included an example plugin to show how to use
it. It will also generate pages with doxygen. The
example plugin doesn't not contain any translatable
strings seeing as we're in the string freeze. And it's
an example, whats the point of translating it..?
Also, I tweaked the documentation for 2 functions in
gtkprefs, gaim_gtk_prefs_dropdown and
gaim_gtk_prefs_dropdown_from_list. Nothing major in
that, just made it say that the list should be a list
of pairs label/value.
Also there's 5 new files that will need to be added to cvs:
src/pluginpref.h
src/pluginpref.c
src/gtkpluginpref.h
src/gtkpluginpref.c
plugins/pluginpref_example.c
the tarball already has them structured correctly and
contains the diff" --Gary Kramlich - amc_grim
and the german translator pointed out that sean missed the novell file for POTFILES.in
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Mon, 19 Apr 2004 21:12:45 +0000 |
parents | 6b1ecf40f3ba |
children | 92cbf9713795 |
comparison
equal
deleted
inserted
replaced
8712:a4ff6e79c5fc | 8713:7024b595b6ae |
---|---|
27 | 27 |
28 #include <gmodule.h> | 28 #include <gmodule.h> |
29 #include "signals.h" | 29 #include "signals.h" |
30 #include "value.h" | 30 #include "value.h" |
31 | 31 |
32 typedef struct _GaimPlugin GaimPlugin; /**< GaimPlugin */ | 32 typedef struct _GaimPlugin GaimPlugin; /**< GaimPlugin */ |
33 typedef struct _GaimPluginInfo GaimPluginInfo; /**< GaimPluginInfo */ | 33 typedef struct _GaimPluginInfo GaimPluginInfo; /**< GaimPluginInfo */ |
34 typedef struct _GaimPluginUiInfo GaimPluginUiInfo; /**< GaimPluginUiInfo */ | |
34 typedef struct _GaimPluginLoaderInfo GaimPluginLoaderInfo; | 35 typedef struct _GaimPluginLoaderInfo GaimPluginLoaderInfo; |
35 | 36 |
36 typedef int GaimPluginPriority; /**< Plugin priority. */ | 37 typedef int GaimPluginPriority; /**< Plugin priority. */ |
38 | |
39 #include "pluginpref.h" | |
37 | 40 |
38 /** | 41 /** |
39 * Plugin types. | 42 * Plugin types. |
40 */ | 43 */ |
41 typedef enum | 44 typedef enum |
79 gboolean (*unload)(GaimPlugin *plugin); | 82 gboolean (*unload)(GaimPlugin *plugin); |
80 void (*destroy)(GaimPlugin *plugin); | 83 void (*destroy)(GaimPlugin *plugin); |
81 | 84 |
82 void *ui_info; | 85 void *ui_info; |
83 void *extra_info; | 86 void *extra_info; |
87 void *prefs_info; | |
84 }; | 88 }; |
85 | 89 |
86 /** | 90 /** |
87 * Extra information for loader plugins. | 91 * Extra information for loader plugins. |
88 */ | 92 */ |
111 void *extra; /**< Plugin-specific data. */ | 115 void *extra; /**< Plugin-specific data. */ |
112 }; | 116 }; |
113 | 117 |
114 #define GAIM_PLUGIN_LOADER_INFO(plugin) \ | 118 #define GAIM_PLUGIN_LOADER_INFO(plugin) \ |
115 ((GaimPluginLoaderInfo *)(plugin)->info->extra_info) | 119 ((GaimPluginLoaderInfo *)(plugin)->info->extra_info) |
120 | |
121 struct _GaimPluginUiInfo { | |
122 GaimPluginPrefFrame *(*get_plugin_pref_frame)(GaimPlugin *plugin); | |
123 | |
124 void *iter; /**< Reserved */ | |
125 }; | |
126 | |
127 #define GAIM_PLUGIN_HAS_PREF_FRAME(plugin) \ | |
128 ((plugin)->info != NULL && (plugin)->info->prefs_info != NULL) | |
129 | |
130 #define GAIM_PLUGIN_UI_INFO(plugin) \ | |
131 ((GaimPluginUiInfo*)(plugin)->info->prefs_info) | |
116 | 132 |
117 /** | 133 /** |
118 * Handles the initialization of modules. | 134 * Handles the initialization of modules. |
119 */ | 135 */ |
120 #if !defined(GAIM_PLUGINS) || defined(GAIM_STATIC_PRPL) | 136 #if !defined(GAIM_PLUGINS) || defined(GAIM_STATIC_PRPL) |