diff --git a/modules/gui/pymod/export_gl_win.cc b/modules/gui/pymod/export_gl_win.cc index a0ef599d4b26e4ab58e284d44c628b335f68ea0c..d42165b00441ca53486aeb60d53f7ae5b0d10ed3 100644 --- a/modules/gui/pymod/export_gl_win.cc +++ b/modules/gui/pymod/export_gl_win.cc @@ -28,12 +28,12 @@ using namespace ost::gui; void export_GLWin() { - class_<GLWin, boost::noncopyable >("GLWin", no_init) + class_<GLWin, boost::noncopyable>("GLWin", no_init) .def("Show", &GLWin::show) .def("Hide", &GLWin::hide) .def("StatusMessage",&GLWin::StatusMessage) - .def("GetQObject",&ost::gui::get_py_qobject<GLWin>) - .add_property("qobject", &ost::gui::get_py_qobject<GLWin>) + .def("GetQObject",&get_py_qobject<GLWin>) + .add_property("qobject", &get_py_qobject<GLWin>) ; } diff --git a/modules/gui/pymod/export_input.cc b/modules/gui/pymod/export_input.cc index f0df02754f287efd4836f2f70a61d672cae233c9..25ede19bcca1a6e26e1b63f4f5d7d8fcea021229 100644 --- a/modules/gui/pymod/export_input.cc +++ b/modules/gui/pymod/export_input.cc @@ -43,8 +43,8 @@ void export_Input() { class_<SpnavInput, bases<SipHandlerBase>, boost::noncopyable >("SpnavInput",no_init) .def("GetQThread", &spnav_get_instance).staticmethod("GetQThread") - .def("GetQObject", &ost::gui::get_py_qobject<SpnavInput>) - .add_property("qobject", &ost::gui::get_py_qobject<SpnavInput>) + .def("GetQObject", &get_py_qobject<SpnavInput>) + .add_property("qobject", &get_py_qobject<SpnavInput>) .def("Instance", &SpnavInput::Instance, return_value_policy<reference_existing_object>()).staticmethod("Instance") ; diff --git a/modules/gui/pymod/export_main_area.cc b/modules/gui/pymod/export_main_area.cc index 70c69427a25239a3566a4a1fc88ee53a231aa23d..afeea34ae31bbcbc415b05fbfba3bb1cd518799c 100644 --- a/modules/gui/pymod/export_main_area.cc +++ b/modules/gui/pymod/export_main_area.cc @@ -148,6 +148,7 @@ void export_MainArea() .def("AddWidget", &MainArea::AddWidget) .def("AddWidget", &main_area_add_widget_a) .def("AddWidget", &main_area_add_widget_b) + .def("AddWidget", &main_area_add_widget_c) .def("AddPersistentWidget", &main_area_add_pers_widget_a) .def("AddPersistentWidget", &main_area_add_pers_widget_b) .def("AddPersistentWidget", &main_area_add_pers_widget_c) diff --git a/modules/gui/pymod/export_menu_bar.cc b/modules/gui/pymod/export_menu_bar.cc index a53c45c67af8dd4a494cda1374803f4a7a74243f..146e0785cc421eda698ac1925260bc3db69d1997 100644 --- a/modules/gui/pymod/export_menu_bar.cc +++ b/modules/gui/pymod/export_menu_bar.cc @@ -18,8 +18,10 @@ //------------------------------------------------------------------------------ #include <boost/python.hpp> -#include "menu_proxy.hh" -#include "menu_bar_proxy.hh" +#include "sip_handler.hh" + +#include <QMenuBar> +#include <QMenu> using namespace boost::python; using namespace ost; @@ -28,11 +30,16 @@ using namespace ost::gui; void export_MenuBar() { - class_<MenuBarProxy, bases<SipHandlerBase> >("MenuBar") - .def("Show", &MenuBarProxy::Show) - .def("Hide", &MenuBarProxy::Hide) + class_<QMenuBar, boost::noncopyable>("MenuBar") + .def("Show", &QMenuBar::show) + .def("Hide", &QMenuBar::hide) + .def("GetQObject",&get_py_qobject<QMenuBar>) + .add_property("qobject", &get_py_qobject<QMenuBar>) ; - class_<MenuProxy, bases<SipHandlerBase> >("Menu"); + class_<QMenu, boost::noncopyable>("Menu") + .def("GetQObject",&get_py_qobject<QMenu>) + .add_property("qobject", &get_py_qobject<QMenu>) + ; } diff --git a/modules/gui/pymod/export_panel_bar.cc b/modules/gui/pymod/export_panel_bar.cc index 2153804cfae7e24eb60ff42cecf234906664292d..38e2b645815ae445adff507ecdeade3c97b82538 100644 --- a/modules/gui/pymod/export_panel_bar.cc +++ b/modules/gui/pymod/export_panel_bar.cc @@ -75,14 +75,7 @@ void panels_add_widget_to_pool_b(Panels * panels, const QString& name, int limit object panels_get_menu(Panels* panels) { - static object sip_module=import("sip"); - static object pyqt4_module=import("PyQt4.QtGui"); - object obj(MenuProxy(panels->GetMenu())); - object sip_handle=obj.attr("GetSipHandle")(); - object qmenu = pyqt4_module.attr("QMenu"); - object menu = sip_module.attr("wrapinstance")(sip_handle, qmenu); - - return menu; + return get_py_qobject<QMenu>(panels->GetMenu()); } object panels_get_qwidget(Panels* panels) diff --git a/modules/gui/pymod/export_perspective.cc b/modules/gui/pymod/export_perspective.cc index 6c20c232792988a0890c7b9f807d6a73c378d2f7..d7367b700c11ed021c1a76c680ac3b3857d3379c 100644 --- a/modules/gui/pymod/export_perspective.cc +++ b/modules/gui/pymod/export_perspective.cc @@ -23,9 +23,6 @@ #include <ost/gui/perspective.hh> #include <ost/gui/main_area.hh> -#include "menu_bar_proxy.hh" -#include "menu_proxy.hh" - #include "sip_handler.hh" using namespace boost::python; @@ -34,26 +31,12 @@ using namespace ost::gui; object app_get_menu_bar(Perspective* pers) { - static object sip_module=import("sip"); - static object pyqt4_module=import("PyQt4.QtGui"); - object obj(MenuBarProxy(pers->GetMenuBar())); - object sip_handle=obj.attr("GetSipHandle")(); - object qmenubar = pyqt4_module.attr("QMenuBar"); - object menu_bar = sip_module.attr("wrapinstance")(sip_handle, qmenubar); - - return menu_bar; + return get_py_qobject<QMenuBar>(pers->GetMenuBar()); } object app_get_menu(Perspective* pers, const QString& name) { - static object sip_module=import("sip"); - static object pyqt4_module=import("PyQt4.QtGui"); - object obj(MenuProxy(pers->GetMenu(name))); - object sip_handle=obj.attr("GetSipHandle")(); - object qmenu = pyqt4_module.attr("QMenu"); - object menu = sip_module.attr("wrapinstance")(sip_handle, qmenu); - - return menu; + return get_py_qobject<QMenu>(pers->GetMenu(name)); } void export_Perspective()