From 1558e920db59332a25017c508f56342cb1cb466e Mon Sep 17 00:00:00 2001 From: wmayer Date: Sat, 23 Jan 2016 18:16:14 +0100 Subject: [PATCH] py3: ported ReverseEngineering to python3 --- .../App/AppReverseEngineering.cpp | 11 +++++++++-- .../Gui/AppReverseEngineeringGui.cpp | 13 ++++++++++--- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/Mod/ReverseEngineering/App/AppReverseEngineering.cpp b/src/Mod/ReverseEngineering/App/AppReverseEngineering.cpp index c8e2c684d..d4cbc8837 100644 --- a/src/Mod/ReverseEngineering/App/AppReverseEngineering.cpp +++ b/src/Mod/ReverseEngineering/App/AppReverseEngineering.cpp @@ -735,6 +735,12 @@ Mesh.show(m) } #endif }; + +PyObject* initModule() +{ + return (new Module)->module().ptr(); +} + } // namespace Reen @@ -748,9 +754,10 @@ PyMODINIT_FUNC initReverseEngineering() } catch(const Base::Exception& e) { PyErr_SetString(PyExc_ImportError, e.what()); - return; + PyMOD_Return(0); } - new Reen::Module(); + PyObject* mod = Reen::initModule(); Base::Console().Log("Loading ReverseEngineering module... done\n"); + PyMOD_Return(mod); } diff --git a/src/Mod/ReverseEngineering/Gui/AppReverseEngineeringGui.cpp b/src/Mod/ReverseEngineering/Gui/AppReverseEngineeringGui.cpp index e91c2549f..66ecf0aeb 100644 --- a/src/Mod/ReverseEngineering/Gui/AppReverseEngineeringGui.cpp +++ b/src/Mod/ReverseEngineering/Gui/AppReverseEngineeringGui.cpp @@ -57,18 +57,24 @@ public: private: }; + +PyObject* initModule() +{ + return (new Module)->module().ptr(); +} + } // namespace ReverseEngineeringGui /* Python entry */ -PyMODINIT_FUNC initReverseEngineeringGui() +PyMOD_INIT_FUNC(ReverseEngineeringGui) { if (!Gui::Application::Instance) { PyErr_SetString(PyExc_ImportError, "Cannot load Gui module in console application."); - return; + PyMOD_Return(0); } - new ReverseEngineeringGui::Module(); + PyObject* mod = ReverseEngineeringGui::initModule(); Base::Console().Log("Loading GUI of ReverseEngineering module... done\n"); // instantiating the commands @@ -77,4 +83,5 @@ PyMODINIT_FUNC initReverseEngineeringGui() // add resources and reloads the translators loadReverseEngineeringResource(); + PyMOD_Return(mod); }