From a6bb68fb5221c77ce613ed897bf31271bbafc112 Mon Sep 17 00:00:00 2001 From: alexandre burton Date: Sat, 21 Sep 2024 13:52:02 -0400 Subject: [PATCH 1/2] ofParameter:: void add(std::shared_ptr param); --- libs/openFrameworks/types/ofParameter.h | 1 + libs/openFrameworks/types/ofParameterGroup.cpp | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/libs/openFrameworks/types/ofParameter.h b/libs/openFrameworks/types/ofParameter.h index 6dcd27435a8..aca6649b98b 100644 --- a/libs/openFrameworks/types/ofParameter.h +++ b/libs/openFrameworks/types/ofParameter.h @@ -109,6 +109,7 @@ class ofParameterGroup : public ofAbstractParameter { add(parameters...); } + void add(std::shared_ptr param); void add(ofAbstractParameter & param); std::string valueType() const; diff --git a/libs/openFrameworks/types/ofParameterGroup.cpp b/libs/openFrameworks/types/ofParameterGroup.cpp index d21952771cd..1498b3acd48 100644 --- a/libs/openFrameworks/types/ofParameterGroup.cpp +++ b/libs/openFrameworks/types/ofParameterGroup.cpp @@ -17,8 +17,7 @@ ofParameterGroup::ofParameterGroup() } -void ofParameterGroup::add(ofAbstractParameter & parameter){ - shared_ptr param = parameter.newReference(); +void ofParameterGroup::add(shared_ptr param){ const std::string name = param->getEscapedName(); if(obj->parametersIndex.find(name) != obj->parametersIndex.end()){ ofLogWarning() << "Adding another parameter with same name '" << param->getName() << "' to group '" << getName() << "'"; @@ -28,6 +27,10 @@ void ofParameterGroup::add(ofAbstractParameter & parameter){ param->setParent(*this); } +void ofParameterGroup::add(ofAbstractParameter & parameter){ + add(parameter.newReference()); +} + void ofParameterGroup::remove(ofAbstractParameter ¶m){ for(auto & p: obj->parameters){ if(p->isReferenceTo(param)){ From ff1b805deb0c9845fd85b003f8640732913bbdab Mon Sep 17 00:00:00 2001 From: alexandre burton Date: Fri, 8 Nov 2024 18:15:57 -0500 Subject: [PATCH 2/2] merge fix --- libs/openFrameworks/types/ofParameterGroup.cpp | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/libs/openFrameworks/types/ofParameterGroup.cpp b/libs/openFrameworks/types/ofParameterGroup.cpp index 3d8ee73214a..0edb69ff8a0 100644 --- a/libs/openFrameworks/types/ofParameterGroup.cpp +++ b/libs/openFrameworks/types/ofParameterGroup.cpp @@ -5,15 +5,14 @@ ofParameterGroup::ofParameterGroup() : obj(new Value) { } -void ofParameterGroup::add(ofAbstractParameter & parameter) { - auto param = parameter.newReference(); - auto escaped_name = param->getEscapedName(); +void ofParameterGroup::add(std::shared_ptr parameter) { + auto escaped_name = parameter->getEscapedName(); if (contains(escaped_name)) { - ofLogWarning() << "Adding another parameter with same name '" << param->getName() << "' to group '" << getName() << "'"; + ofLogWarning() << "Adding another parameter with same name '" << parameter->getName() << "' to group '" << getName() << "'"; } - obj->parameters.push_back(param); + obj->parameters.push_back(parameter); obj->parametersIndex[escaped_name] = obj->parameters.size() - 1; - param->setParent(*this); + parameter->setParent(*this); } void ofParameterGroup::add(ofAbstractParameter & parameter){