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

List:       kde-commits
Subject:    [krita/amedonosova/gamut-masking] /: integrates KisGamutMaskToolbar into Advanced Color Selector
From:       Anna Medonosova <null () kde ! org>
Date:       2018-09-25 12:52:01
Message-ID: E1g4mor-0002SJ-Oe () code ! kde ! org
[Download RAW message or body]

Git commit c94910148cb6033fd7569cef45d32370c689f803 by Anna Medonosova.
Committed on 25/09/2018 at 12:51.
Pushed by amedonosova into branch 'amedonosova/gamut-masking'.

integrates KisGamutMaskToolbar into Advanced Color Selector

M  +26   -2    libs/ui/forms/wdgGamutMaskToolbar.ui
M  +0    -25   plugins/dockers/advancedcolorselector/kis_color_selector.cpp
M  +0    -1    plugins/dockers/advancedcolorselector/kis_color_selector.h
M  +22   -2    plugins/dockers/advancedcolorselector/kis_color_selector_container.cpp
M  +2    -0    plugins/dockers/advancedcolorselector/kis_color_selector_container.h
M  +0    -8    plugins/dockers/advancedcolorselector/kis_color_selector_wheel.cpp
M  +7    -1    plugins/dockers/artisticcolorselector/forms/wdgArtisticColorSelector.ui


https://commits.kde.org/krita/c94910148cb6033fd7569cef45d32370c689f803

diff --git a/libs/ui/forms/wdgGamutMaskToolbar.ui \
b/libs/ui/forms/wdgGamutMaskToolbar.ui index d20a8e68b4e..f5c92392523 100644
--- a/libs/ui/forms/wdgGamutMaskToolbar.ui
+++ b/libs/ui/forms/wdgGamutMaskToolbar.ui
@@ -7,9 +7,15 @@
     <x>0</x>
     <y>0</y>
     <width>378</width>
-    <height>54</height>
+    <height>57</height>
    </rect>
   </property>
+  <property name="sizePolicy">
+   <sizepolicy hsizetype="Preferred" vsizetype="Minimum">
+    <horstretch>0</horstretch>
+    <verstretch>0</verstretch>
+   </sizepolicy>
+  </property>
   <property name="windowTitle">
    <string>Form</string>
   </property>
@@ -28,6 +34,18 @@
    </property>
    <item>
     <widget class="QPushButton" name="bnToggleMask">
+     <property name="sizePolicy">
+      <sizepolicy hsizetype="Preferred" vsizetype="Fixed">
+       <horstretch>0</horstretch>
+       <verstretch>0</verstretch>
+      </sizepolicy>
+     </property>
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>20</height>
+      </size>
+     </property>
      <property name="toolTip">
       <string>Toggle gamut mask</string>
      </property>
@@ -42,7 +60,7 @@
    <item>
     <widget class="QLabel" name="labelMaskName">
      <property name="sizePolicy">
-      <sizepolicy hsizetype="Expanding" vsizetype="Preferred">
+      <sizepolicy hsizetype="Expanding" vsizetype="Minimum">
        <horstretch>0</horstretch>
        <verstretch>0</verstretch>
       </sizepolicy>
@@ -63,6 +81,12 @@
        <verstretch>0</verstretch>
       </sizepolicy>
      </property>
+     <property name="minimumSize">
+      <size>
+       <width>0</width>
+       <height>20</height>
+      </size>
+     </property>
     </widget>
    </item>
   </layout>
diff --git a/plugins/dockers/advancedcolorselector/kis_color_selector.cpp \
b/plugins/dockers/advancedcolorselector/kis_color_selector.cpp index \
                4c2b7d1a6a5..7b68c87e096 100644
--- a/plugins/dockers/advancedcolorselector/kis_color_selector.cpp
+++ b/plugins/dockers/advancedcolorselector/kis_color_selector.cpp
@@ -136,14 +136,6 @@ void \
                KisColorSelector::setConfiguration(KisColorSelectorConfiguration \
                conf)
     m_mainComponent->setConfiguration(m_configuration.mainTypeParameter, \
                m_configuration.mainType);
     m_subComponent->setConfiguration(m_configuration.subTypeParameter, \
m_configuration.subType);  
-    if (displaySettingsButton() && m_gamutMaskButton) {
-        if (m_configuration.mainType == KisColorSelectorConfiguration::Wheel) {
-            m_gamutMaskButton->show();
-        } else {
-            m_gamutMaskButton->hide();
-        }
-    }
-
     QResizeEvent event(QSize(width(), height()), QSize());
     resizeEvent(&event);
 }
@@ -188,14 +180,6 @@ void KisColorSelector::slotGamutMaskPreviewUpdate()
 
 void KisColorSelector::slotGamutMaskToggle(bool state)
 {
-    if (state) {
-        m_gamutMaskButton->setIcon(KisIconUtils::loadIcon("gamut-mask-on"));
-        m_gamutMaskButton->setChecked(true);
-    } else {
-        m_gamutMaskButton->setIcon(KisIconUtils::loadIcon("gamut-mask-off"));
-        m_gamutMaskButton->setChecked(false);
-    }
-
     m_mainComponent->toggleGamutMask(state);
     m_subComponent->toggleGamutMask(state);
 }
@@ -285,8 +269,6 @@ void KisColorSelector::resizeEvent(QResizeEvent* e) {
             if(displaySettingsButton()) {
                 int size = iconSize(width(), height()*0.9);
                 m_button->setGeometry(0, height()*0.1, size, size);
-                m_gamutMaskButton->setGeometry(width()-size, height()*0.1, size, \
                size);
-                m_gamutMaskButton->show();
             }
             m_mainComponent->setGeometry(0, height()*0.1, width(), height()*0.9);
             m_subComponent->setGeometry( 0, 0,            width(), height()*0.1);
@@ -405,13 +387,6 @@ void KisColorSelector::init()
         m_button->setIcon(KisIconUtils::loadIcon("configure"));
         m_button->setFlat(true);
         connect(m_button, SIGNAL(clicked()), SIGNAL(settingsButtonClicked()));
-
-        m_gamutMaskButton = new QPushButton(this);
-        m_gamutMaskButton->setIcon(KisIconUtils::loadIcon("gamut-mask-off"));
-        m_gamutMaskButton->setFlat(true);
-        m_gamutMaskButton->setCheckable(true);
-        m_gamutMaskButton->hide();
-        connect(m_gamutMaskButton, SIGNAL(toggled(bool)), this, \
SLOT(slotGamutMaskToggle(bool)));  }
 
     // a tablet can send many more signals, than a mouse
diff --git a/plugins/dockers/advancedcolorselector/kis_color_selector.h \
b/plugins/dockers/advancedcolorselector/kis_color_selector.h index \
                538bad2acc4..c71661019d9 100644
--- a/plugins/dockers/advancedcolorselector/kis_color_selector.h
+++ b/plugins/dockers/advancedcolorselector/kis_color_selector.h
@@ -76,7 +76,6 @@ private:
     KisColorSelectorSimple* m_square;
     KisColorSelectorWheel* m_wheel;
     QPushButton* m_button;
-    QPushButton* m_gamutMaskButton;
     KisColorSelectorComponent* m_mainComponent;
     KisColorSelectorComponent* m_subComponent;
     KisColorSelectorComponent* m_grabbingComponent;
diff --git a/plugins/dockers/advancedcolorselector/kis_color_selector_container.cpp \
b/plugins/dockers/advancedcolorselector/kis_color_selector_container.cpp index \
                5e7a81c38c5..6a4fc834d7e 100644
--- a/plugins/dockers/advancedcolorselector/kis_color_selector_container.cpp
+++ b/plugins/dockers/advancedcolorselector/kis_color_selector_container.cpp
@@ -33,6 +33,7 @@
 #include <kactioncollection.h>
 
 #include <KisDocument.h>
+#include <KisGamutMaskToolbar.h>
 #include "KisViewManager.h"
 #include "kis_canvas2.h"
 #include "kis_canvas_resource_provider.h"
@@ -48,16 +49,25 @@ KisColorSelectorContainer::KisColorSelectorContainer(QWidget \
*parent) :  m_myPaintShadeSelector(new KisMyPaintShadeSelector(this)),
     m_minimalShadeSelector(new KisMinimalShadeSelector(this)),
     m_shadeSelector(m_myPaintShadeSelector),
+    m_gamutMaskToolbar(new KisGamutMaskToolbar(this)),
     m_canvas(0)
 {
     m_widgetLayout = new QBoxLayout(QBoxLayout::TopToBottom, this);
     m_widgetLayout->setSpacing(0);
     m_widgetLayout->setMargin(0);
 
+    m_gamutMaskToolbar->setContentsMargins(0, 0, 0, 5);
+    m_gamutMaskToolbar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum);
+    m_colorSelector->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
+    m_myPaintShadeSelector->setSizePolicy(QSizePolicy::Expanding, \
QSizePolicy::Expanding); +    \
m_minimalShadeSelector->setSizePolicy(QSizePolicy::Expanding, \
QSizePolicy::Expanding); +
+    m_widgetLayout->addWidget(m_gamutMaskToolbar);
     m_widgetLayout->addWidget(m_colorSelector);
     m_widgetLayout->addWidget(m_myPaintShadeSelector);
     m_widgetLayout->addWidget(m_minimalShadeSelector);
 
+    m_gamutMaskToolbar->hide();
     m_myPaintShadeSelector->hide();
     m_minimalShadeSelector->hide();
 
@@ -78,8 +88,6 @@ KisColorSelectorContainer::KisColorSelectorContainer(QWidget \
                *parent) :
     m_minimalAction = \
                KisActionRegistry::instance()->makeQAction("show_minimal_shade_selector", \
                this);
     connect(m_minimalAction, SIGNAL(triggered()), m_minimalShadeSelector, \
SLOT(showPopup()), Qt::UniqueConnection);  
-
-
 }
 
 void KisColorSelectorContainer::unsetCanvas()
@@ -145,6 +153,11 @@ void KisColorSelectorContainer::setCanvas(KisCanvas2* canvas)
         connect(m_canvas->viewManager()->resourceProvider(), \
SIGNAL(sigGamutMaskPreviewUpdate()),  m_colorSelector, \
SLOT(slotGamutMaskPreviewUpdate()));  
+        m_gamutMaskToolbar->connectMaskSignals(m_canvas->viewManager()->resourceProvider());
 +
+        // gamut mask connections
+        connect(m_gamutMaskToolbar, SIGNAL(sigGamutMaskToggle(bool)), \
m_colorSelector, SLOT(slotGamutMaskToggle(bool))); +
         KActionCollection* actionCollection = \
                canvas->viewManager()->actionCollection();
         actionCollection->addAction("show_color_selector", m_colorSelAction);
         actionCollection->addAction("show_mypaint_shade_selector", m_mypaintAction);
@@ -177,6 +190,13 @@ void KisColorSelectorContainer::updateSettings()
     if(m_shadeSelector!=0)
         m_shadeSelector->show();
 
+
+    if (m_colorSelector->configuration().mainType == \
KisColorSelectorConfiguration::Wheel) { +        m_gamutMaskToolbar->show();
+    } else {
+        m_gamutMaskToolbar->hide();
+    }
+
 }
 
 void KisColorSelectorContainer::reactOnLayerChange()
diff --git a/plugins/dockers/advancedcolorselector/kis_color_selector_container.h \
b/plugins/dockers/advancedcolorselector/kis_color_selector_container.h index \
                985e4ae4127..fc98414e323 100644
--- a/plugins/dockers/advancedcolorselector/kis_color_selector_container.h
+++ b/plugins/dockers/advancedcolorselector/kis_color_selector_container.h
@@ -27,6 +27,7 @@ class KisMyPaintShadeSelector;
 class KisMinimalShadeSelector;
 class QBoxLayout;
 class QAction;
+class KisGamutMaskToolbar;
 
 class KisColorSelectorContainer : public QWidget
 {
@@ -58,6 +59,7 @@ private:
     KisMyPaintShadeSelector* m_myPaintShadeSelector;
     KisMinimalShadeSelector* m_minimalShadeSelector;
     QWidget* m_shadeSelector;
+    KisGamutMaskToolbar* m_gamutMaskToolbar;
 
     int m_onDockerResizeSetting;
 
diff --git a/plugins/dockers/advancedcolorselector/kis_color_selector_wheel.cpp \
b/plugins/dockers/advancedcolorselector/kis_color_selector_wheel.cpp index \
                4b2099f4ef7..1cc38c6fc88 100644
--- a/plugins/dockers/advancedcolorselector/kis_color_selector_wheel.cpp
+++ b/plugins/dockers/advancedcolorselector/kis_color_selector_wheel.cpp
@@ -273,14 +273,6 @@ KoColor KisColorSelectorWheel::colorAt(int x, int y, bool \
forceValid)  {
     KoColor color(Qt::transparent, m_parent->colorSpace());
 
-    // dbg only, delete later
-//    if (m_gamutMaskOn && m_currentGamutMask) {
-//        bool isClear = coordIsClear(x,y);
-//        if (!isClear) {
-//            return KoColor(Qt::gray, m_parent->colorSpace());
-//        }
-//    }
-
     Q_ASSERT(x>=0 && x<=width());
     Q_ASSERT(y>=0 && y<=height());
 
diff --git a/plugins/dockers/artisticcolorselector/forms/wdgArtisticColorSelector.ui \
b/plugins/dockers/artisticcolorselector/forms/wdgArtisticColorSelector.ui index \
                15ef1290b42..280c7ad346c 100644
--- a/plugins/dockers/artisticcolorselector/forms/wdgArtisticColorSelector.ui
+++ b/plugins/dockers/artisticcolorselector/forms/wdgArtisticColorSelector.ui
@@ -47,6 +47,12 @@
          <verstretch>0</verstretch>
         </sizepolicy>
        </property>
+       <property name="minimumSize">
+        <size>
+         <width>0</width>
+         <height>0</height>
+        </size>
+       </property>
        <property name="maximumSize">
         <size>
          <width>16777215</width>
@@ -77,7 +83,7 @@
        </property>
        <property name="minimumSize">
         <size>
-         <width>30</width>
+         <width>0</width>
          <height>0</height>
         </size>
        </property>


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

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