Code

added an icon to the color picker dialog to alert when there is too much ink in a...
authorFelipe C. da S. Sanches <juca@members.fsf.org>
Sun, 6 Dec 2009 03:56:13 +0000 (01:56 -0200)
committerFelipe C. da S. Sanches <juca@members.fsf.org>
Sun, 6 Dec 2009 03:56:13 +0000 (01:56 -0200)
share/icons/Makefile.am
share/icons/too-much-ink-icon.png [new file with mode: 0644]
share/icons/too-much-ink-icon.svg [new file with mode: 0644]
src/widgets/sp-color-notebook.cpp
src/widgets/sp-color-notebook.h

index 4bf8b8b3564bfe010ed5f3cd5ab439a558c37f94..59c55948da4ef35ae2af37d09f45500dee4672b6 100644 (file)
@@ -3,6 +3,8 @@ SUBDIRS = application
 iconsdir = $(datadir)/inkscape/icons
 
 pixmaps = \
+       too-much-ink-icon.png \
+       too-much-ink-icon.svg \
        out-of-gamut-icon.png \
        out-of-gamut-icon.svg \
        color-management-icon.png \
diff --git a/share/icons/too-much-ink-icon.png b/share/icons/too-much-ink-icon.png
new file mode 100644 (file)
index 0000000..14fed03
Binary files /dev/null and b/share/icons/too-much-ink-icon.png differ
diff --git a/share/icons/too-much-ink-icon.svg b/share/icons/too-much-ink-icon.svg
new file mode 100644 (file)
index 0000000..a2f6884
--- /dev/null
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   width="249.50522"
+   height="249.50523"
+   id="svg2"
+   inkscape:version="0.47+devel"
+   sodipodi:docname="too-much-ink-icon.svg"
+   inkscape:export-filename="/home/felipe/devel/bzr-inkscape/inkscape/share/icons/too-much-ink-icon.png"
+   inkscape:export-xdpi="5.6999998"
+   inkscape:export-ydpi="5.6999998">
+  <metadata
+     id="metadata8">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1024"
+     inkscape:window-height="693"
+     id="namedview6"
+     showgrid="false"
+     inkscape:zoom="0.33866729"
+     inkscape:cx="194.49558"
+     inkscape:cy="191.55723"
+     inkscape:window-x="0"
+     inkscape:window-y="25"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg2" />
+  <defs
+     id="defs4">
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 124.75262 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="249.50522 : 124.75262 : 1"
+       inkscape:persp3d-origin="124.75261 : 83.168411 : 1"
+       id="perspective10" />
+  </defs>
+  <g
+     transform="translate(-218.10454,-476.18098)"
+     id="layer1" />
+  <path
+     id="path2988"
+     style="fill:#200e13;fill-opacity:0.96862745;fill-rule:evenodd;stroke:#20241d;stroke-width:5.49399996000000002;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+     d="m 44.205845,53.627099 c 6.538205,8.776404 7.179182,14.929511 7.184639,20.799914 0.0043,4.681179 -10.770356,1.897693 -15.869168,-0.2132 -7.694024,-3.185304 -15.824487,-9.784438 -17.689511,-16.915388 -1.158352,-4.428985 0.749479,-10.229203 5.19903,-11.623732 6.495074,-2.035617 16.872258,2.176709 21.17501,7.952406 z M 30.008964,205.99522 c 9.10047,-17.44806 19.580437,-23.91826 30.209061,-29.20542 8.475488,-4.21608 14.636139,14.03423 16.113709,23.38441 2.229628,14.10927 -1.271148,31.92641 -12.249789,41.06491 -6.81876,5.67586 -19.309578,8.10365 -26.46219,2.85474 -10.440776,-7.6619 -13.599752,-26.61618 -7.610791,-38.09864 z M 173.64367,123.09593 c 1.4357,-39.91444 54.53677,19.12723 69.59235,-3.63891 8.93961,-13.51796 5.32456,-38.561425 -7.86464,-47.97932 -9.68684,-6.916994 -50.66722,5.557227 -60.7695,-0.737512 -18.8117,-11.721606 7.93318,-34.929939 -8.70266,-49.576607 -24.86167,-21.88894402 -44.62485,-21.29438502 -68.539321,1.625623 -15.178156,14.546991 10.871641,22.047341 3.192441,41.61827 -10.607154,27.033004 -39.063593,8.120474 -45.546174,36.427236 -4.104651,17.9233 1.357147,48.93421 19.081937,53.82552 13.316852,3.6749 13.818475,-22.5941 38.882527,-4.90635 25.06405,17.68776 4.4552,41.49178 10.10048,65.11007 5.64529,23.61827 22.84904,17.71636 35.42061,15.11786 15.97666,-3.30232 11.12595,-30.4217 33.70881,-33.39655 22.58287,-2.97487 16.69776,21.8648 41.58646,-0.63804 41.60195,-37.61392 -49.85797,-50.12848 -60.14333,-72.85127 l 10e-6,-2e-5 z" />
+</svg>
index be41f5f0fdaa982027621e79ab7f4d83839e1a84..1870c2960d0fbf0c5140b7f2b69b5b4750e85ae3 100644 (file)
@@ -348,6 +348,14 @@ void ColorNotebook::init()
         gtk_widget_set_sensitive (_box_outofgamut, false);
        gtk_box_pack_start(GTK_BOX(rgbabox), _box_outofgamut, FALSE, FALSE, 2);
 
+        _box_toomuchink = gtk_event_box_new ();
+        GtkWidget *toomuchink = gtk_image_new_from_icon_name ("too-much-ink-icon", GTK_ICON_SIZE_SMALL_TOOLBAR);
+        gtk_container_add (GTK_CONTAINER (_box_toomuchink), toomuchink);
+        GtkTooltips *tooltips_toomuchink = gtk_tooltips_new ();
+        gtk_tooltips_set_tip (tooltips_toomuchink, _box_toomuchink, _("Too much ink!"), "");
+        gtk_widget_set_sensitive (_box_toomuchink, false);
+       gtk_box_pack_start(GTK_BOX(rgbabox), _box_toomuchink, FALSE, FALSE, 2);
+
 #endif //ENABLE_LCMS
 
        /* Create RGBA entry and color preview */
@@ -520,6 +528,21 @@ void ColorNotebook::_updateRgbaEntry( const SPColor& color, gfloat alpha )
         if ( target_profile )
             gtk_widget_set_sensitive (_box_outofgamut, target_profile->GamutCheck(color));
     }
+
+    /* update too-much-ink icon */
+    gtk_widget_set_sensitive (_box_toomuchink, false);
+    if (color.icc){
+        double ink_sum = 0;
+        for (unsigned int i=0; i<color.icc->colors.size(); i++){
+            ink_sum += color.icc->colors[i];
+        }
+
+        /* Some literature states that when the sum of paint values exceed 320%, it is considered to be a satured color,
+            which means the paper can get too wet due to an excessive ammount of ink. This may lead to several issues
+            such as misalignment and poor quality of printing in general.*/
+        if ( ink_sum > 3.2 )
+            gtk_widget_set_sensitive (_box_toomuchink, true);
+    }
 #endif //ENABLE_LCMS
 
     if ( !_updatingrgba )
index b7cd8295f9e4ec1f17537dc1ed672591dcc86c8b..5eb29ac7357d3a15c65b7b5d5ecf2f5cefe6f93a 100644 (file)
@@ -62,7 +62,7 @@ protected:
     GtkWidget *_book;
     GtkWidget *_rgbal, *_rgbae; /* RGBA entry */
 #if ENABLE_LCMS
-    GtkWidget *_box_outofgamut, *_box_colormanaged;
+    GtkWidget *_box_outofgamut, *_box_colormanaged, *_box_toomuchink;
 #endif //ENABLE_LCMS
     GtkWidget *_p; /* Color preview */
     GtkWidget *_btn;