vcl/source/gdi/WidgetDefinitionReader.cxx | 43 ++++++++---------------------- 1 file changed, 12 insertions(+), 31 deletions(-)
New commits: commit 4b6e00f08afb2968a1a5731729fc266b0e708ab2 Author: Tomaž Vajngerl <tomaz.vajng...@collabora.co.uk> AuthorDate: Tue Feb 19 13:55:00 2019 +0100 Commit: Tomaž Vajngerl <qui...@gmail.com> CommitDate: Tue Mar 5 14:50:15 2019 +0100 Use a unordered_map for mapping of xml element to control type Change-Id: Id0409f35a21307ed41a0da27c625c4b7784811d6 Reviewed-on: https://gerrit.libreoffice.org/68718 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <qui...@gmail.com> diff --git a/vcl/source/gdi/WidgetDefinitionReader.cxx b/vcl/source/gdi/WidgetDefinitionReader.cxx index 51b07f0ba6fe..799b3dda6187 100644 --- a/vcl/source/gdi/WidgetDefinitionReader.cxx +++ b/vcl/source/gdi/WidgetDefinitionReader.cxx @@ -132,39 +132,20 @@ ControlPart xmlStringToControlPart(OString const& sPart) bool getControlTypeForXmlString(OString const& rString, ControlType& reType) { - bool bReturn = false; - if (rString == "pushbutton") - { - reType = ControlType::Pushbutton; - bReturn = true; - } - else if (rString == "radiobutton") - { - reType = ControlType::Radiobutton; - bReturn = true; - } - else if (rString == "editbox") - { - reType = ControlType::Editbox; - bReturn = true; - } - else if (rString == "checkbox") - { - reType = ControlType::Checkbox; - bReturn = true; - } - else if (rString == "combobox") - { - reType = ControlType::Combobox; - bReturn = true; - } - else if (rString == "spinbox") + static std::unordered_map<OString, ControlType> aPartMap = { + { "pushbutton", ControlType::Pushbutton }, { "radiobutton", ControlType::Radiobutton }, + { "checkbox", ControlType::Checkbox }, { "combobox", ControlType::Combobox }, + { "editbox", ControlType::Editbox }, { "scrollbar", ControlType::Scrollbar }, + { "spinbox", ControlType::Spinbox }, + }; + + auto const& rIterator = aPartMap.find(rString); + if (rIterator != aPartMap.end()) { - reType = ControlType::Spinbox; - bReturn = true; + reType = rIterator->second; + return true; } - - return bReturn; + return false; } } // end anonymous namespace _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits