diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2018-08-20 21:12:06 -0400 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2018-08-20 21:12:06 -0400 |
commit | 63e87c2d0c9d263f14c77b68f85c67d46ece82a9 (patch) | |
tree | 6260365cbf7d24f37d27669e8538227fcb72e243 /gtk+-mingw/share/gtk-3.0/demo/dialog.c | |
parent | a4460f6d9453bbd7e584937686449cef3e19f052 (diff) |
Diffstat (limited to 'gtk+-mingw/share/gtk-3.0/demo/dialog.c')
-rw-r--r-- | gtk+-mingw/share/gtk-3.0/demo/dialog.c | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/gtk+-mingw/share/gtk-3.0/demo/dialog.c b/gtk+-mingw/share/gtk-3.0/demo/dialog.c deleted file mode 100644 index d9bc98d..0000000 --- a/gtk+-mingw/share/gtk-3.0/demo/dialog.c +++ /dev/null @@ -1,175 +0,0 @@ -/* Dialog and Message Boxes - * - * Dialog widgets are used to pop up a transient window for user feedback. - */ - -#include <gtk/gtk.h> - -static GtkWidget *window = NULL; -static GtkWidget *entry1 = NULL; -static GtkWidget *entry2 = NULL; - -static void -message_dialog_clicked (GtkButton *button, - gpointer user_data) -{ - GtkWidget *dialog; - static gint i = 1; - - dialog = gtk_message_dialog_new (GTK_WINDOW (window), - GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_MESSAGE_INFO, - GTK_BUTTONS_OK, - "This message box has been popped up the following\n" - "number of times:"); - gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), - "%d", i); - gtk_dialog_run (GTK_DIALOG (dialog)); - gtk_widget_destroy (dialog); - i++; -} - -static void -interactive_dialog_clicked (GtkButton *button, - gpointer user_data) -{ - GtkWidget *content_area; - GtkWidget *dialog; - GtkWidget *hbox; - GtkWidget *stock; - GtkWidget *table; - GtkWidget *local_entry1; - GtkWidget *local_entry2; - GtkWidget *label; - gint response; - - dialog = gtk_dialog_new_with_buttons ("Interactive Dialog", - GTK_WINDOW (window), - GTK_DIALOG_MODAL| GTK_DIALOG_DESTROY_WITH_PARENT, - GTK_STOCK_OK, - GTK_RESPONSE_OK, - "_Non-stock Button", - GTK_RESPONSE_CANCEL, - NULL); - - content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); - - hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); - gtk_container_set_border_width (GTK_CONTAINER (hbox), 8); - gtk_box_pack_start (GTK_BOX (content_area), hbox, FALSE, FALSE, 0); - - stock = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); - gtk_box_pack_start (GTK_BOX (hbox), stock, FALSE, FALSE, 0); - - table = gtk_grid_new (); - gtk_grid_set_row_spacing (GTK_GRID (table), 4); - gtk_grid_set_column_spacing (GTK_GRID (table), 4); - gtk_box_pack_start (GTK_BOX (hbox), table, TRUE, TRUE, 0); - label = gtk_label_new_with_mnemonic ("_Entry 1"); - gtk_grid_attach (GTK_GRID (table), label, 0, 0, 1, 1); - local_entry1 = gtk_entry_new (); - gtk_entry_set_text (GTK_ENTRY (local_entry1), gtk_entry_get_text (GTK_ENTRY (entry1))); - gtk_grid_attach (GTK_GRID (table), local_entry1, 1, 0, 1, 1); - gtk_label_set_mnemonic_widget (GTK_LABEL (label), local_entry1); - - label = gtk_label_new_with_mnemonic ("E_ntry 2"); - gtk_grid_attach (GTK_GRID (table), label, 0, 1, 1, 1); - - local_entry2 = gtk_entry_new (); - gtk_entry_set_text (GTK_ENTRY (local_entry2), gtk_entry_get_text (GTK_ENTRY (entry2))); - gtk_grid_attach (GTK_GRID (table), local_entry2, 1, 1, 1, 1); - gtk_label_set_mnemonic_widget (GTK_LABEL (label), local_entry2); - - gtk_widget_show_all (hbox); - response = gtk_dialog_run (GTK_DIALOG (dialog)); - - if (response == GTK_RESPONSE_OK) - { - gtk_entry_set_text (GTK_ENTRY (entry1), gtk_entry_get_text (GTK_ENTRY (local_entry1))); - gtk_entry_set_text (GTK_ENTRY (entry2), gtk_entry_get_text (GTK_ENTRY (local_entry2))); - } - - gtk_widget_destroy (dialog); -} - -GtkWidget * -do_dialog (GtkWidget *do_widget) -{ - GtkWidget *frame; - GtkWidget *vbox; - GtkWidget *vbox2; - GtkWidget *hbox; - GtkWidget *button; - GtkWidget *table; - GtkWidget *label; - - if (!window) - { - window = gtk_window_new (GTK_WINDOW_TOPLEVEL); - gtk_window_set_screen (GTK_WINDOW (window), - gtk_widget_get_screen (do_widget)); - gtk_window_set_title (GTK_WINDOW (window), "Dialogs"); - - g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window); - gtk_container_set_border_width (GTK_CONTAINER (window), 8); - - frame = gtk_frame_new ("Dialogs"); - gtk_container_add (GTK_CONTAINER (window), frame); - - vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8); - gtk_container_set_border_width (GTK_CONTAINER (vbox), 8); - gtk_container_add (GTK_CONTAINER (frame), vbox); - - /* Standard message dialog */ - hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); - gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); - button = gtk_button_new_with_mnemonic ("_Message Dialog"); - g_signal_connect (button, "clicked", - G_CALLBACK (message_dialog_clicked), NULL); - gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0); - - gtk_box_pack_start (GTK_BOX (vbox), gtk_separator_new (GTK_ORIENTATION_HORIZONTAL), - FALSE, FALSE, 0); - - /* Interactive dialog*/ - hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); - gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0); - vbox2 = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - - button = gtk_button_new_with_mnemonic ("_Interactive Dialog"); - g_signal_connect (button, "clicked", - G_CALLBACK (interactive_dialog_clicked), NULL); - gtk_box_pack_start (GTK_BOX (hbox), vbox2, FALSE, FALSE, 0); - gtk_box_pack_start (GTK_BOX (vbox2), button, FALSE, FALSE, 0); - - table = gtk_grid_new (); - gtk_grid_set_row_spacing (GTK_GRID (table), 4); - gtk_grid_set_column_spacing (GTK_GRID (table), 4); - gtk_box_pack_start (GTK_BOX (hbox), table, FALSE, FALSE, 0); - - label = gtk_label_new_with_mnemonic ("_Entry 1"); - gtk_grid_attach (GTK_GRID (table), label, 0, 0, 1, 1); - - entry1 = gtk_entry_new (); - gtk_grid_attach (GTK_GRID (table), entry1, 1, 0, 1, 1); - gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry1); - - label = gtk_label_new_with_mnemonic ("E_ntry 2"); - gtk_grid_attach (GTK_GRID (table), label, 0, 1, 1, 1); - - entry2 = gtk_entry_new (); - gtk_grid_attach (GTK_GRID (table), entry2, 1, 1, 1, 1); - } - - if (!gtk_widget_get_visible (window)) - { - gtk_widget_show_all (window); - } - else - { - gtk_widget_destroy (window); - window = NULL; - } - - return window; -} |