diff src/layout_image.c @ 113:55166d93498d

Fri Nov 24 21:37:01 2006 John Ellis <johne@verizon.net> * configure.in: Add test for lcms (little cms). * Makefile.am: Add color-man.[ch]: * color-man.[ch]: New files for color management support. * globals.c, gqview.h, main.c, rcfile.c, typedefs.h: Add color profile variables and option saving. * image.[ch]: Add color profile functions. * layout.c, layout_image.[ch]: Add color profile icon, popup menu, and fix sort menu to use radio buttons. * menu.c: Use radio buttons for sort menu when appropriate. * preferences.c: Add color profile options to preferences. * ui_menu.[ch]: Add menu_item_add_radio() for radio item menus. * ui_misc.c: Fix gtk_table_attach() arg for vertical expansion. * view_file_icon.c, view_file_list.c: Check for active state in sort menu callbacks. * README: Add info about lcms, and how to disable.
author gqview
date Sat, 25 Nov 2006 03:00:33 +0000
parents cade6a52a165
children 0c2e1f0a001b
line wrap: on
line diff
--- a/src/layout_image.c	Sat Nov 18 00:12:22 2006 +0000
+++ b/src/layout_image.c	Sat Nov 25 03:00:33 2006 +0000
@@ -1,6 +1,6 @@
 /*
  * GQview
- * (C) 2004 John Ellis
+ * (C) 2006 John Ellis
  *
  * Author: John Ellis
  *
@@ -1140,6 +1140,46 @@
 	image_reload(lw->image);
 }
 
+void layout_image_color_profile_set(LayoutWindow *lw,
+				    gint input_type, gint screen_type,
+				    gint use_image)
+{
+	if (!layout_valid(&lw)) return;
+
+	image_color_profile_set(lw->image, input_type, screen_type, use_image);
+}
+
+gint layout_image_color_profile_get(LayoutWindow *lw,
+				    gint *input_type, gint *screen_type,
+				    gint *use_image)
+{
+	if (!layout_valid(&lw)) return FALSE;
+
+	return image_color_profile_get(lw->image, input_type, screen_type, use_image);
+}
+
+void layout_image_color_profile_set_use(LayoutWindow *lw, gint enable)
+{
+	if (!layout_valid(&lw)) return;
+
+	image_color_profile_set_use(lw->image, enable);
+
+	if (lw->info_color)
+		{
+#ifndef HAVE_LCMS
+		enable = FALSE;
+#endif
+		gtk_widget_set_sensitive(GTK_BIN(lw->info_color)->child, enable);
+		}
+}
+
+gint layout_image_color_profile_get_use(LayoutWindow *lw)
+{
+	if (!layout_valid(&lw)) return FALSE;
+
+	return image_color_profile_get_use(lw->image);
+}
+
 /*
  *----------------------------------------------------------------------------
  * list walkers
@@ -1393,6 +1433,11 @@
 		image_attach_window(lw->image, lw->window, NULL, "GQview", FALSE);
 
 		image_auto_refresh(lw->image, 0);
+
+		image_color_profile_set(lw->image,
+					color_profile_input_type, color_profile_screen_type,
+					color_profile_use_image);
+		image_color_profile_set_use(lw->image, color_profile_enabled);
 		}
 
 	return lw->image->widget;