[cheese] nocamera: drop GEditMessageArea in favor of GtkInfoBar
- From: Filippo Argiolas <fargiolas src gnome org>
- To: svn-commits-list gnome org
- Subject: [cheese] nocamera: drop GEditMessageArea in favor of GtkInfoBar
- Date: Sat, 4 Jul 2009 07:50:28 +0000 (UTC)
commit c2473c4df9926dfd79fef8660b23c29f4ca2bd72
Author: Filippo Argiolas <filippo argiolas gmail com>
Date: Thu Jul 2 18:03:54 2009 +0200
nocamera: drop GEditMessageArea in favor of GtkInfoBar
Drop GEditMessageArea since it recently entered gtk+. Fixes bug #586545
data/cheese.glade | 2 +-
data/cheese.ui | 2 +-
src/Makefile.am | 2 -
src/cheese-no-camera.c | 31 +--
src/cheese-no-camera.h | 2 +-
src/cheese-window.c | 39 ++--
src/gedit-message-area.c | 537 ----------------------------------------------
src/gedit-message-area.h | 129 -----------
8 files changed, 34 insertions(+), 710 deletions(-)
---
diff --git a/data/cheese.glade b/data/cheese.glade
index d094471..94d5877 100644
--- a/data/cheese.glade
+++ b/data/cheese.glade
@@ -26,7 +26,7 @@
<widget class="GtkVBox" id="video_frame_vbox">
<property name="visible">True</property>
<child>
- <widget class="GtkAlignment" id="message_area_frame">
+ <widget class="GtkAlignment" id="info_bar_frame">
<property name="visible">True</property>
<child>
<placeholder/>
diff --git a/data/cheese.ui b/data/cheese.ui
index 0400060..b86ea82 100644
--- a/data/cheese.ui
+++ b/data/cheese.ui
@@ -26,7 +26,7 @@
<object class="GtkVBox" id="video_frame_vbox">
<property name="visible">True</property>
<child>
- <object class="GtkAlignment" id="message_area_frame">
+ <object class="GtkAlignment" id="info_bar_frame">
<property name="visible">True</property>
<child>
<placeholder/>
diff --git a/src/Makefile.am b/src/Makefile.am
index afe1b90..b8ae4f5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -38,8 +38,6 @@ cheese_SOURCES = \
ephy-spinner.h \
gst-audio-play.c \
gst-audio-play.h \
- gedit-message-area.c \
- gedit-message-area.h \
cheese-no-camera.c \
cheese-no-camera.h \
cheese-prefs-widget.h \
diff --git a/src/cheese-no-camera.c b/src/cheese-no-camera.c
index 2f2431f..2ddb18f 100644
--- a/src/cheese-no-camera.c
+++ b/src/cheese-no-camera.c
@@ -26,16 +26,15 @@
#include <gtk/gtk.h>
#include <glib/gi18n.h>
-#include "gedit-message-area.h"
#include "cheese-no-camera.h"
static void
-cheese_no_camera_set_message_area_text_and_icon (GeditMessageArea *message_area,
+cheese_no_camera_set_info_bar_text_and_icon (GtkInfoBar *info_bar,
const gchar *icon_stock_id,
const gchar *primary_text,
const gchar *secondary_text)
{
- GtkWidget *hbox_content;
+ GtkWidget *content_area;
GtkWidget *image;
GtkWidget *vbox;
gchar *primary_markup;
@@ -43,17 +42,16 @@ cheese_no_camera_set_message_area_text_and_icon (GeditMessageArea *message_area,
GtkWidget *primary_label;
GtkWidget *secondary_label;
- hbox_content = gtk_hbox_new (FALSE, 8);
- gtk_widget_show (hbox_content);
+ content_area = gtk_info_bar_get_content_area (GTK_INFO_BAR (info_bar));
image = gtk_image_new_from_stock (icon_stock_id, GTK_ICON_SIZE_DIALOG);
gtk_widget_show (image);
- gtk_box_pack_start (GTK_BOX (hbox_content), image, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (content_area), image, FALSE, FALSE, 0);
gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0);
vbox = gtk_vbox_new (FALSE, 6);
gtk_widget_show (vbox);
- gtk_box_pack_start (GTK_BOX (hbox_content), vbox, TRUE, TRUE, 0);
+ gtk_box_pack_start (GTK_BOX (content_area), vbox, TRUE, TRUE, 0);
primary_markup = g_strdup_printf ("<b>%s</b>", primary_text);
primary_label = gtk_label_new (primary_markup);
@@ -80,25 +78,20 @@ cheese_no_camera_set_message_area_text_and_icon (GeditMessageArea *message_area,
gtk_label_set_selectable (GTK_LABEL (secondary_label), TRUE);
gtk_misc_set_alignment (GTK_MISC (secondary_label), 0, 0.5);
}
-
- gedit_message_area_set_contents (GEDIT_MESSAGE_AREA (message_area),
- hbox_content);
}
GtkWidget *
-cheese_no_camera_message_area ()
+cheese_no_camera_info_bar_new ()
{
- GtkWidget *message_area;
+ GtkWidget *info_bar;
- message_area = gedit_message_area_new ();
- cheese_no_camera_set_message_area_text_and_icon (GEDIT_MESSAGE_AREA (message_area),
+ info_bar = gtk_info_bar_new_with_buttons (GTK_STOCK_HELP, GTK_RESPONSE_HELP, NULL);
+ gtk_info_bar_set_message_type (GTK_INFO_BAR (info_bar),
+ GTK_MESSAGE_ERROR);
+ cheese_no_camera_set_info_bar_text_and_icon (GTK_INFO_BAR (info_bar),
"gtk-dialog-error",
_("No camera found!"),
_("Please refer to the help for further information."));
- gedit_message_area_add_stock_button_with_text (GEDIT_MESSAGE_AREA (message_area),
- _("Help"), GTK_STOCK_HELP,
- GTK_RESPONSE_HELP);
-
- return message_area;
+ return info_bar;
}
diff --git a/src/cheese-no-camera.h b/src/cheese-no-camera.h
index ccf9e50..33b2267 100644
--- a/src/cheese-no-camera.h
+++ b/src/cheese-no-camera.h
@@ -23,7 +23,7 @@
G_BEGIN_DECLS
-GtkWidget *cheese_no_camera_message_area (void);
+GtkWidget *cheese_no_camera_info_bar_new (void);
G_END_DECLS
diff --git a/src/cheese-window.c b/src/cheese-window.c
index 7607cc5..106d5af 100644
--- a/src/cheese-window.c
+++ b/src/cheese-window.c
@@ -56,7 +56,6 @@
#include "cheese-window.h"
#include "ephy-spinner.h"
#include "gst-audio-play.h"
-#include "gedit-message-area.h"
#include "cheese-no-camera.h"
#include "cheese-prefs-dialog.h"
#include "cheese-flash.h"
@@ -123,8 +122,8 @@ typedef struct
GtkWidget *countdown_frame_fullscreen;
GtkWidget *countdown;
GtkWidget *countdown_fullscreen;
- GtkWidget *message_area_frame;
- GtkWidget *message_area;
+ GtkWidget *info_bar_frame;
+ GtkWidget *info_bar;
GtkWidget *button_effects;
GtkWidget *button_photo;
@@ -1250,7 +1249,7 @@ cheese_window_countdown_picture_cb (gpointer data)
}
static void
-cheese_window_no_camera_message_area_response (GtkWidget *widget, gint response_id, CheeseWindow *cheese_window)
+cheese_window_no_camera_info_bar_response (GtkWidget *widget, gint response_id, CheeseWindow *cheese_window)
{
GError *error = NULL;
gboolean ret;
@@ -1565,22 +1564,22 @@ cheese_window_radio_action_group_new (CheeseWindow *cheese_window, char *name,
}
static void
-cheese_window_set_message_area (CheeseWindow *cheese_window,
- GtkWidget *message_area)
+cheese_window_set_info_bar (CheeseWindow *cheese_window,
+ GtkWidget *info_bar)
{
- if (cheese_window->message_area == message_area)
+ if (cheese_window->info_bar == info_bar)
return;
- if (cheese_window->message_area != NULL)
- gtk_widget_destroy (cheese_window->message_area);
+ if (cheese_window->info_bar != NULL)
+ gtk_widget_destroy (cheese_window->info_bar);
- cheese_window->message_area = message_area;
+ cheese_window->info_bar = info_bar;
- if (message_area == NULL)
+ if (info_bar == NULL)
return;
- gtk_container_add (GTK_CONTAINER (cheese_window->message_area_frame), cheese_window->message_area);
- gtk_widget_show (GTK_WIDGET (cheese_window->message_area));
+ gtk_container_add (GTK_CONTAINER (cheese_window->info_bar_frame), cheese_window->info_bar);
+ gtk_widget_show (GTK_WIDGET (cheese_window->info_bar));
}
static void
@@ -1599,7 +1598,7 @@ cheese_window_create_window (CheeseWindow *cheese_window)
#endif
- cheese_window->message_area = NULL;
+ cheese_window->info_bar = NULL;
builder = gtk_builder_new ();
gtk_builder_add_from_file (builder, PACKAGE_DATADIR "/cheese.ui", &error);
@@ -1630,7 +1629,7 @@ cheese_window_create_window (CheeseWindow *cheese_window)
cheese_window->countdown_frame = GTK_WIDGET (gtk_builder_get_object (builder, "countdown_frame"));
cheese_window->effect_frame = GTK_WIDGET (gtk_builder_get_object (builder, "effect_frame"));
cheese_window->effect_alignment = GTK_WIDGET (gtk_builder_get_object (builder, "effect_alignment"));
- cheese_window->message_area_frame = GTK_WIDGET (gtk_builder_get_object (builder, "message_area_frame"));
+ cheese_window->info_bar_frame = GTK_WIDGET (gtk_builder_get_object (builder, "info_bar_frame"));
cheese_window->fullscreen_popup = GTK_WIDGET (gtk_builder_get_object (builder, "fullscreen_popup"));
cheese_window->fullscreen_bar = GTK_WIDGET (gtk_builder_get_object (builder, "fullscreen_notebook_bar"));
cheese_window->button_effects_fullscreen = GTK_WIDGET (gtk_builder_get_object (builder, "button_effects_fullscreen"));
@@ -1911,7 +1910,7 @@ setup_camera (CheeseWindow *cheese_window)
gdouble contrast;
gdouble saturation;
gdouble hue;
- GtkWidget *message_area;
+ GtkWidget *info_bar;
GError *error;
@@ -1985,14 +1984,14 @@ setup_camera (CheeseWindow *cheese_window)
ephy_spinner_stop (EPHY_SPINNER (cheese_window->throbber));
if (cheese_webcam_get_num_webcam_devices (cheese_window->webcam) == 0)
{
- message_area = cheese_no_camera_message_area ();
+ info_bar = cheese_no_camera_info_bar_new ();
- g_signal_connect (message_area,
+ g_signal_connect (info_bar,
"response",
- G_CALLBACK (cheese_window_no_camera_message_area_response),
+ G_CALLBACK (cheese_window_no_camera_info_bar_response),
cheese_window);
- cheese_window_set_message_area (cheese_window, message_area);
+ cheese_window_set_info_bar (cheese_window, info_bar);
}
gtk_widget_set_sensitive (GTK_WIDGET (cheese_window->take_picture), TRUE);
gtk_widget_set_sensitive (GTK_WIDGET (cheese_window->take_picture_fullscreen), TRUE);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]