summaryrefslogtreecommitdiffstats
path: root/src/extension/prefdialog/parameter.cpp
diff options
context:
space:
mode:
authorPatrick Storz <eduard.braun2@gmx.de>2019-08-05 22:11:54 +0000
committerPatrick Storz <eduard.braun2@gmx.de>2019-08-31 14:50:39 +0000
commit26d8a32b7395d7bf1d1da7c32b9f2cdf5770510a (patch)
tree904840fe91cd40cc5791e35ff9435d8e403478df /src/extension/prefdialog/parameter.cpp
parentInxParameter::string(): remove useless overrides (diff)
downloadinkscape-26d8a32b7395d7bf1d1da7c32b9f2cdf5770510a.tar.gz
inkscape-26d8a32b7395d7bf1d1da7c32b9f2cdf5770510a.zip
Optimize parameter string generation
Also rename overloaded string() functions, so it's clear what they actually do, as it's not the same thing at all...
Diffstat (limited to 'src/extension/prefdialog/parameter.cpp')
-rw-r--r--src/extension/prefdialog/parameter.cpp28
1 files changed, 14 insertions, 14 deletions
diff --git a/src/extension/prefdialog/parameter.cpp b/src/extension/prefdialog/parameter.cpp
index 61cf8c662..3f8f30c60 100644
--- a/src/extension/prefdialog/parameter.cpp
+++ b/src/extension/prefdialog/parameter.cpp
@@ -57,7 +57,7 @@ public:
}
// Well, no, I don't have a value! That's why I should not be an InxParameter!
- void string(std::string &/*string*/) const override {}
+ std::string value_to_string() const override { return ""; }
};
@@ -264,25 +264,25 @@ char *InxParameter::pref_name() const
return g_strdup_printf("%s.%s", _extension->get_id(), _name);
}
-void InxParameter::string(std::string &/*string*/) const
+std::string InxParameter::value_to_string() const
{
// if we end up here we're missing a definition of ::string() in one of the subclasses
- g_critical("InxParameter::string called from parameter '%s' in extension '%s'", _name, _extension->get_id());
+ g_critical("InxParameter::value_to_string called from parameter '%s' in extension '%s'", _name, _extension->get_id());
g_assert_not_reached();
+ return "";
}
-void InxParameter::string(std::list <std::string> &list) const
+void InxParameter::build_param_string_list(std::list <std::string> &list) const
{
- std::string value;
- string(value);
- if (!value.empty()) {
- std::string final;
- final += "--";
- final += name();
- final += "=";
- final += value;
-
- list.insert(list.end(), final);
+ std::string value_string = value_to_string();
+ if (!value_string.empty()) {
+ std::string parameter_string; // --param=value
+ parameter_string += "--";
+ parameter_string += name();
+ parameter_string += "=";
+ parameter_string += value_string;
+
+ list.insert(list.end(), parameter_string);
}
}