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

List:       kde-commits
Subject:    [calligra/krita-scripting-rempt] krita/plugins/extensions/pyqt: Only build the pyqt plugin if python
From:       Boudewijn Rempt <boud () valdyas ! org>
Date:       2014-07-28 8:26:48
Message-ID: E1XBgGe-0003jd-Vs () scm ! kde ! org
[Download RAW message or body]

Git commit fe6bc332a586507747fa894e0c2219897f8f758d by Boudewijn Rempt.
Committed on 13/07/2014 at 11:22.
Pushed by rempt into branch 'krita-scripting-rempt'.

Only build the pyqt plugin if python, sip and pyqt are found

M  +11   -2    krita/plugins/extensions/pyqt/CMakeLists.txt
M  +2    -2    krita/plugins/extensions/pyqt/sip/CMakeLists.txt
R  +22   -22   krita/plugins/extensions/pyqt/sip/krita/bak/application.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/application.sip - 057% similarity] R  +4    \
-4    krita/plugins/extensions/pyqt/sip/krita/bak/documentmanager.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/documentmanager.sip - 091% similarity] R  +12 \
-7    krita/plugins/extensions/pyqt/sip/krita/bak/mainwindow.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/mainwindow.sip - 075% similarity] R  +9    -9 \
krita/plugins/extensions/pyqt/sip/krita/bak/plugin.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/plugin.sip - 073% similarity] R  +5    -5    \
krita/plugins/extensions/pyqt/sip/krita/bak/pluginconfigpageinterface.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/pluginconfigpageinterface.sip - 087% \
similarity] R  +5    -5    \
krita/plugins/extensions/pyqt/sip/krita/bak/pluginmanager.sip [from: \
krita/plugins/extensions/pyqt/sip/krita/pluginmanager.sip - 084% similarity] M  +9    \
-16   krita/plugins/extensions/pyqt/sip/krita/kritamod.sip M  +1    -0    \
krita/plugins/extensions/pyqt/src/plugins/hello/__init__.py M  +3    -3    \
krita/plugins/extensions/pyqt/src/plugins/hello/hello.py

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

diff --git a/krita/plugins/extensions/pyqt/CMakeLists.txt \
b/krita/plugins/extensions/pyqt/CMakeLists.txt index 8b67475..9d6d96c 100644
--- a/krita/plugins/extensions/pyqt/CMakeLists.txt
+++ b/krita/plugins/extensions/pyqt/CMakeLists.txt
@@ -1,11 +1,18 @@
 macro_optional_find_package(PythonLibrary)
 macro_log_feature(PYTHON_LIBRARY "PythonLibrary" "Python Library" FALSE "" "Required \
by the Krita PyQt plugin") +macro_bool_to_01(PYTHONLIBS_FOUND HAVE_PYTHONLIBS)
 
 macro_optional_find_package(SIP 4.7.1)
 macro_log_feature(SIP_FOUND "SIP" "Support for SIP Python bindings" FALSE "" \
"Required by the Krita PyQt plugin") +macro_bool_to_01(SIP_FOUND HAVE_SIP)
 
 macro_optional_find_package(PyQt4 4.3.1)
 macro_log_feature(PYQT4_FOUND "PyQt4" "Python bindings for Qt4" FALSE "" "Required \
by the Krita PyQt plugin") +macro_bool_to_01(PYQT4_FOUND HAVE_PYQT4)
+
+if (HAVE_PYQT4 AND HAVE_SIP AND HAVE_PYTHONLIBS)
+
+message(WARNING "PyQt" ${HAVE_PYQT4} "Sip" ${HAVE_SIP} "Python" ${HAVE_PYTHONLIBS})
 
 if (NOT EXISTS ${PYQT4_SIP_DIR}/QtCore/QtCoremod.sip)
     message(WARNING "krita-pyqt plugin needs the PyQt4 development sip file \
QtCoremod.sip") @@ -13,6 +20,8 @@ if (NOT EXISTS \
${PYQT4_SIP_DIR}/QtCore/QtCoremod.sip)  endif()
 
 include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${SIP_INCLUDE_DIR} \
                ${PYTHON_INCLUDE_PATH})
-
-#add_subdirectory(sip)
+    
+add_subdirectory(sip)
 add_subdirectory(src)
+
+endif (HAVE_PYQT4 AND HAVE_SIP AND HAVE_PYTHONLIBS)
diff --git a/krita/plugins/extensions/pyqt/sip/CMakeLists.txt \
b/krita/plugins/extensions/pyqt/sip/CMakeLists.txt index fbe486e..895aef9 100644
--- a/krita/plugins/extensions/pyqt/sip/CMakeLists.txt
+++ b/krita/plugins/extensions/pyqt/sip/CMakeLists.txt
@@ -1,6 +1,6 @@
 include(SIPMacros)
 
-set(SIP_INCLUDES ${PYQT4_SIP_DIR} ${PYKDE4_SIP_DIR} ./kate)
+set(SIP_INCLUDES ${PYQT4_SIP_DIR} ./krita)
 set(SIP_CONCAT_PARTS 1)
 set(SIP_TAGS ALL WS_X11 ${PYQT4_VERSION_TAG})
 
@@ -11,7 +11,7 @@ else (PYQT4_VERSION STRLESS "040905")
     set(SIP_EXTRA_OPTIONS -g -x PyKDE_QVector)
 endif(PYQT4_VERSION STRLESS "040905")
 
-add_sip_python_module(PyKrita4.krita ./krita/kritamod.sip komain kritaimage kritaui \
kritalibbrush) +add_sip_python_module(PyKrita4.krita ./krita/kritamod.sip kritaui \
kritaimage kritalibbrush)  
 install(FILES
     ./__init__.py
diff --git a/krita/plugins/extensions/pyqt/sip/krita/application.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/application.sip similarity index 57%
rename from krita/plugins/extensions/pyqt/sip/krita/application.sip
rename to krita/plugins/extensions/pyqt/sip/krita/bak/application.sip
index db9c96a..232f9c4 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/application.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/application.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -36,7 +36,7 @@
 #include <application.h>
 %End
 
-namespace Kate
+namespace Krita
 {
 
 class Application : QObject
@@ -50,31 +50,31 @@ public:
                          Application (void* /In/);
 
 public:
-    Kate::DocumentManager* documentManager ();
-    Kate::PluginManager* pluginManager ();
+    Krita::DocumentManager* documentManager ();
+    Krita::PluginManager* pluginManager ();
     KTextEditor::Editor* editor ();
-    Kate::MainWindow*    activeMainWindow ();
-    const QList<Kate::MainWindow*>& mainWindows () const;
+    Krita::MainWindow*    activeMainWindow ();
+    const QList<Krita::MainWindow*>& mainWindows () const;
 
 // Subclasses for QObject
 
 public:
 %ConvertToSubClassCode
 
-    if (dynamic_cast<Kate::Application*>(sipCpp))
-        sipClass = sipClass_Kate_Application;
-    else if (dynamic_cast<Kate::DocumentManager*>(sipCpp))
-        sipClass = sipClass_Kate_DocumentManager;
-    else if (dynamic_cast<Kate::MainWindow*>(sipCpp))
-        sipClass = sipClass_Kate_MainWindow;
-    else if (dynamic_cast<Kate::Plugin*>(sipCpp))
-        sipClass = sipClass_Kate_Plugin;
-    else if (dynamic_cast<Kate::PluginConfigPage*>(sipCpp))
-        sipClass = sipClass_Kate_PluginConfigPage;
-    else if (dynamic_cast<Kate::PluginManager*>(sipCpp))
-        sipClass = sipClass_Kate_PluginManager;
-    else if (dynamic_cast<Kate::PluginView*>(sipCpp))
-        sipClass = sipClass_Kate_PluginView;
+    if (dynamic_cast<Krita::Application*>(sipCpp))
+        sipClass = sipClass_Krita_Application;
+    else if (dynamic_cast<Krita::DocumentManager*>(sipCpp))
+        sipClass = sipClass_Krita_DocumentManager;
+    else if (dynamic_cast<Krita::MainWindow*>(sipCpp))
+        sipClass = sipClass_Krita_MainWindow;
+    else if (dynamic_cast<Krita::Plugin*>(sipCpp))
+        sipClass = sipClass_Krita_Plugin;
+    else if (dynamic_cast<Krita::PluginConfigPage*>(sipCpp))
+        sipClass = sipClass_Krita_PluginConfigPage;
+    else if (dynamic_cast<Krita::PluginManager*>(sipCpp))
+        sipClass = sipClass_Krita_PluginManager;
+    else if (dynamic_cast<Krita::PluginView*>(sipCpp))
+        sipClass = sipClass_Krita_PluginView;
     else
         sipClass = NULL;
 %End
@@ -82,6 +82,6 @@ public:
 
 };  // class Application
 
-Kate::Application*   application ();
-};  // namespace Kate
+Krita::Application*   application ();
+};  // namespace Krita
 
diff --git a/krita/plugins/extensions/pyqt/sip/krita/documentmanager.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/documentmanager.sip similarity index \
91% rename from krita/plugins/extensions/pyqt/sip/krita/documentmanager.sip
rename to krita/plugins/extensions/pyqt/sip/krita/bak/documentmanager.sip
index b66d9a5..99e0668 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/documentmanager.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/documentmanager.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -26,7 +26,7 @@
 #include <documentmanager.h>
 %End
 
-namespace Kate
+namespace Krita
 {
 
 class DocumentManager : QObject
@@ -52,6 +52,6 @@ signals:
 
 };  // class DocumentManager
 
-Kate::DocumentManager* documentManager ();
-};  // namespace Kate
+Krita::DocumentManager* documentManager ();
+};  // namespace Krita
 
diff --git a/krita/plugins/extensions/pyqt/sip/krita/mainwindow.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/mainwindow.sip similarity index 75%
rename from krita/plugins/extensions/pyqt/sip/krita/mainwindow.sip
rename to krita/plugins/extensions/pyqt/sip/krita/bak/mainwindow.sip
index 55121b5..582cc03 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/mainwindow.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/mainwindow.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -22,7 +22,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-namespace Kate
+namespace Krita
 {
 
 class MainWindow : QObject
@@ -45,7 +45,7 @@ public:
     KTextEditor::View*   activateView (KTextEditor::Document*);
     KTextEditor::View*   openUrl (const KUrl&, const QString& = QString ());
     // http://kde.6490.n7.nabble.com/Can-I-know-the-project-configuration-from-python-plugin-td1523455.html
                
-    Kate::PluginView*    pluginView (const QString&);
+    Krita::PluginView*    pluginView (const QString&);
 
 signals:
     void                 viewChanged ();
@@ -60,12 +60,17 @@ public:
         Bottom
     };
 
-    QWidget*             createToolView (const QString&, Kate::MainWindow::Position, \
                const QPixmap&, const QString&);
-    bool                 moveToolView (QWidget*, Kate::MainWindow::Position);
+    QWidget*             createToolView (const QString&, \
Krita::MainWindow::Position, const QPixmap&, const QString&); +    bool               \
moveToolView (QWidget*, Krita::MainWindow::Position);  bool                 \
showToolView (QWidget*);  bool                 hideToolView (QWidget*);
+    // NOTE This method do not exist in C++ class, but needed for Python code!
+    void                 destroyToolView(QWidget*);
+%MethodCode
+    a0->blockSignals(true);
+    a0->deleteLater();
+%End
 
 };  // class MainWindow
 
-};  // namespace Kate
-
+};  // namespace Krita
diff --git a/krita/plugins/extensions/pyqt/sip/krita/plugin.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/plugin.sip similarity index 73%
rename from krita/plugins/extensions/pyqt/sip/krita/plugin.sip
rename to krita/plugins/extensions/pyqt/sip/krita/bak/plugin.sip
index b16a4de..471e92f 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/plugin.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/plugin.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -23,7 +23,7 @@
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 
-namespace Kate
+namespace Krita
 {
 
 class Plugin : QObject
@@ -33,15 +33,15 @@ class Plugin : QObject
 %End
 
 public:
-                         Plugin (Kate::Application* = 0, const char* = 0);
-    Kate::Application*   application () const;
-    virtual Kate::PluginView* createView (Kate::MainWindow*);
+                         Plugin (Krita::Application* = 0, const char* = 0);
+    Krita::Application*   application () const;
+    virtual Krita::PluginView* createView (Krita::MainWindow*);
     virtual void         readSessionConfig (KConfigBase*, const QString&);
     virtual void         writeSessionConfig (KConfigBase*, const QString&);
 
 };  // class Plugin
 
-Kate::Plugin*        createPlugin (const char*, Kate::Application* = 0, const \
QStringList& = QStringList ()); +Krita::Plugin*        createPlugin (const char*, \
Krita::Application* = 0, const QStringList& = QStringList ());  
 class PluginView : QObject
 {
@@ -50,13 +50,13 @@ class PluginView : QObject
 %End
 
 public:
-                         PluginView (Kate::MainWindow*);
-    Kate::MainWindow*    mainWindow () const;
+                         PluginView (Krita::MainWindow*);
+    Krita::MainWindow*    mainWindow () const;
     virtual void         readSessionConfig (KConfigBase*, const QString&);
     virtual void         writeSessionConfig (KConfigBase*, const QString&);
 
 };  // class PluginView
 
-};  // namespace Kate
+};  // namespace Krita
 
 
diff --git a/krita/plugins/extensions/pyqt/sip/krita/pluginconfigpageinterface.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/pluginconfigpageinterface.sip \
similarity index 87% rename from \
krita/plugins/extensions/pyqt/sip/krita/pluginconfigpageinterface.sip rename to \
krita/plugins/extensions/pyqt/sip/krita/bak/pluginconfigpageinterface.sip index \
                8328dbc..360e298 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/pluginconfigpageinterface.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/pluginconfigpageinterface.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -26,7 +26,7 @@
 #include <pluginconfigpageinterface.h>
 %End
 
-namespace Kate
+namespace Krita
 {
 
 class PluginConfigPage : QWidget
@@ -63,13 +63,13 @@ public:
 
 public:
     virtual uint         configPages () const = 0;
-    virtual Kate::PluginConfigPage* configPage (uint = 0, QWidget* = 0, const char* \
= 0)  = 0; +    virtual Krita::PluginConfigPage* configPage (uint = 0, QWidget* = 0, \
const char* = 0)  = 0;  virtual QString      configPageName (uint = 0) const = 0;
     virtual QString      configPageFullName (uint = 0) const = 0;
     virtual KIcon        configPageIcon (uint = 0) const = 0;
 
 };  // class PluginConfigPageInterface
 
-Kate::PluginConfigPageInterface* pluginConfigPageInterface (Kate::Plugin*);
-};  // namespace Kate
+Krita::PluginConfigPageInterface* pluginConfigPageInterface (Krita::Plugin*);
+};  // namespace Krita
 
diff --git a/krita/plugins/extensions/pyqt/sip/krita/pluginmanager.sip \
b/krita/plugins/extensions/pyqt/sip/krita/bak/pluginmanager.sip similarity index 84%
rename from krita/plugins/extensions/pyqt/sip/krita/pluginmanager.sip
rename to krita/plugins/extensions/pyqt/sip/krita/bak/pluginmanager.sip
index cc09c87..0769753 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/pluginmanager.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/bak/pluginmanager.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE 3.92.0
+//            PyKDE4 module krita  version KDE 3.92.0
 
 
 // This file is part of PyKDE4.
@@ -22,7 +22,7 @@
 // You should have received a copy of the GNU General Public License
 // along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-namespace Kate
+namespace Krita
 {
 
 class PluginManager : QObject
@@ -36,12 +36,12 @@ public:
                          PluginManager (void* /In/);
 
 public:
-    Kate::Plugin*        plugin (const QString&);
+    Krita::Plugin*        plugin (const QString&);
     bool                 pluginAvailable (const QString&);
-    Kate::Plugin*        loadPlugin (const QString&, bool = 1);
+    Krita::Plugin*        loadPlugin (const QString&, bool = 1);
     void                 unloadPlugin (const QString&, bool = 1);
 
 };  // class PluginManager
 
-};  // namespace Kate
+};  // namespace Krita
 
diff --git a/krita/plugins/extensions/pyqt/sip/krita/kritamod.sip \
b/krita/plugins/extensions/pyqt/sip/krita/kritamod.sip index 32a4be7..11793ae 100644
--- a/krita/plugins/extensions/pyqt/sip/krita/kritamod.sip
+++ b/krita/plugins/extensions/pyqt/sip/krita/kritamod.sip
@@ -4,7 +4,7 @@
 
 
 //                 Generated by preSip
-//            PyKDE4 module kate  version KDE_3_92_0
+//            PyKDE4 module krita  version KDE_3_92_0
 
 %Copying
 
@@ -25,7 +25,7 @@
 
 %End
 
-%Module PyKate4.kate
+%Module PyKrita4.krita
 
 %ModuleHeaderCode
 #pragma GCC visibility push(default)
@@ -34,18 +34,11 @@
 %Import QtCore/QtCoremod.sip
 %Import QtGui/QtGuimod.sip
 %Import QtXml/QtXmlmod.sip
-%Import kdecore/kdecoremod.sip
-//%Import kdefx/kdefxmod.sip
-%Import kdeui/kdeuimod.sip
-%Import kio/kiomod.sip
-// %Import kutils/kutilsmod.sip
-%Import kparts/kpartsmod.sip
-%Import ktexteditor/ktexteditormod.sip
-
-%Include application.sip
-%Include documentmanager.sip
-%Include mainwindow.sip
-%Include plugin.sip
-%Include pluginconfigpageinterface.sip
-%Include pluginmanager.sip
+
+//%Include application.sip
+//%Include documentmanager.sip
+//%Include mainwindow.sip
+//%Include plugin.sip
+//%Include pluginconfigpageinterface.sip
+//%Include pluginmanager.sip
 
diff --git a/krita/plugins/extensions/pyqt/src/plugins/hello/__init__.py \
b/krita/plugins/extensions/pyqt/src/plugins/hello/__init__.py index 43dc36c..de744cb \
                100644
--- a/krita/plugins/extensions/pyqt/src/plugins/hello/__init__.py
+++ b/krita/plugins/extensions/pyqt/src/plugins/hello/__init__.py
@@ -1 +1,2 @@
 # let's make a module
+from .hello import *
diff --git a/krita/plugins/extensions/pyqt/src/plugins/hello/hello.py \
b/krita/plugins/extensions/pyqt/src/plugins/hello/hello.py index ca88f0d..da21e93 \
                100644
--- a/krita/plugins/extensions/pyqt/src/plugins/hello/hello.py
+++ b/krita/plugins/extensions/pyqt/src/plugins/hello/hello.py
@@ -1,5 +1,5 @@
-import sys
 from PyQt4.QtGui import *
 
-app = QApplication(sys.argv)
-QMessageBox.information(QWidget(), "Test", "Hello World")
\ No newline at end of file
+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