]> cgit.babelmonkeys.de Git - jubjub.git/blobdiff - src/gui/gtk/JubGtkRosterUI.h
Allow showing offline contacts in the GTK UI
[jubjub.git] / src / gui / gtk / JubGtkRosterUI.h
index 3244ad50560ad6b8fdbc3e8196381e0e8e52e176..461a11aca3115133058f2ca38ed3405552c822e6 100644 (file)
@@ -2,14 +2,28 @@
 #import <ObjXMPP/ObjXMPP.h>
 #include <gtk/gtk.h>
 
-@interface JubGtkRosterUI: OFObject <XMPPRosterDelegate, XMPPConnectionDelegate>
+#import "JubChatClient.h"
+#import "JubAvatarManager.h"
+
+@class JubGtkChatUI;
+
+@interface JubGtkRosterUI:
+       OFObject <XMPPContactManagerDelegate, JubAvatarManagerDelegate>
 {
-       GtkTreeStore *roster_model;
-       GtkTreeModelFilter *roster_filter;
-       OFMapTable *groupMap;
-       OFMutableDictionary *contactMap;
-       OFCountedSet *presences;
-       GtkBuilder *builder;
+       GtkWidget *_roster_window;
+       GtkTreeStore *_roster_model;
+       GtkTreeModelFilter *_roster_filter;
+       GtkComboBox *_presence_combo;
+       gulong _presence_combo_changed_handler_id;
+       OFMapTable *_groupMap;
+       OFMapTable *_subDialogMap;
+       OFMutableDictionary *_contactMap;
+       JubChatClient *_client;
+       bool _showOffline;
 }
-- initWithBuilder: (GtkBuilder*)builder;
+@property (assign) bool showOffline;
+
+- initWithClient: (JubChatClient*)client;
+-      (void)client: (JubChatClient*)client
+  didChangePresence: (XMPPPresence*)presence;
 @end