Loading...
Searching...
No Matches
prefs.h
Go to the documentation of this file.
/* purple
*
* Purple is the legal property of its developers, whose names are too numerous
* to list here. Please refer to the COPYRIGHT file distributed with this
* source distribution.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
*
*/
#ifndef _PURPLE_PREFS_H_
#define _PURPLE_PREFS_H_
#include <glib.h>
typedef enum _PurplePrefType
{
PURPLE_PREF_NONE,
PURPLE_PREF_BOOLEAN,
PURPLE_PREF_INT,
PURPLE_PREF_STRING,
PURPLE_PREF_STRING_LIST,
PURPLE_PREF_PATH,
PURPLE_PREF_PATH_LIST
} PurplePrefType;
typedef void (*PurplePrefCallback) (const char *name, PurplePrefType type,
gconstpointer val, gpointer data);
typedef struct _PurplePrefCallbackData PurplePrefCallbackData;
typedef struct _PurplePrefsUiOps PurplePrefsUiOps;
struct _PurplePrefsUiOps
{
void (*add_none)(const char *name);
void (*add_bool)(const char *name, gboolean value);
void (*add_int)(const char *name, int value);
void (*add_string)(const char *name, const char *value);
void (*add_string_list)(const char *name, GList *value);
void (*set_bool)(const char *name, gboolean value);
void (*set_int)(const char *name, int value);
void (*set_string)(const char *name, const char *value);
void (*set_string_list)(const char *name, GList *value);
gboolean (*get_bool)(const char *name);
int (*get_int)(const char *name);
const char *(*get_string)(const char *name);
GList *(*get_string_list)(const char *name);
PurplePrefType (*get_type)(const char *name);
GList *(*get_children_names)(const char *name);
gboolean (*exists)(const char *name);
void (*remove)(const char *name);
void (*rename)(const char *oldname, const char *newname);
void (*rename_boolean_toggle)(const char *oldname, const char *newname);
gboolean (*load)(void);
void (*save)(void);
void (*schedule_save)(void);
void *(*connect_callback)(const char *name, PurplePrefCallbackData *data);
void (*disconnect_callback)(const char *name, void *ui_data);
void (*_purple_reserved1)(void);
void (*_purple_reserved2)(void);
void (*_purple_reserved3)(void);
void (*_purple_reserved4)(void);
void (*_purple_reserved5)(void);
};
#ifdef __cplusplus
extern "C" {
#endif
/**************************************************************************/
/**************************************************************************/
void purple_prefs_set_ui_ops(PurplePrefsUiOps *ops);
PurplePrefsUiOps *purple_prefs_get_ui_ops(void);
/**************************************************************************/
/**************************************************************************/
void *purple_prefs_get_handle(void);
void purple_prefs_init(void);
void purple_prefs_uninit(void);
void purple_prefs_add_none(const char *name);
void purple_prefs_add_bool(const char *name, gboolean value);
void purple_prefs_add_int(const char *name, int value);
void purple_prefs_add_string(const char *name, const char *value);
void purple_prefs_add_string_list(const char *name, GList *value);
void purple_prefs_add_path(const char *name, const char *value);
void purple_prefs_add_path_list(const char *name, GList *value);
void purple_prefs_remove(const char *name);
void purple_prefs_rename(const char *oldname, const char *newname);
void purple_prefs_rename_boolean_toggle(const char *oldname, const char *newname);
void purple_prefs_destroy(void);
/* TODO: When this is removed, also remove struct purple_pref->value.generic */
void purple_prefs_set_generic(const char *name, gpointer value);
void purple_prefs_set_bool(const char *name, gboolean value);
void purple_prefs_set_int(const char *name, int value);
void purple_prefs_set_string(const char *name, const char *value);
void purple_prefs_set_string_list(const char *name, GList *value);
void purple_prefs_set_path(const char *name, const char *value);
void purple_prefs_set_path_list(const char *name, GList *value);
gboolean purple_prefs_exists(const char *name);
PurplePrefType purple_prefs_get_type(const char *name);
gboolean purple_prefs_get_bool(const char *name);
int purple_prefs_get_int(const char *name);
const char *purple_prefs_get_string(const char *name);
GList *purple_prefs_get_string_list(const char *name);
const char *purple_prefs_get_path(const char *name);
GList *purple_prefs_get_path_list(const char *name);
GList *purple_prefs_get_children_names(const char *name);
guint purple_prefs_connect_callback(void *handle, const char *name, PurplePrefCallback cb,
gpointer data);
void purple_prefs_disconnect_callback(guint callback_id);
void purple_prefs_disconnect_by_handle(void *handle);
void purple_prefs_trigger_callback(const char *name);
void purple_prefs_trigger_callback_object(PurplePrefCallbackData *data);
gboolean purple_prefs_load(void);
void purple_prefs_update_old(void);
#ifdef __cplusplus
}
#endif
#endif /* _PURPLE_PREFS_H_ */
purple_prefs_uninit
void purple_prefs_uninit(void)
Uninitializes the prefs subsystem.
purple_prefs_exists
gboolean purple_prefs_exists(const char *name)
Check if a pref exists.
purple_prefs_set_string_list
void purple_prefs_set_string_list(const char *name, GList *value)
Set string list pref value.
purple_prefs_set_path_list
void purple_prefs_set_path_list(const char *name, GList *value)
Set path list pref value.
purple_prefs_set_path
void purple_prefs_set_path(const char *name, const char *value)
Set path pref value.
purple_prefs_set_int
void purple_prefs_set_int(const char *name, int value)
Set integer pref value.
purple_prefs_get_children_names
GList * purple_prefs_get_children_names(const char *name)
Returns a list of children for a pref.
purple_prefs_disconnect_callback
void purple_prefs_disconnect_callback(guint callback_id)
Remove a callback to a pref.
purple_prefs_rename_boolean_toggle
void purple_prefs_rename_boolean_toggle(const char *oldname, const char *newname)
Rename a boolean pref, toggling it's value.
PurplePrefCallback
void(* PurplePrefCallback)(const char *name, PurplePrefType type, gconstpointer val, gpointer data)
The type of callbacks for preference changes.
Definition prefs.h:62
purple_prefs_add_path_list
void purple_prefs_add_path_list(const char *name, GList *value)
Add a new path list pref.
purple_prefs_trigger_callback_object
void purple_prefs_trigger_callback_object(PurplePrefCallbackData *data)
Trigger callbacks as if the pref changed, taking a PurplePrefCallbackData instead of a name.
_PurplePrefType
_PurplePrefType
Preference data types.
Definition prefs.h:36
PURPLE_PREF_NONE
@ PURPLE_PREF_NONE
No type.
Definition prefs.h:37
PURPLE_PREF_INT
@ PURPLE_PREF_INT
Integer.
Definition prefs.h:39
PURPLE_PREF_STRING_LIST
@ PURPLE_PREF_STRING_LIST
List of strings.
Definition prefs.h:41
PURPLE_PREF_BOOLEAN
@ PURPLE_PREF_BOOLEAN
Boolean.
Definition prefs.h:38
PURPLE_PREF_STRING
@ PURPLE_PREF_STRING
String.
Definition prefs.h:40
PURPLE_PREF_PATH_LIST
@ PURPLE_PREF_PATH_LIST
List of paths.
Definition prefs.h:43
PURPLE_PREF_PATH
@ PURPLE_PREF_PATH
Path.
Definition prefs.h:42
purple_prefs_set_bool
void purple_prefs_set_bool(const char *name, gboolean value)
Set boolean pref value.
purple_prefs_get_path
const char * purple_prefs_get_path(const char *name)
Get path pref value.
purple_prefs_get_string_list
GList * purple_prefs_get_string_list(const char *name)
Get string list pref value.
purple_prefs_update_old
void purple_prefs_update_old(void)
Rename legacy prefs and delete some that no longer exist.
purple_prefs_init
void purple_prefs_init(void)
Initialize core prefs.
purple_prefs_add_path
void purple_prefs_add_path(const char *name, const char *value)
Add a new path pref.
PurplePrefType
enum _PurplePrefType PurplePrefType
Preference data types.
purple_prefs_add_bool
void purple_prefs_add_bool(const char *name, gboolean value)
Add a new boolean pref.
purple_prefs_add_string
void purple_prefs_add_string(const char *name, const char *value)
Add a new string pref.
purple_prefs_get_handle
void * purple_prefs_get_handle(void)
Returns the prefs subsystem handle.
purple_prefs_set_string
void purple_prefs_set_string(const char *name, const char *value)
Set string pref value.
purple_prefs_load
gboolean purple_prefs_load(void)
Read preferences.
purple_prefs_get_int
int purple_prefs_get_int(const char *name)
Get integer pref value.
purple_prefs_get_path_list
GList * purple_prefs_get_path_list(const char *name)
Get path list pref value.
purple_prefs_disconnect_by_handle
void purple_prefs_disconnect_by_handle(void *handle)
Remove all pref callbacks by handle.
purple_prefs_get_string
const char * purple_prefs_get_string(const char *name)
Get string pref value.
purple_prefs_set_ui_ops
void purple_prefs_set_ui_ops(PurplePrefsUiOps *ops)
Sets the UI operations structure to be used for preferences.
PurplePrefCallbackData
struct _PurplePrefCallbackData PurplePrefCallbackData
Opaque type to carry callback information.
Definition prefs.h:70
purple_prefs_set_generic
void purple_prefs_set_generic(const char *name, gpointer value)
Set raw pref value.
purple_prefs_remove
void purple_prefs_remove(const char *name)
Remove a pref.
purple_prefs_add_none
void purple_prefs_add_none(const char *name)
Add a new typeless pref.
purple_prefs_get_bool
gboolean purple_prefs_get_bool(const char *name)
Get boolean pref value.
purple_prefs_trigger_callback
void purple_prefs_trigger_callback(const char *name)
Trigger callbacks as if the pref changed.
purple_prefs_get_ui_ops
PurplePrefsUiOps * purple_prefs_get_ui_ops(void)
Returns the UI operations structure used for preferences.
purple_prefs_destroy
void purple_prefs_destroy(void)
Remove all prefs.
purple_prefs_connect_callback
guint purple_prefs_connect_callback(void *handle, const char *name, PurplePrefCallback cb, gpointer data)
Add a callback to a pref (and its children)
purple_prefs_add_int
void purple_prefs_add_int(const char *name, int value)
Add a new integer pref.
purple_prefs_get_type
PurplePrefType purple_prefs_get_type(const char *name)
Get pref type.
purple_prefs_rename
void purple_prefs_rename(const char *oldname, const char *newname)
Rename a pref.
purple_prefs_add_string_list
void purple_prefs_add_string_list(const char *name, GList *value)
Add a new string list pref.
_PurplePrefsUiOps
Prefs UI operations.
Definition prefs.h:88
_PurplePrefsUiOps::disconnect_callback
void(* disconnect_callback)(const char *name, void *ui_data)
Called when a callback is removed from a preference.
Definition prefs.h:137