From 2c30cd25cd4374aa68c9e1bf61b633be4bf50525 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mika=C3=ABl=20Capelle?= Date: Sun, 18 Oct 2020 10:59:57 +0200 Subject: [PATCH] Add Mapping constructor. --- src/runner/pythonrunner.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/runner/pythonrunner.cpp b/src/runner/pythonrunner.cpp index da92104..3450251 100644 --- a/src/runner/pythonrunner.cpp +++ b/src/runner/pythonrunner.cpp @@ -750,11 +750,18 @@ BOOST_PYTHON_MODULE(mobase) .def("_invalidate", &IPluginDiagnoseWrapper::invalidate) ; - bpy::class_("Mapping") + bpy::class_("Mapping", bpy::init<>()) + .def("__init__", bpy::make_constructor(+[](QString src, QString dst, bool dir, bool crt) -> Mapping* { + return new Mapping{ src, dst, dir, crt }; + }, bpy::default_call_policies(), + (bpy::arg("source"), bpy::arg("destination"), bpy::arg("is_directory"), bpy::arg("create_target") = false))) .def_readwrite("source", &Mapping::source) .def_readwrite("destination", &Mapping::destination) .def_readwrite("isDirectory", &Mapping::isDirectory) .def_readwrite("createTarget", &Mapping::createTarget) + .def("__str__", +[](Mapping * m) { + return fmt::format(L"Mapping({}, {}, {}, {})", m->source.toStdWString(), m->destination.toStdWString(), m->isDirectory, m->createTarget); + }) ; bpy::class_, boost::noncopyable>("IPluginFileMapper")