aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Ziller <eike.ziller@qt.io>2018-09-28 13:42:01 +0200
committerEike Ziller <eike.ziller@qt.io>2018-10-04 07:58:31 +0000
commit9ecb100128ee8729c4ad50e2ae5981c10ba6c286 (patch)
tree789f8409887999e6f38fe1cdad27ec610e85033c
parent3412dc563119221bd730c1487937519df0761792 (diff)
Include Qt Creator typesystem instead of duplicating API4.8
This seems to work now after beautifying the import hierarchy. Change-Id: I24daf09ff63ef91023366c12308d2f9fcd2676aa Reviewed-by: Eike Ziller <eike.ziller@qt.io>
-rw-r--r--optional/projectexplorer/bindingheaders/utils.h0
-rw-r--r--optional/projectexplorer/bindingheaders/utils_filename.h0
-rw-r--r--optional/projectexplorer/projectexplorer.pro3
-rw-r--r--optional/projectexplorer/typesystem_projectexplorer.xml11
-rw-r--r--optional/texteditor/typesystem_texteditor.xml22
-rw-r--r--shiboken.pri6
6 files changed, 6 insertions, 36 deletions
diff --git a/optional/projectexplorer/bindingheaders/utils.h b/optional/projectexplorer/bindingheaders/utils.h
deleted file mode 100644
index e69de29..0000000
--- a/optional/projectexplorer/bindingheaders/utils.h
+++ /dev/null
diff --git a/optional/projectexplorer/bindingheaders/utils_filename.h b/optional/projectexplorer/bindingheaders/utils_filename.h
deleted file mode 100644
index e69de29..0000000
--- a/optional/projectexplorer/bindingheaders/utils_filename.h
+++ /dev/null
diff --git a/optional/projectexplorer/projectexplorer.pro b/optional/projectexplorer/projectexplorer.pro
index b998d93..88bf4a1 100644
--- a/optional/projectexplorer/projectexplorer.pro
+++ b/optional/projectexplorer/projectexplorer.pro
@@ -18,6 +18,7 @@ QTC_PLUGIN_RECOMMENDS += \
include(../binding/binding.pri)
INCLUDEPATH *= $$IDE_SOURCE_TREE/src/plugins/projectexplorer
+
win32: DEFINES += NOMINMAX
# Shiboken binding generation setup
@@ -40,8 +41,6 @@ WRAPPED_CLASSES = \
bindingheaders/projectexplorer_runconfiguration.h \
bindingheaders/projectexplorer_project.h \
bindingheaders/projectexplorer_projecttree.h \
- bindingheaders/utils.h \
- bindingheaders/utils_filename.h \
# Sentinel line
include(../../shiboken.pri)
diff --git a/optional/projectexplorer/typesystem_projectexplorer.xml b/optional/projectexplorer/typesystem_projectexplorer.xml
index 0e0eeff..ab66793 100644
--- a/optional/projectexplorer/typesystem_projectexplorer.xml
+++ b/optional/projectexplorer/typesystem_projectexplorer.xml
@@ -42,11 +42,8 @@
<!-- Typesystem for Qt Creator Python host plugin -->
<typesystem package="QtCreatorBindingProjectExplorer">
-
- <!-- Load PySide QtWidgets typesystem (is this correct? yup) -->
<load-typesystem name="typesystem_widgets.xml" generate="no"/>
- <!-- Currently there are problems with getting this to work ... -->
- <!-- <load-typesystem name="../../plugins/pythonextensions/typesystem_qtcreator.xml" generate="no"/> -->
+ <load-typesystem name="../../plugins/pythonextensions/typesystem_qtcreator.xml" generate="no"/>
<namespace-type name="ProjectExplorer">
<object-type name="BuildConfiguration">
@@ -65,10 +62,4 @@
<modify-function signature="fromMap(const QVariantMap&amp;,QString*)" remove="all"/>
</object-type>
</namespace-type>
-
- <namespace-type name="Utils">
- <value-type name="FileName"/>
- <modify-function signature="operator&lt;&lt;(QTextStream&amp;,Utils::FileName)" remove="all"/>
- </namespace-type>
-
</typesystem>
diff --git a/optional/texteditor/typesystem_texteditor.xml b/optional/texteditor/typesystem_texteditor.xml
index ef10df0..f421b76 100644
--- a/optional/texteditor/typesystem_texteditor.xml
+++ b/optional/texteditor/typesystem_texteditor.xml
@@ -42,28 +42,8 @@
<!-- Typesystem for Qt Creator Python host plugin -->
<typesystem package="QtCreatorBindingTextEditor">
-
- <!-- Load PySide QtWidgets typesystem (is this correct? yup) -->
<load-typesystem name="typesystem_widgets.xml" generate="no"/>
- <!-- Currently there are problems with getting this to work (see below) -->
- <!-- <load-typesystem name="../../plugins/pythonextensions/typesystem_qtcreator.xml" generate="no"/> -->
- <!--
- Here is the deal: This will compile just fine, but WON'T LOAD.
- The reason for this is known:
- -> The generated binding initializer will try to load the Python Module 'QtCreatorPython'
- -> This module does not exists, because we expose everything as members of 'PythonExtension'
- -> Now one might try to simply rename QtCreatorPython to PythonExtension.QtCreator, which would
- generate an import statement like `Shiboken::Module::import("PythonExtension.QtCreator")`
- -> Problem: That does not work either, because QtCreator is actually a member in PythonExtension,
- which is a module and not a package.
- -> So yeah, essentially it seems like this is something that would not be a problem in a module
- for CPython, but there seems to be no facility to circumvent this when embedding CPython.
- There is also no way in Shibken to fix this and no easy fix for that.
- ==> The easiest way forward is to just include the parts that are needed within each binding in
- the typesystem. Problems that might arise:
- 1) Big size of bindings due to repetition of code (pretty sure)
- 2) Interoperability issues between bindings (conjecture)
- -->
+ <load-typesystem name="../../plugins/pythonextensions/typesystem_qtcreator.xml" generate="no"/>
<namespace-type name="TextEditor">
<enum-type name="TextPositionOperation"/>
diff --git a/shiboken.pri b/shiboken.pri
index 29e81b9..587406a 100644
--- a/shiboken.pri
+++ b/shiboken.pri
@@ -24,7 +24,7 @@ for (path, SHIBOKEN_FRAMEWORKPATHS): SHIBOKEN_CXXFLAGS *= -F$$path
SHIBOKEN_OPTIONS = --generator-set=shiboken --enable-parent-ctor-heuristic \
--enable-pyside-extensions --enable-return-value-heuristic --use-isnull-as-nb_nonzero \
- $$SHIBOKEN_CXXFLAGS -I$$PWD -T$$PWD -T$$PYSIDE2/typesystems --output-directory=$$OUT_PWD
+ $$SHIBOKEN_CXXFLAGS -T$$PYSIDE2/typesystems --output-directory=$$OUT_PWD
win32: SHIBOKEN_OPTIONS += --avoid-protected-hack
@@ -50,8 +50,8 @@ QMAKE_EXTRA_COMPILERS += shiboken module_wrapper_dummy_command
# TODO: Fix some more of these hardcoded include paths
INCLUDEPATH += $$WRAPPER_DIR \
- $$WRAPPER_DIR/../../../plugins/pythonextensions \
- $$WRAPPER_DIR/../../../plugins/pythonextensions/PythonExtension/QtCreator \
+ $$PWD/plugins/pythonextensions \
+ $$shadowed($$PWD)/plugins/pythonextensions/QtCreator \
"$$IDE_SOURCE_TREE/src/plugins/coreplugin" \
"$$IDE_SOURCE_TREE/src/plugins/coreplugin/actionmanager" \
"$$IDE_SOURCE_TREE/src/plugins/coreplugin/editormanager" \