diff options
author | William Jon McCann <william.jon.mccann@gmail.com> | 2014-02-08 17:20:06 -0500 |
---|---|---|
committer | William Jon McCann <william.jon.mccann@gmail.com> | 2014-02-12 08:08:03 -0500 |
commit | 70a2772afd5b50c56bc4ad64aa32374d5fce72b9 (patch) | |
tree | d2e181c5d612d05a27a19826876ebaf4f7e39498 /tests | |
parent | d0a654e4b97cf5ff7bbab22a5fb1d6af8980f45a (diff) | |
download | gtk+-70a2772afd5b50c56bc4ad64aa32374d5fce72b9.tar.gz |
tests: add a visibility toggle to the action bar test
https://bugzilla.gnome.org/show_bug.cgi?id=723929
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testactionbar.c | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/tests/testactionbar.c b/tests/testactionbar.c index 6c11c91983..01f819f3fd 100644 --- a/tests/testactionbar.c +++ b/tests/testactionbar.c @@ -20,6 +20,17 @@ toggle_center (GtkCheckButton *button, } static void +toggle_visibility (GtkCheckButton *button, + GParamSpec *pspec, + GtkActionBar *bar) +{ + if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (button))) + gtk_widget_show (GTK_WIDGET (bar)); + else + gtk_widget_hide (GTK_WIDGET (bar)); +} + +static void create_widgets (GtkActionBar *bar, GtkPackType pack_type, gint n) @@ -86,15 +97,15 @@ activate (GApplication *gapp) GtkWidget *spin; GtkWidget *check; GtkWidget *bar; - GtkWidget *frame; window = gtk_application_window_new (app); gtk_application_add_window (app, GTK_WINDOW (window)); bar = gtk_action_bar_new (); + gtk_widget_set_no_show_all (bar, TRUE); box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - + grid = gtk_grid_new (); g_object_set (grid, "halign", GTK_ALIGN_CENTER, @@ -128,12 +139,15 @@ activate (GApplication *gapp) gtk_grid_attach (GTK_GRID (grid), label, 0, 2, 1, 1); gtk_grid_attach (GTK_GRID (grid), spin, 1, 2, 1, 1); - frame = gtk_frame_new (NULL); - gtk_widget_set_halign (frame, GTK_ALIGN_FILL); - gtk_widget_set_valign (frame, GTK_ALIGN_END); - gtk_container_add (GTK_CONTAINER (frame), bar); + label = gtk_label_new ("Visible"); + gtk_widget_set_halign (label, GTK_ALIGN_END); + check = gtk_check_button_new (); + g_signal_connect (check, "notify::active", + G_CALLBACK (toggle_visibility), bar); + gtk_grid_attach (GTK_GRID (grid), label, 0, 3, 1, 1); + gtk_grid_attach (GTK_GRID (grid), check, 1, 3, 1, 1); - gtk_box_pack_start (GTK_BOX (box), frame, TRUE, TRUE, 0); + gtk_box_pack_end (GTK_BOX (box), bar, FALSE, FALSE, 0); gtk_container_add (GTK_CONTAINER (window), box); gtk_widget_show_all (window); } |