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

List:       kde-commits
Subject:    [krita/berger-scripting] krita/plugins/extensions/pykrita: make it more convenient to create docker 
From:       Cyrille Berger <cberger () cberger ! net>
Date:       2015-12-09 21:13:32
Message-ID: E1a6m3I-0005XC-Jf () scm ! kde ! org
[Download RAW message or body]

Git commit 47e40bae8ceec486f449a2f98bfd06c007b1cb09 by Cyrille Berger.
Committed on 09/12/2015 at 19:42.
Pushed by berger into branch 'berger-scripting'.

make it more convenient to create docker factory, there should be no need to define a \
class for that

M  +1    -1    krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
R  +7    -7    krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.cpp \
[from: krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.cpp - 070% \
similarity] R  +3    -3    \
krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.h [from: \
krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.h - 083% similarity] M  +2  \
-2    krita/plugins/extensions/pykrita/libkis/krita.cpp M  +2    -2    \
krita/plugins/extensions/pykrita/libkis/krita.h R  +3    -3    \
krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactorybase.sip [from: \
krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactory.sip - 072% similarity] M \
+1    -1    krita/plugins/extensions/pykrita/sip/krita/krita.sip M  +1    -1    \
krita/plugins/extensions/pykrita/sip/krita/kritamod.sip M  +2    -0    \
krita/plugins/extensions/pykrita/src/krita/__init__.py A  +9    -0    \
krita/plugins/extensions/pykrita/src/krita/dockwidgetfactory.py M  +2    -8    \
krita/plugins/extensions/pykrita/src/plugins/hello/hello.py

http://commits.kde.org/krita/47e40bae8ceec486f449a2f98bfd06c007b1cb09

diff --git a/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt \
b/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt index 417a571..92f354a \
                100644
--- a/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
+++ b/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
@@ -5,7 +5,7 @@ set(kritalibkis_LIB_SRCS
     application.cpp
     document.cpp
     dockwidget.cpp
-    dockwidgetfactory.cpp
+    dockwidgetfactorybase.cpp
     image.cpp
     mainwindow.cpp
     krita.cpp
diff --git a/krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.cpp \
b/krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.cpp similarity index \
70% rename from krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.cpp
rename to krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.cpp
index 0abb28f..c4a9aa7 100644
--- a/krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.cpp
@@ -16,9 +16,9 @@
  *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  */
 
-#include "dockwidgetfactory.h"
+#include "dockwidgetfactorybase.h"
 #include <QDebug>
-DockWidgetFactory::DockWidgetFactory(const QString& _id, \
KoDockFactoryBase::DockPosition _dockPosition, bool _isCollapsable, bool \
_defaultCollapsed) +DockWidgetFactoryBase::DockWidgetFactoryBase(const QString& _id, \
KoDockFactoryBase::DockPosition _dockPosition, bool _isCollapsable, bool \
_defaultCollapsed)  : m_id(_id),
     m_dockPosition(_dockPosition),
     m_isCollapsable(_isCollapsable),
@@ -27,27 +27,27 @@ DockWidgetFactory::DockWidgetFactory(const QString& _id, \
KoDockFactoryBase::Dock  
 }
 
-DockWidgetFactory::~DockWidgetFactory()
+DockWidgetFactoryBase::~DockWidgetFactoryBase()
 {
 qDebug() << "Iamdying";
 }
 
-bool DockWidgetFactory::defaultCollapsed() const
+bool DockWidgetFactoryBase::defaultCollapsed() const
 {
     return m_defaultCollapsed;
 }
 
-KoDockFactoryBase::DockPosition DockWidgetFactory::defaultDockPosition() const
+KoDockFactoryBase::DockPosition DockWidgetFactoryBase::defaultDockPosition() const
 {
     return m_dockPosition;
 }
 
-QString DockWidgetFactory::id() const
+QString DockWidgetFactoryBase::id() const
 {
     return m_id;
 }
 
-bool DockWidgetFactory::isCollapsable() const
+bool DockWidgetFactoryBase::isCollapsable() const
 {
     return m_isCollapsable;
 }
diff --git a/krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.h \
b/krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.h similarity index \
83% rename from krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.h
rename to krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.h
index 3f75ef5..6478d2f 100644
--- a/krita/plugins/extensions/pykrita/libkis/dockwidgetfactory.h
+++ b/krita/plugins/extensions/pykrita/libkis/dockwidgetfactorybase.h
@@ -24,11 +24,11 @@
 
 #include <krita_export.h>
 
-class LIBKIS_EXPORT DockWidgetFactory : public KoDockFactoryBase
+class LIBKIS_EXPORT DockWidgetFactoryBase : public KoDockFactoryBase
 {
 public:
-    DockWidgetFactory(const QString& _id, DockPosition _dockPosition, bool \
                _isCollapsable = true, bool _defaultCollapsed = false);
-    virtual ~DockWidgetFactory();
+    DockWidgetFactoryBase(const QString& _id, DockPosition _dockPosition, bool \
_isCollapsable = true, bool _defaultCollapsed = false); +    virtual \
~DockWidgetFactoryBase();  virtual QString id() const;
     virtual DockPosition defaultDockPosition() const;
     virtual bool isCollapsable() const;
diff --git a/krita/plugins/extensions/pykrita/libkis/krita.cpp \
b/krita/plugins/extensions/pykrita/libkis/krita.cpp index 97c2e6e..281e33d 100644
--- a/krita/plugins/extensions/pykrita/libkis/krita.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/krita.cpp
@@ -27,7 +27,7 @@
 #include <kis_action.h>
 #include <kis_script_manager.h>
 
-#include "dockwidgetfactory.h"
+#include "dockwidgetfactorybase.h"
 #include "viewextension.h"
 
 Krita* Krita::s_instance = 0;
@@ -93,7 +93,7 @@ QList< ViewExtension* > Krita::viewExtensions()
     return m_viewExtensions;
 }
 
-void Krita::addDockWidgetFactory(DockWidgetFactory* _factory)
+void Krita::addDockWidgetFactory(DockWidgetFactoryBase* _factory)
 {
     KoDockRegistry::instance()->add(_factory);
 }
diff --git a/krita/plugins/extensions/pykrita/libkis/krita.h \
b/krita/plugins/extensions/pykrita/libkis/krita.h index 22a4a2c..7eff2d6 100644
--- a/krita/plugins/extensions/pykrita/libkis/krita.h
+++ b/krita/plugins/extensions/pykrita/libkis/krita.h
@@ -30,7 +30,7 @@
 
 #include <krita_export.h>
 
-class DockWidgetFactory;
+class DockWidgetFactoryBase;
 class ViewExtension;
 
 class LIBKIS_EXPORT Krita : public QObject
@@ -48,7 +48,7 @@ public:
     
     void addViewExtension(ViewExtension* _viewExtension);
     QList<ViewExtension*> viewExtensions();
-    void addDockWidgetFactory(DockWidgetFactory* _factory );
+    void addDockWidgetFactory(DockWidgetFactoryBase* _factory );
     
     static Krita* instance();
 Q_SIGNALS:
diff --git a/krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactory.sip \
b/krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactorybase.sip similarity \
index 72% rename from \
krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactory.sip rename to \
krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactorybase.sip index \
                42e8377..a4d293a 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactory.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/dockwidgetfactorybase.sip
@@ -1,10 +1,10 @@
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
-class DockWidgetFactory
+class DockWidgetFactoryBase
 {
 %TypeHeaderCode
-#include "dockwidgetfactory.h"
+#include "dockwidgetfactorybase.h"
 %End
 
 public:
@@ -16,7 +16,7 @@ public:
         DockLeft,   ///< Left of the centra widget
         DockMinimized  ///< Not docked, but reachable via the menu
     };
-    DockWidgetFactory(const QString& _id, DockPosition _dockPosition, bool \
_isCollapsable = true, bool _defaultCollapsed = false); +    \
DockWidgetFactoryBase(const QString& _id, DockPosition _dockPosition, bool \
_isCollapsable = true, bool _defaultCollapsed = false);  virtual QDockWidget* \
createDockWidget() = 0 /Factory/;  };
 
diff --git a/krita/plugins/extensions/pykrita/sip/krita/krita.sip \
b/krita/plugins/extensions/pykrita/sip/krita/krita.sip index 6e132b4..660fc1f 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/krita.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/krita.sip
@@ -18,6 +18,6 @@ public:
     QAction *createAction(const QString &text);
 
     void addViewExtension(ViewExtension* _viewExtension /Transfer/);
-    void addDockWidgetFactory(DockWidgetFactory* _factory /Transfer, TransferThis/);
+    void addDockWidgetFactory(DockWidgetFactoryBase* _factory /Transfer, \
TransferThis/);  };
 
diff --git a/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip \
b/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip index a571e91..2ba4bee \
                100644
--- a/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip
@@ -14,7 +14,7 @@
 %Include application.sip
 %Include document.sip
 %Include dockwidget.sip
-%Include dockwidgetfactory.sip
+%Include dockwidgetfactorybase.sip
 %Include image.sip
 %Include mainwindow.sip
 %Include krita.sip
diff --git a/krita/plugins/extensions/pykrita/src/krita/__init__.py \
b/krita/plugins/extensions/pykrita/src/krita/__init__.py index c10c8db..0118a29 \
                100644
--- a/krita/plugins/extensions/pykrita/src/krita/__init__.py
+++ b/krita/plugins/extensions/pykrita/src/krita/__init__.py
@@ -4,6 +4,8 @@ import sys
 
 from .api import *
 from .decorators import *
+from .dockwidgetfactory import *
+from PyKrita4.krita import *
 
 def kDebug(text):
     '''Use KDE way to show debug info
diff --git a/krita/plugins/extensions/pykrita/src/krita/dockwidgetfactory.py \
b/krita/plugins/extensions/pykrita/src/krita/dockwidgetfactory.py new file mode \
100644 index 0000000..9bebc1f
--- /dev/null
+++ b/krita/plugins/extensions/pykrita/src/krita/dockwidgetfactory.py
@@ -0,0 +1,9 @@
+from PyQt4.QtGui import *
+from PyKrita4.krita import *
+
+class DockWidgetFactory(DockWidgetFactoryBase):
+  def __init__(self, _id, _dockPosition, _klass):
+      super().__init__(_id, _dockPosition)
+      self.klass = _klass
+  def createDockWidget(self):
+      return self.klass()
diff --git a/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py \
b/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py index 3970ed9..e93ce4f \
                100644
--- a/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py
+++ b/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py
@@ -1,5 +1,5 @@
 from PyQt4.QtGui import *
-from PyKrita4.krita import *
+from krita import *
 
 def hello():
     QMessageBox.information(QWidget(), "Test", "Hello World")
@@ -19,10 +19,4 @@ class HelloDocker(DockWidget):
       label = QLabel("Hello", self)
       self.setWidget(label)
 
-class HelloDockerFactory(DockWidgetFactory):
-  def __init__(self):
-      super().__init__("hello", DockWidgetFactory.DockRight)
-  def createDockWidget(self):
-      return HelloDocker()
-
-Krita.instance().addDockWidgetFactory(HelloDockerFactory())
+Krita.instance().addDockWidgetFactory(DockWidgetFactory("hello", \
DockWidgetFactory.DockRight, HelloDocker))


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

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