summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRamiro Estrugo <ramiro@src.gnome.org>2000-07-13 01:08:23 +0000
committerRamiro Estrugo <ramiro@src.gnome.org>2000-07-13 01:08:23 +0000
commita88cb641e5dea6293bc71fa8df1f925b14a4b958 (patch)
tree8e277bc631062c36e04039cddd023ffe257c7d57
parent41f3913cdf7688d175c536b166521d21f79ca4fc (diff)
downloadnautilus-EAZEL_DEMO_1_ANCHOR.tar.gz
Fix a bunch of gtk assertions caused by adding widgets to gtkboxes twice.EAZEL_DEMO_1_ANCHOREAZEL-NAUTILUS-MS-JUL12
* components/services/install/nautilus-view/nautilus-service-install- view.c: (generate_install_form), (create_title_widget), (create_middle_title_widget): Fix a bunch of gtk assertions caused by adding widgets to gtkboxes twice. Add a middle title widget to separete the progress dislay from the top.
-rw-r--r--ChangeLog13
-rw-r--r--components/services/install-view/nautilus-service-install-view.c67
-rw-r--r--components/services/install/nautilus-view/nautilus-service-install-view.c67
3 files changed, 141 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index fb63910df..8300bac36 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2000-07-12 Ramiro Estrugo <ramiro@eazel.com>
+
+ *
+ components/services/install/nautilus-view/nautilus-service-install-
+ view.c: (generate_install_form), (create_title_widget),
+ (create_middle_title_widget):
+
+ Fix a bunch of gtk assertions caused by adding widgets to gtkboxes
+ twice.
+
+ Add a middle title widget to separete the progress dislay from the
+ top.
+
2000-07-12 Darin Adler <darin@eazel.com>
* src/nautilus-view-frame.c: (nautilus_view_frame_destroy_client):
diff --git a/components/services/install-view/nautilus-service-install-view.c b/components/services/install-view/nautilus-service-install-view.c
index 0340f2338..8e8dd003d 100644
--- a/components/services/install-view/nautilus-service-install-view.c
+++ b/components/services/install-view/nautilus-service-install-view.c
@@ -66,6 +66,8 @@ static void nautilus_service_install_view_update_from_uri (NautilusServic
static void show_overall_feedback (NautilusServiceInstallView *view,
char *progress_message);
static GtkWidget* create_title_widget (const char *title_text);
+static GtkWidget* create_middle_title_widget (const char *left_text,
+ const char *right_text);
static GtkWidget* create_graphic_widget (const char *icon_name,
const char *background_color_spec,
NautilusGraphicPlacementType placement);
@@ -80,6 +82,7 @@ generate_install_form (NautilusServiceInstallView *view) {
GdkFont *font;
GtkWidget *temp_box;
GtkWidget *title;
+ GtkWidget *middle_title;
/* allocate the parent box to hold everything */
view->details->form = gtk_vbox_new (FALSE, 0);
@@ -98,7 +101,6 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->package_name = gtk_label_new (_("Installing \"The Gimp\""));
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->package_name);
font = nautilus_font_factory_get_font_from_preferences (20);
nautilus_gtk_widget_set_font (view->details->package_name, font);
gdk_font_unref (font);
@@ -120,13 +122,17 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->package_version = gtk_label_new ("Version 1.0.4-1");
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->package_version);
gtk_box_pack_start (GTK_BOX (view->details->form), view->details->package_version, FALSE, FALSE, 2);
font = nautilus_font_factory_get_font_from_preferences (14);
nautilus_gtk_widget_set_font (view->details->package_version, font);
gdk_font_unref (font);
gtk_widget_show (view->details->package_version);
+ /* Setup the title */
+ middle_title = create_middle_title_widget ("Messages", "Progress");
+ gtk_box_pack_start (GTK_BOX (view->details->form), middle_title, FALSE, FALSE, 0);
+ gtk_widget_show (middle_title);
+
/* generate the overall progress bar */
temp_box = gtk_alignment_new (0.1, 0.1, 0, 0);
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
@@ -140,7 +146,6 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->overall_feedback_text = gtk_label_new ("");
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->overall_feedback_text);
font = nautilus_font_factory_get_font_from_preferences (12);
nautilus_gtk_widget_set_font (view->details->overall_feedback_text, font);
gtk_box_pack_start (GTK_BOX (view->details->form), view->details->overall_feedback_text, FALSE, FALSE, 8);
@@ -239,6 +244,62 @@ create_title_widget (const char *title_text)
return title_hbox;
}
+static GtkWidget*
+create_middle_title_widget (const char *left_text,
+ const char *right_text)
+{
+ GtkWidget *title_hbox;
+ GtkWidget *left_graphic;
+ GtkWidget *right_graphic;
+ GtkWidget *filler_graphic;
+ GdkFont *font;
+
+ g_assert (left_text != NULL);
+ g_assert (right_text != NULL);
+
+ title_hbox = gtk_hbox_new (FALSE, 0);
+
+ left_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ filler_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ right_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ font = nautilus_font_factory_get_font_by_family ("helvetica", 18);
+
+ nautilus_graphic_set_label_text (NAUTILUS_GRAPHIC (left_graphic), left_text);
+ nautilus_graphic_set_label_font (NAUTILUS_GRAPHIC (left_graphic), font);
+
+ nautilus_graphic_set_extra_width (NAUTILUS_GRAPHIC (left_graphic), 8);
+ nautilus_graphic_set_left_offset (NAUTILUS_GRAPHIC (left_graphic), 8);
+ nautilus_graphic_set_top_offset (NAUTILUS_GRAPHIC (left_graphic), 1);
+
+ nautilus_graphic_set_label_text (NAUTILUS_GRAPHIC (right_graphic), right_text);
+ nautilus_graphic_set_label_font (NAUTILUS_GRAPHIC (right_graphic), font);
+
+ nautilus_graphic_set_extra_width (NAUTILUS_GRAPHIC (right_graphic), 8);
+ nautilus_graphic_set_right_offset (NAUTILUS_GRAPHIC (right_graphic), 8);
+ nautilus_graphic_set_top_offset (NAUTILUS_GRAPHIC (right_graphic), 1);
+
+ gdk_font_unref (font);
+
+ gtk_widget_show (left_graphic);
+ gtk_widget_show (filler_graphic);
+ gtk_widget_show (right_graphic);
+
+ gtk_box_pack_start (GTK_BOX (title_hbox), left_graphic, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (title_hbox), filler_graphic, TRUE, TRUE, 0);
+ gtk_box_pack_end (GTK_BOX (title_hbox), right_graphic, FALSE, FALSE, 0);
+
+ return title_hbox;
+}
+
static void
fake_overall_install_progress (NautilusServiceInstallView *view) {
diff --git a/components/services/install/nautilus-view/nautilus-service-install-view.c b/components/services/install/nautilus-view/nautilus-service-install-view.c
index 0340f2338..8e8dd003d 100644
--- a/components/services/install/nautilus-view/nautilus-service-install-view.c
+++ b/components/services/install/nautilus-view/nautilus-service-install-view.c
@@ -66,6 +66,8 @@ static void nautilus_service_install_view_update_from_uri (NautilusServic
static void show_overall_feedback (NautilusServiceInstallView *view,
char *progress_message);
static GtkWidget* create_title_widget (const char *title_text);
+static GtkWidget* create_middle_title_widget (const char *left_text,
+ const char *right_text);
static GtkWidget* create_graphic_widget (const char *icon_name,
const char *background_color_spec,
NautilusGraphicPlacementType placement);
@@ -80,6 +82,7 @@ generate_install_form (NautilusServiceInstallView *view) {
GdkFont *font;
GtkWidget *temp_box;
GtkWidget *title;
+ GtkWidget *middle_title;
/* allocate the parent box to hold everything */
view->details->form = gtk_vbox_new (FALSE, 0);
@@ -98,7 +101,6 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->package_name = gtk_label_new (_("Installing \"The Gimp\""));
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->package_name);
font = nautilus_font_factory_get_font_from_preferences (20);
nautilus_gtk_widget_set_font (view->details->package_name, font);
gdk_font_unref (font);
@@ -120,13 +122,17 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->package_version = gtk_label_new ("Version 1.0.4-1");
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->package_version);
gtk_box_pack_start (GTK_BOX (view->details->form), view->details->package_version, FALSE, FALSE, 2);
font = nautilus_font_factory_get_font_from_preferences (14);
nautilus_gtk_widget_set_font (view->details->package_version, font);
gdk_font_unref (font);
gtk_widget_show (view->details->package_version);
+ /* Setup the title */
+ middle_title = create_middle_title_widget ("Messages", "Progress");
+ gtk_box_pack_start (GTK_BOX (view->details->form), middle_title, FALSE, FALSE, 0);
+ gtk_widget_show (middle_title);
+
/* generate the overall progress bar */
temp_box = gtk_alignment_new (0.1, 0.1, 0, 0);
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
@@ -140,7 +146,6 @@ generate_install_form (NautilusServiceInstallView *view) {
gtk_box_pack_start (GTK_BOX (view->details->form), temp_box, FALSE, FALSE, 4);
gtk_widget_show (temp_box);
view->details->overall_feedback_text = gtk_label_new ("");
- gtk_container_add (GTK_CONTAINER (temp_box), view->details->overall_feedback_text);
font = nautilus_font_factory_get_font_from_preferences (12);
nautilus_gtk_widget_set_font (view->details->overall_feedback_text, font);
gtk_box_pack_start (GTK_BOX (view->details->form), view->details->overall_feedback_text, FALSE, FALSE, 8);
@@ -239,6 +244,62 @@ create_title_widget (const char *title_text)
return title_hbox;
}
+static GtkWidget*
+create_middle_title_widget (const char *left_text,
+ const char *right_text)
+{
+ GtkWidget *title_hbox;
+ GtkWidget *left_graphic;
+ GtkWidget *right_graphic;
+ GtkWidget *filler_graphic;
+ GdkFont *font;
+
+ g_assert (left_text != NULL);
+ g_assert (right_text != NULL);
+
+ title_hbox = gtk_hbox_new (FALSE, 0);
+
+ left_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ filler_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ right_graphic = create_graphic_widget ("eazel-services-logo-tile.png",
+ SERVICE_VIEW_DEFAULT_BACKGROUND_COLOR,
+ NAUTILUS_GRAPHIC_PLACEMENT_TILE);
+
+ font = nautilus_font_factory_get_font_by_family ("helvetica", 18);
+
+ nautilus_graphic_set_label_text (NAUTILUS_GRAPHIC (left_graphic), left_text);
+ nautilus_graphic_set_label_font (NAUTILUS_GRAPHIC (left_graphic), font);
+
+ nautilus_graphic_set_extra_width (NAUTILUS_GRAPHIC (left_graphic), 8);
+ nautilus_graphic_set_left_offset (NAUTILUS_GRAPHIC (left_graphic), 8);
+ nautilus_graphic_set_top_offset (NAUTILUS_GRAPHIC (left_graphic), 1);
+
+ nautilus_graphic_set_label_text (NAUTILUS_GRAPHIC (right_graphic), right_text);
+ nautilus_graphic_set_label_font (NAUTILUS_GRAPHIC (right_graphic), font);
+
+ nautilus_graphic_set_extra_width (NAUTILUS_GRAPHIC (right_graphic), 8);
+ nautilus_graphic_set_right_offset (NAUTILUS_GRAPHIC (right_graphic), 8);
+ nautilus_graphic_set_top_offset (NAUTILUS_GRAPHIC (right_graphic), 1);
+
+ gdk_font_unref (font);
+
+ gtk_widget_show (left_graphic);
+ gtk_widget_show (filler_graphic);
+ gtk_widget_show (right_graphic);
+
+ gtk_box_pack_start (GTK_BOX (title_hbox), left_graphic, FALSE, FALSE, 0);
+ gtk_box_pack_start (GTK_BOX (title_hbox), filler_graphic, TRUE, TRUE, 0);
+ gtk_box_pack_end (GTK_BOX (title_hbox), right_graphic, FALSE, FALSE, 0);
+
+ return title_hbox;
+}
+
static void
fake_overall_install_progress (NautilusServiceInstallView *view) {