[Rawstudio-commit] r1340 - trunk/src

Anders Kvist anders at kvistmail.dk
Thu Aug 9 23:40:29 CEST 2007


Author: akv
Date: 2007-08-09 23:40:28 +0200 (Thu, 09 Aug 2007)
New Revision: 1340

Modified:
   trunk/src/gtk-interface.c
   trunk/src/toolbox.c
   trunk/src/toolbox.h
   trunk/src/wb_presets.c
Log:
Sets 'Manual WB' in preset box when manually adjusting slides or wb clicking on the photo.

Modified: trunk/src/gtk-interface.c
===================================================================
--- trunk/src/gtk-interface.c	2007-08-09 20:35:30 UTC (rev 1339)
+++ trunk/src/gtk-interface.c	2007-08-09 21:40:28 UTC (rev 1340)
@@ -177,9 +177,8 @@
 	{
 		rs_settings_to_rs_settings_double(rs->settings[rs->current_setting], rs->photo->settings[rs->photo->current_setting]);
 		update_preview(rs, FALSE, FALSE);
+		wb_preset_box_set(rs->wb_preset_combo_box[rs->current_setting], 0); // FIXME: hardcoded
 		gui_set_values(rs, -1, -1);
-		// FIXME: only use if wb sliders (not by auto, camera or click-to-wb)
-		// wb_preset_box_set(rs->wb_preset_box[rs->current_setting], 0);
 	}
 	return(FALSE);
 }

Modified: trunk/src/toolbox.c
===================================================================
--- trunk/src/toolbox.c	2007-08-09 20:35:30 UTC (rev 1339)
+++ trunk/src/toolbox.c	2007-08-09 21:40:28 UTC (rev 1340)
@@ -211,6 +211,20 @@
 	return(gui_box(_("Warmth/tint"), box, show));
 }
 
+void
+gui_tool_warmth_sliders_block_signal(RS_BLOB *rs)
+{
+	g_signal_handlers_block_by_func(rs->settings[rs->current_setting]->warmth, update_preview_callback, rs);
+	g_signal_handlers_block_by_func(rs->settings[rs->current_setting]->tint, update_preview_callback, rs);
+}
+
+void
+gui_tool_warmth_sliders_unblock_signal(RS_BLOB *rs)
+{
+	g_signal_handlers_unblock_by_func(rs->settings[rs->current_setting]->warmth, update_preview_callback, rs);
+	g_signal_handlers_unblock_by_func(rs->settings[rs->current_setting]->tint, update_preview_callback, rs);
+}
+
 static GtkWidget *
 gui_slider(GtkObject *adj, const gchar *label, gboolean expanded)
 {

Modified: trunk/src/toolbox.h
===================================================================
--- trunk/src/toolbox.h	2007-08-09 20:35:30 UTC (rev 1339)
+++ trunk/src/toolbox.h	2007-08-09 21:40:28 UTC (rev 1340)
@@ -20,6 +20,8 @@
 #ifndef TOOLBOX_H
 #define TOOLBOX_H
  
+void gui_tool_warmth_sliders_block_signal(RS_BLOB *rs);
+void gui_tool_warmth_sliders_unblock_signal(RS_BLOB *rs);
 extern void scale_expand_set(gboolean expanded);
 extern void gui_toolbox_add_widget(GtkWidget *widget);
 extern GtkWidget * gui_toolbox_add_tool_frame(GtkWidget *widget, gchar *title);

Modified: trunk/src/wb_presets.c
===================================================================
--- trunk/src/wb_presets.c	2007-08-09 20:35:30 UTC (rev 1339)
+++ trunk/src/wb_presets.c	2007-08-09 21:40:28 UTC (rev 1340)
@@ -21,6 +21,7 @@
 #include "wb_presets.h"
 #include "rawstudio.h"
 #include "color.h"
+#include "toolbox.h"
 
 /* Column 1 - "make" of the camera.
  * Column 2 - "model" (use the "make" and "model" as provided by DCRaw).
@@ -1650,12 +1651,16 @@
 					   WB_PRESET_B, &mul[B],
 					   WB_PRESET_G2, &mul[G2],
 					   -1);
+	gui_tool_warmth_sliders_block_signal(rs);
 	if (strcmp(name, "Camera WB")==0)
 		rs_set_wb_from_mul(rs, rs->photo->metadata->cam_mul);
 	else if (strcmp(name, "Auto WB")==0)
 		rs_set_wb_auto(rs);
 	else if (strcmp(name, "Manual WB")!=0) 
 		rs_set_wb_from_mul(rs, mul);
+	rs_settings_to_rs_settings_double(rs->settings[rs->current_setting], rs->photo->settings[rs->photo->current_setting]);
+	update_preview(rs, FALSE, FALSE);
+	gui_tool_warmth_sliders_unblock_signal(rs);
 	return;
 }
 




More information about the Rawstudio-commit mailing list