From eb4a9b4a0169db14cee072d98111cddcf4bcd4c2 Mon Sep 17 00:00:00 2001 From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Wed, 21 Apr 2010 13:13:27 +0000 Subject: [PATCH] New sip export for Perspective git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2079 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- modules/gui/pymod/export_gosty.cc | 10 ++++++++++ modules/gui/pymod/export_perspective.cc | 1 + modules/gui/pymod/scene/init_inspector.py | 4 ++-- scripts/init.py | 3 +-- 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/modules/gui/pymod/export_gosty.cc b/modules/gui/pymod/export_gosty.cc index 88967d519..88aacd059 100644 --- a/modules/gui/pymod/export_gosty.cc +++ b/modules/gui/pymod/export_gosty.cc @@ -28,6 +28,8 @@ using namespace boost::python; #include <ost/gui/tools/tool_options_win.hh> #include "transfer_ownership.hh" +#include "sip_handler.hh" + #include "python_shell_proxy.hh" #include "tool_options_win_proxy.hh" #include "scene_win_proxy.hh" @@ -84,6 +86,13 @@ void app_add_widget_to_app_a(GostyApp* app, const QString& ident, } } +void app_add_widget_to_app_b(GostyApp* app, const QString& ident, + object py_object) +{ + if(QWidget* widget = get_cpp_qobject<QWidget>(py_object)){ + app->AddWidgetToApp(ident, widget); + } +} void export_Gosty() { @@ -112,6 +121,7 @@ void export_Gosty() make_function(&GostyApp::GetPerspective, return_value_policy<reference_existing_object>())) .def("AddWidgetToApp", &app_add_widget_to_app_a) + .def("AddWidgetToApp", &app_add_widget_to_app_b) .def("GetPerspective", &GostyApp::GetPerspective, return_value_policy<reference_existing_object>()) ; diff --git a/modules/gui/pymod/export_perspective.cc b/modules/gui/pymod/export_perspective.cc index d7367b700..bf5f14b3f 100644 --- a/modules/gui/pymod/export_perspective.cc +++ b/modules/gui/pymod/export_perspective.cc @@ -57,6 +57,7 @@ void export_Perspective() return_value_policy<reference_existing_object>())) .add_property("panels", make_function(&Perspective::GetPanels, return_value_policy<reference_existing_object>())) + .add_property("menubar", make_function(&app_get_menu_bar)) ; } diff --git a/modules/gui/pymod/scene/init_inspector.py b/modules/gui/pymod/scene/init_inspector.py index 03e88ef63..748012691 100644 --- a/modules/gui/pymod/scene/init_inspector.py +++ b/modules/gui/pymod/scene/init_inspector.py @@ -18,6 +18,7 @@ #------------------------------------------------------------------------------ import sip + from ost import gui from ost import gfx from PyQt4 import QtCore, QtGui @@ -45,8 +46,7 @@ def _InitInspector(): mywidget = InspectorDialog(app.gl_win.qobject) mywidget.setWindowFlags(QtCore.Qt.Dialog | QtCore.Qt.Tool) mywidget.show() - unwrapped = gui.BPQtHandle(sip.unwrapinstance(mywidget)) - app.AddWidgetToApp("InspectorDialog", unwrapped) + app.AddWidgetToApp("InspectorDialog", mywidget) menu_bar=app.perspective.GetMenuBar() InitInspectorMenu(mywidget,menu_bar) diff --git a/scripts/init.py b/scripts/init.py index e012b6118..1fcf39cb8 100644 --- a/scripts/init.py +++ b/scripts/init.py @@ -1,5 +1,4 @@ import __main__ -import sip import sys import optparse from ost import io, mol, seq, geom, conop, gui @@ -50,7 +49,7 @@ def _InitFrontEnd(): app.SetAppTitle("DNG") main_area=app.perspective.main_area _InitPanels(app, app.perspective.panels) - _InitMenuBar(app.perspective.GetMenuBar()) + _InitMenuBar(app.perspective.menubar) _InitSpaceNav(app.perspective.panels.qobject) _InitContextMenu() main_area.AddPersistentWidget("3D Scene", "gl_win" , app.gl_win.qobject, int(QtCore.Qt.WindowMaximized)) -- GitLab