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

List:       kde-commits
Subject:    [calligra/krita-scripting-rempt] krita/plugins/extensions/pykrita: Provide the Krita api through the
From:       Boudewijn Rempt <boud () valdyas ! org>
Date:       2014-07-29 14:03:44
Message-ID: E1XC80G-0003UD-Pd () scm ! kde ! org
[Download RAW message or body]

Git commit e796bc1035e2c4d4803467f838ddc2d7bb0c1622 by Boudewijn Rempt.
Committed on 29/07/2014 at 13:40.
Pushed by rempt into branch 'krita-scripting-rempt'.

Provide the Krita api through the sip module

M  +1    -1    krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
M  +3    -3    krita/plugins/extensions/pykrita/libkis/document.cpp
M  +1    -1    krita/plugins/extensions/pykrita/libkis/document.h
M  +2    -2    krita/plugins/extensions/pykrita/libkis/image.cpp
M  +1    -1    krita/plugins/extensions/pykrita/libkis/image.h
R  +6    -6    krita/plugins/extensions/pykrita/libkis/krita.cpp [from: \
krita/plugins/extensions/pykrita/libkis/module.cpp - 083% similarity] R  +5    -5    \
krita/plugins/extensions/pykrita/libkis/krita.h [from: \
krita/plugins/extensions/pykrita/libkis/module.h - 069% similarity] M  +2    -2    \
krita/plugins/extensions/pykrita/libkis/mainwindow.cpp M  +1    -1    \
krita/plugins/extensions/pykrita/libkis/mainwindow.h M  +4    -2    \
krita/plugins/extensions/pykrita/libkis/view.cpp M  +1    -1    \
krita/plugins/extensions/pykrita/libkis/view.h M  +2    -0    \
krita/plugins/extensions/pykrita/sip/CMakeLists.txt M  +1    -3    \
krita/plugins/extensions/pykrita/sip/krita/application.sip M  +2    -4    \
krita/plugins/extensions/pykrita/sip/krita/document.sip M  +3    -5    \
krita/plugins/extensions/pykrita/sip/krita/image.sip R  +3    -5    \
krita/plugins/extensions/pykrita/sip/krita/krita.sip [from: \
krita/plugins/extensions/pykrita/sip/krita/module.sip - 064% similarity] M  +2    -2    \
krita/plugins/extensions/pykrita/sip/krita/kritamod.sip M  +2    -4    \
krita/plugins/extensions/pykrita/sip/krita/mainwindow.sip M  +1    -3    \
krita/plugins/extensions/pykrita/sip/krita/node.sip M  +2    -4    \
krita/plugins/extensions/pykrita/sip/krita/view.sip M  +3    -1    \
krita/plugins/extensions/pykrita/src/krita/api.py M  +0    -2    \
krita/plugins/extensions/pykrita/src/plugin.cpp M  +2    -0    \
krita/plugins/extensions/pykrita/src/plugins/hello/hello.py

http://commits.kde.org/calligra/e796bc1035e2c4d4803467f838ddc2d7bb0c1622

diff --git a/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt \
b/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt index b9c25a1..18aa137 100644
--- a/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
+++ b/krita/plugins/extensions/pykrita/libkis/CMakeLists.txt
@@ -6,7 +6,7 @@ set(kritalibkis_LIB_SRCS
     document.cpp
     image.cpp
     mainwindow.cpp
-    module.cpp
+    krita.cpp
     node.cpp
     view.cpp
 )
diff --git a/krita/plugins/extensions/pykrita/libkis/document.cpp \
b/krita/plugins/extensions/pykrita/libkis/document.cpp index 1e6e3f9..eacb5d9 100644
--- a/krita/plugins/extensions/pykrita/libkis/document.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/document.cpp
@@ -3,13 +3,13 @@
 
 #include <kis_doc2.h>
 
-Document::Document(KisDoc2 *document, QObject *parent)
+Document::Document(QObject *document, QObject *parent)
     : QObject(parent)
-    , m_document(document)
+    , m_document(qobject_cast<KisDoc2*>(document))
 {
 }
 
 Image *Document::image()
 {
-    return new Image(m_document->image(), this);
+    return new Image(m_document->image().data(), this);
 }
diff --git a/krita/plugins/extensions/pykrita/libkis/document.h \
b/krita/plugins/extensions/pykrita/libkis/document.h index d85ea1e..fbc4cfc 100644
--- a/krita/plugins/extensions/pykrita/libkis/document.h
+++ b/krita/plugins/extensions/pykrita/libkis/document.h
@@ -11,7 +11,7 @@ class LIBKIS_EXPORT Document : public QObject
 {
     Q_OBJECT
 public:
-    explicit Document(KisDoc2 *document, QObject *parent = 0);
+    explicit Document(QObject *document, QObject *parent = 0);
 
     Image *image();
 
diff --git a/krita/plugins/extensions/pykrita/libkis/image.cpp \
b/krita/plugins/extensions/pykrita/libkis/image.cpp index 2a85ed6..83316b0 100644
--- a/krita/plugins/extensions/pykrita/libkis/image.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/image.cpp
@@ -1,7 +1,7 @@
 #include "image.h"
 
-Image::Image(KisImageWSP image, QObject *parent)
+Image::Image(QObject *image, QObject *parent)
     : QObject(parent)
-    , m_image(image)
+    , m_image(qobject_cast<KisImage*>(image))
 {
 }
diff --git a/krita/plugins/extensions/pykrita/libkis/image.h \
b/krita/plugins/extensions/pykrita/libkis/image.h index 9a877e6..4f23613 100644
--- a/krita/plugins/extensions/pykrita/libkis/image.h
+++ b/krita/plugins/extensions/pykrita/libkis/image.h
@@ -9,7 +9,7 @@ class LIBKIS_EXPORT Image : public QObject
 {
     Q_OBJECT
 public:
-    explicit Image(KisImageWSP image, QObject *parent = 0);
+    explicit Image(QObject *image, QObject *parent = 0);
 
 signals:
 
diff --git a/krita/plugins/extensions/pykrita/libkis/module.cpp \
b/krita/plugins/extensions/pykrita/libkis/krita.cpp similarity index 83%
rename from krita/plugins/extensions/pykrita/libkis/module.cpp
rename to krita/plugins/extensions/pykrita/libkis/krita.cpp
index c9d15e4..d12fc77 100644
--- a/krita/plugins/extensions/pykrita/libkis/module.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/krita.cpp
@@ -1,4 +1,4 @@
-#include "module.h"
+#include "krita.h"
 
 #include <KoApplication.h>
 #include <KoPart.h>
@@ -8,12 +8,12 @@
 #include "kis_doc2.h"
 #include "kis_image.h"
 
-Module::Module(QObject *parent) :
+Krita::Krita(QObject *parent) :
     QObject(parent)
 {
 }
 
-QList<MainWindow *> Module::mainWindows()
+QList<MainWindow *> Krita::mainWindows()
 {
     QList<MainWindow *> ret;
     foreach(KoPart *part, koApp->partList()) {
@@ -26,7 +26,7 @@ QList<MainWindow *> Module::mainWindows()
     return ret;
 }
 
-QList<View *> Module::views()
+QList<View *> Krita::views()
 {
     QList<View *> ret;
     foreach(MainWindow *mainWin, mainWindows()) {
@@ -35,7 +35,7 @@ QList<View *> Module::views()
     return ret;
 }
 
-QList<Document *> Module::documents()
+QList<Document *> Krita::documents()
 {
     QList<Document *> ret;
     foreach(KoPart *part, koApp->partList()) {
@@ -50,7 +50,7 @@ QList<Document *> Module::documents()
 
 }
 
-QList<Image *> Module::images()
+QList<Image *> Krita::images()
 {
     QList<Image *> ret;
     foreach(Document *doc, documents()) {
diff --git a/krita/plugins/extensions/pykrita/libkis/module.h \
b/krita/plugins/extensions/pykrita/libkis/krita.h similarity index 69%
rename from krita/plugins/extensions/pykrita/libkis/module.h
rename to krita/plugins/extensions/pykrita/libkis/krita.h
index 489882a..c04839e 100644
--- a/krita/plugins/extensions/pykrita/libkis/module.h
+++ b/krita/plugins/extensions/pykrita/libkis/krita.h
@@ -1,5 +1,5 @@
-#ifndef LIBKIS_MODULE_H
-#define LIBKIS_MODULE_H
+#ifndef LIBKIS_KRITA_H
+#define LIBKIS_KRITA_H
 
 #include <QObject>
 #include <QPointer>
@@ -12,11 +12,11 @@
 
 #include <krita_export.h>
 
-class LIBKIS_EXPORT Module : public QObject
+class LIBKIS_EXPORT Krita : public QObject
 {
     Q_OBJECT
 public:
-    explicit Module(QObject *parent = 0);
+    explicit Krita(QObject *parent = 0);
 
     QList<MainWindow*> mainWindows();
     QList<View*> views();
@@ -30,4 +30,4 @@ public slots:
 private:
 };
 
-#endif // LIBKIS_MODULE_H
+#endif // LIBKIS_KRITA_H
diff --git a/krita/plugins/extensions/pykrita/libkis/mainwindow.cpp \
b/krita/plugins/extensions/pykrita/libkis/mainwindow.cpp index cc330f2..1a7abe7 100644
--- a/krita/plugins/extensions/pykrita/libkis/mainwindow.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/mainwindow.cpp
@@ -5,9 +5,9 @@
 
 #include "view.h"
 
-MainWindow::MainWindow(KoMainWindow *mainWin, QObject *parent)
+MainWindow::MainWindow(QObject *mainWin, QObject *parent)
     : QObject(parent)
-    , m_mainWindow(mainWin)
+    , m_mainWindow(qobject_cast<KoMainWindow*>(mainWin))
 {
 }
 
diff --git a/krita/plugins/extensions/pykrita/libkis/mainwindow.h \
b/krita/plugins/extensions/pykrita/libkis/mainwindow.h index 66efc89..3304859 100644
--- a/krita/plugins/extensions/pykrita/libkis/mainwindow.h
+++ b/krita/plugins/extensions/pykrita/libkis/mainwindow.h
@@ -11,7 +11,7 @@ class LIBKIS_EXPORT MainWindow : public QObject
 {
     Q_OBJECT
 public:
-    explicit MainWindow(KoMainWindow *mainWin, QObject *parent = 0);
+    explicit MainWindow(QObject *mainWin, QObject *parent = 0);
 
     QList<View*> views();
 signals:
diff --git a/krita/plugins/extensions/pykrita/libkis/view.cpp \
b/krita/plugins/extensions/pykrita/libkis/view.cpp index 61cf272..90d1084 100644
--- a/krita/plugins/extensions/pykrita/libkis/view.cpp
+++ b/krita/plugins/extensions/pykrita/libkis/view.cpp
@@ -1,7 +1,9 @@
 #include "view.h"
 
-View::View(KisView2 *view, QObject *parent)
+#include <kis_view2.h>
+
+View::View(QObject *view, QObject *parent)
     : QObject(parent)
-    , m_view(view)
+    , m_view(qobject_cast<KisView2*>(view))
 {
 }
diff --git a/krita/plugins/extensions/pykrita/libkis/view.h \
b/krita/plugins/extensions/pykrita/libkis/view.h index 37bc158..b76069e 100644
--- a/krita/plugins/extensions/pykrita/libkis/view.h
+++ b/krita/plugins/extensions/pykrita/libkis/view.h
@@ -11,7 +11,7 @@ class LIBKIS_EXPORT View : public QObject
 {
     Q_OBJECT
 public:
-    explicit View(KisView2 *view, QObject *parent = 0);
+    explicit View(QObject *view, QObject *parent = 0);
 
 signals:
 
diff --git a/krita/plugins/extensions/pykrita/sip/CMakeLists.txt \
b/krita/plugins/extensions/pykrita/sip/CMakeLists.txt index f7cc864..55a7a0f 100644
--- a/krita/plugins/extensions/pykrita/sip/CMakeLists.txt
+++ b/krita/plugins/extensions/pykrita/sip/CMakeLists.txt
@@ -1,5 +1,7 @@
 include(SIPMacros)
 
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../libkis)
+
 set(SIP_INCLUDES ${PYQT4_SIP_DIR} ./krita)
 set(SIP_CONCAT_PARTS 1)
 set(SIP_TAGS ALL WS_X11 ${PYQT4_VERSION_TAG})
diff --git a/krita/plugins/extensions/pykrita/sip/krita/application.sip \
b/krita/plugins/extensions/pykrita/sip/krita/application.sip index e8a24ca..2cc0d33 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/application.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/application.sip
@@ -1,12 +1,10 @@
-%Module PyKrita4.Application
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
 class Application : public QObject
 {
 %TypeHeaderCode
-#include <../../libkis/application.h>
+#include "application.h"
 %End
 
 public:
diff --git a/krita/plugins/extensions/pykrita/sip/krita/document.sip \
b/krita/plugins/extensions/pykrita/sip/krita/document.sip index 9b3281b..8a3acc7 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/document.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/document.sip
@@ -1,16 +1,14 @@
-%Module PyKrita4.Document
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
 class Document : public QObject
 {
 %TypeHeaderCode
-#include <../../libkis/document.h>
+#include "document.h"
 %End
 
 public:
-    explicit Document(void */In/, QObject *parent  /TransferThis/ = 0);
+    explicit Document(QObject *document, QObject *parent  /TransferThis/ = 0);
 
     Image *image();
 };
diff --git a/krita/plugins/extensions/pykrita/sip/krita/image.sip \
b/krita/plugins/extensions/pykrita/sip/krita/image.sip index 5c18f4d..8789487 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/image.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/image.sip
@@ -1,15 +1,13 @@
-%Module PyKrita4.Image
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
 class Image : public QObject
 {
 %TypeHeaderCode
-#include <../../libkis/image.h>
+#include "image.h"
 %End
 
 public:
-    explicit Image(void */In/, QObject *parent  /TransferThis/ = 0);
+    explicit Image(QObject *image, QObject *parent  /TransferThis/ = 0);
 
-};
\ No newline at end of file
+};
diff --git a/krita/plugins/extensions/pykrita/sip/krita/module.sip \
b/krita/plugins/extensions/pykrita/sip/krita/krita.sip similarity index 64%
rename from krita/plugins/extensions/pykrita/sip/krita/module.sip
rename to krita/plugins/extensions/pykrita/sip/krita/krita.sip
index 5303086..9a7d30e 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/module.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/krita.sip
@@ -1,16 +1,14 @@
-%Module PyKrita4.Module
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
-class Module : public QObject
+class Krita : public QObject
 {
 %TypeHeaderCode
-#include <module.h>
+#include "krita.h"
 %End
 
 public:
-    Module(QObject *parent /TransferThis/ = 0);
+    Krita(QObject *parent /TransferThis/ = 0);
 
     QList<MainWindow*> mainWindows();
     QList<View*> views();
diff --git a/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip \
b/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip index 94256ec..af67f6f 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/kritamod.sip
@@ -15,6 +15,6 @@
 %Include document.sip
 %Include image.sip
 %Include mainwindow.sip
-%Include module.sip
+%Include krita.sip
 %Include node.sip
-%Include view.sip
\ No newline at end of file
+%Include view.sip
diff --git a/krita/plugins/extensions/pykrita/sip/krita/mainwindow.sip \
b/krita/plugins/extensions/pykrita/sip/krita/mainwindow.sip index 413998b..de07570 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/mainwindow.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/mainwindow.sip
@@ -1,5 +1,3 @@
-%Module PyKrita4.MainWindow
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
@@ -7,10 +5,10 @@
 class MainWindow : public QObject
 {
 %TypeHeaderCode
-#include <mainwindow.h>
+#include "mainwindow.h"
 %End
 
 public:
-    MainWindow(void */In/, QObject *parent  /TransferThis/ = 0);
+    MainWindow(QObject *mainWin, QObject *parent  /TransferThis/ = 0);
     QList<View*> views();
 };
diff --git a/krita/plugins/extensions/pykrita/sip/krita/node.sip \
b/krita/plugins/extensions/pykrita/sip/krita/node.sip index d3465c5..d81dcb2 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/node.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/node.sip
@@ -1,5 +1,3 @@
-%Module PyKrita4.Node
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
@@ -7,7 +5,7 @@ class Node : public QObject
 {
 
 %TypeHeaderCode
-#include <../../libkis/node.h>
+#include "node.h"
 %End
 
 public:
diff --git a/krita/plugins/extensions/pykrita/sip/krita/view.sip \
b/krita/plugins/extensions/pykrita/sip/krita/view.sip index 78d915d..b8ddd57 100644
--- a/krita/plugins/extensions/pykrita/sip/krita/view.sip
+++ b/krita/plugins/extensions/pykrita/sip/krita/view.sip
@@ -1,15 +1,13 @@
-%Module PyKrita4.View
-
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 
 class View : public QObject
 {
 %TypeHeaderCode
-#include <../../libkis/view.h>
+#include "view.h"
 %End
 
 public:
-    explicit View(void */In/, QObject *parent  /TransferThis/ = 0);
+    explicit View(QObject *view, QObject *parent  /TransferThis/ = 0);
 
 };
diff --git a/krita/plugins/extensions/pykrita/src/krita/api.py \
b/krita/plugins/extensions/pykrita/src/krita/api.py index 53bb8c4..debe9ee 100644
--- a/krita/plugins/extensions/pykrita/src/krita/api.py
+++ b/krita/plugins/extensions/pykrita/src/krita/api.py
@@ -26,6 +26,8 @@ import contextlib
 import os
 import sys
 
+from PyKrita4.krita import *
+
 import pykrita
 
 def objectIsAlive(obj):
@@ -45,5 +47,5 @@ def kDebug(text):
         TODO Add a way to control debug output from partucular plugins (?)
     '''
     plugin = sys._getframe(1).f_globals['__name__']
-    pate.kDebug('{}: {}'.format(plugin, text))
+    pykrita.kDebug('{}: {}'.format(plugin, text))
 
diff --git a/krita/plugins/extensions/pykrita/src/plugin.cpp \
b/krita/plugins/extensions/pykrita/src/plugin.cpp index e767545..02b192c 100644
--- a/krita/plugins/extensions/pykrita/src/plugin.cpp
+++ b/krita/plugins/extensions/pykrita/src/plugin.cpp
@@ -35,8 +35,6 @@ KritaPyQtPlugin::KritaPyQtPlugin(QObject *parent, const QVariantList &)
     , m_engineFailureReason(m_engine.tryInitializeGetFailureReason())
     , m_autoReload(false)
 {
-    qDebug() << ">>>>>>>>>>>>>>>" << m_engineFailureReason;
-
     KisPreferenceSetRegistry *preferenceSetRegistry = KisPreferenceSetRegistry::instance();
 
     PyQtPluginSettingsFactory* settingsFactory = new PyQtPluginSettingsFactory(&m_engine);
diff --git a/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py \
b/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py index da21e93..712673c 100644
--- a/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py
+++ b/krita/plugins/extensions/pykrita/src/plugins/hello/hello.py
@@ -1,5 +1,7 @@
 from PyQt4.QtGui import *
+from PyKrita4.krita import *
 
 def hello():
+
     QMessageBox.information(QWidget(), "Test", "Hello World")
 


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

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