]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-protocol-chooser.h
local-xmpp-assistant-widget: increase row-spacing
[empathy.git] / libempathy-gtk / empathy-protocol-chooser.h
index 9d881958d1ed0c64ebdfae89ac31cdc1d6b9d249..f3c577661a49fb8e549651a4437d8896b2f56a27 100644 (file)
@@ -28,6 +28,8 @@
 
 #include <telepathy-glib/connection-manager.h>
 
+#include <libempathy/empathy-account-settings.h>
+
 G_BEGIN_DECLS
 
 #define EMPATHY_TYPE_PROTOCOL_CHOOSER (empathy_protocol_chooser_get_type ())
@@ -39,7 +41,7 @@ G_BEGIN_DECLS
     EMPATHY_TYPE_PROTOCOL_CHOOSER))
 #define EMPATHY_IS_PROTOCOL_CHOOSER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), \
     EMPATHY_TYPE_PROTOCOL_CHOOSER))
-#define EMPATHY_PROTOCOL_CHOOSER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), \
+#define EMPATHY_PROTOCOL_CHOOSER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o),\
     EMPATHY_TYPE_PROTOCOL_CHOOSER, EmpathyProtocolChooserClass))
 
 typedef struct _EmpathyProtocolChooser EmpathyProtocolChooser;
@@ -58,15 +60,25 @@ struct _EmpathyProtocolChooserClass
   GtkComboBoxClass parent_class;
 };
 
-typedef void (* EmpathyProtocolChooserReadyCb) (GtkWidget *chooser,
-    GError *error,
+typedef gboolean (*EmpathyProtocolChooserFilterFunc) (TpConnectionManager *cm,
+    TpConnectionManagerProtocol *protocol,
+    const gchar *service,
     gpointer user_data);
 
 GType empathy_protocol_chooser_get_type (void) G_GNUC_CONST;
 GtkWidget * empathy_protocol_chooser_new (void);
 TpConnectionManager *empathy_protocol_chooser_dup_selected (
     EmpathyProtocolChooser *protocol_chooser,
-    TpConnectionManagerProtocol **protocol);
+    TpConnectionManagerProtocol **protocol,
+    gchar **service);
+
+void empathy_protocol_chooser_set_visible (
+    EmpathyProtocolChooser *protocol_chooser,
+    EmpathyProtocolChooserFilterFunc func,
+    gpointer user_data);
+
+EmpathyAccountSettings * empathy_protocol_chooser_create_account_settings (
+    EmpathyProtocolChooser *self);
 
 G_END_DECLS
 #endif /*  __EMPATHY_PROTOCOL_CHOOSER_H__ */