Commit 864fb493 authored by Sven Neumann's avatar Sven Neumann
Browse files

fixed bugs #7078 and #2291


--Sven
parent 6feb0330
Sun Mar 12 02:25:58 CET 2000 Sven Neumann <sven@gimp.org>
* app/color_notebook.c: connect the wm close event to the Close
button. This is somehwaqt inconsistent since the Close button takes
the role of the OK button in this dialog, but IMO it's better that
way and fixes bug #7078.
* app/fileops.c: ref the image when doing a save operation. This
lets the save plugin complete its job even if the user decided
to close the display and thereby deleted the image. You may still
crash the plugin by deleting layers from the Layers dialog, but I
guess we will not be able to fix this w/o a major redesign.
Fixes (well, more or less) bug #2291.
* app/gradient.c:
* libgimp/gimpcolorbutton.c: cosmetics
Sun Mar 12 01:09:27 CET 2000 Sven Neumann <sven@gimp.org>
* libgimp/Makefile.am
......
......@@ -121,10 +121,10 @@ color_notebook_new (gint red,
wants_updates ? _("Close") : _("OK"),
color_notebook_ok_callback,
cnp, NULL, NULL, TRUE, FALSE,
cnp, NULL, NULL, TRUE, wants_updates,
wants_updates ? _("Revert to Old Color") : _("Cancel"),
color_notebook_cancel_callback,
cnp, NULL, NULL, FALSE, TRUE,
cnp, NULL, NULL, FALSE, !wants_updates,
NULL);
......
......@@ -121,10 +121,10 @@ color_notebook_new (gint red,
wants_updates ? _("Close") : _("OK"),
color_notebook_ok_callback,
cnp, NULL, NULL, TRUE, FALSE,
cnp, NULL, NULL, TRUE, wants_updates,
wants_updates ? _("Revert to Old Color") : _("Cancel"),
color_notebook_cancel_callback,
cnp, NULL, NULL, FALSE, TRUE,
cnp, NULL, NULL, FALSE, !wants_updates,
NULL);
......
......@@ -406,7 +406,7 @@ file_save_callback (GtkWidget *widget,
gint status;
raw_filename = g_basename (gimage_filename (gdisplay->gimage));
status = file_save (gdisplay->gimage,
gimage_filename (gdisplay->gimage),
raw_filename,
......@@ -1002,6 +1002,9 @@ file_save (GimpImage *gimage,
if (!file_proc)
return FALSE;
/* ref the image, so it can't get deleted during save */
gtk_object_ref (GTK_OBJECT (gimage));
proc = &file_proc->db_info;
args = g_new0 (Argument, proc->num_args);
......@@ -1054,6 +1057,8 @@ file_save (GimpImage *gimage,
g_free (return_vals);
g_free (args);
gtk_object_unref (GTK_OBJECT (gimage));
return status;
}
......
......@@ -4401,6 +4401,8 @@ cpopup_create_color_dialog (gchar *title,
GtkColorSelectionDialog *csd;
window = gtk_color_selection_dialog_new (title);
gtk_container_set_border_width (GTK_CONTAINER (window), 2);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (window)->help_button);
gimp_help_connect_help_accel (window, gimp_standard_help_func,
"dialogs/gradient_editor/gradient_editor.html");
......
......@@ -4401,6 +4401,8 @@ cpopup_create_color_dialog (gchar *title,
GtkColorSelectionDialog *csd;
window = gtk_color_selection_dialog_new (title);
gtk_container_set_border_width (GTK_CONTAINER (window), 2);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (window)->help_button);
gimp_help_connect_help_accel (window, gimp_standard_help_func,
"dialogs/gradient_editor/gradient_editor.html");
......
......@@ -121,10 +121,10 @@ color_notebook_new (gint red,
wants_updates ? _("Close") : _("OK"),
color_notebook_ok_callback,
cnp, NULL, NULL, TRUE, FALSE,
cnp, NULL, NULL, TRUE, wants_updates,
wants_updates ? _("Revert to Old Color") : _("Cancel"),
color_notebook_cancel_callback,
cnp, NULL, NULL, FALSE, TRUE,
cnp, NULL, NULL, FALSE, !wants_updates,
NULL);
......
......@@ -4401,6 +4401,8 @@ cpopup_create_color_dialog (gchar *title,
GtkColorSelectionDialog *csd;
window = gtk_color_selection_dialog_new (title);
gtk_container_set_border_width (GTK_CONTAINER (window), 2);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (window)->help_button);
gimp_help_connect_help_accel (window, gimp_standard_help_func,
"dialogs/gradient_editor/gradient_editor.html");
......
......@@ -121,10 +121,10 @@ color_notebook_new (gint red,
wants_updates ? _("Close") : _("OK"),
color_notebook_ok_callback,
cnp, NULL, NULL, TRUE, FALSE,
cnp, NULL, NULL, TRUE, wants_updates,
wants_updates ? _("Revert to Old Color") : _("Cancel"),
color_notebook_cancel_callback,
cnp, NULL, NULL, FALSE, TRUE,
cnp, NULL, NULL, FALSE, !wants_updates,
NULL);
......
......@@ -4401,6 +4401,8 @@ cpopup_create_color_dialog (gchar *title,
GtkColorSelectionDialog *csd;
window = gtk_color_selection_dialog_new (title);
gtk_container_set_border_width (GTK_CONTAINER (window), 2);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (window)->help_button);
gimp_help_connect_help_accel (window, gimp_standard_help_func,
"dialogs/gradient_editor/gradient_editor.html");
......
......@@ -465,6 +465,8 @@ gimp_color_button_clicked (GtkButton *button)
gtk_color_selection_set_opacity (colorsel, (gcb->bpp == 4));
gtk_color_selection_set_color (colorsel, gcb->dcolor);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->help_button);
gtk_container_set_border_width (GTK_CONTAINER (gcb->dialog), 2);
gtk_signal_connect (GTK_OBJECT (gcb->dialog), "destroy",
(GtkSignalFunc) gtk_widget_destroyed, &gcb->dialog);
gtk_signal_connect (GTK_OBJECT (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->ok_button),
......
......@@ -465,6 +465,8 @@ gimp_color_button_clicked (GtkButton *button)
gtk_color_selection_set_opacity (colorsel, (gcb->bpp == 4));
gtk_color_selection_set_color (colorsel, gcb->dcolor);
gtk_widget_destroy (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->help_button);
gtk_container_set_border_width (GTK_CONTAINER (gcb->dialog), 2);
gtk_signal_connect (GTK_OBJECT (gcb->dialog), "destroy",
(GtkSignalFunc) gtk_widget_destroyed, &gcb->dialog);
gtk_signal_connect (GTK_OBJECT (GTK_COLOR_SELECTION_DIALOG (gcb->dialog)->ok_button),
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment