]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-ui-utils.h
empathy-call-window.c: update priv->sending_video *before* changing widget's state
[empathy.git] / libempathy-gtk / empathy-ui-utils.h
index d20d9a0c3ab9881243547c56c19e2818fb14d21f..8dcc4c0376644ae0d92c238c7229fb476e299c4d 100644 (file)
 #define __EMPATHY_UI_UTILS_H__
 
 #include <gtk/gtk.h>
-#include <glade/glade.h>
+
+#include <canberra-gtk.h>
 
 #include <libmissioncontrol/mc-account.h>
 #include <libmissioncontrol/mc-profile.h>
 
+
 #include <libempathy/empathy-contact.h>
 
 #include "empathy-chat-view.h"
 
 G_BEGIN_DECLS
 
-#define G_STR_EMPTY(x) ((x) == NULL || (x)[0] == '\0')
+/* NOTE: Keep this sync with sound_entries in empathy-ui-utils.c */
+typedef enum {
+       EMPATHY_SOUND_MESSAGE_INCOMING = 0,
+       EMPATHY_SOUND_MESSAGE_OUTGOING,
+       EMPATHY_SOUND_CONVERSATION_NEW,
+       EMPATHY_SOUND_CONTACT_CONNECTED,
+       EMPATHY_SOUND_CONTACT_DISCONNECTED,
+       EMPATHY_SOUND_ACCOUNT_CONNECTED,
+       EMPATHY_SOUND_ACCOUNT_DISCONNECTED,
+       EMPATHY_SOUND_PHONE_INCOMING,
+       EMPATHY_SOUND_PHONE_OUTGOING,
+       EMPATHY_SOUND_PHONE_HANGUP,
+       LAST_EMPATHY_SOUND,
+} EmpathySound;
 
 void            empathy_gtk_init                        (void);
+GRegex *        empathy_uri_regex_dup_singleton         (void);
+
 /* Glade */
-void            empathy_glade_get_file_simple           (const gchar      *filename,
-                                                        const gchar      *root,
-                                                        const gchar      *domain,
-                                                        const gchar      *first_required_widget,
-                                                        ...);
-GladeXML *      empathy_glade_get_file                  (const gchar      *filename,
-                                                        const gchar      *root,
-                                                        const gchar      *domain,
-                                                        const gchar      *first_required_widget,
+GtkBuilder *    empathy_builder_get_file                (const gchar      *filename,
+                                                        const gchar      *first_object,
                                                         ...);
-void            empathy_glade_connect                   (GladeXML         *gui,
+void            empathy_builder_connect                 (GtkBuilder       *gui,
                                                         gpointer          user_data,
-                                                        gchar            *first_widget,
-                                                        ...);
-void            empathy_glade_setup_size_group          (GladeXML         *gui,
-                                                        GtkSizeGroupMode  mode,
-                                                        gchar            *first_widget,
+                                                        gchar            *first_object,
                                                         ...);
+GtkWidget     *empathy_builder_unref_and_keep_widget    (GtkBuilder       *gui,
+                                                        GtkWidget        *root);
+
 /* Pixbufs */
 const gchar * empathy_icon_name_from_account            (McAccount        *account);
 const gchar * empathy_icon_name_for_presence            (McPresence        presence);
@@ -85,6 +94,8 @@ GdkPixbuf * empathy_pixbuf_scale_down_if_necessary      (GdkPixbuf        *pixbu
                                                         gint              max_size);
 GdkPixbuf * empathy_pixbuf_from_icon_name               (const gchar      *icon_name,
                                                         GtkIconSize       icon_size);
+GdkPixbuf * empathy_pixbuf_from_icon_name_sized         (const gchar      *icon_name,
+                                                        gint              size);
 /* Text view */
 gboolean    empathy_text_iter_forward_search            (const GtkTextIter*iter,
                                                         const gchar      *str,
@@ -114,6 +125,15 @@ GtkWidget * empathy_link_button_new                     (const gchar      *url,
 
 void        empathy_send_file_with_file_chooser         (EmpathyContact   *contact);
 
+/* Sounds */
+void        empathy_sound_play                          (GtkWidget        *widget,
+                                                        EmpathySound      sound_id);
+gboolean    empathy_sound_play_full                     (GtkWidget *widget,
+                                                        EmpathySound sound_id,
+                                                        ca_finish_callback_t callback,
+                                                        gpointer user_data);
+void        empathy_sound_stop                          (EmpathySound sound_id);
+
 G_END_DECLS
 
 #endif /*  __EMPATHY_UI_UTILS_H__ */