comparison src/roomlist.h @ 9999:5d9c991549cd

[gaim-migrate @ 10913] Cleanup on isle 7 committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Thu, 09 Sep 2004 22:06:06 +0000
parents 7ab20f829190
children 34bce9529cf4
comparison
equal deleted inserted replaced
9998:887ade3fabf0 9999:5d9c991549cd
24 */ 24 */
25 25
26 #ifndef _GAIM_ROOMLIST_H_ 26 #ifndef _GAIM_ROOMLIST_H_
27 #define _GAIM_ROOMLIST_H_ 27 #define _GAIM_ROOMLIST_H_
28 28
29
30 #include <glib/glist.h>
31 #include "account.h"
32
33
34 /**************************************************************************/
35 /** Data Structures */
36 /**************************************************************************/
37
38 typedef struct _GaimRoomlist GaimRoomlist; 29 typedef struct _GaimRoomlist GaimRoomlist;
39 typedef struct _GaimRoomlistRoom GaimRoomlistRoom; 30 typedef struct _GaimRoomlistRoom GaimRoomlistRoom;
40 typedef enum _GaimRoomlistRoomType GaimRoomlistRoomType;
41 typedef struct _GaimRoomlistField GaimRoomlistField; 31 typedef struct _GaimRoomlistField GaimRoomlistField;
42 typedef enum _GaimRoomlistFieldType GaimRoomlistFieldType;
43 typedef struct _GaimRoomlistUiOps GaimRoomlistUiOps; 32 typedef struct _GaimRoomlistUiOps GaimRoomlistUiOps;
33
34 /**
35 * The types of rooms.
36 *
37 * These are ORable flags.
38 */
39 typedef enum
40 {
41 GAIM_ROOMLIST_ROOMTYPE_CATEGORY = 0x01, /**< It's a category, but not a room you can join. */
42 GAIM_ROOMLIST_ROOMTYPE_ROOM = 0x02 /**< It's a room, like the kind you can join. */
43
44 } GaimRoomlistRoomType;
45
46 /**
47 * The types of fields.
48 */
49 typedef enum
50 {
51 GAIM_ROOMLIST_FIELD_BOOL,
52 GAIM_ROOMLIST_FIELD_INT,
53 GAIM_ROOMLIST_FIELD_STRING /**< We do a g_strdup on the passed value if it's this type. */
54
55 } GaimRoomlistFieldType;
56
57 #include "account.h"
58 #include "internal.h"
59
60 /**************************************************************************/
61 /** Data Structures */
62 /**************************************************************************/
44 63
45 /** 64 /**
46 * Represents a list of rooms for a given connection on a given protocol. 65 * Represents a list of rooms for a given connection on a given protocol.
47 */ 66 */
48 struct _GaimRoomlist { 67 struct _GaimRoomlist {
54 gpointer proto_data; /** Prpl private data. */ 73 gpointer proto_data; /** Prpl private data. */
55 guint ref; /**< The reference count. */ 74 guint ref; /**< The reference count. */
56 }; 75 };
57 76
58 /** 77 /**
59 * The types of rooms.
60 *
61 * These are ORable flags.
62 */
63 enum _GaimRoomlistRoomType {
64 GAIM_ROOMLIST_ROOMTYPE_CATEGORY = 0x01, /**< It's a category, but not a room you can join. */
65 GAIM_ROOMLIST_ROOMTYPE_ROOM = 0x02, /**< It's a room, like the kind you can join. */
66 };
67
68 /**
69 * Represents a room. 78 * Represents a room.
70 */ 79 */
71 struct _GaimRoomlistRoom { 80 struct _GaimRoomlistRoom {
72 GaimRoomlistRoomType type; /**< The type of room. */ 81 GaimRoomlistRoomType type; /**< The type of room. */
73 gchar *name; /**< The name of the room. */ 82 gchar *name; /**< The name of the room. */
74 GList *fields; /**< Other fields. */ 83 GList *fields; /**< Other fields. */
75 GaimRoomlistRoom *parent; /**< The parent room, or NULL. */ 84 GaimRoomlistRoom *parent; /**< The parent room, or NULL. */
76 gboolean expanded_once; /**< A flag the UI uses to avoid multiple expand prpl cbs. */ 85 gboolean expanded_once; /**< A flag the UI uses to avoid multiple expand prpl cbs. */
77 };
78
79 /**
80 * The types of fields.
81 */
82 enum _GaimRoomlistFieldType {
83 GAIM_ROOMLIST_FIELD_BOOL,
84 GAIM_ROOMLIST_FIELD_INT,
85 GAIM_ROOMLIST_FIELD_STRING, /**< We do a g_strdup on the passed value if it's this type. */
86 }; 86 };
87 87
88 /** 88 /**
89 * A field a room might have. 89 * A field a room might have.
90 */ 90 */