accountopt.h

Go to the documentation of this file.
00001 
00025 #ifndef _PURPLE_ACCOUNTOPT_H_
00026 #define _PURPLE_ACCOUNTOPT_H_
00027 
00028 #include "prefs.h"
00029 
00036 typedef struct
00037 {
00038     PurplePrefType type;      
00040     char *text;             
00041     char *pref_name;        
00043     union
00044     {
00045         gboolean boolean;   
00046         int integer;        
00047         char *string;       
00048         GList *list;        
00050     } default_value;
00051 
00052     gboolean masked;
00053 
00054 } PurpleAccountOption;
00055 
00062 typedef struct
00063 {
00064     char *text;             
00065     char *default_value;    
00066     char  field_sep;        
00067     gboolean reverse;       
00071 } PurpleAccountUserSplit;
00072 
00073 #ifdef __cplusplus
00074 extern "C" {
00075 #endif
00076 
00077 /**************************************************************************/
00079 /**************************************************************************/
00091 PurpleAccountOption *purple_account_option_new(PurplePrefType type, const char *text,
00092                                            const char *pref_name);
00093 
00103 PurpleAccountOption *purple_account_option_bool_new(const char *text,
00104                                                 const char *pref_name,
00105                                                 gboolean default_value);
00106 
00116 PurpleAccountOption *purple_account_option_int_new(const char *text,
00117                                                const char *pref_name,
00118                                                int default_value);
00119 
00129 PurpleAccountOption *purple_account_option_string_new(const char *text,
00130                                                   const char *pref_name,
00131                                                   const char *default_value);
00132 
00148 PurpleAccountOption *purple_account_option_list_new(const char *text,
00149                                                 const char *pref_name,
00150                                                 GList *list);
00151 
00157 void purple_account_option_destroy(PurpleAccountOption *option);
00158 
00165 void purple_account_option_set_default_bool(PurpleAccountOption *option,
00166                                           gboolean value);
00167 
00174 void purple_account_option_set_default_int(PurpleAccountOption *option,
00175                                          int value);
00176 
00183 void purple_account_option_set_default_string(PurpleAccountOption *option,
00184                                             const char *value);
00185 
00192 void
00193 purple_account_option_set_masked(PurpleAccountOption *option, gboolean masked);
00194 
00207 void purple_account_option_set_list(PurpleAccountOption *option, GList *values);
00208 
00216 void purple_account_option_add_list_item(PurpleAccountOption *option,
00217                                        const char *key, const char *value);
00218 
00226 PurplePrefType purple_account_option_get_type(const PurpleAccountOption *option);
00227 
00235 const char *purple_account_option_get_text(const PurpleAccountOption *option);
00236 
00244 const char *purple_account_option_get_setting(const PurpleAccountOption *option);
00245 
00253 gboolean purple_account_option_get_default_bool(const PurpleAccountOption *option);
00254 
00262 int purple_account_option_get_default_int(const PurpleAccountOption *option);
00263 
00271 const char *purple_account_option_get_default_string(
00272     const PurpleAccountOption *option);
00273 
00281 const char *purple_account_option_get_default_list_value(
00282     const PurpleAccountOption *option);
00283 
00291 gboolean
00292 purple_account_option_get_masked(const PurpleAccountOption *option);
00293 
00301 GList *purple_account_option_get_list(const PurpleAccountOption *option);
00302 
00306 /**************************************************************************/
00308 /**************************************************************************/
00320 PurpleAccountUserSplit *purple_account_user_split_new(const char *text,
00321                                                   const char *default_value,
00322                                                   char sep);
00323 
00329 void purple_account_user_split_destroy(PurpleAccountUserSplit *split);
00330 
00338 const char *purple_account_user_split_get_text(const PurpleAccountUserSplit *split);
00339 
00347 const char *purple_account_user_split_get_default_value(
00348         const PurpleAccountUserSplit *split);
00349 
00357 char purple_account_user_split_get_separator(const PurpleAccountUserSplit *split);
00358 
00366 gboolean purple_account_user_split_get_reverse(const PurpleAccountUserSplit *split);
00367 
00374 void purple_account_user_split_set_reverse(PurpleAccountUserSplit *split, gboolean reverse);
00375 
00378 #ifdef __cplusplus
00379 }
00380 #endif
00381 
00382 #endif /* _PURPLE_ACCOUNTOPT_H_ */