]> git.0d.be Git - empathy.git/blobdiff - src/empathy-event-manager.h
Merge branch 'change-audio'
[empathy.git] / src / empathy-event-manager.h
index 38de2c20be0408ae669f4c2275dd983cb70c1c5d..91c6e1f9903cc5cf3176d39ced329779b6eb1fa6 100644 (file)
@@ -48,11 +48,27 @@ struct _EmpathyEventManagerClass {
        GObjectClass parent_class;
 };
 
+typedef enum {
+    EMPATHY_EVENT_TYPE_CHAT,
+    EMPATHY_EVENT_TYPE_VOIP,
+    EMPATHY_EVENT_TYPE_CALL,
+    EMPATHY_EVENT_TYPE_TRANSFER,
+    EMPATHY_EVENT_TYPE_SUBSCRIPTION,
+    EMPATHY_EVENT_TYPE_PRESENCE_ONLINE,
+    EMPATHY_EVENT_TYPE_PRESENCE_OFFLINE,
+    EMPATHY_EVENT_TYPE_INVITATION,
+    EMPATHY_EVENT_TYPE_AUTH,
+} EmpathyEventType;
+
 typedef struct {
-       EmpathyContact *contact;
-       gchar          *icon_name;
-       gchar          *header;
-       gchar          *message;
+    TpAccount *account;
+    EmpathyContact *contact;
+    EmpathyEventType type;
+    gchar *icon_name;
+    gchar *header;
+    gchar *message;
+    gboolean must_ack;
+    GObject *handler_instance;
 } EmpathyEvent;
 
 GType                empathy_event_manager_get_type      (void) G_GNUC_CONST;
@@ -60,6 +76,10 @@ EmpathyEventManager *empathy_event_manager_dup_singleton (void);
 EmpathyEvent *       empathy_event_manager_get_top_event (EmpathyEventManager *manager);
 GSList *             empathy_event_manager_get_events    (EmpathyEventManager *manager);
 void                 empathy_event_activate              (EmpathyEvent        *event);
+void                 empathy_event_inhibit_updates       (EmpathyEvent        *event);
+void                 empathy_event_approve               (EmpathyEvent        *event);
+void                 empathy_event_decline               (EmpathyEvent        *event);
+void                 empathy_event_remove                (EmpathyEvent        *event);
 
 G_END_DECLS