From 965d71afc32981da4205b7b3189771acb0764e3a Mon Sep 17 00:00:00 2001 From: Daria Volvenkova Date: Tue, 28 Mar 2017 19:27:59 +0300 Subject: [PATCH] Transliteration allowability parameter added. --- coding/transliteration.hpp | 1 - drape_frontend/stylist.cpp | 4 ++-- drape_frontend/watch/feature_styler.cpp | 4 ++-- feature_list/feature_list.cpp | 2 +- generator/dumper.cpp | 2 +- indexer/drules_selector.cpp | 2 +- indexer/feature.cpp | 8 ++++---- indexer/feature.hpp | 4 ++-- map/address_finder.cpp | 2 +- map/framework.cpp | 4 ++-- 10 files changed, 16 insertions(+), 17 deletions(-) diff --git a/coding/transliteration.hpp b/coding/transliteration.hpp index 4d1f0eb7e2..04dd75b6c3 100644 --- a/coding/transliteration.hpp +++ b/coding/transliteration.hpp @@ -23,6 +23,5 @@ public: private: Transliteration() = default; - struct TransliteratorWrapper; std::map> m_transliterators; }; diff --git a/drape_frontend/stylist.cpp b/drape_frontend/stylist.cpp index 2bf615bf09..36ed93d6a4 100644 --- a/drape_frontend/stylist.cpp +++ b/drape_frontend/stylist.cpp @@ -229,9 +229,9 @@ void CaptionDescription::Init(FeatureType const & f, bool const auxCaptionExists) { if (auxCaptionExists || type == feature::GEOM_LINE) - f.GetPreferredNames(m_mainText, m_auxText); + f.GetPreferredNames(true /* allowTranslit */, m_mainText, m_auxText); else - f.GetReadableName(m_mainText); + f.GetReadableName(true /* allowTranslit */, m_mainText); m_roadNumber = f.GetRoadNumber(); m_houseNumber = f.GetHouseNumber(); diff --git a/drape_frontend/watch/feature_styler.cpp b/drape_frontend/watch/feature_styler.cpp index 0a104f07ed..989c19d56e 100644 --- a/drape_frontend/watch/feature_styler.cpp +++ b/drape_frontend/watch/feature_styler.cpp @@ -75,7 +75,7 @@ FeatureStyler::FeatureStyler(FeatureType const & f, m_geometryType = type.first; m_isCoastline = type.second; - f.GetPreferredNames(m_primaryText, m_secondaryText); + f.GetPreferredNames(false /* allowTranslit */, m_primaryText, m_secondaryText); // Draw only one text for features on the World zoom level in user's native language. if (zoom <= scales::GetUpperWorldScale() && !m_secondaryText.empty()) @@ -215,7 +215,7 @@ FeatureStyler::FeatureStyler(FeatureType const & f, // User's language name is better if we don't have secondary text draw rule. if (!hasSecondaryText && !m_secondaryText.empty() && (m_geometryType != feature::GEOM_LINE)) { - f.GetReadableName(m_primaryText); + f.GetReadableName(false /* allowTranslit */, m_primaryText); if (m_primaryText == m_secondaryText) m_secondaryText.clear(); } diff --git a/feature_list/feature_list.cpp b/feature_list/feature_list.cpp index be290dc201..1662395705 100644 --- a/feature_list/feature_list.cpp +++ b/feature_list/feature_list.cpp @@ -192,7 +192,7 @@ public: string const & mwmName = f.GetID().GetMwmName(); string name, secondary; - f.GetPreferredNames(name, secondary); + f.GetPreferredNames(false /* allowTranslit */, name, secondary); string const & uid = BuildUniqueId(ll, name); string const & lat = strings::to_string_with_digits_after_comma(ll.lat, 6); string const & lon = strings::to_string_with_digits_after_comma(ll.lon, 6); diff --git a/generator/dumper.cpp b/generator/dumper.cpp index 3d25aea4c5..d34bbdd3bd 100644 --- a/generator/dumper.cpp +++ b/generator/dumper.cpp @@ -70,7 +70,7 @@ namespace feature { ++m_totalCount; string s1, s2; - f.GetPreferredNames(s1, s2); + f.GetPreferredNames(false /* allowTranslit */, s1, s2); if (!s1.empty()) ++m_namesCount; diff --git a/indexer/drules_selector.cpp b/indexer/drules_selector.cpp index 99c0e1f3c9..d515dc6c56 100644 --- a/indexer/drules_selector.cpp +++ b/indexer/drules_selector.cpp @@ -106,7 +106,7 @@ bool GetPopulation(FeatureType const & ft, uint64_t & population) // Feature tag value evaluator for tag 'name' bool GetName(FeatureType const & ft, string & name) { - ft.GetReadableName(name); + ft.GetReadableName(false /* allowTranslit */, name); return true; } diff --git a/indexer/feature.cpp b/indexer/feature.cpp index 0c1b23d506..fe5cb49aa1 100644 --- a/indexer/feature.cpp +++ b/indexer/feature.cpp @@ -491,7 +491,7 @@ FeatureType::geom_stat_t FeatureType::GetTrianglesSize(int scale) const return geom_stat_t(sz, m_triangles.size()); } -void FeatureType::GetPreferredNames(string & primary, string & secondary) const +void FeatureType::GetPreferredNames(bool allowTranslit, string & primary, string & secondary) const { if (!HasName()) return; @@ -503,11 +503,11 @@ void FeatureType::GetPreferredNames(string & primary, string & secondary) const ParseCommon(); auto const deviceLang = StringUtf8Multilang::GetLangIndex(languages::GetCurrentNorm()); - ::GetPreferredNames(mwmInfo->GetRegionData(), GetNames(), deviceLang, true /* allowTranslit */, + ::GetPreferredNames(mwmInfo->GetRegionData(), GetNames(), deviceLang, allowTranslit, primary, secondary); } -void FeatureType::GetReadableName(string & name) const +void FeatureType::GetReadableName(bool allowTranslit, string & name) const { if (!HasName()) return; @@ -519,7 +519,7 @@ void FeatureType::GetReadableName(string & name) const ParseCommon(); auto const deviceLang = StringUtf8Multilang::GetLangIndex(languages::GetCurrentNorm()); - ::GetReadableName(mwmInfo->GetRegionData(), GetNames(), deviceLang, true /* allowTranslit */, name); + ::GetReadableName(mwmInfo->GetRegionData(), GetNames(), deviceLang, allowTranslit, name); } string FeatureType::GetHouseNumber() const diff --git a/indexer/feature.hpp b/indexer/feature.hpp index d580d5eedb..2716cd9827 100644 --- a/indexer/feature.hpp +++ b/indexer/feature.hpp @@ -285,9 +285,9 @@ public: /// @param[out] intName optionally choosen from tags "name:" by the algorithm //@{ /// Just get feature names. - void GetPreferredNames(string & defaultName, string & intName) const; + void GetPreferredNames(bool allowTranslit, string & defaultName, string & intName) const; /// Get one most suitable name for user. - void GetReadableName(string & name) const; + void GetReadableName(bool allowTranslit, string & name) const; static int8_t const DEFAULT_LANG = StringUtf8Multilang::kDefaultCode; bool GetName(int8_t lang, string & name) const; diff --git a/map/address_finder.cpp b/map/address_finder.cpp index 825dce4609..451d5fcd1f 100644 --- a/map/address_finder.cpp +++ b/map/address_finder.cpp @@ -502,7 +502,7 @@ search::AddressInfo Framework::GetFeatureAddressInfo(FeatureType & ft) const // TODO(vng): Why AddressInfo is responsible for types and names? Refactor out. string defaultName, intName; - ft.GetPreferredNames(defaultName, intName); + ft.GetPreferredNames(false /* allowTranslit */, defaultName, intName); info.m_name = defaultName.empty() ? intName : defaultName; info.m_types = GetPrintableFeatureTypes(ft); diff --git a/map/framework.cpp b/map/framework.cpp index 7c5705414c..e9f67426d8 100644 --- a/map/framework.cpp +++ b/map/framework.cpp @@ -2975,7 +2975,7 @@ bool Framework::ParseEditorDebugCommand(search::SearchParams const & params) } string name; - ft.GetReadableName(name); + ft.GetReadableName(false /* allowTranslit */, name); feature::TypesHolder const types(ft); search::Result::Metadata smd; results.AddResultNoChecks(search::Result(fid, feature::GetCenter(ft), name, edit.second, @@ -3006,7 +3006,7 @@ WARN_UNUSED_RESULT bool LocalizeStreet(Index const & index, FeatureID const & fi return false; ft.GetName(StringUtf8Multilang::kDefaultCode, result.m_defaultName); - ft.GetReadableName(result.m_localizedName); + ft.GetReadableName(false /* allowTranslit */, result.m_localizedName); if (result.m_localizedName == result.m_defaultName) result.m_localizedName.clear(); return true;