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:
authorDaria Volvenkova <d.volvenkova@corp.mail.ru>2019-03-21 15:18:23 +0300
committerRoman Kuznetsov <r.kuznetsow@gmail.com>2019-03-25 15:47:46 +0300
commit3e73c24a90fc97b10135fcaf0bd681c7b29211b9 (patch)
tree152ae7711bceb95edcce2118c23d1c801293a9c0
parentf279190bf7432e72709156f1dfd57deaa5da81d1 (diff)
Review fixes.
-rw-r--r--drape_frontend/drape_engine.cpp2
-rw-r--r--drape_frontend/user_mark_shapes.cpp2
-rw-r--r--drape_frontend/user_mark_shapes.hpp2
-rw-r--r--drape_frontend/user_marks_provider.hpp2
-rw-r--r--map/bookmark_manager.cpp4
-rw-r--r--map/framework.cpp2
-rw-r--r--map/place_page_info.cpp8
-rw-r--r--map/routing_manager.cpp13
-rw-r--r--map/routing_manager.hpp1
-rw-r--r--map/routing_mark.cpp26
-rw-r--r--map/routing_mark.hpp16
-rw-r--r--map/user_mark.hpp2
12 files changed, 50 insertions, 30 deletions
diff --git a/drape_frontend/drape_engine.cpp b/drape_frontend/drape_engine.cpp
index 5f1b23e92c..d270f90e49 100644
--- a/drape_frontend/drape_engine.cpp
+++ b/drape_frontend/drape_engine.cpp
@@ -853,7 +853,7 @@ drape_ptr<UserMarkRenderParams> DrapeEngine::GenerateMarkRenderInfo(UserPointMar
renderInfo->m_minZoom = mark->GetMinZoom();
renderInfo->m_minTitleZoom = mark->GetMinTitleZoom();
renderInfo->m_isVisible = mark->IsVisible();
- renderInfo->m_autoVisibleMinZoom = mark->GetAutoVisibleMinZoom();
+ renderInfo->m_alwaysVisibleMinZoom = mark->GetAlwaysVisibleMinZoom();
renderInfo->m_pivot = mark->GetPivot();
renderInfo->m_pixelOffset = mark->GetPixelOffset();
renderInfo->m_titleDecl = mark->GetTitleDecl();
diff --git a/drape_frontend/user_mark_shapes.cpp b/drape_frontend/user_mark_shapes.cpp
index 8f2b075c83..89cbab0a60 100644
--- a/drape_frontend/user_mark_shapes.cpp
+++ b/drape_frontend/user_mark_shapes.cpp
@@ -362,7 +362,7 @@ void CacheUserMarks(ref_ptr<dp::GraphicsContext> context, TileKey const & tileKe
continue;
UserMarkRenderParams & renderInfo = *it->second;
- if (!renderInfo.m_isVisible && renderInfo.m_autoVisibleMinZoom > tileKey.m_zoomLevel)
+ if (!renderInfo.m_isVisible && renderInfo.m_alwaysVisibleMinZoom > tileKey.m_zoomLevel)
continue;
m2::PointD const tileCenter = tileKey.GetGlobalRect().Center();
diff --git a/drape_frontend/user_mark_shapes.hpp b/drape_frontend/user_mark_shapes.hpp
index 184a52d52c..fab562887b 100644
--- a/drape_frontend/user_mark_shapes.hpp
+++ b/drape_frontend/user_mark_shapes.hpp
@@ -39,7 +39,7 @@ struct UserMarkRenderParams
bool m_hasCreationAnimation = false;
bool m_justCreated = false;
bool m_isVisible = true;
- int m_autoVisibleMinZoom = std::numeric_limits<int>::max();
+ int m_alwaysVisibleMinZoom = std::numeric_limits<int>::max();
FeatureID m_featureId;
bool m_isMarkAboveText = false;
};
diff --git a/drape_frontend/user_marks_provider.hpp b/drape_frontend/user_marks_provider.hpp
index 2740495bd9..5f6d729716 100644
--- a/drape_frontend/user_marks_provider.hpp
+++ b/drape_frontend/user_marks_provider.hpp
@@ -65,7 +65,7 @@ public:
virtual float GetDepth() const = 0;
virtual DepthLayer GetDepthLayer() const = 0;
virtual bool IsVisible() const = 0;
- virtual int GetAutoVisibleMinZoom() const = 0;
+ virtual int GetAlwaysVisibleMinZoom() const = 0;
virtual drape_ptr<TitlesInfo> GetTitleDecl() const = 0;
virtual drape_ptr<SymbolNameZoomInfo> GetSymbolNames() const = 0;
virtual drape_ptr<SymbolNameZoomInfo> GetBadgeNames() const = 0;
diff --git a/map/bookmark_manager.cpp b/map/bookmark_manager.cpp
index c0f8f6fc01..d64e7bee1e 100644
--- a/map/bookmark_manager.cpp
+++ b/map/bookmark_manager.cpp
@@ -1494,7 +1494,7 @@ private:
UserMark const * BookmarkManager::FindNearestUserMark(m2::AnyRectD const & rect) const
{
CHECK_THREAD_CHECKER(m_threadChecker, ());
- return FindNearestUserMark([&rect](UserMark::Type) { return rect; }, [&rect](UserMark::Type) { return false; });
+ return FindNearestUserMark([&rect](UserMark::Type) { return rect; }, [](UserMark::Type) { return false; });
}
UserMark const * BookmarkManager::FindNearestUserMark(TTouchRectHolder const & holder,
@@ -1508,7 +1508,7 @@ UserMark const * BookmarkManager::FindNearestUserMark(TTouchRectHolder const & h
finder(UserMark::Type::API);
if (!hasFound)
{
- for (auto & pair : m_categories)
+ for (auto const & pair : m_categories)
finder(pair.first);
}
return finder.GetFoundMark();
diff --git a/map/framework.cpp b/map/framework.cpp
index bbff55db6c..2fc7d57876 100644
--- a/map/framework.cpp
+++ b/map/framework.cpp
@@ -2527,7 +2527,7 @@ UserMark const * Framework::FindUserMarkInTapPosition(df::TapInfo const & tapInf
[this](UserMark::Type type)
{
if (type == UserMark::Type::ROAD_WARNING)
- return GetDrawScale() < RoadWarningMark::kAutoVisibleMinZoom;
+ return GetDrawScale() < RoadWarningMark::kAlwaysVisibleMinZoom;
return false;
});
return mark;
diff --git a/map/place_page_info.cpp b/map/place_page_info.cpp
index 53350d5735..01fee201c7 100644
--- a/map/place_page_info.cpp
+++ b/map/place_page_info.cpp
@@ -19,6 +19,8 @@
#include "platform/preferred_languages.hpp"
#include "platform/settings.hpp"
+#include "base/assert.hpp"
+
#include <sstream>
#include "private.h"
@@ -336,11 +338,11 @@ void Info::SetPartnerIndex(int index)
void Info::SetRoadType(FeatureType & ft, RoadWarningMarkType type, std::string const & localizedType,
std::string const & distance)
{
- CHECK(type != RoadWarningMarkType::Count, ());
+ CHECK_NOT_EQUAL(type, RoadWarningMarkType::Count, ());
m_roadType = type;
std::vector<std::string> subtitle;
- if (type == RoadWarningMarkType::Paid)
+ if (type == RoadWarningMarkType::Toll)
{
std::vector<std::string> title;
auto shields = ftypes::GetRoadShields(ft);
@@ -361,7 +363,7 @@ void Info::SetRoadType(FeatureType & ft, RoadWarningMarkType type, std::string c
else
subtitle.push_back(localizedType);
}
- else if (type == RoadWarningMarkType::Unpaved)
+ else if (type == RoadWarningMarkType::Dirty)
{
m_uiTitle = localizedType;
subtitle.push_back(distance);
diff --git a/map/routing_manager.cpp b/map/routing_manager.cpp
index d6eabb19b3..cf6b33ae05 100644
--- a/map/routing_manager.cpp
+++ b/map/routing_manager.cpp
@@ -214,11 +214,12 @@ VehicleType GetVehicleType(RouterType routerType)
RoadWarningMarkType GetRoadType(RoutingOptions::Road road)
{
if (road == RoutingOptions::Road::Toll)
- return RoadWarningMarkType::Paid;
+ return RoadWarningMarkType::Toll;
if (road == RoutingOptions::Road::Ferry)
return RoadWarningMarkType::Ferry;
if (road == RoutingOptions::Road::Dirty)
- return RoadWarningMarkType::Unpaved;
+ return RoadWarningMarkType::Dirty;
+
CHECK(false, ("Invalid road type to avoid:", road));
return RoadWarningMarkType::Count;
}
@@ -241,6 +242,7 @@ drape_ptr<df::Subroute> CreateDrapeSubroute(vector<RouteSegment> const & segment
points.push_back(startPt);
for (auto const & s : segments)
points.push_back(s.GetJunction().GetPoint());
+
if (points.size() < 2)
{
LOG(LWARNING, ("Invalid subroute. Points number =", points.size()));
@@ -532,7 +534,7 @@ void RoutingManager::RemoveRoute(bool deactivateFollowing)
}
}
-void RoutingManager::CollectRoadWarnings(std::vector<routing::RouteSegment> const & segments,
+void RoutingManager::CollectRoadWarnings(vector<routing::RouteSegment> const & segments,
m2::PointD const & startPt, double baseDistance,
GetMwmIdFn const & getMwmIdFn, RoadWarningsCollection & roadWarnings)
{
@@ -551,7 +553,10 @@ void RoutingManager::CollectRoadWarnings(std::vector<routing::RouteSegment> cons
if (currentType != lastType)
{
if (isWarnedType(lastType))
+ {
+ ASSERT(!roadWarnings[lastType].empty(), ());
roadWarnings[lastType].back().m_distance = segments[i].GetDistFromBeginningMeters() - startDistance;
+ }
if (isWarnedType(currentType))
{
@@ -695,7 +700,7 @@ bool RoutingManager::InsertRoute(Route const & route)
if (!roadWarnings.empty())
{
- CreateRoadWarningMarks(std::move(roadWarnings));
+ CreateRoadWarningMarks(move(roadWarnings));
return true;
}
return false;
diff --git a/map/routing_manager.hpp b/map/routing_manager.hpp
index 0641c7ea23..15ddc06558 100644
--- a/map/routing_manager.hpp
+++ b/map/routing_manager.hpp
@@ -291,6 +291,7 @@ public:
void CancelPreviewMode();
private:
+ /// \returns true if the route has warnings.
bool InsertRoute(routing::Route const & route);
struct RoadInfo
diff --git a/map/routing_mark.cpp b/map/routing_mark.cpp
index 400d959be9..f7f39841b5 100644
--- a/map/routing_mark.cpp
+++ b/map/routing_mark.cpp
@@ -619,9 +619,7 @@ dp::Anchor SpeedCameraMark::GetAnchor() const
RoadWarningMark::RoadWarningMark(m2::PointD const & ptOrg)
: UserMark(ptOrg, Type::ROAD_WARNING)
-{
-
-}
+{}
void RoadWarningMark::SetIndex(uint32_t index)
{
@@ -658,9 +656,9 @@ drape_ptr<df::UserPointMark::SymbolNameZoomInfo> RoadWarningMark::GetSymbolNames
std::string symbolName;
switch (m_type)
{
+ case RoadWarningMarkType::Toll: symbolName = "paid_road"; break;
case RoadWarningMarkType::Ferry: symbolName = "ferry"; break;
- case RoadWarningMarkType::Paid: symbolName = "paid_road"; break;
- case RoadWarningMarkType::Unpaved: symbolName = "unpaved_road"; break;
+ case RoadWarningMarkType::Dirty: symbolName = "unpaved_road"; break;
case RoadWarningMarkType::Count: CHECK(false, ()); break;
}
auto symbol = make_unique_dp<SymbolNameZoomInfo>();
@@ -680,10 +678,22 @@ std::string RoadWarningMark::GetLocalizedRoadWarningType(RoadWarningMarkType typ
{
switch (type)
{
+ case RoadWarningMarkType::Toll: return platform::GetLocalizedString("toll_road");
case RoadWarningMarkType::Ferry: return platform::GetLocalizedString("ferry_crossing");
- case RoadWarningMarkType::Paid: return platform::GetLocalizedString("toll_road");
- case RoadWarningMarkType::Unpaved: return platform::GetLocalizedString("unpaved_road");
- case RoadWarningMarkType::Count: CHECK(false, ()); break;
+ case RoadWarningMarkType::Dirty: return platform::GetLocalizedString("unpaved_road");
+ case RoadWarningMarkType::Count: CHECK(false, ("Invalid road warning mark type", type)); break;
}
return {};
}
+
+std::string DebugPrint(RoadWarningMarkType type)
+{
+ switch (type)
+ {
+ case RoadWarningMarkType::Toll: return "Toll";
+ case RoadWarningMarkType::Ferry: return "Ferry";
+ case RoadWarningMarkType::Dirty: return "Dirty";
+ case RoadWarningMarkType::Count: return "Count";
+ }
+ UNREACHABLE();
+}
diff --git a/map/routing_mark.hpp b/map/routing_mark.hpp
index 8194bdc159..8745e0e3b1 100644
--- a/map/routing_mark.hpp
+++ b/map/routing_mark.hpp
@@ -197,17 +197,17 @@ private:
enum class RoadWarningMarkType : uint8_t
{
- // Do not change the order!
- Unpaved,
- Paid,
- Ferry,
- Count
+ // Do not change the order, it uses in platforms.
+ Toll = 0,
+ Ferry = 1,
+ Dirty = 2,
+ Count = 3
};
class RoadWarningMark : public UserMark
{
public:
- static int constexpr kAutoVisibleMinZoom = 13;
+ static int constexpr kAlwaysVisibleMinZoom = 13;
explicit RoadWarningMark(m2::PointD const & ptOrg);
@@ -235,7 +235,7 @@ public:
drape_ptr<ColoredSymbolZoomInfo> GetColoredSymbols() const override;
- int GetAutoVisibleMinZoom() const override { return kAutoVisibleMinZoom; }
+ int GetAlwaysVisibleMinZoom() const override { return kAlwaysVisibleMinZoom; }
static std::string GetLocalizedRoadWarningType(RoadWarningMarkType type);
@@ -246,3 +246,5 @@ private:
std::string m_distance;
bool m_isVisible = true;
};
+
+std::string DebugPrint(RoadWarningMarkType type);
diff --git a/map/user_mark.hpp b/map/user_mark.hpp
index a20b8a44a5..8933e9e08a 100644
--- a/map/user_mark.hpp
+++ b/map/user_mark.hpp
@@ -61,7 +61,7 @@ public:
bool IsDirty() const override { return m_isDirty; }
void ResetChanges() const override { m_isDirty = false; }
bool IsVisible() const override { return true; }
- int GetAutoVisibleMinZoom() const override { return std::numeric_limits<int>::max(); }
+ int GetAlwaysVisibleMinZoom() const override { return std::numeric_limits<int>::max(); }
m2::PointD const & GetPivot() const override;
m2::PointD GetPixelOffset() const override { return {}; }
dp::Anchor GetAnchor() const override { return dp::Center; }