savedstatuses.h

Go to the documentation of this file.
00001 
00025 #ifndef _PURPLE_SAVEDSTATUSES_H_
00026 #define _PURPLE_SAVEDSTATUSES_H_
00027 
00050 /*
00051  * TODO: Hmm.  We should probably just be saving PurplePresences.  That's
00052  *       something we should look into once the status box gets fleshed
00053  *       out more.
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 /* _PURPLE_SAVEDSTATUSES_H_ */