From 6c8be248fe985fd82912aab133139abb341085f3 Mon Sep 17 00:00:00 2001 From: Sven Neumann Date: Tue, 18 May 1999 23:08:18 +0000 Subject: [PATCH] Bug fixes for the gap plug-in as provided by the author. --Sven --- ChangeLog | 7 +++++++ plug-ins/gap/gap_arr_dialog.c | 17 +++++++++++------ plug-ins/gap/gap_mod_layer.c | 5 ++++- plug-ins/gap/gap_mov_dialog.c | 35 +++++++++++++++++++++-------------- plug-ins/gap/gap_split.c | 3 ++- 5 files changed, 45 insertions(+), 22 deletions(-) diff --git a/ChangeLog b/ChangeLog index d49963d794..255a9c9bc0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Wed May 19 01:05:08 MEST 1999 Sven Neumann + + * plug-ins/gap/gap_arr_dialog.c + * plug-ins/gap/gap_mod_layer.c + * plug-ins/gap/gap_mov_dialog.c + * plug-ins/gap/gap_split.c: bugfixes as provided by Wolfgang Hofer + Mon May 17 16:56:36 CEST 1999 Marc Lehmann * libgimp/gimppixelrgn.c: New function gimp_pixel_rgns_register2. diff --git a/plug-ins/gap/gap_arr_dialog.c b/plug-ins/gap/gap_arr_dialog.c index 2f55272f7e..e143d79133 100644 --- a/plug-ins/gap/gap_arr_dialog.c +++ b/plug-ins/gap/gap_arr_dialog.c @@ -38,6 +38,7 @@ */ /* revision history: + * gimp 1.1.15.1; 1999/05/08 hof: call fileselect in gtk+1.2 style * version 0.96.03; 1998/08/15 hof: p_arr_gtk_init * version 0.96.01; 1998/07/09 hof: Bugfix: gtk_init should be called only * once in a plugin process @@ -244,15 +245,19 @@ filesel_open_cb(GtkWidget *widget, t_arr_arg *arr_ptr) gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE); - gtk_signal_connect (GTK_OBJECT (filesel), "destroy", - (GtkSignalFunc) filesel_close_cb, - arr_ptr); gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->ok_button), "clicked", (GtkSignalFunc) filesel_ok_cb, arr_ptr); - gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), - "clicked", (GtkSignalFunc) filesel_close_cb, - (GtkObject *)arr_ptr); + gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), + "clicked", (GtkSignalFunc) filesel_close_cb, + arr_ptr); + + /* "destroy" has to be the last signal, + * (otherwise the other callbacks are never called) + */ + gtk_signal_connect (GTK_OBJECT (filesel), "destroy", + (GtkSignalFunc) filesel_close_cb, + arr_ptr); gtk_file_selection_set_filename (GTK_FILE_SELECTION (filesel), arr_ptr->text_buf_ret); gtk_widget_show (filesel); diff --git a/plug-ins/gap/gap_mod_layer.c b/plug-ins/gap/gap_mod_layer.c index d777a09fcd..38cd3ba295 100644 --- a/plug-ins/gap/gap_mod_layer.c +++ b/plug-ins/gap/gap_mod_layer.c @@ -28,6 +28,7 @@ */ /* revision history: + * gimp 1.1.15.1; 1999/05/08 hof: bugix (dont mix GDrawableType with GImageType) * version 0.98.00 1998.11.27 hof: - use new module gap_pdb_calls.h * version 0.97.00 1998.10.19 hof: - created module */ @@ -396,7 +397,9 @@ void p_prevent_empty_image(gint32 image_id) l_width = gimp_image_width(image_id); l_height = gimp_image_height(image_id); l_type = gimp_image_base_type(image_id); - + + l_type = (l_type * 2); /* convert from GImageType to GDrawableType */ + /* add a transparent dummy layer */ l_layer_id = gimp_layer_new(image_id, "dummy", l_width, l_height, l_type, diff --git a/plug-ins/gap/gap_mov_dialog.c b/plug-ins/gap/gap_mov_dialog.c index 0f2a860d19..6b848cc8b8 100644 --- a/plug-ins/gap/gap_mov_dialog.c +++ b/plug-ins/gap/gap_mov_dialog.c @@ -30,6 +30,7 @@ */ /* revision history: + * gimp 1.1.15.1; 1999/05/08 hof: call fileselect in gtk+1.2 style * version 0.99.00; 1999.03.03 hof: bugfix: update of the preview (did'nt work with gimp1.1.2) * version 0.98.00; 1998.11.28 hof: Port to GIMP 1.1: replaced buildmenu.h, apply layermask (before rotate) * mov_imglayer_constrain must check for drawable_id -1 @@ -819,17 +820,20 @@ mov_pload_callback (GtkWidget *widget, gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE); - gtk_signal_connect (GTK_OBJECT (filesel), "destroy", - (GtkSignalFunc) p_filesel_close_cb, - path_ptr); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->ok_button), "clicked", (GtkSignalFunc) p_points_load_from_file, path_ptr); - gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), - "clicked", (GtkSignalFunc) p_filesel_close_cb, - (GtkObject *)path_ptr); + gtk_signal_connect(GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), + "clicked", (GtkSignalFunc) p_filesel_close_cb, + path_ptr); + + /* "destroy" has to be the last signal, + * (otherwise the other callbacks are never called) + */ + gtk_signal_connect (GTK_OBJECT (filesel), "destroy", + (GtkSignalFunc) p_filesel_close_cb, + path_ptr); gtk_file_selection_set_filename (GTK_FILE_SELECTION (filesel), path_ptr->pointfile_name); @@ -852,17 +856,20 @@ mov_psave_callback (GtkWidget *widget, gtk_window_position (GTK_WINDOW (filesel), GTK_WIN_POS_MOUSE); - gtk_signal_connect (GTK_OBJECT (filesel), "destroy", - (GtkSignalFunc) p_filesel_close_cb, - path_ptr); - gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->ok_button), "clicked", (GtkSignalFunc) p_points_save_to_file, path_ptr); - gtk_signal_connect_object (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), - "clicked", (GtkSignalFunc) p_filesel_close_cb, - (GtkObject *)path_ptr); + gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION (filesel)->cancel_button), + "clicked", (GtkSignalFunc) p_filesel_close_cb, + path_ptr); + + /* "destroy" has to be the last signal, + * (otherwise the other callbacks are never called) + */ + gtk_signal_connect (GTK_OBJECT (filesel), "destroy", + (GtkSignalFunc) p_filesel_close_cb, + path_ptr); gtk_file_selection_set_filename (GTK_FILE_SELECTION (filesel), path_ptr->pointfile_name); diff --git a/plug-ins/gap/gap_split.c b/plug-ins/gap/gap_split.c index 3a0b727ad5..9ee523db1d 100644 --- a/plug-ins/gap/gap_split.c +++ b/plug-ins/gap/gap_split.c @@ -26,6 +26,7 @@ */ /* revision history + * gimp 1.1.15.1; 1999/05/08 hof: bugix (dont mix GDrawableType with GImageType) * 0.96.00; 1998/07/01 hof: - added scale, resize and crop * (affects full range == all anim frames) * - now using gap_arr_dialog.h @@ -140,7 +141,7 @@ p_split_image(t_anim_info *ainfo_ptr, /* add a dummy layer (flatten needs at least 2 layers) */ l_cp_layer_id = gimp_layer_new(l_new_image_id, "dummy", 4, 4, /* width, height */ - l_type, + ((l_type * 2 ) + 1), /* convert from GImageType to GDrawableType, and add alpha */ 0.0, /* Opacity full transparent */ 0); /* NORMAL */ gimp_image_add_layer(l_new_image_id, l_cp_layer_id, 0);