diff --git a/data/styles/default/dark/symbols/shield-it-a-scaled.svg b/data/styles/default/dark/symbols/shield-it-a-scaled.svg new file mode 100644 index 000000000..1a207cdd4 --- /dev/null +++ b/data/styles/default/dark/symbols/shield-it-a-scaled.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/styles/default/dark/symbols/shield-it-a.svg b/data/styles/default/dark/symbols/shield-it-a.svg new file mode 100644 index 000000000..9a5796c80 --- /dev/null +++ b/data/styles/default/dark/symbols/shield-it-a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/styles/default/light/symbols/shield-it-a-scaled.svg b/data/styles/default/light/symbols/shield-it-a-scaled.svg new file mode 100644 index 000000000..eb314853f --- /dev/null +++ b/data/styles/default/light/symbols/shield-it-a-scaled.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data/styles/default/light/symbols/shield-it-a.svg b/data/styles/default/light/symbols/shield-it-a.svg new file mode 100644 index 000000000..e073b642e --- /dev/null +++ b/data/styles/default/light/symbols/shield-it-a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/libs/drape_frontend/apply_feature_functors.cpp b/libs/drape_frontend/apply_feature_functors.cpp index 3554eb240..8d930dba0 100644 --- a/libs/drape_frontend/apply_feature_functors.cpp +++ b/libs/drape_frontend/apply_feature_functors.cpp @@ -195,7 +195,7 @@ m2::PointF GetOffset(int offsetX, int offsetY) bool IsSymbolRoadShield(ftypes::RoadShield const & shield) { - return shield.m_type == ftypes::RoadShieldType::US_Interstate || shield.m_type == ftypes::RoadShieldType::US_Highway; + return shield.m_type == ftypes::RoadShieldType::US_Interstate || shield.m_type == ftypes::RoadShieldType::US_Highway || shield.m_type == ftypes::RoadShieldType::Italy_Autostrada; } std::string GetRoadShieldSymbolName(ftypes::RoadShield const & shield, double fontScale) @@ -206,6 +206,8 @@ std::string GetRoadShieldSymbolName(ftypes::RoadShield const & shield, double fo result = shield.m_name.size() <= 2 ? "shield-us-i-thin" : "shield-us-i-wide"; else if (shield.m_type == ftypes::RoadShieldType::US_Highway) result = shield.m_name.size() <= 2 ? "shield-us-hw-thin" : "shield-us-hw-wide"; + else if (shield.m_type == ftypes::RoadShieldType::Italy_Autostrada) + result = "shield-it-a"; else ASSERT(false, ("This shield type doesn't support symbols:", shield.m_type)); @@ -301,7 +303,8 @@ dp::Color GetRoadShieldTextColor(dp::Color const & baseColor, ftypes::RoadShield {RoadShieldType::Generic_Pill_Orange_Bordered, kRoadShieldBlackTextColor}, {RoadShieldType::US_Interstate, kRoadShieldWhiteTextColor}, {RoadShieldType::US_Highway, kRoadShieldBlackTextColor}, - {RoadShieldType::UK_Highway, kRoadShieldUKYellowTextColor}}; + {RoadShieldType::UK_Highway, kRoadShieldUKYellowTextColor}, + {RoadShieldType::Italy_Autostrada, kRoadShieldWhiteTextColor}}; if (auto const * cl = kColors.Find(shield.m_type); cl) return df::GetColorConstant(*cl); diff --git a/libs/indexer/road_shields_parser.cpp b/libs/indexer/road_shields_parser.cpp index bbd471fda..2ce29e6dd 100644 --- a/libs/indexer/road_shields_parser.cpp +++ b/libs/indexer/road_shields_parser.cpp @@ -473,7 +473,7 @@ class ItalyRoadShieldParser : public SimpleRoadShieldParser { public: explicit ItalyRoadShieldParser(std::string const & baseRoadNumber) - : SimpleRoadShieldParser(baseRoadNumber, {{"A", RoadShieldType::Generic_Green}, + : SimpleRoadShieldParser(baseRoadNumber, {{"A", RoadShieldType::Italy_Autostrada}, {"SS", RoadShieldType::Generic_Blue}, {"SR", RoadShieldType::Generic_Blue}, {"SP", RoadShieldType::Generic_Blue}}) @@ -877,6 +877,7 @@ std::string DebugPrint(RoadShieldType shieldType) case RoadShieldType::US_Interstate: return "US interstate"; case RoadShieldType::US_Highway: return "US highway"; case RoadShieldType::UK_Highway: return "UK highway"; + case RoadShieldType::Italy_Autostrada: return "Italy autostrada"; case RoadShieldType::Hidden: return "hidden"; case RoadShieldType::Count: CHECK(false, ("RoadShieldType::Count is not to be used as a type")); } diff --git a/libs/indexer/road_shields_parser.hpp b/libs/indexer/road_shields_parser.hpp index 5d6e5af23..65653d31d 100644 --- a/libs/indexer/road_shields_parser.hpp +++ b/libs/indexer/road_shields_parser.hpp @@ -36,6 +36,7 @@ enum class RoadShieldType US_Interstate, US_Highway, UK_Highway, + Italy_Autostrada, Hidden, Count };