Update of /cvsroot/ufraw/ufraw In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv24548
Modified Files: ufraw_preview.c Log Message: Disable auto-crop if crop range is manually changed. Index: ufraw_preview.c =================================================================== RCS file: /cvsroot/ufraw/ufraw/ufraw_preview.c,v retrieving revision 1.334 retrieving revision 1.335 diff -u -d -r1.334 -r1.335 --- ufraw_preview.c 7 Feb 2010 22:26:49 -0000 1.334 +++ ufraw_preview.c 10 Feb 2010 00:27:37 -0000 1.335 @@ -1471,7 +1471,6 @@ &CFG->profile[out_profile][CFG->profileIndex[out_profile]].BitDepth); gtk_toggle_button_set_active(data->AutoExposureButton, CFG->autoExposure); gtk_toggle_button_set_active(data->AutoBlackButton, CFG->autoBlack); - gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop); curveeditor_widget_set_curve(data->CurveWidget, &CFG->curve[CFG->curveIndex]); @@ -1847,6 +1846,8 @@ } if ( data->CropMotionType!=crop_cursor ) { fix_crop_aspect(data, data->CropMotionType, TRUE); + CFG->autoCrop = disabled_state; + gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop); } } @@ -2027,6 +2028,8 @@ refresh_aspect(data); set_new_aspect(data); + CFG->autoCrop = disabled_state; + gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop); } static void zoom_update(GtkAdjustment *adj, gpointer user_data) @@ -2386,6 +2389,19 @@ _("Aspect ratio unlocked, click to lock")); } +static void auto_crop_clicked(GtkToggleButton *button, gpointer user_data) +{ + preview_data *data = get_preview_data(button); + (void)user_data; + CFG->autoCrop = gtk_toggle_button_get_active(button); + if (CFG->autoCrop == enabled_state) { + CFG->autoCrop = apply_state; + ufraw_invalidate_layer(data->UF, ufraw_transform_phase); + ufraw_get_image_dimensions(data->UF); + render_preview(data); + } +} + static void aspect_changed(GtkWidget *widget, gpointer user_data) { preview_data *data = get_preview_data(widget); @@ -2407,6 +2423,7 @@ CFG->LockAspect = TRUE; gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(data->LockAspectButton), TRUE); + auto_crop_clicked(data->AutoCropButton, NULL); } static void set_darkframe_label(preview_data *data) @@ -2626,12 +2643,6 @@ break; } } - if (button == GTK_WIDGET(data->AutoCropButton)) { - CFG->autoCrop = - gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); - if (CFG->autoCrop == enabled_state) - CFG->autoCrop = apply_state; - } if (CFG->autoExposure==enabled_state) CFG->autoExposure = apply_state; if (CFG->autoBlack==enabled_state) CFG->autoBlack = apply_state; ufraw_invalidate_layer(data->UF, ufraw_develop_phase); @@ -2904,7 +2915,10 @@ if ( (int *)valuep==&CFG->CropY1) cursor = top_cursor; if ( (int *)valuep==&CFG->CropY2) cursor = bottom_cursor; fix_crop_aspect(data, cursor, TRUE); - if (CFG->autoCrop==enabled_state) CFG->autoCrop = apply_state; + if (!data->FreezeDialog) { + CFG->autoCrop = disabled_state; + gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop); + } return; } /* Do nothing if value didn't really change */ @@ -4922,7 +4936,7 @@ _("Auto fit crop area")); gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop); g_signal_connect(G_OBJECT(data->AutoCropButton), "clicked", - G_CALLBACK(button_update), NULL); + G_CALLBACK(auto_crop_clicked), NULL); // Crop reset button: button = reset_button( ------------------------------------------------------------------------------ SOLARIS 10 is the OS for Data Centers - provides features such as DTrace, Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW http://p.sf.net/sfu/solaris-dev2dev _______________________________________________ ufraw-cvs mailing list ufraw-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ufraw-cvs