Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIlya Zverev <ilya@zverev.info>2016-08-22 13:03:38 +0300
committerGitHub <noreply@github.com>2016-08-22 13:03:38 +0300
commit39103b30cf1fcb94801d6725f60897c85df45304 (patch)
tree02a45623a111aa0a943f6d9ba19429d3ef0c1c90 /indexer/editable_map_object.cpp
parent627d66722a15982edf6a9f914fd316604f857d92 (diff)
parentc0602426408bf5aaa1717af437d3978b88a93649 (diff)
Merge pull request #4080 from milchakov/place_page_wifi
[editor] populate FMD_INTERNET from type for MapObjects
Diffstat (limited to 'indexer/editable_map_object.cpp')
-rw-r--r--indexer/editable_map_object.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/indexer/editable_map_object.cpp b/indexer/editable_map_object.cpp
index e9f819de2e..e7866b6a12 100644
--- a/indexer/editable_map_object.cpp
+++ b/indexer/editable_map_object.cpp
@@ -30,7 +30,7 @@ bool ExtractName(StringUtf8Multilang const & names, int8_t const langCode,
if (result.end() != it)
return false;
-
+
string name;
names.GetString(langCode, name);
result.emplace_back(langCode, name);
@@ -49,7 +49,7 @@ size_t PushMwmLanguages(StringUtf8Multilang const & names, vector<int8_t> const
if (ExtractName(names, mwmLanguages[i], result))
++count;
}
-
+
return count;
}
@@ -141,7 +141,7 @@ NamesDataSource EditableMapObject::GetNamesDataSource(StringUtf8Multilang const
// Push english name.
if (ExtractName(source, StringUtf8Multilang::kEnglishCode, names))
++mandatoryCount;
-
+
// Push user's language.
if (ExtractName(source, userLangCode, names))
++mandatoryCount;
@@ -151,7 +151,7 @@ NamesDataSource EditableMapObject::GetNamesDataSource(StringUtf8Multilang const
// Exclude default name.
if (StringUtf8Multilang::kDefaultCode == code)
return true;
-
+
auto const mandatoryNamesEnd = names.begin() + mandatoryCount;
// Exclude languages which are already in container (languages with top priority).
auto const it = find_if(
@@ -160,7 +160,7 @@ NamesDataSource EditableMapObject::GetNamesDataSource(StringUtf8Multilang const
if (mandatoryNamesEnd == it)
names.emplace_back(code, name);
-
+
return true;
});
@@ -246,7 +246,7 @@ void EditableMapObject::SetType(uint32_t featureType)
// TODO(mgsergio): Replace by correct sorting from editor's config.
copy.SortBySpec();
m_types.Remove(*copy.begin());
- m_types.operator ()(featureType);
+ m_types.Add(featureType);
}
}
@@ -295,6 +295,13 @@ void EditableMapObject::SetWebsite(string website)
void EditableMapObject::SetInternet(Internet internet)
{
m_metadata.Set(feature::Metadata::FMD_INTERNET, DebugPrint(internet));
+
+ static auto const wifiType = classif().GetTypeByPath({"internet_access", "wlan"});
+
+ if (m_types.Has(wifiType) && internet != Internet::Wlan)
+ m_types.Remove(wifiType);
+ else if (!m_types.Has(wifiType) && internet == Internet::Wlan)
+ m_types.Add(wifiType);
}
void EditableMapObject::SetStars(int stars)