From 27e8534108120c045f2d2a481dc916b4c1b90a75 Mon Sep 17 00:00:00 2001 From: codereader Date: Sun, 11 Apr 2021 12:54:08 +0200 Subject: [PATCH] #5585: Expose setDescription --- install/scripts/materialtest.py | 1 + plugins/script/interfaces/ShaderSystemInterface.cpp | 1 + plugins/script/interfaces/ShaderSystemInterface.h | 6 ++++++ 3 files changed, 8 insertions(+) diff --git a/install/scripts/materialtest.py b/install/scripts/materialtest.py index 37ba453a90..1f795871d8 100644 --- a/install/scripts/materialtest.py +++ b/install/scripts/materialtest.py @@ -64,6 +64,7 @@ newMaterial.setSpectrum(5) newMaterial.setIsFogLight(1) newMaterial.setIsBlendLight(0) +newMaterial.setDescription("New Material") print('Full Material definition:\n{0}\n{{{1}}}'.format(newMaterial.getName(), newMaterial.getDefinition())) diff --git a/plugins/script/interfaces/ShaderSystemInterface.cpp b/plugins/script/interfaces/ShaderSystemInterface.cpp index 6746e14bde..6d961e5538 100644 --- a/plugins/script/interfaces/ShaderSystemInterface.cpp +++ b/plugins/script/interfaces/ShaderSystemInterface.cpp @@ -223,6 +223,7 @@ void ShaderSystemInterface::registerInterface(py::module& scope, py::dict& globa material.def("getShaderFileName", &ScriptMaterial::getShaderFileName); material.def("setShaderFileName", &ScriptMaterial::setShaderFileName); material.def("getDescription", &ScriptMaterial::getDescription); + material.def("setDescription", &ScriptMaterial::setDescription); material.def("getDefinition", &ScriptMaterial::getDefinition); material.def("isVisible", &ScriptMaterial::isVisible); material.def("isAmbientLight", &ScriptMaterial::isAmbientLight); diff --git a/plugins/script/interfaces/ShaderSystemInterface.h b/plugins/script/interfaces/ShaderSystemInterface.h index ad653b4cc1..58a6b05bbb 100644 --- a/plugins/script/interfaces/ShaderSystemInterface.h +++ b/plugins/script/interfaces/ShaderSystemInterface.h @@ -43,6 +43,12 @@ class ScriptMaterial return _material ? _material->getDescription() : ""; } + void setDescription(const std::string& description) + { + throwIfMaterialCannotBeModified(); + _material->setDescription(description); + } + std::string getDefinition() { return _material ? _material->getDefinition() : ""; }