diff --git a/src/runner/converters.h b/src/runner/converters.h index ea7ffd2..7933fbf 100644 --- a/src/runner/converters.h +++ b/src/runner/converters.h @@ -331,14 +331,18 @@ namespace utils { }; template - struct wrap_impl, Ws... > { + struct wrap_impl, Ws... > : public wrap_impl<> { + using wrap_impl<>::apply; + static auto apply(T t) { return boost::ref(t); } }; template - struct wrap_impl, Ws... > { + struct wrap_impl, Ws... > : public wrap_impl<> { + using wrap_impl<>::apply; + static auto apply(T t) { return bpy::ptr(t); } diff --git a/src/runner/pythonrunner.cpp b/src/runner/pythonrunner.cpp index b54921f..3f4f569 100644 --- a/src/runner/pythonrunner.cpp +++ b/src/runner/pythonrunner.cpp @@ -140,6 +140,8 @@ BOOST_PYTHON_MODULE(mobase) utils::register_functor_converter&)>(); // converter for the onPluginStateChanged-callback (IPluginList) utils::register_functor_converter(); utils::register_functor_converter(); + utils::register_functor_converter>(); + utils::register_functor_converter>(); utils::register_functor_converter>(); utils::register_functor_converter(); utils::register_functor_converter)>(); @@ -329,6 +331,9 @@ BOOST_PYTHON_MODULE(mobase) .def("onAboutToRun", &IOrganizer::onAboutToRun, bpy::arg("callback")) .def("onFinishedRun", &IOrganizer::onFinishedRun, bpy::arg("callback")) .def("onUserInterfaceInitialized", &IOrganizer::onUserInterfaceInitialized, bpy::arg("callback")) + .def("onProfileCreated", &IOrganizer::onProfileCreated, bpy::arg("callback")) + .def("onProfileRenamed", &IOrganizer::onProfileRenamed, bpy::arg("callback")) + .def("onProfileRemoved", &IOrganizer::onProfileRemoved, bpy::arg("callback")) .def("onProfileChanged", &IOrganizer::onProfileChanged, bpy::arg("callback")) .def("onPluginSettingChanged", &IOrganizer::onPluginSettingChanged, bpy::arg("callback")) ;