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:
authorDmitry Yunitsky <dmitry.yunitsky@gmail.com>2016-04-26 13:54:56 +0300
committerDmitry Yunitsky <dmitry.yunitsky@gmail.com>2016-04-26 13:54:56 +0300
commitae6f483efd9323cdbb4ce7b65a3e49ed5d9d8615 (patch)
treea56985979729f5677b9001d7bde1ec5d29de47e3 /indexer/osm_editor.cpp
parentae9c956344505acea551c848d8a8486806be6553 (diff)
parenta91145f3c65f0dd8731df34116fee470f9c7b374 (diff)
Merge pull request #2919 from mgsergio/feature-upload-status
[Editor] RollBackChanges; Get upload status.
Diffstat (limited to 'indexer/osm_editor.cpp')
-rw-r--r--indexer/osm_editor.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/indexer/osm_editor.cpp b/indexer/osm_editor.cpp
index cf1e32cc1e..6c10850a1a 100644
--- a/indexer/osm_editor.cpp
+++ b/indexer/osm_editor.cpp
@@ -329,6 +329,11 @@ Editor::FeatureStatus Editor::GetFeatureStatus(MwmSet::MwmId const & mwmId, uint
return featureInfo->m_status;
}
+bool Editor::IsFeatureUploaded(MwmSet::MwmId const & mwmId, uint32_t index) const
+{
+ return GetFeatureTypeInfo(mwmId, index)->m_uploadStatus == kUploaded;
+}
+
void Editor::DeleteFeature(FeatureType const & feature)
{
FeatureID const & fid = feature.GetID();
@@ -456,6 +461,15 @@ Editor::SaveResult Editor::SaveEditedFeature(EditableMapObject const & emo)
return savedSuccessfully ? SavedSuccessfully : NoFreeSpaceError;
}
+bool Editor::RollBackChanges(FeatureID const & fid)
+{
+ if (IsFeatureUploaded(fid.m_mwmId, fid.m_index))
+ return false;
+
+ RemoveFeatureFromStorageIfExists(fid.m_mwmId, fid.m_index);
+ return true;
+}
+
void Editor::ForEachFeatureInMwmRectAndScale(MwmSet::MwmId const & id,
TFeatureIDFunctor const & f,
m2::RectD const & rect,