00001
00025 #ifndef _PURPLE_SAVEDSTATUSES_H_
00026 #define _PURPLE_SAVEDSTATUSES_H_
00027
00050
00051
00052
00053
00054
00055
00056 typedef struct _PurpleSavedStatus PurpleSavedStatus;
00057 typedef struct _PurpleSavedStatusSub PurpleSavedStatusSub;
00058
00059 #include "status.h"
00060
00061 #ifdef __cplusplus
00062 extern "C" {
00063 #endif
00064
00065
00067
00082 PurpleSavedStatus *purple_savedstatus_new(const char *title,
00083 PurpleStatusPrimitive type);
00084
00091 void purple_savedstatus_set_title(PurpleSavedStatus *status,
00092 const char *title);
00093
00100 void purple_savedstatus_set_type(PurpleSavedStatus *status,
00101 PurpleStatusPrimitive type);
00102
00110 void purple_savedstatus_set_message(PurpleSavedStatus *status,
00111 const char *message);
00112
00122 void purple_savedstatus_set_substatus(PurpleSavedStatus *status,
00123 const PurpleAccount *account,
00124 const PurpleStatusType *type,
00125 const char *message);
00126
00136 void purple_savedstatus_unset_substatus(PurpleSavedStatus *saved_status,
00137 const PurpleAccount *account);
00138
00149 gboolean purple_savedstatus_delete(const char *title);
00150
00156 const GList *purple_savedstatuses_get_all(void);
00157
00175 GList *purple_savedstatuses_get_popular(unsigned int how_many);
00176
00185 PurpleSavedStatus *purple_savedstatus_get_current(void);
00186
00194 PurpleSavedStatus *purple_savedstatus_get_default(void);
00195
00203 PurpleSavedStatus *purple_savedstatus_get_idleaway(void);
00204
00211 gboolean purple_savedstatus_is_idleaway(void);
00212
00220 void purple_savedstatus_set_idleaway(gboolean idleaway);
00221
00228 PurpleSavedStatus *purple_savedstatus_get_startup(void);
00229
00237 PurpleSavedStatus *purple_savedstatus_find(const char *title);
00238
00247 PurpleSavedStatus *purple_savedstatus_find_by_creation_time(time_t creation_time);
00248
00259 PurpleSavedStatus *purple_savedstatus_find_transient_by_type_and_message(PurpleStatusPrimitive type, const char *message);
00260
00278 gboolean purple_savedstatus_is_transient(const PurpleSavedStatus *saved_status);
00279
00290 const char *purple_savedstatus_get_title(const PurpleSavedStatus *saved_status);
00291
00299 PurpleStatusPrimitive purple_savedstatus_get_type(const PurpleSavedStatus *saved_status);
00300
00311 const char *purple_savedstatus_get_message(const PurpleSavedStatus *saved_status);
00312
00328 time_t purple_savedstatus_get_creation_time(const PurpleSavedStatus *saved_status);
00329
00340 gboolean purple_savedstatus_has_substatuses(const PurpleSavedStatus *saved_status);
00341
00352 PurpleSavedStatusSub *purple_savedstatus_get_substatus(
00353 const PurpleSavedStatus *saved_status,
00354 const PurpleAccount *account);
00355
00363 const PurpleStatusType *purple_savedstatus_substatus_get_type(const PurpleSavedStatusSub *substatus);
00364
00373 const char *purple_savedstatus_substatus_get_message(const PurpleSavedStatusSub *substatus);
00374
00382 void purple_savedstatus_activate(PurpleSavedStatus *saved_status);
00383
00391 void purple_savedstatus_activate_for_account(const PurpleSavedStatus *saved_status, PurpleAccount *account);
00392
00398 void *purple_savedstatuses_get_handle(void);
00399
00403 void purple_savedstatuses_init(void);
00404
00408 void purple_savedstatuses_uninit(void);
00409
00412 #ifdef __cplusplus
00413 }
00414 #endif
00415
00416 #endif