|
14 | 14 | #include <uibase/iexecutable.h> |
15 | 15 | #include <uibase/iexecutableslist.h> |
16 | 16 | #include <uibase/iinstallationmanager.h> |
| 17 | +#include <uibase/iinstance.h> |
| 18 | +#include <uibase/iinstancemanager.h> |
17 | 19 | #include <uibase/imodinterface.h> |
18 | 20 | #include <uibase/imodrepositorybridge.h> |
19 | 21 | #include <uibase/imoinfo.h> |
@@ -644,6 +646,8 @@ namespace mo2::python { |
644 | 646 |
|
645 | 647 | .def("virtualFileTree", &IOrganizer::virtualFileTree) |
646 | 648 |
|
| 649 | + .def("instanceManager", &IOrganizer::instanceManager, |
| 650 | + py::return_value_policy::reference) |
647 | 651 | .def("downloadManager", &IOrganizer::downloadManager, |
648 | 652 | py::return_value_policy::reference) |
649 | 653 | .def("pluginList", &IOrganizer::pluginList, |
@@ -799,6 +803,20 @@ namespace mo2::python { |
799 | 803 | .def_static("getPluginDataPath", &IOrganizer::getPluginDataPath); |
800 | 804 | } |
801 | 805 |
|
| 806 | + void add_iinstance_manager_classes(py::module_ m) |
| 807 | + { |
| 808 | + py::class_<IInstance, std::shared_ptr<IInstance>>(m, "IInstance") |
| 809 | + .def("displayName", &IInstance::displayName) |
| 810 | + .def("gameName", &IInstance::gameName) |
| 811 | + .def("gameDirectory", &IInstance::gameDirectory) |
| 812 | + .def("isPortable", &IInstance::isPortable); |
| 813 | + |
| 814 | + py::class_<IInstanceManager>(m, "IInstanceManager") |
| 815 | + .def("currentInstance", &IInstanceManager::currentInstance) |
| 816 | + .def("globalInstancePaths", &IInstanceManager::globalInstancePaths) |
| 817 | + .def("getGlobalInstance", &IInstanceManager::getGlobalInstance); |
| 818 | + } |
| 819 | + |
802 | 820 | void add_idownload_manager_classes(py::module_ m) |
803 | 821 | { |
804 | 822 | py::class_<IDownloadManager>(m, "IDownloadManager") |
@@ -925,6 +943,7 @@ namespace mo2::python { |
925 | 943 |
|
926 | 944 | add_ipluginlist_classes(m); |
927 | 945 | add_imodlist_classes(m); |
| 946 | + add_iinstance_manager_classes(m); |
928 | 947 | add_idownload_manager_classes(m); |
929 | 948 | add_iinstallation_manager_classes(m); |
930 | 949 | add_iorganizer_classes(m); |
|
0 commit comments