forked from AuroraMiddleware/gtk
A new demo.
2004-04-21 Matthias Clasen <mclasen@redhat.com> * demos/gtk-demo/expander.c (do_expander): A new demo. * demos/gtk-demo/Makefile.am (demos): Add expander.c.
This commit is contained in:
parent
4d74836ad0
commit
8d30ad2838
@ -1,3 +1,9 @@
|
||||
2004-04-21 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* demos/gtk-demo/expander.c (do_expander): A new demo.
|
||||
|
||||
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
|
||||
|
||||
2004-04-20 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
|
||||
|
@ -1,3 +1,9 @@
|
||||
2004-04-21 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* demos/gtk-demo/expander.c (do_expander): A new demo.
|
||||
|
||||
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
|
||||
|
||||
2004-04-20 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
|
||||
|
@ -1,3 +1,9 @@
|
||||
2004-04-21 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* demos/gtk-demo/expander.c (do_expander): A new demo.
|
||||
|
||||
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
|
||||
|
||||
2004-04-20 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
|
||||
|
@ -1,3 +1,9 @@
|
||||
2004-04-21 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* demos/gtk-demo/expander.c (do_expander): A new demo.
|
||||
|
||||
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
|
||||
|
||||
2004-04-20 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
|
||||
|
@ -1,3 +1,9 @@
|
||||
2004-04-21 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* demos/gtk-demo/expander.c (do_expander): A new demo.
|
||||
|
||||
* demos/gtk-demo/Makefile.am (demos): Add expander.c.
|
||||
|
||||
2004-04-20 Matthias Clasen <mclasen@redhat.com>
|
||||
|
||||
* gtk/gtktextview.c (gtk_text_view_allocate_children): Make
|
||||
|
@ -13,6 +13,7 @@ demos = \
|
||||
drawingarea.c \
|
||||
editable_cells.c \
|
||||
entry_completion.c \
|
||||
expander.c \
|
||||
hypertext.c \
|
||||
images.c \
|
||||
list_store.c \
|
||||
|
59
demos/gtk-demo/expander.c
Normal file
59
demos/gtk-demo/expander.c
Normal file
@ -0,0 +1,59 @@
|
||||
/* Expander
|
||||
*
|
||||
* GtkExpander allows to provide additional content that is initially hidden.
|
||||
* This is also known as "disclosure triangle".
|
||||
*
|
||||
*/
|
||||
|
||||
#include <config.h>
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
static GtkWidget *window = NULL;
|
||||
|
||||
|
||||
GtkWidget *
|
||||
do_expander (GtkWidget *do_widget)
|
||||
{
|
||||
GtkWidget *vbox;
|
||||
GtkWidget *label;
|
||||
GtkWidget *expander;
|
||||
|
||||
if (!window)
|
||||
{
|
||||
window = gtk_dialog_new_with_buttons ("GtkExpander",
|
||||
GTK_WINDOW (do_widget),
|
||||
0,
|
||||
GTK_STOCK_CLOSE,
|
||||
GTK_RESPONSE_NONE,
|
||||
NULL);
|
||||
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
|
||||
|
||||
g_signal_connect (window, "response",
|
||||
G_CALLBACK (gtk_widget_destroy), NULL);
|
||||
g_signal_connect (window, "destroy",
|
||||
G_CALLBACK (gtk_widget_destroyed), &window);
|
||||
|
||||
vbox = gtk_vbox_new (FALSE, 5);
|
||||
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
|
||||
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
|
||||
|
||||
label = gtk_label_new ("Expander demo. Click on the triangle for details.");
|
||||
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
|
||||
|
||||
/* Create the expander */
|
||||
expander = gtk_expander_new ("Details");
|
||||
gtk_box_pack_start (GTK_BOX (vbox), expander, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new ("Details can be shown or hidden.");
|
||||
gtk_container_add (GTK_CONTAINER (expander), label);
|
||||
}
|
||||
|
||||
if (!GTK_WIDGET_VISIBLE (window))
|
||||
gtk_widget_show_all (window);
|
||||
else
|
||||
gtk_widget_destroy (window);
|
||||
|
||||
return window;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user