/[xlog]/xlog/src/gui_savedialog.c
ViewVC logotype

Diff of /xlog/src/gui_savedialog.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1 by pa4tu, Thu Apr 8 21:51:55 2004 UTC revision 1.2 by pa4tu, Thu Jan 27 08:16:26 2005 UTC
# Line 30  Line 30 
30    
31  extern GtkWidget *mainwindow;  extern GtkWidget *mainwindow;
32    
33  /* ok clicked, changed log not saved */  void
 static void  
 on_saveokbutton_clicked (GtkButton * button, gpointer user_data)  
 {  
         save_windowsize_and_cleanup ();  
         gtk_main_quit ();  
 }  
   
 static void  
 on_savecancelbutton_clicked (GtkButton * button, gpointer user_data)  
 {  
         gtk_widget_destroy (gtk_widget_get_toplevel (GTK_WIDGET (button)));  
         gtk_widget_set_sensitive (mainwindow, 1);  
 }  
   
 /* save dialog is deleted */  
 static gboolean  
 on_savedialog_delete_event (GtkWidget * widget, GdkEvent * event,  
                                         gpointer user_data)  
 {  
         gtk_widget_set_sensitive (mainwindow, 1);  
         return FALSE;  
 }  
   
 GtkWidget*  
34  create_savedialog (void)  create_savedialog (void)
35  {  {
36          GtkWidget *savedialog;          GtkWidget *savedialog, *vbox, *image, *label;
37          GdkPixbuf *savedialog_icon_pixbuf;          gint response;
         GtkWidget *dialog_vbox3;  
         GtkWidget *vbox43;  
         GtkWidget *image50;  
         GtkWidget *label2;  
         GtkWidget *dialog_action_area3;  
         GtkWidget *savecancelbutton;  
         GtkWidget *saveokbutton;  
   
         savedialog = gtk_dialog_new ();  
         gtk_window_set_title (GTK_WINDOW (savedialog), _("xlog - saving"));  
         gtk_window_set_position (GTK_WINDOW (savedialog), GTK_WIN_POS_MOUSE);  
         savedialog_icon_pixbuf = create_pixbuf ("xlog.png");  
         if (savedialog_icon_pixbuf)  
                 {  
                         gtk_window_set_icon (GTK_WINDOW (savedialog), savedialog_icon_pixbuf);  
                         g_object_unref (savedialog_icon_pixbuf);  
                 }  
   
         dialog_vbox3 = GTK_DIALOG (savedialog)->vbox;  
         gtk_widget_show (dialog_vbox3);  
   
         vbox43 = gtk_vbox_new (TRUE, 0);  
         gtk_widget_show (vbox43);  
         gtk_box_pack_start (GTK_BOX (dialog_vbox3), vbox43, FALSE, FALSE, 0);  
   
         image50 = gtk_image_new_from_stock ("gtk-dialog-question", GTK_ICON_SIZE_DIALOG);  
         gtk_widget_show (image50);  
         gtk_box_pack_start (GTK_BOX (vbox43), image50, TRUE, TRUE, 0);  
   
         label2 = gtk_label_new (_("One of your logs has not been saved, do you want to quit anyway?"));  
         gtk_widget_show (label2);  
         gtk_box_pack_start (GTK_BOX (vbox43), label2, TRUE, TRUE, 0);  
         gtk_label_set_justify (GTK_LABEL (label2), GTK_JUSTIFY_CENTER);  
         gtk_label_set_line_wrap (GTK_LABEL (label2), TRUE);  
         gtk_misc_set_padding (GTK_MISC (label2), 10, 10);  
   
         dialog_action_area3 = GTK_DIALOG (savedialog)->action_area;  
         gtk_widget_show (dialog_action_area3);  
         gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area3), GTK_BUTTONBOX_SPREAD);  
   
         savecancelbutton = gtk_button_new_from_stock ("gtk-cancel");  
         gtk_widget_show (savecancelbutton);  
         gtk_dialog_add_action_widget (GTK_DIALOG (savedialog), savecancelbutton, GTK_RESPONSE_CANCEL);  
         GTK_WIDGET_SET_FLAGS (savecancelbutton, GTK_CAN_DEFAULT);  
   
         saveokbutton = gtk_button_new_from_stock ("gtk-quit");  
         gtk_widget_show (saveokbutton);  
         gtk_dialog_add_action_widget (GTK_DIALOG (savedialog), saveokbutton, GTK_RESPONSE_OK);  
         GTK_WIDGET_SET_FLAGS (saveokbutton, GTK_CAN_DEFAULT);  
   
         g_signal_connect ((gpointer) savedialog, "delete_event",  
                                                                                 G_CALLBACK (on_savedialog_delete_event),  
                                                                                 NULL);  
         g_signal_connect ((gpointer) savecancelbutton, "clicked",  
                                                                                 G_CALLBACK (on_savecancelbutton_clicked),  
                                                                                 NULL);  
         g_signal_connect ((gpointer) saveokbutton, "clicked",  
                                                                                 G_CALLBACK (on_saveokbutton_clicked),  
                                                                                 NULL);  
38    
39          return savedialog;          savedialog = gtk_dialog_new_with_buttons (_("xlog - saving"),
40                    GTK_WINDOW(mainwindow), GTK_DIALOG_DESTROY_WITH_PARENT,
41                    GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
42                    GTK_STOCK_OK, GTK_RESPONSE_OK, NULL);
43            vbox = gtk_vbox_new (TRUE, 0);
44            gtk_container_add
45                    (GTK_CONTAINER (GTK_DIALOG (savedialog)->vbox), vbox);
46            image = gtk_image_new_from_stock
47                    ("gtk-dialog-question", GTK_ICON_SIZE_DIALOG);
48            gtk_widget_show (image);
49            gtk_box_pack_start (GTK_BOX (vbox), image, FALSE, FALSE, 0);
50    
51            label = gtk_label_new
52    (_("One of your logs has not been saved, do you want to quit anyway?"));
53            gtk_widget_show (label);
54            gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
55            gtk_label_set_justify (GTK_LABEL (label), GTK_JUSTIFY_CENTER);
56            gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
57            gtk_widget_show_all (savedialog);
58            response = gtk_dialog_run (GTK_DIALOG(savedialog));
59            if (response == GTK_RESPONSE_OK)
60            {
61                    save_windowsize_and_cleanup ();
62                    gtk_main_quit ();
63            }
64            gtk_widget_destroy (savedialog);
65  }  }
66    

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.2

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26