diff --git a/src/Mod/Sandbox/App/AppSandbox.cpp b/src/Mod/Sandbox/App/AppSandbox.cpp index 802aa3904..051d7bd69 100644 --- a/src/Mod/Sandbox/App/AppSandbox.cpp +++ b/src/Mod/Sandbox/App/AppSandbox.cpp @@ -146,24 +146,22 @@ public: Py::String m_value; }; -} // namespace Sandbox - /* module functions */ -class SandboxModule : public Py::ExtensionModule +class Module : public Py::ExtensionModule { public: - SandboxModule() : Py::ExtensionModule("Sandbox") + Module() : Py::ExtensionModule("Sandbox") { Sandbox::PythonBaseClass::init_type(); Sandbox::DocumentProtectorPy::init_type(); add_varargs_method("DocumentProtector", - &SandboxModule::new_DocumentProtector, + &Module::new_DocumentProtector, "DocumentProtector(Document)"); Sandbox::DocumentObjectProtectorPy::init_type(); add_varargs_method("DocumentObjectProtector", - &SandboxModule::new_DocumentObjectProtector, + &Module::new_DocumentObjectProtector, "DocumentObjectProtector(DocumentObject)"); initialize("This module is the Sandbox module"); // register with Python @@ -172,7 +170,7 @@ public: d["PythonBaseClass"] = x; } - virtual ~SandboxModule() {} + virtual ~Module() {} private: Py::Object new_DocumentProtector(const Py::Tuple& args) @@ -193,18 +191,17 @@ private: } }; +} // namespace Sandbox + /* Python entry */ -extern "C" { -void SandboxAppExport initSandbox() { +PyMODINIT_FUNC initSandbox() { Sandbox::DocumentProtector ::init(); Sandbox::SandboxObject ::init(); // the following constructor call registers our extension module // with the Python runtime system - (void)new SandboxModule; + (void)new Sandbox::Module; Base::Console().Log("Loading Sandbox module... done\n"); } - -} // extern "C" diff --git a/src/Mod/Sandbox/Gui/AppSandboxGui.cpp b/src/Mod/Sandbox/Gui/AppSandboxGui.cpp index bb0bfd12c..5e098d4b5 100644 --- a/src/Mod/Sandbox/Gui/AppSandboxGui.cpp +++ b/src/Mod/Sandbox/Gui/AppSandboxGui.cpp @@ -187,20 +187,21 @@ private: double radius; }; -class SandboxModuleGui : public Py::ExtensionModule +namespace SandboxGui { +class Module : public Py::ExtensionModule { public: - SandboxModuleGui() : Py::ExtensionModule("SandboxGui") + Module() : Py::ExtensionModule("SandboxGui") { - add_varargs_method("interactiveFilletArc",&SandboxModuleGui::interactiveFilletArc, + add_varargs_method("interactiveFilletArc",&Module::interactiveFilletArc, "Interactive fillet arc"); - add_varargs_method("xmlReader",&SandboxModuleGui::xmlReader, + add_varargs_method("xmlReader",&Module::xmlReader, "Read XML"); initialize("This module is the SandboxGui module"); // register with Python } - virtual ~SandboxModuleGui() {} + virtual ~Module() {} private: Py::Object interactiveFilletArc(const Py::Tuple& args) @@ -238,10 +239,10 @@ private: } }; +} // namespace SandboxGui /* Python entry */ -extern "C" { -void SandboxGuiExport initSandboxGui() +PyMODINIT_FUNC initSandboxGui() { if (!Gui::Application::Instance) { PyErr_SetString(PyExc_ImportError, "Cannot load Gui module in console application."); @@ -264,8 +265,6 @@ void SandboxGuiExport initSandboxGui() // the following constructor call registers our extension module // with the Python runtime system - (void)new SandboxModuleGui; + (void)new SandboxGui::Module; Base::Console().Log("Loading GUI of Sandbox module... done\n"); } - -} // extern "C"