Index: gnome-session/session-properties-capplet.c
===================================================================
RCS file: /cvs/gnome/gnome-session/gnome-session/session-properties-capplet.c,v
retrieving revision 1.27
diff -u -r1.27 session-properties-capplet.c
--- gnome-session/session-properties-capplet.c	23 Jan 2003 08:15:33 -0000	1.27
+++ gnome-session/session-properties-capplet.c	26 May 2003 17:18:07 -0000
@@ -36,8 +36,12 @@
 
 /* Indicates whether we have to ask for save on close */
 static gboolean state_dirty = FALSE;
-/* Apply button (for toggling sensitivity) */
+/* Apply/Edit/Delete buttons (for toggling sensitivity) */
 extern GtkWidget *apply_button;
+GtkWidget *session_edit_button;
+GtkWidget *session_delete_button;
+GtkWidget *startup_edit_button;
+GtkWidget *startup_delete_button;
 
 /* Current state */
 GSList *deleted_sessions = NULL;
@@ -168,13 +175,23 @@
 	if (state_dirty) {
 		GtkWidget *dlg;
 		gint response;
-		dlg = gtk_message_dialog_new (NULL, 0, GTK_MESSAGE_QUESTION, GTK_BUTTONS_OK_CANCEL,
-					      _("Some changes are not saved.\nIs it still OK to exit?"));
+		dlg  = gtk_message_dialog_new (NULL,0,
+				GTK_MESSAGE_QUESTION,
+				GTK_BUTTONS_NONE,
+				_("Do you want to save the changes you made? \n\n"
+				  "Your changes will be lost if you don't save them."));
+
+		gtk_dialog_add_button(GTK_DIALOG(dlg),_("Do_n't save"),GTK_RESPONSE_NO);
+		gtk_dialog_add_button (GTK_DIALOG (dlg), GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL);
+		gtk_dialog_add_button (GTK_DIALOG (dlg),GTK_STOCK_SAVE,GTK_RESPONSE_YES);
+
 		response = gtk_dialog_run (GTK_DIALOG (dlg));
 		gtk_widget_destroy (dlg);
-		if (response == GTK_RESPONSE_CANCEL) return;
+		if (response == GTK_RESPONSE_CANCEL) 
+			return;
+		else if(response == GTK_RESPONSE_YES)
+			session_properties_apply ();
 	}
-
 	gtk_main_quit ();
 }
 
