From 93f88042d1a29c1ab5ac1d2604ac89d73a9d03c0 Mon Sep 17 00:00:00 2001 From: itsmattkc <34096995+itsmattkc@users.noreply.github.com> Date: Sun, 23 Oct 2022 19:52:08 -0700 Subject: [PATCH] math: use operation by default for name --- app/node/math/math/math.cpp | 18 +++++++++++++----- app/node/math/math/mathbase.cpp | 13 +++++++++++++ app/node/math/math/mathbase.h | 2 ++ 3 files changed, 28 insertions(+), 5 deletions(-) diff --git a/app/node/math/math/math.cpp b/app/node/math/math/math.cpp index 4ddbe2e12..82b07e6e8 100644 --- a/app/node/math/math/math.cpp +++ b/app/node/math/math/math.cpp @@ -44,6 +44,14 @@ MathNode::MathNode() QString MathNode::Name() const { + // Default to naming after the operation + if (parent()) { + QString op_name = GetOperationName(GetOperation()); + if (!op_name.isEmpty()) { + return op_name; + } + } + return tr("Math"); } @@ -70,12 +78,12 @@ void MathNode::Retranslate() SetInputName(kParamAIn, tr("Value")); SetInputName(kParamBIn, tr("Value")); - QStringList operations = {tr("Add"), - tr("Subtract"), - tr("Multiply"), - tr("Divide"), + QStringList operations = {GetOperationName(kOpAdd), + GetOperationName(kOpSubtract), + GetOperationName(kOpMultiply), + GetOperationName(kOpDivide), QString(), - tr("Power")}; + GetOperationName(kOpPower)}; SetComboBoxStrings(kMethodIn, operations); } diff --git a/app/node/math/math/mathbase.cpp b/app/node/math/math/mathbase.cpp index 4ed0ea5f6..7063c2691 100644 --- a/app/node/math/math/mathbase.cpp +++ b/app/node/math/math/mathbase.cpp @@ -167,6 +167,19 @@ void MathNodeBase::PushVector(NodeValueTable *output, olive::NodeValue::Type typ } } +QString MathNodeBase::GetOperationName(Operation o) +{ + switch (o) { + case kOpAdd: return tr("Add"); + case kOpSubtract: return tr("Subtract"); + case kOpMultiply: return tr("Multiply"); + case kOpDivide: return tr("Divide"); + case kOpPower: return tr("Power"); + } + + return QString(); +} + void MathNodeBase::PerformAllOnFloatBuffer(Operation operation, float *a, float b, int start, int end) { for (int j=start;j