diff src/xs_interface.c @ 896:911401ea2145

Add message box functionality.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 09 Nov 2012 08:24:37 +0200
parents 350f755549dd
children 5d26b869a48e
line wrap: on
line diff
--- a/src/xs_interface.c	Fri Nov 09 08:22:41 2012 +0200
+++ b/src/xs_interface.c	Fri Nov 09 08:24:37 2012 +0200
@@ -2549,3 +2549,80 @@
   return xs_rom_fs;
 }
 
+GtkWidget*
+create_xs_messagebox (void)
+{
+  GtkWidget *xs_messagebox;
+  GtkWidget *vbox2;
+  GtkWidget *xs_messagebox_frame;
+  GtkWidget *xs_messagebox_msg;
+  GtkWidget *hbox1;
+  GtkWidget *hbuttonbox4;
+  GtkWidget *xs_messagebox_ok;
+
+  xs_messagebox = gtk_dialog_new ();
+  gtk_widget_set_name (xs_messagebox, "xs_messagebox");
+  gtk_object_set_data (GTK_OBJECT (xs_messagebox), "xs_messagebox", xs_messagebox);
+  gtk_widget_set_usize (xs_messagebox, 350, 150);
+  gtk_window_set_title (GTK_WINDOW (xs_messagebox), _("Message title"));
+  GTK_WINDOW (xs_messagebox)->type = GTK_WINDOW_DIALOG;
+  gtk_window_set_position (GTK_WINDOW (xs_messagebox), GTK_WIN_POS_CENTER);
+  gtk_window_set_modal (GTK_WINDOW (xs_messagebox), TRUE);
+  gtk_window_set_default_size (GTK_WINDOW (xs_messagebox), 350, 150);
+
+  vbox2 = GTK_DIALOG (xs_messagebox)->vbox;
+  gtk_widget_set_name (vbox2, "vbox2");
+  gtk_object_set_data (GTK_OBJECT (xs_messagebox), "vbox2", vbox2);
+  gtk_widget_show (vbox2);
+
+  xs_messagebox_frame = gtk_frame_new (_("Message title"));
+  gtk_widget_set_name (xs_messagebox_frame, "xs_messagebox_frame");
+  gtk_widget_ref (xs_messagebox_frame);
+  gtk_object_set_data_full (GTK_OBJECT (xs_messagebox), "xs_messagebox_frame", xs_messagebox_frame,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (xs_messagebox_frame);
+  gtk_box_pack_start (GTK_BOX (vbox2), xs_messagebox_frame, TRUE, TRUE, 0);
+  gtk_container_set_border_width (GTK_CONTAINER (xs_messagebox_frame), 6);
+
+  xs_messagebox_msg = gtk_label_new (_("label3"));
+  gtk_widget_set_name (xs_messagebox_msg, "xs_messagebox_msg");
+  gtk_widget_ref (xs_messagebox_msg);
+  gtk_object_set_data_full (GTK_OBJECT (xs_messagebox), "xs_messagebox_msg", xs_messagebox_msg,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (xs_messagebox_msg);
+  gtk_container_add (GTK_CONTAINER (xs_messagebox_frame), xs_messagebox_msg);
+  gtk_label_set_line_wrap (GTK_LABEL (xs_messagebox_msg), TRUE);
+
+  hbox1 = GTK_DIALOG (xs_messagebox)->action_area;
+  gtk_widget_set_name (hbox1, "hbox1");
+  gtk_object_set_data (GTK_OBJECT (xs_messagebox), "hbox1", hbox1);
+  gtk_widget_show (hbox1);
+  gtk_container_set_border_width (GTK_CONTAINER (hbox1), 6);
+
+  hbuttonbox4 = gtk_hbutton_box_new ();
+  gtk_widget_set_name (hbuttonbox4, "hbuttonbox4");
+  gtk_widget_ref (hbuttonbox4);
+  gtk_object_set_data_full (GTK_OBJECT (xs_messagebox), "hbuttonbox4", hbuttonbox4,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (hbuttonbox4);
+  gtk_box_pack_start (GTK_BOX (hbox1), hbuttonbox4, TRUE, TRUE, 0);
+  gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox4), GTK_BUTTONBOX_END);
+  gtk_button_box_set_spacing (GTK_BUTTON_BOX (hbuttonbox4), 8);
+  gtk_button_box_set_child_ipadding (GTK_BUTTON_BOX (hbuttonbox4), 0, 0);
+
+  xs_messagebox_ok = gtk_button_new_with_label (_("Ok"));
+  gtk_widget_set_name (xs_messagebox_ok, "xs_messagebox_ok");
+  gtk_widget_ref (xs_messagebox_ok);
+  gtk_object_set_data_full (GTK_OBJECT (xs_messagebox), "xs_messagebox_ok", xs_messagebox_ok,
+                            (GtkDestroyNotify) gtk_widget_unref);
+  gtk_widget_show (xs_messagebox_ok);
+  gtk_container_add (GTK_CONTAINER (hbuttonbox4), xs_messagebox_ok);
+  GTK_WIDGET_SET_FLAGS (xs_messagebox_ok, GTK_CAN_DEFAULT);
+
+  gtk_signal_connect (GTK_OBJECT (xs_messagebox), "delete_event",
+                      GTK_SIGNAL_FUNC (xs_confirmwin_delete),
+                      NULL);
+
+  return xs_messagebox;
+}
+