diff src/layout.c @ 114:50fc73e08550

Mon Nov 27 01:23:23 2006 John Ellis <johne@verizon.net> * bar_exif.c, cache-loader.c, pan-view.c: Pass new arg for exif_read(). * color-man.[ch]: Add color_man_new_embedded for using in-memory color profiles. * exif.[ch]: Add support for extracting color profiles embedded in jpeg and tiff images. This resulted in a rewrite of the jpeg parser; both to allow searching for any marker type, and to make the code readable. * format_raw.c: Add color profile tag to the debug code. * image.c, layout.c: Use embedded color profiles when found and enabled, also add toggle for the option in color profile menu.
author gqview
date Mon, 27 Nov 2006 06:37:48 +0000
parents 55166d93498d
children 0c2e1f0a001b
line wrap: on
line diff
--- a/src/layout.c	Sat Nov 25 03:00:33 2006 +0000
+++ b/src/layout.c	Mon Nov 27 06:37:48 2006 +0000
@@ -316,6 +316,16 @@
 	layout_image_refresh(lw);
 }
 
+static void layout_color_menu_use_image_cb(GtkWidget *widget, gpointer data)
+{
+	LayoutWindow *lw = data;
+	gint input, screen, use_image;
+
+	if (!layout_image_color_profile_get(lw, &input, &screen, &use_image)) return;
+	layout_image_color_profile_set(lw, input, screen, !use_image);
+	layout_image_refresh(lw);
+}
+
 #define COLOR_MENU_KEY "color_menu_key"
 
 static void layout_color_menu_input_cb(GtkWidget *widget, gpointer data)
@@ -402,6 +412,10 @@
 
 	menu_item_add_divider(menu);
 
+	item = menu_item_add_check(menu, _("Use profile from _image"), use_image,
+			    G_CALLBACK(layout_color_menu_use_image_cb), lw);
+	gtk_widget_set_sensitive(item, active);
+
 	front = g_strdup_printf(_("Input _%d:"), 0);
 	buf = g_strdup_printf("%s %s", front, "sRGB");
 	g_free(front);