[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [krita/krita-testing-wolthera] libs/ui/widgets: Enable High range color picking for the visual selec
From:       Wolthera van Hovell tot Westerflier <griffinvalley () gmail ! com>
Date:       2016-08-16 18:52:13
Message-ID: E1bZjTB-0005JB-5K () code ! kde ! org
[Download RAW message or body]

Git commit 0246b4ba3d7d1948e5de80426ca707c2da583350 by Wolthera van Hovell tot \
Westerflier. Committed on 16/08/2016 at 16:58.
Pushed by woltherav into branch 'krita-testing-wolthera'.

Enable High range color picking for the visual selector.

It has huge issues when using a color space that isn't the displayrenderer's but I \
think that can be fixed.

Ref T2337

M  +5    -6    libs/ui/widgets/kis_visual_color_selector.cpp

http://commits.kde.org/krita/0246b4ba3d7d1948e5de80426ca707c2da583350

diff --git a/libs/ui/widgets/kis_visual_color_selector.cpp \
b/libs/ui/widgets/kis_visual_color_selector.cpp index beb35a2..083e536 100644
--- a/libs/ui/widgets/kis_visual_color_selector.cpp
+++ b/libs/ui/widgets/kis_visual_color_selector.cpp
@@ -323,17 +323,16 @@ KoColor \
KisVisualColorSelectorShape::convertShapeCoordinateToKoColor(QPointF coo  KoColor c = \
m_d->currentColor;  QVector <float> channelValues (c.colorSpace()->channelCount());
     channelValues.fill(1.0);
+    c.colorSpace()->normalisedChannelsValue(c.data(), channelValues);
     QVector <qreal> maxvalue(c.colorSpace()->channelCount());
     maxvalue.fill(1.0);
     if (m_d->displayRenderer) {
         for (int ch = 0; ch<maxvalue.size(); ch++) {
-            //KoChannelInfo *channel = m_d->cs->channels()[ch];
-            //maxvalue[ch] = m_d->displayRenderer->maxVisibleFloatValue(channel);
+            KoChannelInfo *channel = m_d->cs->channels()[ch];
+            maxvalue[ch] = m_d->displayRenderer->maxVisibleFloatValue(channel);
             channelValues[ch] = channelValues[ch]/(maxvalue[ch]);
         }
     }
-
-    c.colorSpace()->normalisedChannelsValue(c.data(), channelValues);
     qreal huedivider = 1.0;
     qreal huedivider2 = 1.0;
 
@@ -411,8 +410,8 @@ QPointF \
KisVisualColorSelectorShape::convertKoColorToShapeCoordinate(KoColor c)  \
maxvalue.fill(1.0);  if (m_d->displayRenderer) {
         for (int ch = 0; ch<maxvalue.size(); ch++) {
-            //KoChannelInfo *channel = m_d->cs->channels()[ch];
-            //maxvalue[ch] = m_d->displayRenderer->maxVisibleFloatValue(channel);
+            KoChannelInfo *channel = m_d->cs->channels()[ch];
+            maxvalue[ch] = m_d->displayRenderer->maxVisibleFloatValue(channel);
             channelValues[ch] = channelValues[ch]/(maxvalue[ch]);
         }
     }


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic