From df08e03eca6b63d1979109154ede48fafc605995 Mon Sep 17 00:00:00 2001 From: Gabriel Studer <gabriel.studer@unibas.ch> Date: Fri, 24 Jul 2020 14:03:13 +0200 Subject: [PATCH] Allow sip import in newer versions of PyQt5 --- modules/gui/pymod/__init__.py | 2 -- modules/gui/pymod/export_input.cc | 2 +- modules/gui/pymod/init_context_menu.py | 2 -- modules/gui/pymod/init_menubar.py | 1 - modules/gui/pymod/scene/file_loader.py | 2 -- modules/gui/pymod/scene/init_inspector.py | 2 -- modules/gui/pymod/scene/inspector_widget.py | 1 - modules/gui/pymod/scene/scene_selection_helper.py | 1 - modules/gui/pymod/sip_handler.hh | 3 ++- 9 files changed, 3 insertions(+), 13 deletions(-) diff --git a/modules/gui/pymod/__init__.py b/modules/gui/pymod/__init__.py index 78c1617af..fc8d1494c 100644 --- a/modules/gui/pymod/__init__.py +++ b/modules/gui/pymod/__init__.py @@ -18,8 +18,6 @@ #------------------------------------------------------------------------------ import ost.gui.trajectory_viewer from ._ost_gui import * -import sip - ## \brief Opens a DataViewer # \sa \example fft_li.py "View Fourier Transform Example" \sa \ref modulate_image.py "Modulate Image Example" diff --git a/modules/gui/pymod/export_input.cc b/modules/gui/pymod/export_input.cc index 06846fc98..8aec22c2b 100644 --- a/modules/gui/pymod/export_input.cc +++ b/modules/gui/pymod/export_input.cc @@ -30,8 +30,8 @@ namespace { object spnav_get_instance() { - static object sip_module=import("sip"); static object pyqt5_module=import("PyQt5.QtCore"); + static object sip_module=import("sip"); SpnavInput* si = SpnavInput::Instance(); if(si->isValid()) { return ost::gui::get_py_qobject<SpnavInput>(si); diff --git a/modules/gui/pymod/init_context_menu.py b/modules/gui/pymod/init_context_menu.py index 9693ef5c8..a241253f1 100644 --- a/modules/gui/pymod/init_context_menu.py +++ b/modules/gui/pymod/init_context_menu.py @@ -2,8 +2,6 @@ import platform from PyQt5 import QtCore, QtWidgets -import sip - from ost import geom, gfx, gui, seq from ost import settings from ost import LogError, mol diff --git a/modules/gui/pymod/init_menubar.py b/modules/gui/pymod/init_menubar.py index c245f0f3c..2c8f05c4d 100644 --- a/modules/gui/pymod/init_menubar.py +++ b/modules/gui/pymod/init_menubar.py @@ -19,7 +19,6 @@ import sys from ost import gui -import sip from ost import gfx import ost diff --git a/modules/gui/pymod/scene/file_loader.py b/modules/gui/pymod/scene/file_loader.py index adf747d10..567450218 100644 --- a/modules/gui/pymod/scene/file_loader.py +++ b/modules/gui/pymod/scene/file_loader.py @@ -20,9 +20,7 @@ from ost import gui from ost import info import ost -import sip import re - from PyQt5 import QtCore, QtGui, QtNetwork from ost.gui import FileLoader diff --git a/modules/gui/pymod/scene/init_inspector.py b/modules/gui/pymod/scene/init_inspector.py index 99fea817b..f250b80ea 100644 --- a/modules/gui/pymod/scene/init_inspector.py +++ b/modules/gui/pymod/scene/init_inspector.py @@ -17,8 +17,6 @@ # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA #------------------------------------------------------------------------------ -import sip - from ost import gui from ost import gfx from PyQt5 import QtCore diff --git a/modules/gui/pymod/scene/inspector_widget.py b/modules/gui/pymod/scene/inspector_widget.py index f1d98d377..5ae8b8725 100644 --- a/modules/gui/pymod/scene/inspector_widget.py +++ b/modules/gui/pymod/scene/inspector_widget.py @@ -19,7 +19,6 @@ import sys from ost import gui -import sip from ost import gfx import ost import os diff --git a/modules/gui/pymod/scene/scene_selection_helper.py b/modules/gui/pymod/scene/scene_selection_helper.py index 91686daf2..0c2d8d09a 100644 --- a/modules/gui/pymod/scene/scene_selection_helper.py +++ b/modules/gui/pymod/scene/scene_selection_helper.py @@ -19,7 +19,6 @@ import sys from ost import gui -import sip from ost import gfx import ost import os diff --git a/modules/gui/pymod/sip_handler.hh b/modules/gui/pymod/sip_handler.hh index c2f9c189a..5a37b312a 100644 --- a/modules/gui/pymod/sip_handler.hh +++ b/modules/gui/pymod/sip_handler.hh @@ -37,8 +37,8 @@ namespace ost { namespace gui { template <class O> object get_py_qobject(O* cpp_object) { if (cpp_object != NULL){ - static object sip_module=import("sip"); static object pyqt5_module=import("PyQt5.QtCore"); + static object sip_module=import("sip"); QObject* qobject = qobject_cast<QObject*>(cpp_object); unsigned long addr = reinterpret_cast<unsigned long>(qobject); object py_qobject = pyqt5_module.attr("QObject"); @@ -55,6 +55,7 @@ template <class O> O* get_cpp_qobject(object py_object) if(PyObject_HasAttrString(py_object.ptr(), "qobject")){ py_object = py_object.attr("qobject"); } + static object pyqt5_module=import("PyQt5.QtCore"); static object sip_module=import("sip"); unsigned long addr = extract<unsigned long>(sip_module.attr("unwrapinstance")(py_object)); if(addr){ -- GitLab