Merge pull request #113 from ModOrganizer2/dev/refresh-callback

Add onNextRefresh() and 2nd onAboutToRun bindings.
This commit is contained in:
Mikaël Capelle
2023-09-29 08:24:02 +02:00
committed by GitHub
4 changed files with 15 additions and 3 deletions
+11 -1
View File
@@ -553,10 +553,20 @@ namespace mo2::python {
.def("managedGame", &IOrganizer::managedGame,
py::return_value_policy::reference)
.def("onAboutToRun", &IOrganizer::onAboutToRun, "callback"_a)
.def("onAboutToRun",
py::overload_cast<std::function<bool(QString const&, const QDir&,
const QString&)> const&>(
&IOrganizer::onAboutToRun),
"callback"_a)
.def("onAboutToRun",
py::overload_cast<std::function<bool(QString const&)> const&>(
&IOrganizer::onAboutToRun),
"callback"_a)
.def("onFinishedRun", &IOrganizer::onFinishedRun, "callback"_a)
.def("onUserInterfaceInitialized", &IOrganizer::onUserInterfaceInitialized,
"callback"_a)
.def("onNextRefresh", &IOrganizer::onNextRefresh, "callback"_a,
"immediate_if_possible"_a = true)
.def("onProfileCreated", &IOrganizer::onProfileCreated, "callback"_a)
.def("onProfileRenamed", &IOrganizer::onProfileRenamed, "callback"_a)
.def("onProfileRemoved", &IOrganizer::onProfileRemoved, "callback"_a)
+2 -1
View File
@@ -21,7 +21,8 @@ namespace mo2::python::detail {
auto required_count = args_count - defaults_count;
return required_count <= arity // cannot require more parameters than given,
&& (args_count >= arity || varargs); // must accept enough parameters.
&& (args_count >= arity ||
!varargs.is_none()); // must accept enough parameters.
}
} // namespace mo2::python::detail
-1
View File
@@ -143,7 +143,6 @@ namespace mo2::python {
handler.attr("setLevel")(PyLogLevel::DEBUG);
auto logger = logging.attr("getLogger")(py::object(mobase.attr("__name__")));
logger.attr("setLevel")(PyLogLevel::DEBUG);
logger.attr("addHandler")(handler);
// set mobase attributes
mobase.attr("LogHandler") = MO2Handler;
+2
View File
@@ -39,10 +39,12 @@ public:
MOCK_METHOD(HANDLE, startApplication, (const QString &executable, const QStringList &args, const QString &cwd, const QString &profile, const QString &forcedCustomOverwrite, bool ignoreCustomOverwrite), (override));
MOCK_METHOD(bool, waitForApplication, (HANDLE handle, bool refresh, LPDWORD exitCode), (const, override));
MOCK_METHOD(bool, onAboutToRun, (const std::function<bool(const QString&)> &func), (override));
MOCK_METHOD(bool, onAboutToRun, (const std::function<bool(const QString&, const QDir&, const QString&)> &func), (override));
MOCK_METHOD(bool, onFinishedRun, (const std::function<void(const QString&, unsigned int)> &func), (override));
MOCK_METHOD(void, refresh, (bool saveChanges), (override));
MOCK_METHOD(MOBase::IPluginGame const *, managedGame, (), (const, override));
MOCK_METHOD(bool, onUserInterfaceInitialized, (const std::function<void (QMainWindow *)> &), (override));
MOCK_METHOD(bool, onNextRefresh, (const std::function<void()>&, bool), (override));
MOCK_METHOD(bool, onProfileCreated, (const std::function<void(MOBase::IProfile*)>&), (override));
MOCK_METHOD(bool, onProfileRemoved, (const std::function<void(const QString&)>&), (override));
MOCK_METHOD(bool, onProfileRenamed, (const std::function<void(MOBase::IProfile*, QString const&, QString const&)>&), (override));