comparison libpurple/blist.c @ 24275:d81104908a4e

use some additional preproc logic to avoid copying the structs directly into the implementation files
author Gary Kramlich <grim@reaperworld.com>
date Thu, 30 Oct 2008 03:34:09 +0000
parents 0d0088b03745
children 8282911d5e17 12b8ccc3e9ec
comparison
equal deleted inserted replaced
24272:882a1c4c11b4 24275:d81104908a4e
18 * You should have received a copy of the GNU General Public License 18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, write to the Free Software 19 * along with this program; if not, write to the Free Software
20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA 20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
21 * 21 *
22 */ 22 */
23 #define PURPLE_BLIST_STRUCTS
24
23 #include "internal.h" 25 #include "internal.h"
24 #include "blist.h" 26 #include "blist.h"
25 #include "conversation.h" 27 #include "conversation.h"
26 #include "dbus-maybe.h" 28 #include "dbus-maybe.h"
27 #include "debug.h" 29 #include "debug.h"
38 static PurpleBlistUiOps *blist_ui_ops = NULL; 40 static PurpleBlistUiOps *blist_ui_ops = NULL;
39 41
40 static PurpleBuddyList *purplebuddylist = NULL; 42 static PurpleBuddyList *purplebuddylist = NULL;
41 static guint save_timer = 0; 43 static guint save_timer = 0;
42 static gboolean blist_loaded = FALSE; 44 static gboolean blist_loaded = FALSE;
43
44
45 /******************************************************************************
46 * Structs
47 *****************************************************************************/
48 #ifdef PURPLE_HIDE_STRUCTS
49 struct _PurpleBlistNode {
50 PurpleBlistNodeType type;
51 PurpleBlistNode *prev;
52 PurpleBlistNode *next;
53 PurpleBlistNode *parent;
54 PurpleBlistNode *child;
55 GHashTable *settings;
56 void *ui_data;
57 PurpleBlistNodeFlags flags;
58 };
59
60 struct _PurpleBuddy {
61 PurpleBlistNode node;
62 char *name;
63 char *alias;
64 char *server_alias;
65 void *proto_data;
66 PurpleBuddyIcon *icon;
67 PurpleAccount *account;
68 PurplePresence *presence;
69 };
70
71 struct _PurpleContact {
72 PurpleBlistNode node;
73 char *alias;
74 int totalsize;
75 int currentsize;
76 int online;
77 PurpleBuddy *priority;
78 gboolean priority_valid;
79 };
80
81 struct _PurpleGroup {
82 PurpleBlistNode node;
83 char *name;
84 int totalsize;
85 int currentsize;
86 int online;
87 };
88
89 struct _PurpleChat {
90 PurpleBlistNode node;
91 char *alias;
92 GHashTable *components;
93 PurpleAccount *account;
94 };
95
96 #endif /* PURPLE_HIDE_STRUCTS */
97 45
98 /********************************************************************* 46 /*********************************************************************
99 * Private utility functions * 47 * Private utility functions *
100 *********************************************************************/ 48 *********************************************************************/
101 49