prefs.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_PREFS_H_
28 #define _PURPLE_PREFS_H_
29 
30 #include <glib.h>
31 
35 typedef enum _PurplePrefType
36 {
46 
62 typedef void (*PurplePrefCallback) (const char *name, PurplePrefType type,
63  gconstpointer val, gpointer data);
64 
65 #ifdef __cplusplus
66 extern "C" {
67 #endif
68 
69 /**************************************************************************/
73 /**************************************************************************/
81 void *purple_prefs_get_handle(void);
82 
86 void purple_prefs_init(void);
87 
91 void purple_prefs_uninit(void);
92 
98 void purple_prefs_add_none(const char *name);
99 
106 void purple_prefs_add_bool(const char *name, gboolean value);
107 
114 void purple_prefs_add_int(const char *name, int value);
115 
122 void purple_prefs_add_string(const char *name, const char *value);
123 
133 void purple_prefs_add_string_list(const char *name, GList *value);
134 
141 void purple_prefs_add_path(const char *name, const char *value);
142 
152 void purple_prefs_add_path_list(const char *name, GList *value);
153 
154 
160 void purple_prefs_remove(const char *name);
161 
168 void purple_prefs_rename(const char *oldname, const char *newname);
169 
176 void purple_prefs_rename_boolean_toggle(const char *oldname, const char *newname);
177 
181 void purple_prefs_destroy(void);
182 
197 /* TODO: When this is removed, also remove struct purple_pref->value.generic */
198 void purple_prefs_set_generic(const char *name, gpointer value);
199 
206 void purple_prefs_set_bool(const char *name, gboolean value);
207 
214 void purple_prefs_set_int(const char *name, int value);
215 
222 void purple_prefs_set_string(const char *name, const char *value);
223 
230 void purple_prefs_set_string_list(const char *name, GList *value);
231 
238 void purple_prefs_set_path(const char *name, const char *value);
239 
246 void purple_prefs_set_path_list(const char *name, GList *value);
247 
248 
255 gboolean purple_prefs_exists(const char *name);
256 
263 PurplePrefType purple_prefs_get_type(const char *name);
264 
271 gboolean purple_prefs_get_bool(const char *name);
272 
279 int purple_prefs_get_int(const char *name);
280 
287 const char *purple_prefs_get_string(const char *name);
288 
295 GList *purple_prefs_get_string_list(const char *name);
296 
303 const char *purple_prefs_get_path(const char *name);
304 
311 GList *purple_prefs_get_path_list(const char *name);
312 
323 GList *purple_prefs_get_children_names(const char *name);
324 
337 guint purple_prefs_connect_callback(void *handle, const char *name, PurplePrefCallback cb,
338  gpointer data);
339 
343 void purple_prefs_disconnect_callback(guint callback_id);
344 
348 void purple_prefs_disconnect_by_handle(void *handle);
349 
353 void purple_prefs_trigger_callback(const char *name);
354 
358 gboolean purple_prefs_load(void);
359 
363 void purple_prefs_update_old(void);
364 
367 #ifdef __cplusplus
368 }
369 #endif
370 
371 #endif /* _PURPLE_PREFS_H_ */
void purple_prefs_add_int(const char *name, int value)
Add a new integer pref.
void purple_prefs_uninit(void)
Uninitializes the prefs subsystem.
guint purple_prefs_connect_callback(void *handle, const char *name, PurplePrefCallback cb, gpointer data)
Add a callback to a pref (and its children)
enum _PurplePrefType PurplePrefType
Preference data types.
void purple_prefs_remove(const char *name)
Remove a pref.
void purple_prefs_update_old(void)
Rename legacy prefs and delete some that no longer exist.
void purple_prefs_set_string_list(const char *name, GList *value)
Set string list pref value.
GList * purple_prefs_get_string_list(const char *name)
Get string list pref value.
gboolean purple_prefs_exists(const char *name)
Check if a pref exists.
void purple_prefs_set_bool(const char *name, gboolean value)
Set boolean pref value.
Boolean.
Definition: prefs.h:38
void purple_prefs_add_string(const char *name, const char *value)
Add a new string pref.
void * purple_prefs_get_handle(void)
Returns the prefs subsystem handle.
void purple_prefs_disconnect_callback(guint callback_id)
Remove a callback to a pref.
void purple_prefs_rename(const char *oldname, const char *newname)
Rename a pref.
void purple_prefs_set_generic(const char *name, gpointer value)
Set raw pref value.
void purple_prefs_set_int(const char *name, int value)
Set integer pref value.
No type.
Definition: prefs.h:37
String.
Definition: prefs.h:40
void purple_prefs_rename_boolean_toggle(const char *oldname, const char *newname)
Rename a boolean pref, toggling it's value.
void purple_prefs_set_string(const char *name, const char *value)
Set string pref value.
void purple_prefs_destroy(void)
Remove all prefs.
void purple_prefs_add_string_list(const char *name, GList *value)
Add a new string list pref.
_PurplePrefType
Preference data types.
Definition: prefs.h:35
PurplePrefType purple_prefs_get_type(const char *name)
Get pref type.
GList * purple_prefs_get_children_names(const char *name)
Returns a list of children for a pref.
int purple_prefs_get_int(const char *name)
Get integer pref value.
void purple_prefs_add_none(const char *name)
Add a new typeless pref.
void purple_prefs_add_path(const char *name, const char *value)
Add a new path pref.
void(* PurplePrefCallback)(const char *name, PurplePrefType type, gconstpointer val, gpointer data)
The type of callbacks for preference changes.
Definition: prefs.h:62
Path.
Definition: prefs.h:42
List of paths.
Definition: prefs.h:43
gboolean purple_prefs_get_bool(const char *name)
Get boolean pref value.
const char * purple_prefs_get_path(const char *name)
Get path pref value.
gboolean purple_prefs_load(void)
Read preferences.
void purple_prefs_disconnect_by_handle(void *handle)
Remove all pref callbacks by handle.
GList * purple_prefs_get_path_list(const char *name)
Get path list pref value.
void purple_prefs_add_path_list(const char *name, GList *value)
Add a new path list pref.
const char * purple_prefs_get_string(const char *name)
Get string pref value.
Integer.
Definition: prefs.h:39
List of strings.
Definition: prefs.h:41
void purple_prefs_add_bool(const char *name, gboolean value)
Add a new boolean pref.
void purple_prefs_init(void)
Initialize core prefs.
void purple_prefs_set_path(const char *name, const char *value)
Set path pref value.
void purple_prefs_trigger_callback(const char *name)
Trigger callbacks as if the pref changed.
void purple_prefs_set_path_list(const char *name, GList *value)
Set path list pref value.