]> git.0d.be Git - empathy.git/blobdiff - libempathy/empathy-contact-list.h
Add support for blinking when there is an event. Make use of EmpathyIdle
[empathy.git] / libempathy / empathy-contact-list.h
index 02ec3186d0457e2834235b08a4b6631b484ecbec..09f54621d616f669b93509e37e813c456870a297 100644 (file)
@@ -37,33 +37,43 @@ G_BEGIN_DECLS
 typedef struct _EmpathyContactList      EmpathyContactList;
 typedef struct _EmpathyContactListIface EmpathyContactListIface;
 
+typedef struct {
+       GossipContact *contact;
+       gchar         *message;
+} EmpathyContactListInfo;
+
 struct _EmpathyContactListIface {
        GTypeInterface   base_iface;
 
        /* VTabled */
-       void            (*setup)        (EmpathyContactList *list);
-       GossipContact * (*find)         (EmpathyContactList *list,
-                                        const gchar        *id);
-       void            (*add)          (EmpathyContactList *list,
-                                        GossipContact      *contact,
-                                        const gchar        *message);
-       void            (*remove)       (EmpathyContactList *list,
-                                        GossipContact      *contact,
-                                        const gchar        *message);
-       GList *         (*get_contacts) (EmpathyContactList *list);
+       void            (*setup)             (EmpathyContactList *list);
+       GossipContact * (*find)              (EmpathyContactList *list,
+                                             const gchar        *id);
+       void            (*add)               (EmpathyContactList *list,
+                                             GossipContact      *contact,
+                                             const gchar        *message);
+       void            (*remove)            (EmpathyContactList *list,
+                                             GossipContact      *contact,
+                                             const gchar        *message);
+       GList *         (*get_members)       (EmpathyContactList *list);
+       GList *         (*get_local_pending) (EmpathyContactList *list);
 };
 
-GType           empathy_contact_list_get_type     (void) G_GNUC_CONST;
-void            empathy_contact_list_setup        (EmpathyContactList *list);
-GossipContact * empathy_contact_list_find         (EmpathyContactList *list,
-                                                  const gchar        *id);
-void            empathy_contact_list_add          (EmpathyContactList *list,
-                                                  GossipContact      *contact,
-                                                  const gchar        *message);
-void            empathy_contact_list_remove       (EmpathyContactList *list,
-                                                  GossipContact      *contact,
-                                                  const gchar        *message);
-GList *         empathy_contact_list_get_contacts (EmpathyContactList *list);
+GType                   empathy_contact_list_get_type          (void) G_GNUC_CONST;
+EmpathyContactListInfo *empathy_contact_list_info_new          (GossipContact          *contact,
+                                                               const gchar            *message);
+void                    empathy_contact_list_info_free         (EmpathyContactListInfo *info);
+void                    empathy_contact_list_setup             (EmpathyContactList     *list);
+GossipContact *         empathy_contact_list_find              (EmpathyContactList     *list,
+                                                               const gchar            *id);
+void                    empathy_contact_list_add               (EmpathyContactList     *list,
+                                                               GossipContact          *contact,
+                                                               const gchar            *message);
+void                    empathy_contact_list_remove            (EmpathyContactList     *list,
+                                                               GossipContact          *contact,
+                                                               const gchar            *message);
+GList *                 empathy_contact_list_get_members       (EmpathyContactList     *list);
+GList *                 empathy_contact_list_get_local_pending (EmpathyContactList     *list);
 
 G_END_DECLS