From 62f20457cf5ee85ac42dcd24b564ea68c1b3441d Mon Sep 17 00:00:00 2001 From: Patrick Storz Date: Thu, 1 Aug 2019 22:15:48 +0200 Subject: Add function to get proper translation within context of Parameter --- src/extension/prefdialog/parameter-notebook.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/extension/prefdialog/parameter-notebook.cpp') diff --git a/src/extension/prefdialog/parameter-notebook.cpp b/src/extension/prefdialog/parameter-notebook.cpp index 6e733a4b4..db4120d9e 100644 --- a/src/extension/prefdialog/parameter-notebook.cpp +++ b/src/extension/prefdialog/parameter-notebook.cpp @@ -20,7 +20,6 @@ #include #include -#include #include @@ -171,7 +170,7 @@ ParamNotebook::ParamNotebook(Inkscape::XML::Node *xml, Inkscape::Extension::Exte if (_value.empty()) { if (!pages.empty()) { - _value = pages[0]->name(); + _value = pages[0]->_name; } } } @@ -202,7 +201,7 @@ const Glib::ustring& ParamNotebook::set(const int in, SPDocument * /*doc*/, Inks ParamNotebookPage *page = pages[i]; if (page) { - _value = page->name(); + _value = page->_name; gchar *pref_name = this->pref_name(); Inkscape::Preferences *prefs = Inkscape::Preferences::get(); @@ -306,9 +305,17 @@ Gtk::Widget *ParamNotebook::get_widget(SPDocument *doc, Inkscape::XML::Node *nod int selected_page = -1; for (auto page : pages) { current_page++; + Gtk::Widget *page_widget = page->get_widget(doc, node, changeSignal); - notebook->append_page(*page_widget, _(page->get_text())); - if (_value == page->name()) { + + Glib::ustring page_text = page->_text; + if (_translatable != NO) { // translate unless explicitly marked untranslatable + page_text = page->get_translation(page_text.c_str()); + } + + notebook->append_page(*page_widget, page_text); + + if (_value == page->_name) { selected_page = current_page; } } -- cgit v1.2.3