diff --git a/src/runner/proxypluginwrappers.cpp b/src/runner/proxypluginwrappers.cpp index 3aa8072..1199de9 100644 --- a/src/runner/proxypluginwrappers.cpp +++ b/src/runner/proxypluginwrappers.cpp @@ -28,16 +28,6 @@ using namespace MOBase; #define COMMON_I_PLUGIN_WRAPPER_DEFINITIONS(class_name) \ -void class_name::registered() \ -{ \ - basicWrapperFunctionImplementationWithDefault(this, &class_name::registered_Default, "registered"); \ -} \ -\ -void class_name::registered_Default() \ -{ \ - IPlugin::registered(); \ -} \ -\ bool class_name::init(MOBase::IOrganizer *moInfo) \ { \ return basicWrapperFunctionImplementation(this, "init", boost::python::ptr(moInfo)); \ @@ -138,6 +128,10 @@ MappingType IPluginFileMapperWrapper::mappings() const ///////////////////////////////////// /// IPluginGame Wrapper +void IPluginGameWrapper::detectGame() +{ + return basicWrapperFunctionImplementation(this, "detectGame"); +} QString IPluginGameWrapper::gameName() const { diff --git a/src/runner/proxypluginwrappers.h b/src/runner/proxypluginwrappers.h index 22c3283..f75424f 100644 --- a/src/runner/proxypluginwrappers.h +++ b/src/runner/proxypluginwrappers.h @@ -17,8 +17,6 @@ #define COMMON_I_PLUGIN_WRAPPER_DECLARATIONS public: \ -virtual void registered() override; \ -void registered_Default(); \ virtual bool init(MOBase::IOrganizer *moInfo) override; \ virtual QString name() const override; \ virtual QString localizedName() const override; \ @@ -94,6 +92,7 @@ public: static constexpr const char* className = "IPluginGameWrapper"; using boost::python::wrapper::get_override; + virtual void detectGame() override; virtual QString gameName() const override; virtual void initializeProfile(const QDir &directory, ProfileSettings settings) const override; virtual QString savegameExtension() const override; diff --git a/src/runner/pythonrunner.cpp b/src/runner/pythonrunner.cpp index 1e0bb8c..3e75531 100644 --- a/src/runner/pythonrunner.cpp +++ b/src/runner/pythonrunner.cpp @@ -771,11 +771,10 @@ BOOST_PYTHON_MODULE(mobase) .def("onModMoved", &MOBase::IModList::onModMoved, bpy::arg("callback")) ; - // Note: registered(), localizedName() and master() have to go in all the plugin wrappers declaration, + // Note: localizedName() and master() have to go in all the plugin wrappers declaration, // since the default functions are specific to each wrapper, otherwise in turns into an // infinite recursion mess. bpy::class_("IPlugin") - .def("registered", &MOBase::IPlugin::registered, &IPluginWrapper::registered_Default) .def("init", bpy::pure_virtual(&MOBase::IPlugin::init), bpy::arg("organizer")) .def("name", bpy::pure_virtual(&MOBase::IPlugin::name)) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginWrapper::localizedName_Default) @@ -788,7 +787,6 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginDiagnose") - .def("registered", &MOBase::IPlugin::registered, &IPluginDiagnoseWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginDiagnoseWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginDiagnoseWrapper::master_Default, bpy::return_value_policy()) @@ -815,7 +813,6 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginFileMapper") - .def("registered", &MOBase::IPlugin::registered, &IPluginFileMapperWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginFileMapperWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginFileMapperWrapper::master_Default, bpy::return_value_policy()) .def("mappings", bpy::pure_virtual(&MOBase::IPluginFileMapper::mappings)) @@ -850,10 +847,10 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginGame") - .def("registered", &MOBase::IPlugin::registered, &IPluginGameWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginGameWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginGameWrapper::master_Default, bpy::return_value_policy()) + .def("detectGame", bpy::pure_virtual(&MOBase::IPluginGame::detectGame)) .def("gameName", bpy::pure_virtual(&MOBase::IPluginGame::gameName)) .def("initializeProfile", bpy::pure_virtual(&MOBase::IPluginGame::initializeProfile), (bpy::arg("directory"), "settings")) .def("savegameExtension", bpy::pure_virtual(&MOBase::IPluginGame::savegameExtension)) @@ -948,7 +945,6 @@ BOOST_PYTHON_MODULE(mobase) bpy::class_, boost::noncopyable>("IPluginInstallerSimple") .def("onInstallationStart", &IPluginInstaller::onInstallationStart, (bpy::arg("archive"), bpy::arg("reinstallation"), bpy::arg("current_mod"))) .def("onInstallationEnd", &IPluginInstaller::onInstallationEnd, (bpy::arg("result"), bpy::arg("new_mod"))) - .def("registered", &MOBase::IPlugin::registered, &IPluginInstallerSimpleWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginInstallerSimpleWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginInstallerSimpleWrapper::master_Default, bpy::return_value_policy()) @@ -966,7 +962,6 @@ BOOST_PYTHON_MODULE(mobase) bpy::class_, boost::noncopyable>("IPluginInstallerCustom") .def("onInstallationStart", &IPluginInstaller::onInstallationStart, (bpy::arg("archive"), bpy::arg("reinstallation"), bpy::arg("current_mod"))) .def("onInstallationEnd", &IPluginInstaller::onInstallationEnd, (bpy::arg("result"), bpy::arg("new_mod"))) - .def("registered", &MOBase::IPlugin::registered, &IPluginInstallerCustomWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginInstallerCustomWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginInstallerCustomWrapper::master_Default, bpy::return_value_policy()) @@ -980,7 +975,6 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginModPage") - .def("registered", &MOBase::IPlugin::registered, &IPluginModPageWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginModPageWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginModPageWrapper::master_Default, bpy::return_value_policy()) @@ -994,7 +988,6 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginPreview") - .def("registered", &MOBase::IPlugin::registered, &IPluginPreviewWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginPreviewWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginPreviewWrapper::master_Default, bpy::return_value_policy()) @@ -1004,7 +997,6 @@ BOOST_PYTHON_MODULE(mobase) ; bpy::class_, boost::noncopyable>("IPluginTool") - .def("registered", &MOBase::IPlugin::registered, &IPluginToolWrapper::registered_Default) .def("localizedName", &MOBase::IPlugin::localizedName, &IPluginToolWrapper::localizedName_Default) .def("master", &MOBase::IPlugin::master, &IPluginToolWrapper::master_Default, bpy::return_value_policy())