00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef _PURPLE_ACCOUNTOPT_H_
00027 #define _PURPLE_ACCOUNTOPT_H_
00028
00029 #include "prefs.h"
00030
00037 typedef struct
00038 {
00039 PurplePrefType type;
00041 char *text;
00042 char *pref_name;
00044 union
00045 {
00046 gboolean boolean;
00047 int integer;
00048 char *string;
00049 GList *list;
00051 } default_value;
00052
00053 gboolean masked;
00057 } PurpleAccountOption;
00058
00065 typedef struct
00066 {
00067 char *text;
00068 char *default_value;
00069 char field_sep;
00070 gboolean reverse;
00074 } PurpleAccountUserSplit;
00075
00076 #ifdef __cplusplus
00077 extern "C" {
00078 #endif
00079
00080
00082
00094 PurpleAccountOption *purple_account_option_new(PurplePrefType type, const char *text,
00095 const char *pref_name);
00096
00106 PurpleAccountOption *purple_account_option_bool_new(const char *text,
00107 const char *pref_name,
00108 gboolean default_value);
00109
00119 PurpleAccountOption *purple_account_option_int_new(const char *text,
00120 const char *pref_name,
00121 int default_value);
00122
00132 PurpleAccountOption *purple_account_option_string_new(const char *text,
00133 const char *pref_name,
00134 const char *default_value);
00135
00151 PurpleAccountOption *purple_account_option_list_new(const char *text,
00152 const char *pref_name,
00153 GList *list);
00154
00160 void purple_account_option_destroy(PurpleAccountOption *option);
00161
00168 void purple_account_option_set_default_bool(PurpleAccountOption *option,
00169 gboolean value);
00170
00177 void purple_account_option_set_default_int(PurpleAccountOption *option,
00178 int value);
00179
00186 void purple_account_option_set_default_string(PurpleAccountOption *option,
00187 const char *value);
00188
00197 void
00198 purple_account_option_set_masked(PurpleAccountOption *option, gboolean masked);
00199
00212 void purple_account_option_set_list(PurpleAccountOption *option, GList *values);
00213
00221 void purple_account_option_add_list_item(PurpleAccountOption *option,
00222 const char *key, const char *value);
00223
00231 PurplePrefType purple_account_option_get_type(const PurpleAccountOption *option);
00232
00240 const char *purple_account_option_get_text(const PurpleAccountOption *option);
00241
00249 const char *purple_account_option_get_setting(const PurpleAccountOption *option);
00250
00258 gboolean purple_account_option_get_default_bool(const PurpleAccountOption *option);
00259
00267 int purple_account_option_get_default_int(const PurpleAccountOption *option);
00268
00276 const char *purple_account_option_get_default_string(
00277 const PurpleAccountOption *option);
00278
00286 const char *purple_account_option_get_default_list_value(
00287 const PurpleAccountOption *option);
00288
00298 gboolean
00299 purple_account_option_get_masked(const PurpleAccountOption *option);
00300
00308 GList *purple_account_option_get_list(const PurpleAccountOption *option);
00309
00313
00315
00327 PurpleAccountUserSplit *purple_account_user_split_new(const char *text,
00328 const char *default_value,
00329 char sep);
00330
00336 void purple_account_user_split_destroy(PurpleAccountUserSplit *split);
00337
00345 const char *purple_account_user_split_get_text(const PurpleAccountUserSplit *split);
00346
00354 const char *purple_account_user_split_get_default_value(
00355 const PurpleAccountUserSplit *split);
00356
00364 char purple_account_user_split_get_separator(const PurpleAccountUserSplit *split);
00365
00373 gboolean purple_account_user_split_get_reverse(const PurpleAccountUserSplit *split);
00374
00381 void purple_account_user_split_set_reverse(PurpleAccountUserSplit *split, gboolean reverse);
00382
00385 #ifdef __cplusplus
00386 }
00387 #endif
00388
00389 #endif