summaryrefslogtreecommitdiffstats
path: root/src/ui/widget
diff options
context:
space:
mode:
Diffstat (limited to 'src/ui/widget')
-rw-r--r--src/ui/widget/spin-button-tool-item.cpp13
-rw-r--r--src/ui/widget/spin-button-tool-item.h4
2 files changed, 11 insertions, 6 deletions
diff --git a/src/ui/widget/spin-button-tool-item.cpp b/src/ui/widget/spin-button-tool-item.cpp
index ecca051a4..2efb24ff9 100644
--- a/src/ui/widget/spin-button-tool-item.cpp
+++ b/src/ui/widget/spin-button-tool-item.cpp
@@ -484,10 +484,10 @@ SpinButtonToolItem::grab_button_focus()
}
void
-SpinButtonToolItem::set_custom_numeric_menu_items(std::vector<double>& values,
- std::vector<Glib::ustring>& labels)
+SpinButtonToolItem::set_custom_numeric_menu_data(std::vector<double>& values,
+ const std::vector<Glib::ustring>& labels)
{
- if(values.size() != labels.size()) {
+ if(values.size() != labels.size() && !labels.empty()) {
g_warning("Cannot add custom menu items. Value and label arrays are different sizes");
return;
}
@@ -497,7 +497,12 @@ SpinButtonToolItem::set_custom_numeric_menu_items(std::vector<double>& va
int i = 0;
for (auto value : values) {
- _custom_menu_data.push_back(std::make_pair(value, labels[i++]));
+ if(labels.empty()) {
+ _custom_menu_data.push_back(std::make_pair(value, ""));
+ }
+ else {
+ _custom_menu_data.push_back(std::make_pair(value, labels[i++]));
+ }
}
}
diff --git a/src/ui/widget/spin-button-tool-item.h b/src/ui/widget/spin-button-tool-item.h
index 90667da54..2dd0b2172 100644
--- a/src/ui/widget/spin-button-tool-item.h
+++ b/src/ui/widget/spin-button-tool-item.h
@@ -73,8 +73,8 @@ public:
void set_focus_widget(Gtk::Widget *widget);
void grab_button_focus();
- void set_custom_numeric_menu_items(std::vector<double>& values,
- std::vector<Glib::ustring>& labels);
+ void set_custom_numeric_menu_data(std::vector<double>& values,
+ const std::vector<Glib::ustring>& labels = std::vector<Glib::ustring>());
};
} // namespace Widget
} // namespace UI