pluginpref.h
Go to the documentation of this file.
1
6 /* purple
7 *
8 * Purple is the legal property of its developers, whose names are too numerous
9 * to list here. Please refer to the COPYRIGHT file distributed with this
10 * source distribution.
11 *
12 * This program is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * You should have received a copy of the GNU General Public License
23 * along with this program; if not, write to the Free Software
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
25 *
26 */
27 #ifndef _PURPLE_PLUGINPREF_H_
28 #define _PURPLE_PLUGINPREF_H_
29
30 typedef struct _PurplePluginPrefFrame PurplePluginPrefFrame;
31 typedef struct _PurplePluginPref PurplePluginPref;
32
36 typedef enum
37 {
38 PURPLE_STRING_FORMAT_TYPE_NONE = 0,
39 PURPLE_STRING_FORMAT_TYPE_MULTILINE = 1 << 0,
40 PURPLE_STRING_FORMAT_TYPE_HTML = 1 << 1
41 } PurpleStringFormatType;
42
43 typedef enum {
44 PURPLE_PLUGIN_PREF_NONE,
45 PURPLE_PLUGIN_PREF_CHOICE,
46 PURPLE_PLUGIN_PREF_INFO,
47 PURPLE_PLUGIN_PREF_STRING_FORMAT
48 } PurplePluginPrefType;
49
50 #include <glib.h>
51 #include "prefs.h"
52
53 #ifdef __cplusplus
54 extern "C" {
55 #endif
56
57 /**************************************************************************/
59 /**************************************************************************/
67 PurplePluginPrefFrame *purple_plugin_pref_frame_new(void);
68
74 void purple_plugin_pref_frame_destroy(PurplePluginPrefFrame *frame);
75
82 void purple_plugin_pref_frame_add(PurplePluginPrefFrame *frame, PurplePluginPref *pref);
83
90 GList *purple_plugin_pref_frame_get_prefs(PurplePluginPrefFrame *frame);
91
97 PurplePluginPref *purple_plugin_pref_new(void);
98
105 PurplePluginPref *purple_plugin_pref_new_with_name(const char *name);
106
113 PurplePluginPref *purple_plugin_pref_new_with_label(const char *label);
114
122 PurplePluginPref *purple_plugin_pref_new_with_name_and_label(const char *name, const char *label);
123
129 void purple_plugin_pref_destroy(PurplePluginPref *pref);
130
137 void purple_plugin_pref_set_name(PurplePluginPref *pref, const char *name);
138
145 const char *purple_plugin_pref_get_name(PurplePluginPref *pref);
146
153 void purple_plugin_pref_set_label(PurplePluginPref *pref, const char *label);
154
161 const char *purple_plugin_pref_get_label(PurplePluginPref *pref);
162
170 void purple_plugin_pref_set_bounds(PurplePluginPref *pref, int min, int max);
171
179 void purple_plugin_pref_get_bounds(PurplePluginPref *pref, int *min, int *max);
180
187 void purple_plugin_pref_set_type(PurplePluginPref *pref, PurplePluginPrefType type);
188
195 PurplePluginPrefType purple_plugin_pref_get_type(PurplePluginPref *pref);
196
204 void purple_plugin_pref_add_choice(PurplePluginPref *pref, const char *label, gpointer choice);
205
212 GList *purple_plugin_pref_get_choices(PurplePluginPref *pref);
213
220 void purple_plugin_pref_set_max_length(PurplePluginPref *pref, unsigned int max_length);
221
228 unsigned int purple_plugin_pref_get_max_length(PurplePluginPref *pref);
229
236 void purple_plugin_pref_set_masked(PurplePluginPref *pref, gboolean mask);
237
244 gboolean purple_plugin_pref_get_masked(PurplePluginPref *pref);
245
253 void purple_plugin_pref_set_format_type(PurplePluginPref *pref, PurpleStringFormatType format);
254
261 PurpleStringFormatType purple_plugin_pref_get_format_type(PurplePluginPref *pref);
262
265 #ifdef __cplusplus
266 }
267 #endif
268
269 #endif /* _PURPLE_PLUGINPREF_H_ */
purple_plugin_pref_add_choice
void purple_plugin_pref_add_choice(PurplePluginPref *pref, const char *label, gpointer choice)
Set the choices for a choices plugin pref.
purple_plugin_pref_new_with_name_and_label
PurplePluginPref * purple_plugin_pref_new_with_name_and_label(const char *name, const char *label)
Create a new plugin preference with name and label.
purple_plugin_pref_get_choices
GList * purple_plugin_pref_get_choices(PurplePluginPref *pref)
Get the choices for a choices plugin pref.
purple_plugin_pref_get_type
PurplePluginPrefType purple_plugin_pref_get_type(PurplePluginPref *pref)
Get the type of a plugin pref.
purple_plugin_pref_frame_destroy
void purple_plugin_pref_frame_destroy(PurplePluginPrefFrame *frame)
Destroy a plugin preference frame.
purple_plugin_pref_get_bounds
void purple_plugin_pref_get_bounds(PurplePluginPref *pref, int *min, int *max)
Get the bounds for an integer pref.
PURPLE_STRING_FORMAT_TYPE_MULTILINE
The string can have newlines.
Definition: pluginpref.h:39
purple_plugin_pref_new_with_label
PurplePluginPref * purple_plugin_pref_new_with_label(const char *label)
Create a new plugin preference with label.
purple_plugin_pref_set_masked
void purple_plugin_pref_set_masked(PurplePluginPref *pref, gboolean mask)
Sets the masking of a string plugin pref.
purple_plugin_pref_set_label
void purple_plugin_pref_set_label(PurplePluginPref *pref, const char *label)
Set a plugin pref label.
prefs.h
Prefs API.
purple_plugin_pref_frame_new
PurplePluginPrefFrame * purple_plugin_pref_frame_new(void)
Create a new plugin preference frame.
PURPLE_STRING_FORMAT_TYPE_NONE
The string is plain text.
Definition: pluginpref.h:38
purple_plugin_pref_set_type
void purple_plugin_pref_set_type(PurplePluginPref *pref, PurplePluginPrefType type)
Set the type of a plugin pref.
purple_plugin_pref_set_name
void purple_plugin_pref_set_name(PurplePluginPref *pref, const char *name)
Set a plugin pref name.
purple_plugin_pref_set_bounds
void purple_plugin_pref_set_bounds(PurplePluginPref *pref, int min, int max)
Set the bounds for an integer pref.
PurplePluginPrefType
PurplePluginPrefType
Definition: pluginpref.h:43
purple_plugin_pref_frame_get_prefs
GList * purple_plugin_pref_frame_get_prefs(PurplePluginPrefFrame *frame)
Get the plugin preferences from a plugin preference frame.
purple_plugin_pref_set_max_length
void purple_plugin_pref_set_max_length(PurplePluginPref *pref, unsigned int max_length)
Set the max length for a string plugin pref.
purple_plugin_pref_get_format_type
PurpleStringFormatType purple_plugin_pref_get_format_type(PurplePluginPref *pref)
Gets the format type of the formattable-string plugin pref.
purple_plugin_pref_set_format_type
void purple_plugin_pref_set_format_type(PurplePluginPref *pref, PurpleStringFormatType format)
Sets the format type for a formattable-string plugin pref.
purple_plugin_pref_new
PurplePluginPref * purple_plugin_pref_new(void)
Create a new plugin preference.
PURPLE_PLUGIN_PREF_INFO
no-value label
Definition: pluginpref.h:46
PURPLE_PLUGIN_PREF_STRING_FORMAT
The preference has a string value.
Definition: pluginpref.h:47
purple_plugin_pref_get_name
const char * purple_plugin_pref_get_name(PurplePluginPref *pref)
Get a plugin pref name.
PurpleStringFormatType
PurpleStringFormatType
String format for preferences.
Definition: pluginpref.h:36
purple_plugin_pref_get_label
const char * purple_plugin_pref_get_label(PurplePluginPref *pref)
Get a plugin pref label.
purple_plugin_pref_new_with_name
PurplePluginPref * purple_plugin_pref_new_with_name(const char *name)
Create a new plugin preference with name.
purple_plugin_pref_get_max_length
unsigned int purple_plugin_pref_get_max_length(PurplePluginPref *pref)
Get the max length for a string plugin pref.
PURPLE_STRING_FORMAT_TYPE_HTML
The string can be in HTML.
Definition: pluginpref.h:40
purple_plugin_pref_frame_add
void purple_plugin_pref_frame_add(PurplePluginPrefFrame *frame, PurplePluginPref *pref)
Adds a plugin preference to a plugin preference frame.
purple_plugin_pref_get_masked
gboolean purple_plugin_pref_get_masked(PurplePluginPref *pref)
Gets the masking of a string plugin pref.
purple_plugin_pref_destroy
void purple_plugin_pref_destroy(PurplePluginPref *pref)
Destroy a plugin preference.