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

List:       kde-commits
Subject:    [calligra] krita/plugins/extensions/dockers/palettedocker: save/load palette from workspace
From:       Sven Langkamp <sven.langkamp () gmail ! com>
Date:       2013-06-30 19:36:28
Message-ID: E1UtNQC-00041j-ES () scm ! kde ! org
[Download RAW message or body]

Git commit 0a54115357df99ef31a00dbabda0e63da1cfc090 by Sven Langkamp.
Committed on 30/06/2013 at 19:21.
Pushed by langkamp into branch 'master'.

save/load palette from workspace

M  +24   -0    krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.cpp
M  +3    -0    krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.h

http://commits.kde.org/calligra/0a54115357df99ef31a00dbabda0e63da1cfc090

diff --git a/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.cpp \
b/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.cpp index \
                ce65c3d..1188a53 100644
--- a/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.cpp
+++ b/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.cpp
@@ -37,6 +37,8 @@
 #include <kis_layer.h>
 #include <kis_node_manager.h>
 #include <kis_config.h>
+#include <kis_workspace_resource.h>
+#include <kis_canvas_resource_provider.h>
 
 #include "palettemodel.h"
 #include "colorsetchooser.h"
@@ -139,6 +141,9 @@ void PaletteDockerDock::setCanvas(KoCanvasBase * canvas)
         m_canvas->view()->nodeManager()->disconnect(m_model);
     }
     m_canvas = dynamic_cast<KisCanvas2*>(canvas);
+    KisView2* view = m_canvas->view();
+    connect(view->resourceProvider(), \
SIGNAL(sigSavingWorkspace(KisWorkspaceResource*)), \
SLOT(saveToWorkspace(KisWorkspaceResource*))); +    connect(view->resourceProvider(), \
SIGNAL(sigLoadingWorkspace(KisWorkspaceResource*)), \
SLOT(loadFromWorkspace(KisWorkspaceResource*)));  }
 
 void PaletteDockerDock::setColorSet(KoColorSet* colorSet)
@@ -206,4 +211,23 @@ void PaletteDockerDock::entrySelected(QModelIndex index)
     }
 }
 
+void PaletteDockerDock::saveToWorkspace(KisWorkspaceResource* workspace)
+{
+    if (m_currentColorSet) {
+        workspace->setProperty("palette", m_currentColorSet->name());
+    }
+}
+
+void PaletteDockerDock::loadFromWorkspace(KisWorkspaceResource* workspace)
+{
+    if (workspace->hasProperty("palette")) {
+        KoResourceServer<KoColorSet>* rServer = \
KoResourceServerProvider::instance()->paletteServer(); +        KoColorSet* colorSet \
= rServer->resourceByName(workspace->getString("palette")); +        if (colorSet) {
+            setColorSet(colorSet);
+        }
+    }
+}
+
+
 #include "palettedocker_dock.moc"
diff --git a/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.h \
b/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.h index \
                78d34f2..72ac3ea 100644
--- a/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.h
+++ b/krita/plugins/extensions/dockers/palettedocker/palettedocker_dock.h
@@ -26,6 +26,7 @@
 #include <KoResourceServerAdapter.h>
 #include <KoColorSet.h>
 
+class KisWorkspaceResource;
 class ColorSetChooser;
 class PaletteModel;
 class KisCanvas2;
@@ -45,6 +46,8 @@ private slots:
     void entrySelected(QModelIndex index);
     void setColorSet(KoColorSet* colorSet);
 
+    void saveToWorkspace(KisWorkspaceResource* workspace);
+    void loadFromWorkspace(KisWorkspaceResource* workspace);
 private:    
     KisCanvas2 *m_canvas;
     Ui_WdgPaletteDock* m_wdgPaletteDock;


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

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