[ios] Added real data to navigation dashboard.
|
@ -9,6 +9,7 @@
|
|||
#import "MWMSideMenuManager.h"
|
||||
|
||||
#include "map/user_mark.hpp"
|
||||
#include "platform/location.hpp"
|
||||
|
||||
@class MapViewController;
|
||||
|
||||
|
@ -39,7 +40,11 @@
|
|||
@property (nonatomic, readonly) BOOL isDirectionViewShown;
|
||||
|
||||
- (void)dismissPlacePage;
|
||||
- (void)stopBuildingRoute;
|
||||
- (void)showPlacePageWithUserMark:(unique_ptr<UserMarkCopy>)userMark;
|
||||
|
||||
#pragma mark - MWMNavigationDashboardManager
|
||||
|
||||
- (void)setupRoutingDashboard:(location::FollowingInfo const &)info;
|
||||
- (void)routingReady;
|
||||
|
||||
@end
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
//
|
||||
|
||||
#import "Framework.h"
|
||||
#import "MapsAppDelegate.h"
|
||||
#import "MapViewController.h"
|
||||
#import "MWMLocationButton.h"
|
||||
#import "MWMMapViewControlsManager.h"
|
||||
|
@ -16,6 +17,7 @@
|
|||
#import "MWMSideMenuManager.h"
|
||||
#import "MWMSideMenuManagerDelegate.h"
|
||||
#import "MWMZoomButtons.h"
|
||||
#import "RouteState.h"
|
||||
|
||||
@interface MWMMapViewControlsManager () <MWMPlacePageViewManagerProtocol, MWMNavigationDashboardManagerDelegate, MWMSideMenuManagerProtocol>
|
||||
|
||||
|
@ -27,6 +29,7 @@
|
|||
|
||||
@property (weak, nonatomic) MapViewController * ownerController;
|
||||
|
||||
@property (nonatomic) BOOL disableStandbyOnRouteFollowing;
|
||||
@property (nonatomic) m2::PointD routeDestination;
|
||||
|
||||
@end
|
||||
|
@ -72,11 +75,6 @@
|
|||
[self.placePageManager showPlacePageWithUserMark:std::move(userMark)];
|
||||
}
|
||||
|
||||
- (void)stopBuildingRoute
|
||||
{
|
||||
[self.placePageManager stopBuildingRoute];
|
||||
}
|
||||
|
||||
#pragma mark - MWMSideMenuManagerProtocol
|
||||
|
||||
- (void)sideMenuDidUpdateLayout
|
||||
|
@ -106,16 +104,20 @@
|
|||
{
|
||||
self.routeDestination = destination;
|
||||
// Determine route type
|
||||
enum MWMNavigationRouteType type = MWMNavigationRouteTypeVehicle;
|
||||
[self buildRouteWithType:type];
|
||||
[self buildRouteWithType:GetFramework().GetRouter()];
|
||||
}
|
||||
|
||||
#pragma mark - MWMNavigationDashboardManager
|
||||
|
||||
- (void)buildRouteWithType:(enum MWMNavigationRouteType)type
|
||||
- (void)setupRoutingDashboard:(location::FollowingInfo const &)info
|
||||
{
|
||||
[self.navigationManager setupDashboard:info];
|
||||
}
|
||||
|
||||
- (void)buildRouteWithType:(enum routing::RouterType)type
|
||||
{
|
||||
GetFramework().BuildRoute(self.routeDestination, 0 /* timeoutSec */);
|
||||
self.navigationManager.state = MWMNavigationDashboardStatePlanning;
|
||||
// GetFramework().BuildRoute(self.routeDestination, 0 /* timeoutSec */);
|
||||
}
|
||||
|
||||
- (void)navigationDashBoardDidUpdate
|
||||
|
@ -128,6 +130,37 @@
|
|||
}];
|
||||
}
|
||||
|
||||
- (void)didStartFollowing
|
||||
{
|
||||
self.zoomHidden = NO;
|
||||
GetFramework().FollowRoute();
|
||||
self.disableStandbyOnRouteFollowing = YES;
|
||||
// [RouteState save];
|
||||
}
|
||||
|
||||
- (void)didCancelRouting
|
||||
{
|
||||
GetFramework().CloseRouting();
|
||||
self.disableStandbyOnRouteFollowing = NO;
|
||||
// [RouteState remove];
|
||||
}
|
||||
|
||||
- (void)routingReady
|
||||
{
|
||||
self.navigationManager.state = MWMNavigationDashboardStateReady;
|
||||
}
|
||||
|
||||
- (void)setDisableStandbyOnRouteFollowing:(BOOL)disableStandbyOnRouteFollowing
|
||||
{
|
||||
if (_disableStandbyOnRouteFollowing == disableStandbyOnRouteFollowing)
|
||||
return;
|
||||
_disableStandbyOnRouteFollowing = disableStandbyOnRouteFollowing;
|
||||
if (disableStandbyOnRouteFollowing)
|
||||
[[MapsAppDelegate theApp] disableStandby];
|
||||
else
|
||||
[[MapsAppDelegate theApp] enableStandby];
|
||||
}
|
||||
|
||||
#pragma mark - Properties
|
||||
|
||||
@synthesize menuState = _menuState;
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
//
|
||||
// MWMNavigationDashboardEntity.h
|
||||
// Maps
|
||||
//
|
||||
// Created by v.mikhaylenko on 22.07.15.
|
||||
// Copyright (c) 2015 MapsWithMe. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
#include "platform/location.hpp"
|
||||
|
||||
@interface MWMNavigationDashboardEntity : NSObject
|
||||
|
||||
@property (nonatomic, readonly) NSString * targetDistance;
|
||||
@property (nonatomic, readonly) NSString * targetUnits;
|
||||
@property (nonatomic, readonly) NSString * distanceToTurn;
|
||||
@property (nonatomic, readonly) NSString * turnUnits;
|
||||
@property (nonatomic, readonly) UIImage * turnImage;
|
||||
@property (nonatomic, readonly) NSUInteger roundExitNumber;
|
||||
@property (nonatomic, readonly) NSUInteger timeToTarget;
|
||||
|
||||
- (instancetype)initWithFollowingInfo:(location::FollowingInfo const &)info;
|
||||
- (void)updateWithFollowingInfo:(location::FollowingInfo const &)info;
|
||||
|
||||
- (instancetype)init __attribute__((unavailable("init is not available")));
|
||||
+ (instancetype)new __attribute__((unavailable("init is not available")));
|
||||
|
||||
@end
|
|
@ -0,0 +1,75 @@
|
|||
//
|
||||
// MWMNavigationDashboardEntity.m
|
||||
// Maps
|
||||
//
|
||||
// Created by v.mikhaylenko on 22.07.15.
|
||||
// Copyright (c) 2015 MapsWithMe. All rights reserved.
|
||||
//
|
||||
|
||||
#import "MWMNavigationDashboardEntity.h"
|
||||
#import "Framework.h"
|
||||
|
||||
@implementation MWMNavigationDashboardEntity
|
||||
|
||||
- (instancetype)initWithFollowingInfo:(location::FollowingInfo const &)info
|
||||
{
|
||||
self = [super init];
|
||||
if (self)
|
||||
[self configure:info];
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)updateWithFollowingInfo:(location::FollowingInfo const &)info
|
||||
{
|
||||
[self configure:info];
|
||||
}
|
||||
|
||||
- (void)configure:(location::FollowingInfo const &)info
|
||||
{
|
||||
_timeToTarget = info.m_time;
|
||||
_targetDistance = [NSString stringWithUTF8String:info.m_distToTarget.c_str()];
|
||||
_targetUnits = [NSString stringWithUTF8String:info.m_targetUnitsSuffix.c_str()];
|
||||
_distanceToTurn = [NSString stringWithUTF8String:info.m_distToTurn.c_str()];
|
||||
_turnUnits = [NSString stringWithUTF8String:info.m_turnUnitsSuffix.c_str()];
|
||||
_turnImage = image(info.m_turn);
|
||||
if (info.m_turn == routing::turns::TurnDirection::EnterRoundAbout)
|
||||
_roundExitNumber = info.m_exitNum;
|
||||
}
|
||||
|
||||
UIImage * image(routing::turns::TurnDirection t)
|
||||
{
|
||||
if (GetFramework().GetRouter() == routing::RouterType::Pedestrian)
|
||||
return [UIImage imageNamed:@"ic_direction"];
|
||||
|
||||
using namespace routing::turns;
|
||||
switch (t)
|
||||
{
|
||||
case TurnDirection::TurnSlightRight:
|
||||
return [UIImage imageNamed:@"slight_right"];
|
||||
case TurnDirection::TurnRight:
|
||||
return [UIImage imageNamed:@"simple_right"];
|
||||
case TurnDirection::TurnSharpRight:
|
||||
return [UIImage imageNamed:@"sharp_right"];
|
||||
case TurnDirection::TurnSlightLeft:
|
||||
return [UIImage imageNamed:@"slight_left"];
|
||||
case TurnDirection::TurnLeft:
|
||||
return [UIImage imageNamed:@"simple_left"];
|
||||
case TurnDirection::TurnSharpLeft:
|
||||
return [UIImage imageNamed:@"sharp_left"];
|
||||
case TurnDirection::UTurn:
|
||||
return [UIImage imageNamed:@"uturn"];
|
||||
case TurnDirection::ReachedYourDestination:
|
||||
return [UIImage imageNamed:@"finish_point"];
|
||||
case TurnDirection::EnterRoundAbout:
|
||||
return [UIImage imageNamed:@"round"];
|
||||
case TurnDirection::StartAtEndOfStreet:
|
||||
case TurnDirection::LeaveRoundAbout:
|
||||
case TurnDirection::StayOnRoundAbout:
|
||||
case TurnDirection::TakeTheExit:
|
||||
case TurnDirection::Count:
|
||||
case TurnDirection::GoStraight:
|
||||
case TurnDirection::NoTurn:
|
||||
return [UIImage imageNamed:@"straight"];
|
||||
}}
|
||||
|
||||
@end
|
|
@ -6,29 +6,31 @@
|
|||
// Copyright (c) 2015 MapsWithMe. All rights reserved.
|
||||
//
|
||||
|
||||
typedef NS_ENUM(NSUInteger, MWMNavigationRouteType)
|
||||
{
|
||||
MWMNavigationRouteTypePedestrian,
|
||||
MWMNavigationRouteTypeVehicle
|
||||
};
|
||||
#include "Framework.h"
|
||||
#include "platform/location.hpp"
|
||||
|
||||
typedef NS_ENUM(NSUInteger, MWMNavigationDashboardState)
|
||||
{
|
||||
MWMNavigationDashboardStateHidden,
|
||||
MWMNavigationDashboardStatePlanning,
|
||||
MWMNavigationDashboardStateReady,
|
||||
MWMNavigationDashboardStateNavigation
|
||||
};
|
||||
|
||||
@protocol MWMNavigationDashboardManagerDelegate <NSObject>
|
||||
|
||||
- (void)buildRouteWithType:(enum MWMNavigationRouteType)type;
|
||||
|
||||
- (void)buildRouteWithType:(enum routing::RouterType)type;
|
||||
- (void)navigationDashBoardDidUpdate;
|
||||
- (void)didStartFollowing;
|
||||
- (void)didCancelRouting;
|
||||
|
||||
@end
|
||||
|
||||
@class MWMNavigationDashboardEntity;
|
||||
|
||||
@interface MWMNavigationDashboardManager : NSObject
|
||||
|
||||
@property (nonatomic, readonly) MWMNavigationDashboardEntity * entity;
|
||||
@property (nonatomic) MWMNavigationDashboardState state;
|
||||
@property (nonatomic) CGFloat topBound;
|
||||
@property (nonatomic, readonly) CGFloat height;
|
||||
|
@ -36,7 +38,7 @@ typedef NS_ENUM(NSUInteger, MWMNavigationDashboardState)
|
|||
|
||||
- (instancetype)init __attribute__((unavailable("init is not available")));
|
||||
- (instancetype)initWithParentView:(UIView *)view delegate:(id<MWMNavigationDashboardManagerDelegate>)delegate;
|
||||
|
||||
- (void)setupDashboard:(location::FollowingInfo const &)info;
|
||||
- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)orientation;
|
||||
|
||||
@end
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
|
||||
#import "Macros.h"
|
||||
#import "MWMNavigationDashboard.h"
|
||||
#import "MWMNavigationDashboardEntity.h"
|
||||
#import "MWMNavigationDashboardManager.h"
|
||||
#import "MWMRoutePreview.h"
|
||||
|
||||
|
@ -25,6 +26,7 @@
|
|||
@property (weak, nonatomic) UIView * ownerView;
|
||||
@property (weak, nonatomic) id<MWMNavigationDashboardManagerDelegate> delegate;
|
||||
|
||||
@property (nonatomic, readwrite) MWMNavigationDashboardEntity * entity;
|
||||
@end
|
||||
|
||||
@implementation MWMNavigationDashboardManager
|
||||
|
@ -71,13 +73,43 @@
|
|||
self.navigationDashboard = navigationDashboard;
|
||||
}
|
||||
|
||||
- (void)setupDashboard:(location::FollowingInfo const &)info
|
||||
{
|
||||
if (!self.entity)
|
||||
self.entity = [[MWMNavigationDashboardEntity alloc] initWithFollowingInfo:info];
|
||||
else
|
||||
[self.entity updateWithFollowingInfo:info];
|
||||
[self updateDashboard];
|
||||
}
|
||||
|
||||
- (void)updateDashboard
|
||||
{
|
||||
[self.routePreviewLandscape configureWithEntity:self.entity];
|
||||
[self.routePreviewPortrait configureWithEntity:self.entity];
|
||||
[self.navigationDashboardLandscape configureWithEntity:self.entity];
|
||||
[self.navigationDashboardPortrait configureWithEntity:self.entity];
|
||||
}
|
||||
|
||||
#pragma mark - MWMRoutePreview
|
||||
|
||||
- (IBAction)routePreviewChange:(UIButton *)sender
|
||||
{
|
||||
[self showGoButton:[sender isEqual:self.routePreview.pedestrian]];
|
||||
// enum MWMNavigationRouteType const type = [sender isEqual:self.routePreview.pedestrian] ? MWMNavigationRouteTypePedestrian : MWMNavigationRouteTypeVehicle;
|
||||
// [self.delegate buildRouteWithType:type];
|
||||
if (sender.selected)
|
||||
return;
|
||||
sender.selected = YES;
|
||||
auto & f = GetFramework();
|
||||
if ([sender isEqual:self.routePreview.pedestrian])
|
||||
{
|
||||
self.routePreview.vehicle.selected = NO;
|
||||
f.SetRouter(routing::RouterType::Pedestrian);
|
||||
}
|
||||
else
|
||||
{
|
||||
self.routePreview.pedestrian.selected = NO;
|
||||
f.SetRouter(routing::RouterType::Vehicle);
|
||||
}
|
||||
f.CloseRouting();
|
||||
[self.delegate buildRouteWithType:f.GetRouter()];
|
||||
}
|
||||
|
||||
#pragma mark - MWMNavigationDashboard
|
||||
|
@ -85,6 +117,7 @@
|
|||
- (IBAction)navigationCancelPressed:(UIButton *)sender
|
||||
{
|
||||
self.state = MWMNavigationDashboardStateHidden;
|
||||
[self.delegate didCancelRouting];
|
||||
}
|
||||
|
||||
#pragma mark - MWMNavigationGo
|
||||
|
@ -92,6 +125,7 @@
|
|||
- (IBAction)navigationGoPressed:(UIButton *)sender
|
||||
{
|
||||
self.state = MWMNavigationDashboardStateNavigation;
|
||||
[self.delegate didStartFollowing];
|
||||
}
|
||||
|
||||
#pragma mark - State changes
|
||||
|
@ -105,6 +139,29 @@
|
|||
- (void)showStatePlanning
|
||||
{
|
||||
[self.routePreview addToView:self.ownerView];
|
||||
[self.routePreviewLandscape statePlaning];
|
||||
[self.routePreviewPortrait statePlaning];
|
||||
auto const state = GetFramework().GetRouter();
|
||||
switch (state)
|
||||
{
|
||||
case routing::RouterType::Pedestrian :
|
||||
self.routePreviewLandscape.pedestrian.selected = YES;
|
||||
self.routePreviewPortrait.pedestrian.selected = YES;
|
||||
self.routePreviewPortrait.vehicle.selected = NO;
|
||||
self.routePreviewLandscape.vehicle.selected = NO;
|
||||
break;
|
||||
case routing::RouterType::Vehicle:
|
||||
self.routePreviewLandscape.vehicle.selected = YES;
|
||||
self.routePreviewPortrait.vehicle.selected = YES;
|
||||
self.routePreviewLandscape.pedestrian.selected = NO;
|
||||
self.routePreviewPortrait.pedestrian.selected = NO;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
- (void)showStateReady
|
||||
{
|
||||
[self showGoButton:YES];
|
||||
}
|
||||
|
||||
- (void)showStateNavigation
|
||||
|
@ -115,7 +172,8 @@
|
|||
|
||||
- (void)showGoButton:(BOOL)show
|
||||
{
|
||||
self.routePreviewPortrait.showGoButton = self.routePreviewLandscape.showGoButton = show;
|
||||
[self.routePreviewPortrait showGoButtonAnimated:show];
|
||||
[self.routePreviewLandscape showGoButtonAnimated:show];
|
||||
[self.delegate navigationDashBoardDidUpdate];
|
||||
}
|
||||
|
||||
|
@ -131,11 +189,15 @@
|
|||
[self hideState];
|
||||
break;
|
||||
case MWMNavigationDashboardStatePlanning:
|
||||
NSAssert(_state == MWMNavigationDashboardStateHidden, @"Invalid state change");
|
||||
NSAssert(_state == MWMNavigationDashboardStateHidden || _state == MWMNavigationDashboardStateReady, @"Invalid state change");
|
||||
[self showStatePlanning];
|
||||
break;
|
||||
case MWMNavigationDashboardStateNavigation:
|
||||
case MWMNavigationDashboardStateReady:
|
||||
NSAssert(_state == MWMNavigationDashboardStatePlanning, @"Invalid state change");
|
||||
[self showStateReady];
|
||||
break;
|
||||
case MWMNavigationDashboardStateNavigation:
|
||||
NSAssert(_state == MWMNavigationDashboardStateReady, @"Invalid state change");
|
||||
[self showStateNavigation];
|
||||
break;
|
||||
}
|
||||
|
@ -155,13 +217,11 @@
|
|||
{
|
||||
case MWMNavigationDashboardStateHidden:
|
||||
return 0.0;
|
||||
break;
|
||||
case MWMNavigationDashboardStatePlanning:
|
||||
case MWMNavigationDashboardStateReady:
|
||||
return self.routePreview.visibleHeight;
|
||||
break;
|
||||
case MWMNavigationDashboardStateNavigation:
|
||||
return self.navigationDashboard.height;
|
||||
break;
|
||||
return self.navigationDashboard.visibleHeight;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D131" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14E46" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
|
@ -12,148 +12,164 @@
|
|||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="e3c-EN-9M6" customClass="MWMNavigationDashboard">
|
||||
<rect key="frame" x="0.0" y="0.0" width="736" height="96"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="736" height="76"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qvD-ft-rlE" userLabel="Cancel">
|
||||
<rect key="frame" x="0.0" y="36" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="40" id="Yuk-DZ-Oty"/>
|
||||
<constraint firstAttribute="height" constant="40" id="wD3-8H-mzJ"/>
|
||||
</constraints>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZzU-jx-uYa" userLabel="Azimut Box">
|
||||
<rect key="frame" x="56" y="33" width="190" height="52"/>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="iZT-dR-FZ0">
|
||||
<rect key="frame" x="0.0" y="0.0" width="736" height="76"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_direction" translatesAutoresizingMaskIntoConstraints="NO" id="1r7-WJ-4zD">
|
||||
<rect key="frame" x="0.0" y="0.0" width="52" height="52"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qvD-ft-rlE" userLabel="Cancel">
|
||||
<rect key="frame" x="0.0" y="16" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="52" id="vnM-Ps-EOE"/>
|
||||
<constraint firstAttribute="width" constant="40" id="Yuk-DZ-Oty"/>
|
||||
<constraint firstAttribute="height" constant="40" id="wD3-8H-mzJ"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sMk-g9-2oJ">
|
||||
<rect key="frame" x="60" y="5" width="20.5" height="42"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="36"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="km" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Vo5-Yp-xWN">
|
||||
<rect key="frame" x="81" y="21" width="26" height="22"/>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="cDi-Qi-vvq"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ZzU-jx-uYa" userLabel="Azimut Box">
|
||||
<rect key="frame" x="56" y="9" width="190" height="54"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_direction" translatesAutoresizingMaskIntoConstraints="NO" id="1r7-WJ-4zD">
|
||||
<rect key="frame" x="0.0" y="0.0" width="54" height="54"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="54" id="vnM-Ps-EOE"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sMk-g9-2oJ">
|
||||
<rect key="frame" x="62" y="5" width="20.5" height="42"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="36"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="km" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Vo5-Yp-xWN">
|
||||
<rect key="frame" x="83" y="21" width="26" height="22"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21.5" id="2Xd-X9-QxK"/>
|
||||
<constraint firstAttribute="height" constant="21.5" id="BJ0-k8-PFK"/>
|
||||
<constraint firstAttribute="width" constant="25.5" id="OEQ-uY-Tnf"/>
|
||||
<constraint firstAttribute="width" constant="26" id="rCL-RY-GbF"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="2Xd-X9-QxK"/>
|
||||
<exclude reference="rCL-RY-GbF"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21.5" id="2Xd-X9-QxK"/>
|
||||
<constraint firstAttribute="height" constant="21.5" id="BJ0-k8-PFK"/>
|
||||
<constraint firstAttribute="width" constant="25.5" id="OEQ-uY-Tnf"/>
|
||||
<constraint firstAttribute="width" constant="26" id="rCL-RY-GbF"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="baseline" secondItem="Vo5-Yp-xWN" secondAttribute="baseline" id="3IZ-7s-BUO"/>
|
||||
<constraint firstAttribute="bottom" secondItem="sMk-g9-2oJ" secondAttribute="bottom" constant="7" id="4c5-vj-n8i"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="1" id="DHi-Oq-8ah"/>
|
||||
<constraint firstItem="1r7-WJ-4zD" firstAttribute="top" secondItem="ZzU-jx-uYa" secondAttribute="top" id="DLs-tP-313"/>
|
||||
<constraint firstItem="1r7-WJ-4zD" firstAttribute="leading" secondItem="ZzU-jx-uYa" secondAttribute="leading" id="HK7-8o-2bx"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="top" secondItem="ZzU-jx-uYa" secondAttribute="top" constant="5" id="Ixf-kz-eFi"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="4" id="JKZ-WH-QTe"/>
|
||||
<constraint firstAttribute="bottom" secondItem="1r7-WJ-4zD" secondAttribute="bottom" id="JsW-d1-58r"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="3.5" id="RsH-2c-74p"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="leading" secondItem="1r7-WJ-4zD" secondAttribute="trailing" constant="8" id="XLA-lU-avx"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="4" id="chw-Mu-gak"/>
|
||||
<constraint firstAttribute="width" constant="190" id="pfA-s3-hU5"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Vo5-Yp-xWN" secondAttribute="trailing" id="sCi-Lc-G8B"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="baseline" secondItem="Vo5-Yp-xWN" secondAttribute="baseline" id="t80-eN-Ymv"/>
|
||||
<constraint firstAttribute="height" constant="54" id="y3P-ga-yXV"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="2Xd-X9-QxK"/>
|
||||
<exclude reference="rCL-RY-GbF"/>
|
||||
<exclude reference="3IZ-7s-BUO"/>
|
||||
<exclude reference="JKZ-WH-QTe"/>
|
||||
<exclude reference="RsH-2c-74p"/>
|
||||
<exclude reference="chw-Mu-gak"/>
|
||||
<exclude reference="sCi-Lc-G8B"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</label>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="r2o-8G-3Cv" userLabel="Distance Box">
|
||||
<rect key="frame" x="548" y="14" width="180" height="42"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12 min" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="yzZ-6b-Jou">
|
||||
<rect key="frame" x="0.0" y="0.0" width="180" height="21"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21" id="Z2S-i8-Ntf"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="20 km" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="heX-Mf-T11">
|
||||
<rect key="frame" x="0.0" y="27" width="112" height="16"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="112" id="APr-Ng-kVm"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="00:00" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="F95-AG-2uX">
|
||||
<rect key="frame" x="132" y="27" width="48" height="16"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="44" id="lBX-qz-7jM"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="F95-AG-2uX" firstAttribute="leading" secondItem="heX-Mf-T11" secondAttribute="trailing" constant="20" id="6ja-Bb-h9C"/>
|
||||
<constraint firstItem="yzZ-6b-Jou" firstAttribute="leading" secondItem="r2o-8G-3Cv" secondAttribute="leading" id="8Ys-z7-0ic"/>
|
||||
<constraint firstAttribute="trailing" secondItem="heX-Mf-T11" secondAttribute="trailing" constant="84" id="LwO-bA-IkU"/>
|
||||
<constraint firstAttribute="trailing" secondItem="yzZ-6b-Jou" secondAttribute="trailing" id="NnS-Nz-XvI"/>
|
||||
<constraint firstAttribute="bottom" secondItem="heX-Mf-T11" secondAttribute="bottom" constant="-1" id="SI8-Pr-fmE"/>
|
||||
<constraint firstItem="heX-Mf-T11" firstAttribute="leading" secondItem="r2o-8G-3Cv" secondAttribute="leading" id="Xii-Px-eo7"/>
|
||||
<constraint firstAttribute="height" constant="42" id="Y1G-Es-QFk"/>
|
||||
<constraint firstAttribute="width" constant="180" id="Y2M-zQ-72a"/>
|
||||
<constraint firstAttribute="trailing" secondItem="F95-AG-2uX" secondAttribute="trailing" id="ZSo-ff-YeK"/>
|
||||
<constraint firstItem="heX-Mf-T11" firstAttribute="top" secondItem="yzZ-6b-Jou" secondAttribute="bottom" constant="6" id="nke-Cf-wrp"/>
|
||||
<constraint firstItem="yzZ-6b-Jou" firstAttribute="top" secondItem="r2o-8G-3Cv" secondAttribute="top" id="nqg-k8-6Zp"/>
|
||||
<constraint firstItem="F95-AG-2uX" firstAttribute="top" secondItem="yzZ-6b-Jou" secondAttribute="bottom" constant="6" id="pYP-hY-4tg"/>
|
||||
<constraint firstAttribute="bottom" secondItem="F95-AG-2uX" secondAttribute="bottom" constant="-1" id="wrw-dm-07W"/>
|
||||
</constraints>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="LwO-bA-IkU"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="baseline" secondItem="Vo5-Yp-xWN" secondAttribute="baseline" id="3IZ-7s-BUO"/>
|
||||
<constraint firstAttribute="bottom" secondItem="sMk-g9-2oJ" secondAttribute="bottom" constant="5" id="4c5-vj-n8i"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="1" id="DHi-Oq-8ah"/>
|
||||
<constraint firstItem="1r7-WJ-4zD" firstAttribute="top" secondItem="ZzU-jx-uYa" secondAttribute="top" id="DLs-tP-313"/>
|
||||
<constraint firstItem="1r7-WJ-4zD" firstAttribute="leading" secondItem="ZzU-jx-uYa" secondAttribute="leading" id="HK7-8o-2bx"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="top" secondItem="ZzU-jx-uYa" secondAttribute="top" constant="5" id="Ixf-kz-eFi"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="4" id="JKZ-WH-QTe"/>
|
||||
<constraint firstAttribute="bottom" secondItem="1r7-WJ-4zD" secondAttribute="bottom" id="JsW-d1-58r"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="3.5" id="RsH-2c-74p"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="leading" secondItem="1r7-WJ-4zD" secondAttribute="trailing" constant="8" id="XLA-lU-avx"/>
|
||||
<constraint firstItem="Vo5-Yp-xWN" firstAttribute="leading" secondItem="sMk-g9-2oJ" secondAttribute="trailing" constant="4" id="chw-Mu-gak"/>
|
||||
<constraint firstAttribute="width" constant="190" id="pfA-s3-hU5"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Vo5-Yp-xWN" secondAttribute="trailing" id="sCi-Lc-G8B"/>
|
||||
<constraint firstItem="sMk-g9-2oJ" firstAttribute="baseline" secondItem="Vo5-Yp-xWN" secondAttribute="baseline" id="t80-eN-Ymv"/>
|
||||
<constraint firstAttribute="height" constant="52" id="y3P-ga-yXV"/>
|
||||
<constraint firstItem="qvD-ft-rlE" firstAttribute="top" secondItem="iZT-dR-FZ0" secondAttribute="top" constant="16" id="28E-XK-pCB"/>
|
||||
<constraint firstItem="ZzU-jx-uYa" firstAttribute="top" secondItem="iZT-dR-FZ0" secondAttribute="top" constant="9" id="3D9-7j-5DD"/>
|
||||
<constraint firstAttribute="trailing" secondItem="r2o-8G-3Cv" secondAttribute="trailing" constant="8" id="5Y8-Px-WTu"/>
|
||||
<constraint firstItem="qvD-ft-rlE" firstAttribute="leading" secondItem="iZT-dR-FZ0" secondAttribute="leading" id="CzO-hM-Nk8"/>
|
||||
<constraint firstItem="r2o-8G-3Cv" firstAttribute="top" secondItem="iZT-dR-FZ0" secondAttribute="top" constant="14" id="gIL-MW-lns"/>
|
||||
<constraint firstItem="ZzU-jx-uYa" firstAttribute="leading" secondItem="qvD-ft-rlE" secondAttribute="trailing" constant="16" id="wns-Dj-jhG"/>
|
||||
</constraints>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="3IZ-7s-BUO"/>
|
||||
<exclude reference="JKZ-WH-QTe"/>
|
||||
<exclude reference="chw-Mu-gak"/>
|
||||
<exclude reference="sCi-Lc-G8B"/>
|
||||
<exclude reference="RsH-2c-74p"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="r2o-8G-3Cv" userLabel="Distance Box">
|
||||
<rect key="frame" x="548" y="39" width="180" height="42"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="12 min" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="yzZ-6b-Jou">
|
||||
<rect key="frame" x="0.0" y="0.0" width="180" height="21"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21" id="Z2S-i8-Ntf"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="20 km" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="heX-Mf-T11">
|
||||
<rect key="frame" x="0.0" y="27" width="112" height="16"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="112" id="APr-Ng-kVm"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="16:40 " textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="F95-AG-2uX">
|
||||
<rect key="frame" x="132.5" y="27" width="47.5" height="16"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="44" id="lBX-qz-7jM"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="F95-AG-2uX" firstAttribute="leading" secondItem="heX-Mf-T11" secondAttribute="trailing" constant="20" id="6ja-Bb-h9C"/>
|
||||
<constraint firstItem="yzZ-6b-Jou" firstAttribute="leading" secondItem="r2o-8G-3Cv" secondAttribute="leading" id="8Ys-z7-0ic"/>
|
||||
<constraint firstAttribute="trailing" secondItem="heX-Mf-T11" secondAttribute="trailing" constant="84" id="LwO-bA-IkU"/>
|
||||
<constraint firstAttribute="trailing" secondItem="yzZ-6b-Jou" secondAttribute="trailing" id="NnS-Nz-XvI"/>
|
||||
<constraint firstAttribute="bottom" secondItem="heX-Mf-T11" secondAttribute="bottom" constant="-1" id="SI8-Pr-fmE"/>
|
||||
<constraint firstItem="heX-Mf-T11" firstAttribute="leading" secondItem="r2o-8G-3Cv" secondAttribute="leading" id="Xii-Px-eo7"/>
|
||||
<constraint firstAttribute="height" constant="42" id="Y1G-Es-QFk"/>
|
||||
<constraint firstAttribute="width" constant="180" id="Y2M-zQ-72a"/>
|
||||
<constraint firstAttribute="trailing" secondItem="F95-AG-2uX" secondAttribute="trailing" id="ZSo-ff-YeK"/>
|
||||
<constraint firstItem="heX-Mf-T11" firstAttribute="top" secondItem="yzZ-6b-Jou" secondAttribute="bottom" constant="6" id="nke-Cf-wrp"/>
|
||||
<constraint firstItem="yzZ-6b-Jou" firstAttribute="top" secondItem="r2o-8G-3Cv" secondAttribute="top" id="nqg-k8-6Zp"/>
|
||||
<constraint firstItem="F95-AG-2uX" firstAttribute="top" secondItem="yzZ-6b-Jou" secondAttribute="bottom" constant="6" id="pYP-hY-4tg"/>
|
||||
<constraint firstAttribute="bottom" secondItem="F95-AG-2uX" secondAttribute="bottom" constant="-1" id="wrw-dm-07W"/>
|
||||
</constraints>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="LwO-bA-IkU"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="qvD-ft-rlE" firstAttribute="leading" secondItem="e3c-EN-9M6" secondAttribute="leading" id="2nT-pL-sI6"/>
|
||||
<constraint firstAttribute="bottom" secondItem="r2o-8G-3Cv" secondAttribute="bottom" constant="15" id="3iw-Km-DHQ"/>
|
||||
<constraint firstAttribute="bottom" secondItem="qvD-ft-rlE" secondAttribute="bottom" constant="20" id="W5C-GA-XjL"/>
|
||||
<constraint firstItem="ZzU-jx-uYa" firstAttribute="leading" secondItem="qvD-ft-rlE" secondAttribute="trailing" constant="16" id="ZBX-Dk-LoL"/>
|
||||
<constraint firstAttribute="bottom" secondItem="ZzU-jx-uYa" secondAttribute="bottom" constant="11" id="bF3-ME-vgx"/>
|
||||
<constraint firstAttribute="trailing" secondItem="r2o-8G-3Cv" secondAttribute="trailing" constant="8" id="ghP-27-V4x"/>
|
||||
<constraint firstItem="iZT-dR-FZ0" firstAttribute="top" secondItem="e3c-EN-9M6" secondAttribute="top" id="Mcn-mM-FeF"/>
|
||||
<constraint firstAttribute="bottom" secondItem="iZT-dR-FZ0" secondAttribute="bottom" id="Zq6-7K-JvM"/>
|
||||
<constraint firstItem="iZT-dR-FZ0" firstAttribute="leading" secondItem="e3c-EN-9M6" secondAttribute="leading" id="qo8-T3-g6X"/>
|
||||
<constraint firstAttribute="trailing" secondItem="iZT-dR-FZ0" secondAttribute="trailing" id="xtH-16-KfW"/>
|
||||
</constraints>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<connections>
|
||||
<outlet property="arrivalsTimeLabel" destination="F95-AG-2uX" id="UbS-vM-cGU"/>
|
||||
<outlet property="contentView" destination="iZT-dR-FZ0" id="OSM-Ma-60a"/>
|
||||
<outlet property="direction" destination="1r7-WJ-4zD" id="aHj-Mn-s8d"/>
|
||||
<outlet property="distanceLeft" destination="heX-Mf-T11" id="KPh-ym-dPt"/>
|
||||
<outlet property="distanceToNextAction" destination="sMk-g9-2oJ" id="bjw-PH-BYo"/>
|
||||
|
|
|
@ -8,6 +8,8 @@
|
|||
|
||||
#import "MWMNavigationView.h"
|
||||
|
||||
@class MWMNavigationDashboardEntity;
|
||||
|
||||
@interface MWMNavigationDashboard : MWMNavigationView
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UIImageView * direction;
|
||||
|
@ -17,4 +19,6 @@
|
|||
@property (weak, nonatomic) IBOutlet UILabel * eta;
|
||||
@property (weak, nonatomic) IBOutlet UILabel * arrivalsTimeLabel;
|
||||
|
||||
- (void)configureWithEntity:(MWMNavigationDashboardEntity *)entity;
|
||||
|
||||
@end
|
||||
|
|
|
@ -7,7 +7,18 @@
|
|||
//
|
||||
|
||||
#import "MWMNavigationDashboard.h"
|
||||
#import "MWMNavigationDashboardEntity.h"
|
||||
#import "TimeUtils.h"
|
||||
|
||||
@implementation MWMNavigationDashboard
|
||||
|
||||
- (void)configureWithEntity:(MWMNavigationDashboardEntity *)entity
|
||||
{
|
||||
self.direction.image = entity.turnImage;
|
||||
self.distanceToNextAction.text = entity.distanceToTurn;
|
||||
self.distanceToNextActionUnits.text = entity.turnUnits;
|
||||
self.distanceLeft.text = [NSString stringWithFormat:@"%@ %@", entity.targetDistance, entity.targetUnits];
|
||||
self.eta.text = [NSDateFormatter estimatedArrivalTimeWithSeconds:@(entity.timeToTarget)];
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D131" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14E46" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
|
@ -12,126 +12,142 @@
|
|||
</placeholder>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="wul-fx-3xk" customClass="MWMNavigationDashboard">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="96"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="76"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CJi-qt-H0B" userLabel="Cancel">
|
||||
<rect key="frame" x="0.0" y="36" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="40" id="EKP-Ms-brE"/>
|
||||
<constraint firstAttribute="height" constant="40" id="bc0-vd-6M6"/>
|
||||
</constraints>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8Zr-ul-QD4" userLabel="Azimut Box">
|
||||
<rect key="frame" x="56" y="33" width="190" height="52"/>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="9t0-Kj-KTa">
|
||||
<rect key="frame" x="0.0" y="0.0" width="320" height="76"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_direction" translatesAutoresizingMaskIntoConstraints="NO" id="vcg-Bu-8CX">
|
||||
<rect key="frame" x="0.0" y="0.0" width="52" height="52"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="CJi-qt-H0B" userLabel="Cancel">
|
||||
<rect key="frame" x="0.0" y="16" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="52" id="xGv-2r-BQ7"/>
|
||||
<constraint firstAttribute="width" constant="40" id="EKP-Ms-brE"/>
|
||||
<constraint firstAttribute="height" constant="40" id="bc0-vd-6M6"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w7a-mi-GxC">
|
||||
<rect key="frame" x="60" y="5" width="20.5" height="42"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="36"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="km" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vQs-gj-DUL">
|
||||
<rect key="frame" x="81" y="21" width="26" height="22"/>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="FHv-ny-D7o"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="8Zr-ul-QD4" userLabel="Azimut Box">
|
||||
<rect key="frame" x="56" y="9" width="190" height="52"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_direction" translatesAutoresizingMaskIntoConstraints="NO" id="vcg-Bu-8CX">
|
||||
<rect key="frame" x="0.0" y="0.0" width="52" height="52"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="52" id="xGv-2r-BQ7"/>
|
||||
</constraints>
|
||||
</imageView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w7a-mi-GxC">
|
||||
<rect key="frame" x="60" y="5" width="21" height="42"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="36"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="km" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vQs-gj-DUL">
|
||||
<rect key="frame" x="81" y="21" width="26" height="22"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21.5" id="8Id-se-VcH"/>
|
||||
<constraint firstAttribute="height" constant="21.5" id="Hag-8H-qLV"/>
|
||||
<constraint firstAttribute="width" constant="25.5" id="gWD-Y6-p24"/>
|
||||
<constraint firstAttribute="width" constant="26" id="zwS-5O-QVa"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="8Id-se-VcH"/>
|
||||
<exclude reference="zwS-5O-QVa"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21.5" id="8Id-se-VcH"/>
|
||||
<constraint firstAttribute="height" constant="21.5" id="Hag-8H-qLV"/>
|
||||
<constraint firstAttribute="width" constant="25.5" id="gWD-Y6-p24"/>
|
||||
<constraint firstAttribute="width" constant="26" id="zwS-5O-QVa"/>
|
||||
<constraint firstAttribute="height" constant="52" id="0A6-z9-DaT"/>
|
||||
<constraint firstItem="vcg-Bu-8CX" firstAttribute="top" secondItem="8Zr-ul-QD4" secondAttribute="top" id="B2K-uh-ENJ"/>
|
||||
<constraint firstItem="vcg-Bu-8CX" firstAttribute="leading" secondItem="8Zr-ul-QD4" secondAttribute="leading" id="DNa-pK-w4t"/>
|
||||
<constraint firstAttribute="bottom" secondItem="w7a-mi-GxC" secondAttribute="bottom" constant="5" id="Gqm-CL-ck0"/>
|
||||
<constraint firstAttribute="trailing" secondItem="vQs-gj-DUL" secondAttribute="trailing" id="PeX-D3-WSc"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="1" id="S4k-of-Pfg"/>
|
||||
<constraint firstAttribute="width" constant="190" id="aes-L3-OVF"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="baseline" secondItem="vQs-gj-DUL" secondAttribute="baseline" id="fEx-bU-M8d"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="3.5" id="jOo-j5-LYo"/>
|
||||
<constraint firstAttribute="bottom" secondItem="vcg-Bu-8CX" secondAttribute="bottom" id="kjG-Xr-g7l"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="top" secondItem="8Zr-ul-QD4" secondAttribute="top" constant="5" id="lon-V9-cUc"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="4" id="mvA-aH-9kW"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="baseline" secondItem="vQs-gj-DUL" secondAttribute="baseline" id="ukP-6L-edS"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="4" id="vx0-h4-VxL"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="leading" secondItem="vcg-Bu-8CX" secondAttribute="trailing" constant="8" id="zgG-1s-uba"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.12549019610000001" green="0.58823529409999997" blue="0.95294117649999999" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="zwS-5O-QVa"/>
|
||||
<exclude reference="8Id-se-VcH"/>
|
||||
<exclude reference="ukP-6L-edS"/>
|
||||
<exclude reference="PeX-D3-WSc"/>
|
||||
<exclude reference="jOo-j5-LYo"/>
|
||||
<exclude reference="mvA-aH-9kW"/>
|
||||
<exclude reference="vx0-h4-VxL"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="52" id="0A6-z9-DaT"/>
|
||||
<constraint firstItem="vcg-Bu-8CX" firstAttribute="top" secondItem="8Zr-ul-QD4" secondAttribute="top" id="B2K-uh-ENJ"/>
|
||||
<constraint firstItem="vcg-Bu-8CX" firstAttribute="leading" secondItem="8Zr-ul-QD4" secondAttribute="leading" id="DNa-pK-w4t"/>
|
||||
<constraint firstAttribute="bottom" secondItem="w7a-mi-GxC" secondAttribute="bottom" constant="5" id="Gqm-CL-ck0"/>
|
||||
<constraint firstAttribute="trailing" secondItem="vQs-gj-DUL" secondAttribute="trailing" id="PeX-D3-WSc"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="1" id="S4k-of-Pfg"/>
|
||||
<constraint firstAttribute="width" constant="190" id="aes-L3-OVF"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="baseline" secondItem="vQs-gj-DUL" secondAttribute="baseline" id="fEx-bU-M8d"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="3.5" id="jOo-j5-LYo"/>
|
||||
<constraint firstAttribute="bottom" secondItem="vcg-Bu-8CX" secondAttribute="bottom" id="kjG-Xr-g7l"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="top" secondItem="8Zr-ul-QD4" secondAttribute="top" constant="5" id="lon-V9-cUc"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="4" id="mvA-aH-9kW"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="baseline" secondItem="vQs-gj-DUL" secondAttribute="baseline" id="ukP-6L-edS"/>
|
||||
<constraint firstItem="vQs-gj-DUL" firstAttribute="leading" secondItem="w7a-mi-GxC" secondAttribute="trailing" constant="4" id="vx0-h4-VxL"/>
|
||||
<constraint firstItem="w7a-mi-GxC" firstAttribute="leading" secondItem="vcg-Bu-8CX" secondAttribute="trailing" constant="8" id="zgG-1s-uba"/>
|
||||
</constraints>
|
||||
<variation key="default">
|
||||
<mask key="constraints">
|
||||
<exclude reference="ukP-6L-edS"/>
|
||||
<exclude reference="jOo-j5-LYo"/>
|
||||
<exclude reference="PeX-D3-WSc"/>
|
||||
<exclude reference="mvA-aH-9kW"/>
|
||||
<exclude reference="vx0-h4-VxL"/>
|
||||
</mask>
|
||||
</variation>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BLc-UX-Tny" userLabel="Distance Box">
|
||||
<rect key="frame" x="216" y="39" width="96" height="42"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="10 min" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fLt-4z-zaW">
|
||||
<rect key="frame" x="0.0" y="0.0" width="96" height="21"/>
|
||||
</view>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="BLc-UX-Tny" userLabel="Distance Box">
|
||||
<rect key="frame" x="216" y="14" width="96" height="42"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="10 min" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="fLt-4z-zaW">
|
||||
<rect key="frame" x="0.0" y="0.0" width="96" height="21"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21" id="z8a-i9-xiC"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="10 km" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w2P-mo-JWt">
|
||||
<rect key="frame" x="0.0" y="26" width="96" height="16"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="21" id="z8a-i9-xiC"/>
|
||||
<constraint firstAttribute="width" constant="96" id="5wb-Gu-vSJ"/>
|
||||
<constraint firstItem="fLt-4z-zaW" firstAttribute="leading" secondItem="BLc-UX-Tny" secondAttribute="leading" id="FqW-7I-zNI"/>
|
||||
<constraint firstAttribute="trailing" secondItem="fLt-4z-zaW" secondAttribute="trailing" id="I9I-bJ-q2D"/>
|
||||
<constraint firstItem="fLt-4z-zaW" firstAttribute="top" secondItem="BLc-UX-Tny" secondAttribute="top" id="PRM-Vl-j7Y"/>
|
||||
<constraint firstAttribute="height" constant="42" id="UaJ-Vf-Spf"/>
|
||||
<constraint firstAttribute="bottom" secondItem="w2P-mo-JWt" secondAttribute="bottom" id="WGX-9a-DHA"/>
|
||||
<constraint firstItem="w2P-mo-JWt" firstAttribute="leading" secondItem="BLc-UX-Tny" secondAttribute="leading" id="hXv-eP-iwC"/>
|
||||
<constraint firstItem="w2P-mo-JWt" firstAttribute="top" secondItem="fLt-4z-zaW" secondAttribute="bottom" constant="5" id="rb4-VI-06q"/>
|
||||
<constraint firstAttribute="trailing" secondItem="w2P-mo-JWt" secondAttribute="trailing" id="xuB-k5-AJe"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="18"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="10 km" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="w2P-mo-JWt">
|
||||
<rect key="frame" x="0.0" y="26" width="96" height="16"/>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.54000000000000004" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="96" id="5wb-Gu-vSJ"/>
|
||||
<constraint firstItem="fLt-4z-zaW" firstAttribute="leading" secondItem="BLc-UX-Tny" secondAttribute="leading" id="FqW-7I-zNI"/>
|
||||
<constraint firstAttribute="trailing" secondItem="fLt-4z-zaW" secondAttribute="trailing" id="I9I-bJ-q2D"/>
|
||||
<constraint firstItem="fLt-4z-zaW" firstAttribute="top" secondItem="BLc-UX-Tny" secondAttribute="top" id="PRM-Vl-j7Y"/>
|
||||
<constraint firstAttribute="height" constant="42" id="UaJ-Vf-Spf"/>
|
||||
<constraint firstAttribute="bottom" secondItem="w2P-mo-JWt" secondAttribute="bottom" id="WGX-9a-DHA"/>
|
||||
<constraint firstItem="w2P-mo-JWt" firstAttribute="leading" secondItem="BLc-UX-Tny" secondAttribute="leading" id="hXv-eP-iwC"/>
|
||||
<constraint firstItem="w2P-mo-JWt" firstAttribute="top" secondItem="fLt-4z-zaW" secondAttribute="bottom" constant="5" id="rb4-VI-06q"/>
|
||||
<constraint firstAttribute="trailing" secondItem="w2P-mo-JWt" secondAttribute="trailing" id="xuB-k5-AJe"/>
|
||||
<constraint firstItem="8Zr-ul-QD4" firstAttribute="leading" secondItem="CJi-qt-H0B" secondAttribute="trailing" constant="16" id="9Na-tq-Q8a"/>
|
||||
<constraint firstItem="CJi-qt-H0B" firstAttribute="leading" secondItem="9t0-Kj-KTa" secondAttribute="leading" id="KWV-js-hmR"/>
|
||||
<constraint firstItem="BLc-UX-Tny" firstAttribute="top" secondItem="9t0-Kj-KTa" secondAttribute="top" constant="14" id="Tp6-iR-eSY"/>
|
||||
<constraint firstItem="CJi-qt-H0B" firstAttribute="top" secondItem="9t0-Kj-KTa" secondAttribute="top" constant="16" id="X51-ti-88P"/>
|
||||
<constraint firstAttribute="trailing" secondItem="BLc-UX-Tny" secondAttribute="trailing" constant="8" id="uOC-Km-Ny3"/>
|
||||
<constraint firstItem="8Zr-ul-QD4" firstAttribute="top" secondItem="9t0-Kj-KTa" secondAttribute="top" constant="9" id="vHg-jJ-TAh"/>
|
||||
</constraints>
|
||||
</view>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstItem="8Zr-ul-QD4" firstAttribute="leading" secondItem="CJi-qt-H0B" secondAttribute="trailing" constant="16" id="3Uk-I4-PZe"/>
|
||||
<constraint firstAttribute="bottom" secondItem="8Zr-ul-QD4" secondAttribute="bottom" constant="11" id="4Nk-Im-af8"/>
|
||||
<constraint firstAttribute="bottom" secondItem="CJi-qt-H0B" secondAttribute="bottom" constant="20" id="HWG-Yb-dlT"/>
|
||||
<constraint firstAttribute="trailing" secondItem="BLc-UX-Tny" secondAttribute="trailing" constant="8" id="nsz-T8-UYO"/>
|
||||
<constraint firstItem="CJi-qt-H0B" firstAttribute="leading" secondItem="wul-fx-3xk" secondAttribute="leading" id="oNj-FL-aak"/>
|
||||
<constraint firstAttribute="bottom" secondItem="BLc-UX-Tny" secondAttribute="bottom" constant="15" id="r9D-W4-zj0"/>
|
||||
<constraint firstAttribute="bottom" secondItem="9t0-Kj-KTa" secondAttribute="bottom" id="04x-Fo-gLu"/>
|
||||
<constraint firstAttribute="trailing" secondItem="9t0-Kj-KTa" secondAttribute="trailing" id="3sR-KR-V9K"/>
|
||||
<constraint firstItem="9t0-Kj-KTa" firstAttribute="leading" secondItem="wul-fx-3xk" secondAttribute="leading" id="vA8-Fm-yW5"/>
|
||||
<constraint firstItem="9t0-Kj-KTa" firstAttribute="top" secondItem="wul-fx-3xk" secondAttribute="top" id="wLA-oR-Fxv"/>
|
||||
</constraints>
|
||||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<connections>
|
||||
<outlet property="contentView" destination="9t0-Kj-KTa" id="Bt6-0c-vYM"/>
|
||||
<outlet property="direction" destination="vcg-Bu-8CX" id="LC4-mS-2iW"/>
|
||||
<outlet property="distanceLeft" destination="w2P-mo-JWt" id="auU-tj-zhI"/>
|
||||
<outlet property="distanceToNextAction" destination="w7a-mi-GxC" id="8SR-Qv-Udp"/>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14E46" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D131" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
|
@ -49,11 +49,27 @@
|
|||
<state key="normal" image="ic_spinner_close_1">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="Gb7-lI-Oqh"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="eGS-Xr-GDV" userLabel="Cancel Button">
|
||||
<rect key="frame" x="0.0" y="2" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="40" id="1oI-UW-T3s"/>
|
||||
<constraint firstAttribute="height" constant="40" id="M2D-g6-ioS"/>
|
||||
</constraints>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="pyU-Pc-KC2"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ECz-mP-xyb" userLabel="Planning Route Box">
|
||||
<rect key="frame" x="56" y="12" width="588" height="20"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Landscape" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wzR-lf-hDI">
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Creating route..." lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wzR-lf-hDI">
|
||||
<rect key="frame" x="0.0" y="0.0" width="588" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="20" id="a91-oh-DfU"/>
|
||||
|
@ -77,7 +93,6 @@
|
|||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="time" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Tw5-0C-086">
|
||||
<rect key="frame" x="0.0" y="0.0" width="35" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="35" id="s7o-ci-WM6"/>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="35" id="uCf-6K-3Iw"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue-Medium" family="Helvetica Neue" pointSize="17"/>
|
||||
|
@ -87,15 +102,17 @@
|
|||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="dist" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ziN-lg-ual">
|
||||
<rect key="frame" x="66" y="0.0" width="31" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="31" id="dXn-mA-2ax"/>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="31" id="lgu-YA-uXa"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Arrivals" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0NR-QB-wCJ">
|
||||
<rect key="frame" x="135" y="0.0" width="453" height="20"/>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Arrivals time in progress" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0NR-QB-wCJ">
|
||||
<rect key="frame" x="135" y="0.0" width="183" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="50" id="Wa6-9K-MFp"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" name="HelveticaNeue" family="Helvetica Neue" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.87" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -103,14 +120,14 @@
|
|||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="trailing" secondItem="0NR-QB-wCJ" secondAttribute="trailing" priority="250" constant="396.5" id="0e9-nG-KCA"/>
|
||||
<constraint firstAttribute="bottom" secondItem="0NR-QB-wCJ" secondAttribute="bottom" id="0q6-9b-n76"/>
|
||||
<constraint firstAttribute="bottom" secondItem="ziN-lg-ual" secondAttribute="bottom" id="1H4-wg-PYA"/>
|
||||
<constraint firstItem="ziN-lg-ual" firstAttribute="top" secondItem="EfU-nE-6L9" secondAttribute="top" id="876-18-bwv"/>
|
||||
<constraint firstItem="Tw5-0C-086" firstAttribute="leading" secondItem="EfU-nE-6L9" secondAttribute="leading" id="Cdb-pB-9Ob"/>
|
||||
<constraint firstAttribute="trailing" secondItem="0NR-QB-wCJ" secondAttribute="trailing" id="PEY-6C-JB9"/>
|
||||
<constraint firstItem="0NR-QB-wCJ" firstAttribute="leading" secondItem="ziN-lg-ual" secondAttribute="trailing" constant="38" id="RFy-07-ZSJ"/>
|
||||
<constraint firstItem="Tw5-0C-086" firstAttribute="top" secondItem="EfU-nE-6L9" secondAttribute="top" id="TjF-vm-SC1"/>
|
||||
<constraint firstAttribute="height" constant="20" id="YPp-YJ-xeQ"/>
|
||||
<constraint firstItem="0NR-QB-wCJ" firstAttribute="leading" secondItem="ziN-lg-ual" secondAttribute="trailing" constant="38" id="fjf-MI-w5n"/>
|
||||
<constraint firstAttribute="bottom" secondItem="Tw5-0C-086" secondAttribute="bottom" id="hwx-Vd-9Qo"/>
|
||||
<constraint firstItem="ziN-lg-ual" firstAttribute="leading" secondItem="Tw5-0C-086" secondAttribute="trailing" constant="31" id="wUi-tY-faO"/>
|
||||
<constraint firstItem="0NR-QB-wCJ" firstAttribute="top" secondItem="EfU-nE-6L9" secondAttribute="top" id="x2A-oT-PLO"/>
|
||||
|
@ -128,7 +145,6 @@
|
|||
<state key="selected" image="ic_walk_on"/>
|
||||
<connections>
|
||||
<action selector="routePreviewChange:" destination="-1" eventType="touchUpInside" id="bf4-fQ-DLf"/>
|
||||
<action selector="routeTypePressed:" destination="EvQ-CH-5qC" eventType="touchUpInside" id="qWU-C0-8CT"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="yNr-DG-8Hu" userLabel="Drive Button">
|
||||
|
@ -140,7 +156,6 @@
|
|||
<state key="selected" image="ic_drive_on"/>
|
||||
<connections>
|
||||
<action selector="routePreviewChange:" destination="-1" eventType="touchUpInside" id="XHs-7h-PYO"/>
|
||||
<action selector="routeTypePressed:" destination="EvQ-CH-5qC" eventType="touchUpInside" id="pI7-Yh-QDE"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
|
@ -167,7 +182,9 @@
|
|||
<constraint firstAttribute="bottom" secondItem="Oe3-Op-uEp" secondAttribute="bottom" constant="2" id="Res-ht-qAb"/>
|
||||
<constraint firstItem="Oe3-Op-uEp" firstAttribute="leading" secondItem="EfU-nE-6L9" secondAttribute="trailing" constant="4" id="W3N-0v-ZMF"/>
|
||||
<constraint firstItem="ECz-mP-xyb" firstAttribute="leading" secondItem="xcU-SM-tN8" secondAttribute="trailing" constant="16" id="aSe-p0-XQb"/>
|
||||
<constraint firstItem="eGS-Xr-GDV" firstAttribute="top" secondItem="bfG-c5-fMl" secondAttribute="top" constant="2" id="deE-9T-acf"/>
|
||||
<constraint firstItem="ECz-mP-xyb" firstAttribute="top" secondItem="bfG-c5-fMl" secondAttribute="top" constant="12" id="g9u-yA-Bzr"/>
|
||||
<constraint firstItem="eGS-Xr-GDV" firstAttribute="leading" secondItem="bfG-c5-fMl" secondAttribute="leading" id="nym-lw-48E"/>
|
||||
<constraint firstAttribute="height" constant="44" id="qFf-mT-U9d"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Oe3-Op-uEp" secondAttribute="trailing" constant="8" id="rTj-VC-TKj"/>
|
||||
<constraint firstAttribute="bottom" secondItem="xcU-SM-tN8" secondAttribute="bottom" constant="2" id="rZp-0H-JZc"/>
|
||||
|
@ -188,12 +205,14 @@
|
|||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<connections>
|
||||
<outlet property="arrivalsLabel" destination="0NR-QB-wCJ" id="E3B-xd-DiO"/>
|
||||
<outlet property="cancelButton" destination="eGS-Xr-GDV" id="9gQ-5b-oIX"/>
|
||||
<outlet property="completeBox" destination="EfU-nE-6L9" id="0eS-Nq-1OX"/>
|
||||
<outlet property="contentView" destination="bfG-c5-fMl" id="kaA-Q0-THS"/>
|
||||
<outlet property="distanceLabel" destination="ziN-lg-ual" id="tVN-kZ-kgK"/>
|
||||
<outlet property="goButtonHeight" destination="O48-rs-xGy" id="IGX-3J-58V"/>
|
||||
<outlet property="goButtonVerticalOffset" destination="C4v-nE-10G" id="YCG-GD-szj"/>
|
||||
<outlet property="pedestrian" destination="0dd-I8-xaK" id="0p2-T2-1MD"/>
|
||||
<outlet property="spinner" destination="xcU-SM-tN8" id="RXH-Hb-oi8"/>
|
||||
<outlet property="status" destination="wzR-lf-hDI" id="FXn-1Y-15m"/>
|
||||
<outlet property="statusBox" destination="ECz-mP-xyb" id="iuO-KL-p0U"/>
|
||||
<outlet property="timeLabel" destination="Tw5-0C-086" id="KJL-hQ-Tcp"/>
|
||||
|
@ -203,6 +222,7 @@
|
|||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="ic_cancel" width="40" height="40"/>
|
||||
<image name="ic_drive_disable" width="40" height="40"/>
|
||||
<image name="ic_drive_off" width="40" height="40"/>
|
||||
<image name="ic_drive_on" width="40" height="40"/>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14E46" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14D131" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
|
||||
|
@ -49,6 +49,22 @@
|
|||
<state key="normal" image="ic_spinner_close_1">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="Nnn-dW-Uc9"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="d2m-Mj-kxw" userLabel="Cancel Button">
|
||||
<rect key="frame" x="0.0" y="2" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="40" id="ULq-q0-KBT"/>
|
||||
<constraint firstAttribute="width" constant="40" id="qew-DV-5Og"/>
|
||||
</constraints>
|
||||
<state key="normal" image="ic_cancel">
|
||||
<color key="titleShadowColor" white="0.5" alpha="1" colorSpace="calibratedWhite"/>
|
||||
</state>
|
||||
<connections>
|
||||
<action selector="navigationCancelPressed:" destination="-1" eventType="touchUpInside" id="Rnw-Di-BNW"/>
|
||||
</connections>
|
||||
</button>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sxx-mC-hOX" userLabel="Buttons Box">
|
||||
<rect key="frame" x="232" y="2" width="80" height="40"/>
|
||||
|
@ -62,7 +78,6 @@
|
|||
<state key="selected" image="ic_walk_on"/>
|
||||
<connections>
|
||||
<action selector="routePreviewChange:" destination="-1" eventType="touchUpInside" id="p1B-We-5Eo"/>
|
||||
<action selector="routeTypePressed:" destination="88L-VX-bE9" eventType="touchUpInside" id="qOv-nu-Col"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="q46-6u-Dnz" userLabel="Drive Button">
|
||||
|
@ -74,7 +89,6 @@
|
|||
<state key="selected" image="ic_drive_on"/>
|
||||
<connections>
|
||||
<action selector="routePreviewChange:" destination="-1" eventType="touchUpInside" id="PmK-Z7-ySd"/>
|
||||
<action selector="routeTypePressed:" destination="88L-VX-bE9" eventType="touchUpInside" id="p0y-tA-r6k"/>
|
||||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
|
@ -95,7 +109,7 @@
|
|||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="FjK-vt-keq" userLabel="Planning Route Box">
|
||||
<rect key="frame" x="56" y="12" width="172" height="20"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Portrait" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="e6W-cv-xtL">
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Creating route..." lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="e6W-cv-xtL">
|
||||
<rect key="frame" x="0.0" y="0.0" width="172" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="20" id="JUk-KJ-2Ic"/>
|
||||
|
@ -170,7 +184,9 @@
|
|||
<constraint firstItem="FjK-vt-keq" firstAttribute="top" secondItem="q2t-0L-2K9" secondAttribute="top" constant="12" id="Ybi-xR-Cb9"/>
|
||||
<constraint firstItem="FjK-vt-keq" firstAttribute="leading" secondItem="HOJ-SC-XHE" secondAttribute="trailing" constant="16" id="YjO-tt-mNf"/>
|
||||
<constraint firstAttribute="bottom" secondItem="HOJ-SC-XHE" secondAttribute="bottom" constant="2" id="aHI-ON-PIb"/>
|
||||
<constraint firstItem="d2m-Mj-kxw" firstAttribute="leading" secondItem="q2t-0L-2K9" secondAttribute="leading" id="dNR-t0-0MG"/>
|
||||
<constraint firstItem="TAN-st-OOM" firstAttribute="top" secondItem="q2t-0L-2K9" secondAttribute="top" constant="12" id="gFK-VL-5cQ"/>
|
||||
<constraint firstItem="d2m-Mj-kxw" firstAttribute="top" secondItem="q2t-0L-2K9" secondAttribute="top" constant="2" id="gsp-3g-pwS"/>
|
||||
<constraint firstAttribute="bottom" secondItem="sxx-mC-hOX" secondAttribute="bottom" constant="2" id="jaO-c5-e6f"/>
|
||||
<constraint firstItem="TAN-st-OOM" firstAttribute="top" secondItem="q2t-0L-2K9" secondAttribute="top" constant="32" id="vfI-Sk-fAH"/>
|
||||
</constraints>
|
||||
|
@ -193,12 +209,14 @@
|
|||
<nil key="simulatedStatusBarMetrics"/>
|
||||
<freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
|
||||
<connections>
|
||||
<outlet property="cancelButton" destination="d2m-Mj-kxw" id="tOI-vU-NUz"/>
|
||||
<outlet property="completeBox" destination="TAN-st-OOM" id="KIc-tq-lnF"/>
|
||||
<outlet property="contentView" destination="q2t-0L-2K9" id="QBv-uC-WJC"/>
|
||||
<outlet property="distanceLabel" destination="Z2M-yN-YAq" id="055-qJ-WAJ"/>
|
||||
<outlet property="goButtonHeight" destination="1mg-dZ-WyP" id="Ql3-hB-aTD"/>
|
||||
<outlet property="goButtonVerticalOffset" destination="2ei-gn-88c" id="jT5-CH-aMT"/>
|
||||
<outlet property="pedestrian" destination="p2P-UP-rWT" id="okx-QZ-c9c"/>
|
||||
<outlet property="spinner" destination="HOJ-SC-XHE" id="dyz-fj-h1I"/>
|
||||
<outlet property="status" destination="e6W-cv-xtL" id="APO-1K-MH5"/>
|
||||
<outlet property="statusBox" destination="FjK-vt-keq" id="WgW-e1-R1d"/>
|
||||
<outlet property="timeLabel" destination="yfW-D7-qCl" id="f6d-96-ej3"/>
|
||||
|
@ -208,6 +226,7 @@
|
|||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
<image name="ic_cancel" width="40" height="40"/>
|
||||
<image name="ic_drive_disable" width="40" height="40"/>
|
||||
<image name="ic_drive_off" width="40" height="40"/>
|
||||
<image name="ic_drive_on" width="40" height="40"/>
|
||||
|
|
|
@ -8,9 +8,9 @@
|
|||
|
||||
#import "MWMNavigationView.h"
|
||||
|
||||
@interface MWMRoutePreview : MWMNavigationView
|
||||
@class MWMNavigationDashboardEntity;
|
||||
|
||||
@property (nonatomic) BOOL showGoButton;
|
||||
@interface MWMRoutePreview : MWMNavigationView
|
||||
|
||||
@property (weak, nonatomic) IBOutlet UILabel * status;
|
||||
@property (weak, nonatomic) IBOutlet UIButton * pedestrian;
|
||||
|
@ -18,5 +18,12 @@
|
|||
@property (weak, nonatomic) IBOutlet UILabel * timeLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel * distanceLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel * arrivalsLabel;
|
||||
@property (weak, nonatomic) IBOutlet UIButton * spinner;
|
||||
@property (weak, nonatomic) IBOutlet UIButton * cancelButton;
|
||||
|
||||
- (void)configureWithEntity:(MWMNavigationDashboardEntity *)entity;
|
||||
- (void)statePlaning;
|
||||
|
||||
- (void)showGoButtonAnimated:(BOOL)show;
|
||||
|
||||
@end
|
||||
|
|
|
@ -6,7 +6,9 @@
|
|||
// Copyright (c) 2015 MapsWithMe. All rights reserved.
|
||||
//
|
||||
|
||||
#import "MWMNavigationDashboardEntity.h"
|
||||
#import "MWMRoutePreview.h"
|
||||
#import "TimeUtils.h"
|
||||
#import "UIKitCategories.h"
|
||||
|
||||
@interface MWMRoutePreview ()
|
||||
|
@ -18,6 +20,8 @@
|
|||
|
||||
@property (weak, nonatomic) IBOutlet NSLayoutConstraint * goButtonHeight;
|
||||
|
||||
@property (nonatomic) BOOL showGoButton;
|
||||
|
||||
@end
|
||||
|
||||
@implementation MWMRoutePreview
|
||||
|
@ -26,13 +30,38 @@
|
|||
{
|
||||
[super awakeFromNib];
|
||||
self.goButtonHiddenOffset = self.goButtonVerticalOffset.constant;
|
||||
self.completeBox.hidden = YES;
|
||||
[self statePlaning];
|
||||
}
|
||||
|
||||
- (IBAction)routeTypePressed:(UIButton *)sender
|
||||
- (void)configureWithEntity:(MWMNavigationDashboardEntity *)entity
|
||||
{
|
||||
self.pedestrian.selected = self.vehicle.selected = NO;
|
||||
sender.selected = YES;
|
||||
self.timeLabel.text = [NSDateFormatter estimatedArrivalTimeWithSeconds:@(entity.timeToTarget)];
|
||||
self.distanceLabel.text = [NSString stringWithFormat:@"%@ %@", entity.targetDistance, entity.targetUnits];
|
||||
}
|
||||
|
||||
- (void)statePlaning
|
||||
{
|
||||
self.showGoButton = NO;
|
||||
self.statusBox.hidden = NO;
|
||||
self.completeBox.hidden = YES;
|
||||
self.spinner.hidden = NO;
|
||||
self.cancelButton.hidden = YES;
|
||||
|
||||
NSUInteger const capacity = 12;
|
||||
NSMutableArray * images = [NSMutableArray arrayWithCapacity:capacity];
|
||||
for (int i = 1; i != capacity; ++i)
|
||||
[images addObject:[UIImage imageNamed:[NSString stringWithFormat:@"ic_spinner_close_%@", @(i)]]];
|
||||
|
||||
self.spinner.imageView.animationImages = images.copy;
|
||||
self.spinner.imageView.animationDuration = .5;
|
||||
[self.spinner.imageView startAnimating];
|
||||
}
|
||||
|
||||
- (void)showGoButtonAnimated:(BOOL)show
|
||||
{
|
||||
[self layoutIfNeeded];
|
||||
self.showGoButton = show;
|
||||
[UIView animateWithDuration:0.2 animations:^{ [self layoutIfNeeded]; }];
|
||||
}
|
||||
|
||||
#pragma mark - Properties
|
||||
|
@ -40,11 +69,11 @@
|
|||
- (void)setShowGoButton:(BOOL)showGoButton
|
||||
{
|
||||
_showGoButton = showGoButton;
|
||||
[self layoutIfNeeded];
|
||||
self.goButtonVerticalOffset.constant = showGoButton ? 0.0 : self.goButtonHiddenOffset;
|
||||
self.statusBox.hidden = YES;
|
||||
self.completeBox.hidden = NO;
|
||||
[UIView animateWithDuration:0.2 animations:^{ [self layoutIfNeeded]; }];
|
||||
self.spinner.hidden = YES;
|
||||
self.cancelButton.hidden = NO;
|
||||
}
|
||||
|
||||
- (CGFloat)visibleHeight
|
|
@ -35,7 +35,6 @@
|
|||
- (void)changeBookmarkDescription;
|
||||
- (void)share;
|
||||
- (void)route;
|
||||
- (void)stopBuildingRoute;
|
||||
- (void)reloadBookmark;
|
||||
- (void)willStartEditingBookmarkTitle:(CGFloat)keyboardHeight;
|
||||
- (void)willFinishEditingBookmarkTitle:(NSString *)title;
|
||||
|
|
|
@ -93,11 +93,6 @@ extern NSString * const kAlohalyticsTapEventKey;
|
|||
[self.manager buildRoute];
|
||||
}
|
||||
|
||||
- (void)stopBuildingRoute
|
||||
{
|
||||
[self.actionBar dismissActivityIndicatior];
|
||||
}
|
||||
|
||||
- (void)addPlacePageShadowToView:(UIView *)view offset:(CGSize)offset
|
||||
{
|
||||
CALayer * layer = view.layer;
|
||||
|
|
|
@ -17,7 +17,6 @@
|
|||
|
||||
+ (MWMPlacePageActionBar *)actionBarForPlacePage:(MWMPlacePage *)placePage;
|
||||
- (void)configureForMyPosition:(BOOL)isMyPosition;
|
||||
- (void)dismissActivityIndicatior;
|
||||
|
||||
- (instancetype)init __attribute__((unavailable("init is unavailable, call actionBarForPlacePage: instead")));
|
||||
- (instancetype)initWithCoder:(NSCoder *)aDecoder __attribute__((unavailable("initWithCoder: is unavailable, call actionBarForPlacePage: instead")));
|
||||
|
|
|
@ -29,7 +29,6 @@ static NSString * const kPlacePageActionBarNibName = @"PlacePageActionBar";
|
|||
@property (weak, nonatomic) IBOutlet UILabel * routeLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel * bookmarkLabel;
|
||||
@property (weak, nonatomic) IBOutlet UILabel * shareLabel;
|
||||
@property (nonatomic) UIActivityIndicatorView * indicatior;
|
||||
|
||||
@end
|
||||
|
||||
|
@ -42,10 +41,7 @@ static NSString * const kPlacePageActionBarNibName = @"PlacePageActionBar";
|
|||
BOOL const isMyPosition = placePage.manager.entity.type == MWMPlacePageEntityTypeMyPosition;
|
||||
bar.routeButton.hidden = isMyPosition;
|
||||
bar.autoresizingMask = UIViewAutoresizingNone;
|
||||
BOOL const isPedestrian = GetFramework().GetRouter() == routing::RouterType::Pedestrian;
|
||||
NSString * routeImageName = isPedestrian ? @"ic_route_walk" : @"ic_route";
|
||||
[bar.routeButton setImage:[UIImage imageNamed:routeImageName] forState:UIControlStateNormal];
|
||||
[self setupBookmarkButton:(MWMPlacePageActionBar *)bar];
|
||||
[self setupBookmarkButton:bar];
|
||||
return bar;
|
||||
}
|
||||
|
||||
|
@ -96,9 +92,6 @@ static NSString * const kPlacePageActionBarNibName = @"PlacePageActionBar";
|
|||
- (void)layoutSubviews
|
||||
{
|
||||
BOOL const isMyPosition = self.placePage.manager.entity.type == MWMPlacePageEntityTypeMyPosition;
|
||||
if (GetFramework().IsRouteBuilding() && !isMyPosition)
|
||||
[self startActivityIndicator];
|
||||
|
||||
CGPoint const center = self.center;
|
||||
CGFloat const leftOffset = 18.;
|
||||
if (isMyPosition)
|
||||
|
@ -108,7 +101,6 @@ static NSString * const kPlacePageActionBarNibName = @"PlacePageActionBar";
|
|||
CGFloat const actualWidth = MIN(MIN(size.height, size.width), maximumWidth);
|
||||
self.bookmarkButton.center = CGPointMake(3. * actualWidth / 4., self.bookmarkButton.center.y);
|
||||
self.shareButton.center = CGPointMake(actualWidth / 4., self.bookmarkButton.center.y);
|
||||
[self.indicatior removeFromSuperview];
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -127,25 +119,7 @@ static NSString * const kPlacePageActionBarNibName = @"PlacePageActionBar";
|
|||
|
||||
- (IBAction)routeTap
|
||||
{
|
||||
[self startActivityIndicator];
|
||||
[self.placePage route];
|
||||
}
|
||||
|
||||
- (void)startActivityIndicator
|
||||
{
|
||||
[self.indicatior removeFromSuperview];
|
||||
self.indicatior = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
|
||||
self.indicatior.center = self.routeButton.center;
|
||||
self.routeButton.hidden = YES;
|
||||
[self.indicatior startAnimating];
|
||||
[self addSubview:self.indicatior];
|
||||
}
|
||||
|
||||
- (void)dismissActivityIndicatior
|
||||
{
|
||||
[self.indicatior removeFromSuperview];
|
||||
self.indicatior = nil;
|
||||
self.routeButton.hidden = NO;
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
@ -26,7 +26,6 @@
|
|||
- (void)refreshPlacePage;
|
||||
- (void)dismissPlacePage;
|
||||
- (void)buildRoute;
|
||||
- (void)stopBuildingRoute;
|
||||
- (void)share;
|
||||
- (void)addBookmark;
|
||||
- (void)removeBookmark;
|
||||
|
|
|
@ -170,12 +170,13 @@ typedef NS_ENUM(NSUInteger, MWMPlacePageManagerState)
|
|||
|
||||
- (void)buildRoute
|
||||
{
|
||||
[self.delegate buildRoute:m_userMark->GetUserMark()->GetOrg()];
|
||||
}
|
||||
|
||||
- (void)stopBuildingRoute
|
||||
{
|
||||
[self.placePage stopBuildingRoute];
|
||||
auto & f = GetFramework();
|
||||
m2::PointD const & destination = m_userMark->GetUserMark()->GetOrg();
|
||||
CLLocationCoordinate2D const & myCoordinate = [MapsAppDelegate theApp].m_locationManager.lastLocation.coordinate;
|
||||
m2::PointD const myPosition {MercatorBounds::LonToX(myCoordinate.longitude), MercatorBounds::LatToY(myCoordinate.latitude)};
|
||||
routing::RouterType const actualyRoterType = f.GetBestRouter(myPosition, destination);
|
||||
f.SetRouter(actualyRoterType);
|
||||
[self.delegate buildRoute:destination];
|
||||
}
|
||||
|
||||
- (void)share
|
||||
|
|
|
@ -165,56 +165,57 @@ typedef NS_OPTIONS(NSUInteger, MapInfoView)
|
|||
|
||||
if (res.IsValid())
|
||||
{
|
||||
NSMutableDictionary *routeInfo = [NSMutableDictionary dictionaryWithCapacity:7];
|
||||
routeInfo[@"timeToTarget"] = @(res.m_time);
|
||||
routeInfo[@"targetDistance"] = [NSString stringWithUTF8String:res.m_distToTarget.c_str()];
|
||||
routeInfo[@"targetMetrics"] = [NSString stringWithUTF8String:res.m_targetUnitsSuffix.c_str()];
|
||||
routeInfo[@"turnDistance"] = [NSString stringWithUTF8String:res.m_distToTurn.c_str()];
|
||||
routeInfo[@"turnMetrics"] = [NSString stringWithUTF8String:res.m_turnUnitsSuffix.c_str()];
|
||||
routeInfo[@"turnType"] = [self turnTypeToImage:res.m_turn];
|
||||
static NSNumber * turnTypeValue;
|
||||
if (res.m_turn == routing::turns::TurnDirection::EnterRoundAbout)
|
||||
turnTypeValue = @(res.m_exitNum);
|
||||
else if (res.m_turn != routing::turns::TurnDirection::StayOnRoundAbout)
|
||||
turnTypeValue = nil;
|
||||
if (turnTypeValue)
|
||||
[routeInfo setObject:turnTypeValue forKey:@"turnTypeValue"];
|
||||
|
||||
[self.routeView updateWithInfo:routeInfo];
|
||||
[self.controlsManager setupRoutingDashboard:res];
|
||||
// NSMutableDictionary *routeInfo = [NSMutableDictionary dictionaryWithCapacity:7];
|
||||
// routeInfo[@"timeToTarget"] = @(res.m_time);
|
||||
// routeInfo[@"targetDistance"] = [NSString stringWithUTF8String:res.m_distToTarget.c_str()];
|
||||
// routeInfo[@"targetMetrics"] = [NSString stringWithUTF8String:res.m_targetUnitsSuffix.c_str()];
|
||||
// routeInfo[@"turnDistance"] = [NSString stringWithUTF8String:res.m_distToTurn.c_str()];
|
||||
// routeInfo[@"turnMetrics"] = [NSString stringWithUTF8String:res.m_turnUnitsSuffix.c_str()];
|
||||
// routeInfo[@"turnType"] = [self turnTypeToImage:res.m_turn];
|
||||
// static NSNumber * turnTypeValue;
|
||||
// if (res.m_turn == routing::turns::TurnDirection::EnterRoundAbout)
|
||||
// turnTypeValue = @(res.m_exitNum);
|
||||
// else if (res.m_turn != routing::turns::TurnDirection::StayOnRoundAbout)
|
||||
// turnTypeValue = nil;
|
||||
// if (turnTypeValue)
|
||||
// [routeInfo setObject:turnTypeValue forKey:@"turnTypeValue"];
|
||||
//
|
||||
// [self.routeView updateWithInfo:routeInfo];
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
- (NSString *)turnTypeToImage:(routing::turns::TurnDirection)type
|
||||
{
|
||||
using namespace routing::turns;
|
||||
switch (type)
|
||||
{
|
||||
case TurnDirection::TurnSlightRight:
|
||||
return @"right-1";
|
||||
case TurnDirection::TurnRight:
|
||||
return @"right-2";
|
||||
case TurnDirection::TurnSharpRight:
|
||||
return @"right-3";
|
||||
|
||||
case TurnDirection::TurnSlightLeft:
|
||||
return @"left-1";
|
||||
case TurnDirection::TurnLeft:
|
||||
return @"left-2";
|
||||
case TurnDirection::TurnSharpLeft:
|
||||
return @"left-3";
|
||||
|
||||
case TurnDirection::UTurn:
|
||||
return @"turn-around";
|
||||
|
||||
case TurnDirection::LeaveRoundAbout:
|
||||
case TurnDirection::StayOnRoundAbout:
|
||||
case TurnDirection::EnterRoundAbout:
|
||||
return @"circle";
|
||||
|
||||
default: return @"straight";
|
||||
}
|
||||
}
|
||||
//
|
||||
//- (NSString *)turnTypeToImage:(routing::turns::TurnDirection)type
|
||||
//{
|
||||
// using namespace routing::turns;
|
||||
// switch (type)
|
||||
// {
|
||||
// case TurnDirection::TurnSlightRight:
|
||||
// return @"right-1";
|
||||
// case TurnDirection::TurnRight:
|
||||
// return @"right-2";
|
||||
// case TurnDirection::TurnSharpRight:
|
||||
// return @"right-3";
|
||||
//
|
||||
// case TurnDirection::TurnSlightLeft:
|
||||
// return @"left-1";
|
||||
// case TurnDirection::TurnLeft:
|
||||
// return @"left-2";
|
||||
// case TurnDirection::TurnSharpLeft:
|
||||
// return @"left-3";
|
||||
//
|
||||
// case TurnDirection::UTurn:
|
||||
// return @"turn-around";
|
||||
//
|
||||
// case TurnDirection::LeaveRoundAbout:
|
||||
// case TurnDirection::StayOnRoundAbout:
|
||||
// case TurnDirection::EnterRoundAbout:
|
||||
// return @"circle";
|
||||
//
|
||||
// default: return @"straight";
|
||||
// }
|
||||
//}
|
||||
|
||||
- (void)onCompassUpdate:(location::CompassInfo const &)info
|
||||
{
|
||||
|
@ -710,7 +711,6 @@ typedef NS_OPTIONS(NSUInteger, MapInfoView)
|
|||
|
||||
f.SetRouteBuildingListener([self, &f](routing::IRouter::ResultCode code, vector<storage::TIndex> const & absentCountries, vector<storage::TIndex> const & absentRoutes)
|
||||
{
|
||||
[self.controlsManager stopBuildingRoute];
|
||||
switch (code)
|
||||
{
|
||||
case routing::IRouter::ResultCode::NoError:
|
||||
|
@ -720,10 +720,12 @@ typedef NS_OPTIONS(NSUInteger, MapInfoView)
|
|||
[self.searchView setState:SearchViewStateHidden animated:YES];
|
||||
[self performAfterDelay:0.3 block:^
|
||||
{
|
||||
if (self.forceRoutingStateChange == ForceRoutingStateChangeStartFollowing)
|
||||
[self routeViewDidStartFollowing:self.routeView];
|
||||
else
|
||||
[self.routeView setState:RouteViewStateInfo animated:YES];
|
||||
// if (self.forceRoutingStateChange == ForceRoutingStateChangeStartFollowing)
|
||||
// [self routeViewDidStartFollowing:self.routeView];
|
||||
// else
|
||||
// [self.routeView setState:RouteViewStateInfo animated:YES];
|
||||
//TODO(Vlad): Implement logic for restore route.
|
||||
[self.controlsManager routingReady];
|
||||
[self updateRoutingInfo];
|
||||
}];
|
||||
|
||||
|
@ -736,6 +738,7 @@ typedef NS_OPTIONS(NSUInteger, MapInfoView)
|
|||
}
|
||||
break;
|
||||
}
|
||||
//TODO(Vlad): Implement routing error handler in new navigation UI.
|
||||
case routing::IRouter::RouteFileNotExist:
|
||||
case routing::IRouter::InconsistentMWMandRoute:
|
||||
case routing::IRouter::NeedMoreMaps:
|
||||
|
|
|
@ -394,6 +394,7 @@ static BOOL keyboardLoaded = NO;
|
|||
return YES;
|
||||
}
|
||||
|
||||
//TODO(Vlad): Remove this code after new routing UI will be implement.
|
||||
- (BOOL)tryToChangeRoutingModeCmd:(NSString *)cmd
|
||||
{
|
||||
BOOL const isPedestrian = [cmd isEqualToString:@"?pedestrian"];
|
||||
|
@ -417,10 +418,6 @@ static BOOL keyboardLoaded = NO;
|
|||
if ([self tryChangeMapStyleCmd:currentText])
|
||||
return;
|
||||
|
||||
// TODO(Vlad): This code only for demonstration purposes and will be removed soon
|
||||
if ([self tryToChangeRoutingModeCmd:currentText])
|
||||
return;
|
||||
|
||||
if ([currentText length])
|
||||
{
|
||||
[self hideDownloadMapRequest];
|
||||
|
|
Before Width: | Height: | Size: 445 B After Width: | Height: | Size: 728 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 548 B |
Before Width: | Height: | Size: 1,015 B |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 3.8 KiB |
|
@ -1,23 +0,0 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "slight_compact_mdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "slight_compact_xhdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "slight_compact_xxhdpi.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 1,018 B |
Before Width: | Height: | Size: 2 KiB |
Before Width: | Height: | Size: 3.1 KiB |
|
@ -1,23 +0,0 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "simple_compact_mdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "simple_compact_xhdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "simple_compact_xxhdpi.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 739 B |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 863 B |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 2.6 KiB |
|
@ -1,23 +0,0 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "straight_compact_mdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "straight_compact_xhdpi.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "straight_compact_xxhdpi.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 518 B |
Before Width: | Height: | Size: 812 B |
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 933 B |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 2.7 KiB |
|
@ -3,17 +3,17 @@
|
|||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "ic_route_walk.png"
|
||||
"filename" : "finish_point.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "ic_route_walk@2x.png"
|
||||
"filename" : "finish_point@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "ic_route_walk@3x.png"
|
||||
"filename" : "finish_point@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
BIN
iphone/Maps/Images.xcassets/Turns/finish_point.imageset/finish_point.png
vendored
Normal file
After Width: | Height: | Size: 774 B |
BIN
iphone/Maps/Images.xcassets/Turns/finish_point.imageset/finish_point@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.3 KiB |
BIN
iphone/Maps/Images.xcassets/Turns/finish_point.imageset/finish_point@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.8 KiB |
|
@ -3,17 +3,17 @@
|
|||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "round_compact_mdpi.png"
|
||||
"filename" : "round.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "round_compact_xhdpi.png"
|
||||
"filename" : "round@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "round_compact_xxhdpi.png"
|
||||
"filename" : "round@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
BIN
iphone/Maps/Images.xcassets/Turns/round.imageset/round.png
vendored
Normal file
After Width: | Height: | Size: 881 B |
BIN
iphone/Maps/Images.xcassets/Turns/round.imageset/round@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
iphone/Maps/Images.xcassets/Turns/round.imageset/round@3x.png
vendored
Normal file
After Width: | Height: | Size: 2.1 KiB |
|
@ -3,17 +3,17 @@
|
|||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "sharp_compact_mdpi.png"
|
||||
"filename" : "sharp_left.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "sharp_compact_xhdpi.png"
|
||||
"filename" : "sharp_left@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "sharp_compact_xxhdpi.png"
|
||||
"filename" : "sharp_left@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
BIN
iphone/Maps/Images.xcassets/Turns/sharp_left.imageset/sharp_left.png
vendored
Normal file
After Width: | Height: | Size: 659 B |
BIN
iphone/Maps/Images.xcassets/Turns/sharp_left.imageset/sharp_left@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
iphone/Maps/Images.xcassets/Turns/sharp_left.imageset/sharp_left@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.6 KiB |
|
@ -3,17 +3,17 @@
|
|||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "uturn_compact_mdpi.png"
|
||||
"filename" : "sharp_right.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "uturn_compact_xhdpi.png"
|
||||
"filename" : "sharp_right@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "uturn_compact_xxhdpi.png"
|
||||
"filename" : "sharp_right@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
BIN
iphone/Maps/Images.xcassets/Turns/sharp_right.imageset/sharp_right.png
vendored
Normal file
After Width: | Height: | Size: 655 B |
BIN
iphone/Maps/Images.xcassets/Turns/sharp_right.imageset/sharp_right@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
iphone/Maps/Images.xcassets/Turns/sharp_right.imageset/sharp_right@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.6 KiB |
23
iphone/Maps/Images.xcassets/Turns/simple_left.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "simple_left.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "simple_left@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "simple_left@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/simple_left.imageset/simple_left.png
vendored
Normal file
After Width: | Height: | Size: 484 B |
BIN
iphone/Maps/Images.xcassets/Turns/simple_left.imageset/simple_left@2x.png
vendored
Normal file
After Width: | Height: | Size: 803 B |
BIN
iphone/Maps/Images.xcassets/Turns/simple_left.imageset/simple_left@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
23
iphone/Maps/Images.xcassets/Turns/simple_right.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "simple_right.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "simple_right@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "simple_right@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/simple_right.imageset/simple_right.png
vendored
Normal file
After Width: | Height: | Size: 483 B |
BIN
iphone/Maps/Images.xcassets/Turns/simple_right.imageset/simple_right@2x.png
vendored
Normal file
After Width: | Height: | Size: 813 B |
BIN
iphone/Maps/Images.xcassets/Turns/simple_right.imageset/simple_right@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.1 KiB |
23
iphone/Maps/Images.xcassets/Turns/slight_left.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "slight_left.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "slight_left@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "slight_left@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/slight_left.imageset/slight_left.png
vendored
Normal file
After Width: | Height: | Size: 539 B |
BIN
iphone/Maps/Images.xcassets/Turns/slight_left.imageset/slight_left@2x.png
vendored
Normal file
After Width: | Height: | Size: 970 B |
BIN
iphone/Maps/Images.xcassets/Turns/slight_left.imageset/slight_left@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.3 KiB |
23
iphone/Maps/Images.xcassets/Turns/slight_right.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "slight_right.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "slight_right@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "slight_right@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/slight_right.imageset/slight_right.png
vendored
Normal file
After Width: | Height: | Size: 545 B |
BIN
iphone/Maps/Images.xcassets/Turns/slight_right.imageset/slight_right@2x.png
vendored
Normal file
After Width: | Height: | Size: 983 B |
BIN
iphone/Maps/Images.xcassets/Turns/slight_right.imageset/slight_right@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.3 KiB |
23
iphone/Maps/Images.xcassets/Turns/straight.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "straight.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "straight@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "straight@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/straight.imageset/straight.png
vendored
Normal file
After Width: | Height: | Size: 353 B |
BIN
iphone/Maps/Images.xcassets/Turns/straight.imageset/straight@2x.png
vendored
Normal file
After Width: | Height: | Size: 466 B |
BIN
iphone/Maps/Images.xcassets/Turns/straight.imageset/straight@3x.png
vendored
Normal file
After Width: | Height: | Size: 612 B |
23
iphone/Maps/Images.xcassets/Turns/uturn.imageset/Contents.json
vendored
Normal file
|
@ -0,0 +1,23 @@
|
|||
{
|
||||
"images" : [
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x",
|
||||
"filename" : "uturn.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x",
|
||||
"filename" : "uturn@2x.png"
|
||||
},
|
||||
{
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x",
|
||||
"filename" : "uturn@3x.png"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"version" : 1,
|
||||
"author" : "xcode"
|
||||
}
|
||||
}
|
BIN
iphone/Maps/Images.xcassets/Turns/uturn.imageset/uturn.png
vendored
Normal file
After Width: | Height: | Size: 747 B |
BIN
iphone/Maps/Images.xcassets/Turns/uturn.imageset/uturn@2x.png
vendored
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
iphone/Maps/Images.xcassets/Turns/uturn.imageset/uturn@3x.png
vendored
Normal file
After Width: | Height: | Size: 1.7 KiB |
|
@ -62,13 +62,6 @@
|
|||
34BC72291B0DECAE0012A34B /* MWMZoomButtons.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34BC721D1B0DECAE0012A34B /* MWMZoomButtons.mm */; };
|
||||
34BC722A1B0DECAE0012A34B /* MWMZoomButtonsView.m in Sources */ = {isa = PBXBuildFile; fileRef = 34BC721F1B0DECAE0012A34B /* MWMZoomButtonsView.m */; };
|
||||
34BC722B1B0DECAE0012A34B /* MWMZoomButtonsView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34BC72201B0DECAE0012A34B /* MWMZoomButtonsView.xib */; };
|
||||
34D783D21B5F9D7800E0C0EE /* MWMLandscapeNavigationDashboard.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34D783C91B5F9D7800E0C0EE /* MWMLandscapeNavigationDashboard.xib */; };
|
||||
34D783D31B5F9D7800E0C0EE /* MWMNavigationDashboard.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34D783CB1B5F9D7800E0C0EE /* MWMNavigationDashboard.mm */; };
|
||||
34D783D41B5F9D7800E0C0EE /* MWMPortraitNavigationDashboard.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34D783CC1B5F9D7800E0C0EE /* MWMPortraitNavigationDashboard.xib */; };
|
||||
34D783D51B5F9D7800E0C0EE /* MWMLandscapeRoutePreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34D783CE1B5F9D7800E0C0EE /* MWMLandscapeRoutePreview.xib */; };
|
||||
34D783D61B5F9D7800E0C0EE /* MWMPortraitRoutePreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = 34D783CF1B5F9D7800E0C0EE /* MWMPortraitRoutePreview.xib */; };
|
||||
34D783D71B5F9D7800E0C0EE /* MWMRoutePreview.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D783D11B5F9D7800E0C0EE /* MWMRoutePreview.m */; };
|
||||
34D783DA1B5F9DB100E0C0EE /* MWMNavigationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 34D783D91B5F9DB100E0C0EE /* MWMNavigationView.m */; };
|
||||
34DF4D111AE77B9F0012702D /* MWMWKInterfaceController.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34DF4D101AE77B9F0012702D /* MWMWKInterfaceController.mm */; };
|
||||
45159BF91B0CA2D5009BFA85 /* resources-6plus in Resources */ = {isa = PBXBuildFile; fileRef = 45159BF81B0CA2D5009BFA85 /* resources-6plus */; };
|
||||
454040621AD2D75E007A9B12 /* OpenGLES.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46F26C7210F61FD600ECCA39 /* OpenGLES.framework */; };
|
||||
|
@ -238,6 +231,14 @@
|
|||
F6BC1E4E1ACBE96100EF0360 /* FBSDKShareKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F6BC1E4C1ACBE96100EF0360 /* FBSDKShareKit.framework */; settings = {ATTRIBUTES = (Required, ); }; };
|
||||
F6BC1E521ACBF98600EF0360 /* MWMFacebookAlert.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BC1E511ACBF98600EF0360 /* MWMFacebookAlert.mm */; };
|
||||
F6BC1E541ACBF9AB00EF0360 /* MWMFacebookAlert.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6BC1E531ACBF9AB00EF0360 /* MWMFacebookAlert.xib */; };
|
||||
F6BD33781B62400E00F2CE18 /* MWMLandscapeNavigationDashboard.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6BD33741B62400E00F2CE18 /* MWMLandscapeNavigationDashboard.xib */; };
|
||||
F6BD33791B62400E00F2CE18 /* MWMNavigationDashboard.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD33761B62400E00F2CE18 /* MWMNavigationDashboard.mm */; };
|
||||
F6BD337A1B62400E00F2CE18 /* MWMPortraitNavigationDashboard.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6BD33771B62400E00F2CE18 /* MWMPortraitNavigationDashboard.xib */; };
|
||||
F6BD337F1B62403B00F2CE18 /* MWMLandscapeRoutePreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6BD337B1B62403B00F2CE18 /* MWMLandscapeRoutePreview.xib */; };
|
||||
F6BD33801B62403B00F2CE18 /* MWMPortraitRoutePreview.xib in Resources */ = {isa = PBXBuildFile; fileRef = F6BD337C1B62403B00F2CE18 /* MWMPortraitRoutePreview.xib */; };
|
||||
F6BD33811B62403B00F2CE18 /* MWMRoutePreview.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD337E1B62403B00F2CE18 /* MWMRoutePreview.mm */; };
|
||||
F6BD33841B6240F200F2CE18 /* MWMNavigationView.m in Sources */ = {isa = PBXBuildFile; fileRef = F6BD33831B6240F200F2CE18 /* MWMNavigationView.m */; };
|
||||
F6BD33871B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6BD33861B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm */; };
|
||||
F6C6FE201AD6BEA0009FDED7 /* MWMWatchLocationTracker.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6C6FE1F1AD6BEA0009FDED7 /* MWMWatchLocationTracker.mm */; };
|
||||
F6C9343C1AE4F94A00DDC624 /* MWMAnimator.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6C9343B1AE4F94A00DDC624 /* MWMAnimator.mm */; };
|
||||
F6C934401AE64E4200DDC624 /* MWMSpringAnimation.mm in Sources */ = {isa = PBXBuildFile; fileRef = F6C9343F1AE64E4200DDC624 /* MWMSpringAnimation.mm */; };
|
||||
|
@ -362,7 +363,6 @@
|
|||
28A0AB4B0D9B1048005BE974 /* Maps_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = Maps_Prefix.pch; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objc; };
|
||||
28AD73870D9D96C1002E5188 /* MainWindow.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainWindow.xib; sourceTree = SOURCE_ROOT; };
|
||||
29B97316FDCFA39411CA2CEA /* main.mm */ = {isa = PBXFileReference; explicitFileType = sourcecode.cpp.objcpp; fileEncoding = 4; path = main.mm; sourceTree = "<group>"; };
|
||||
340944A71B60EDF4008E7AF7 /* MWMSideMenuManagerDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMSideMenuManagerDelegate.h; sourceTree = "<group>"; };
|
||||
340F24611B14910500F874CD /* RouteState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteState.h; sourceTree = "<group>"; };
|
||||
340F24621B14910500F874CD /* RouteState.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = RouteState.mm; sourceTree = "<group>"; };
|
||||
340F24641B15F01D00F874CD /* MWMSideMenuDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMSideMenuDelegate.h; sourceTree = "<group>"; };
|
||||
|
@ -442,16 +442,6 @@
|
|||
34BC721F1B0DECAE0012A34B /* MWMZoomButtonsView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWMZoomButtonsView.m; sourceTree = "<group>"; };
|
||||
34BC72201B0DECAE0012A34B /* MWMZoomButtonsView.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMZoomButtonsView.xib; sourceTree = "<group>"; };
|
||||
34D56DDE1B3C310A00DFF4CC /* MWMSideMenuButtonDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMSideMenuButtonDelegate.h; sourceTree = "<group>"; };
|
||||
34D783C91B5F9D7800E0C0EE /* MWMLandscapeNavigationDashboard.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMLandscapeNavigationDashboard.xib; sourceTree = "<group>"; };
|
||||
34D783CA1B5F9D7800E0C0EE /* MWMNavigationDashboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMNavigationDashboard.h; sourceTree = "<group>"; };
|
||||
34D783CB1B5F9D7800E0C0EE /* MWMNavigationDashboard.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMNavigationDashboard.mm; sourceTree = "<group>"; };
|
||||
34D783CC1B5F9D7800E0C0EE /* MWMPortraitNavigationDashboard.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMPortraitNavigationDashboard.xib; sourceTree = "<group>"; };
|
||||
34D783CE1B5F9D7800E0C0EE /* MWMLandscapeRoutePreview.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMLandscapeRoutePreview.xib; sourceTree = "<group>"; };
|
||||
34D783CF1B5F9D7800E0C0EE /* MWMPortraitRoutePreview.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMPortraitRoutePreview.xib; sourceTree = "<group>"; };
|
||||
34D783D01B5F9D7800E0C0EE /* MWMRoutePreview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMRoutePreview.h; sourceTree = "<group>"; };
|
||||
34D783D11B5F9D7800E0C0EE /* MWMRoutePreview.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWMRoutePreview.m; sourceTree = "<group>"; };
|
||||
34D783D81B5F9DB100E0C0EE /* MWMNavigationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMNavigationView.h; sourceTree = "<group>"; };
|
||||
34D783D91B5F9DB100E0C0EE /* MWMNavigationView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWMNavigationView.m; sourceTree = "<group>"; };
|
||||
34DF4D0F1AE77B9F0012702D /* MWMWKInterfaceController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWKInterfaceController.h; sourceTree = "<group>"; };
|
||||
34DF4D101AE77B9F0012702D /* MWMWKInterfaceController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWKInterfaceController.mm; sourceTree = "<group>"; };
|
||||
3D443C9C19E421EE0025C2FC /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
|
@ -687,6 +677,19 @@
|
|||
F6BC1E501ACBF98600EF0360 /* MWMFacebookAlert.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMFacebookAlert.h; sourceTree = "<group>"; };
|
||||
F6BC1E511ACBF98600EF0360 /* MWMFacebookAlert.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMFacebookAlert.mm; sourceTree = "<group>"; };
|
||||
F6BC1E531ACBF9AB00EF0360 /* MWMFacebookAlert.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMFacebookAlert.xib; sourceTree = "<group>"; };
|
||||
F6BD33741B62400E00F2CE18 /* MWMLandscapeNavigationDashboard.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMLandscapeNavigationDashboard.xib; sourceTree = "<group>"; };
|
||||
F6BD33751B62400E00F2CE18 /* MWMNavigationDashboard.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMNavigationDashboard.h; sourceTree = "<group>"; };
|
||||
F6BD33761B62400E00F2CE18 /* MWMNavigationDashboard.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMNavigationDashboard.mm; sourceTree = "<group>"; };
|
||||
F6BD33771B62400E00F2CE18 /* MWMPortraitNavigationDashboard.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMPortraitNavigationDashboard.xib; sourceTree = "<group>"; };
|
||||
F6BD337B1B62403B00F2CE18 /* MWMLandscapeRoutePreview.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMLandscapeRoutePreview.xib; sourceTree = "<group>"; };
|
||||
F6BD337C1B62403B00F2CE18 /* MWMPortraitRoutePreview.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = MWMPortraitRoutePreview.xib; sourceTree = "<group>"; };
|
||||
F6BD337D1B62403B00F2CE18 /* MWMRoutePreview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMRoutePreview.h; sourceTree = "<group>"; };
|
||||
F6BD337E1B62403B00F2CE18 /* MWMRoutePreview.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMRoutePreview.mm; sourceTree = "<group>"; };
|
||||
F6BD33821B6240F200F2CE18 /* MWMNavigationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMNavigationView.h; sourceTree = "<group>"; };
|
||||
F6BD33831B6240F200F2CE18 /* MWMNavigationView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MWMNavigationView.m; sourceTree = "<group>"; };
|
||||
F6BD33851B62412E00F2CE18 /* MWMNavigationDashboardEntity.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMNavigationDashboardEntity.h; sourceTree = "<group>"; };
|
||||
F6BD33861B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMNavigationDashboardEntity.mm; sourceTree = "<group>"; };
|
||||
F6BD33881B62423900F2CE18 /* MWMSideMenuManagerDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MWMSideMenuManagerDelegate.h; sourceTree = "<group>"; };
|
||||
F6C6FE1E1AD6BEA0009FDED7 /* MWMWatchLocationTracker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMWatchLocationTracker.h; sourceTree = "<group>"; };
|
||||
F6C6FE1F1AD6BEA0009FDED7 /* MWMWatchLocationTracker.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MWMWatchLocationTracker.mm; sourceTree = "<group>"; };
|
||||
F6C9343A1AE4F94A00DDC624 /* MWMAnimator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MWMAnimator.h; sourceTree = "<group>"; };
|
||||
|
@ -1115,6 +1118,8 @@
|
|||
3497A9321B5CF8A900F51E55 /* NavigationDashboard */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F6BD33851B62412E00F2CE18 /* MWMNavigationDashboardEntity.h */,
|
||||
F6BD33861B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm */,
|
||||
3497A9361B5CF8A900F51E55 /* MWMNavigationDashboardManager.h */,
|
||||
3497A9371B5CF8A900F51E55 /* MWMNavigationDashboardManager.mm */,
|
||||
34D783C71B5F9D7800E0C0EE /* Views */,
|
||||
|
@ -1196,9 +1201,9 @@
|
|||
34BC72141B0DECAE0012A34B /* MWMSideMenuButton.h */,
|
||||
34BC72151B0DECAE0012A34B /* MWMSideMenuButton.mm */,
|
||||
34D56DDE1B3C310A00DFF4CC /* MWMSideMenuButtonDelegate.h */,
|
||||
F6BD33881B62423900F2CE18 /* MWMSideMenuManagerDelegate.h */,
|
||||
34BC72161B0DECAE0012A34B /* MWMSideMenuManager.h */,
|
||||
34BC72171B0DECAE0012A34B /* MWMSideMenuManager.mm */,
|
||||
340944A71B60EDF4008E7AF7 /* MWMSideMenuManagerDelegate.h */,
|
||||
34BC72181B0DECAE0012A34B /* MWMSideMenuView.h */,
|
||||
34BC72191B0DECAE0012A34B /* MWMSideMenuView.mm */,
|
||||
34BC721A1B0DECAE0012A34B /* MWMSideMenuViews.xib */,
|
||||
|
@ -1224,32 +1229,21 @@
|
|||
34D783C71B5F9D7800E0C0EE /* Views */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
34D783D81B5F9DB100E0C0EE /* MWMNavigationView.h */,
|
||||
34D783D91B5F9DB100E0C0EE /* MWMNavigationView.m */,
|
||||
34D783C81B5F9D7800E0C0EE /* Dashboard */,
|
||||
F6BD33821B6240F200F2CE18 /* MWMNavigationView.h */,
|
||||
F6BD33831B6240F200F2CE18 /* MWMNavigationView.m */,
|
||||
F6BD33731B62400E00F2CE18 /* Dashboard */,
|
||||
34D783CD1B5F9D7800E0C0EE /* RoutePreview */,
|
||||
);
|
||||
path = Views;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
34D783C81B5F9D7800E0C0EE /* Dashboard */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
34D783CA1B5F9D7800E0C0EE /* MWMNavigationDashboard.h */,
|
||||
34D783CB1B5F9D7800E0C0EE /* MWMNavigationDashboard.mm */,
|
||||
34D783C91B5F9D7800E0C0EE /* MWMLandscapeNavigationDashboard.xib */,
|
||||
34D783CC1B5F9D7800E0C0EE /* MWMPortraitNavigationDashboard.xib */,
|
||||
);
|
||||
path = Dashboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
34D783CD1B5F9D7800E0C0EE /* RoutePreview */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
34D783D01B5F9D7800E0C0EE /* MWMRoutePreview.h */,
|
||||
34D783D11B5F9D7800E0C0EE /* MWMRoutePreview.m */,
|
||||
34D783CE1B5F9D7800E0C0EE /* MWMLandscapeRoutePreview.xib */,
|
||||
34D783CF1B5F9D7800E0C0EE /* MWMPortraitRoutePreview.xib */,
|
||||
F6BD337B1B62403B00F2CE18 /* MWMLandscapeRoutePreview.xib */,
|
||||
F6BD337C1B62403B00F2CE18 /* MWMPortraitRoutePreview.xib */,
|
||||
F6BD337D1B62403B00F2CE18 /* MWMRoutePreview.h */,
|
||||
F6BD337E1B62403B00F2CE18 /* MWMRoutePreview.mm */,
|
||||
);
|
||||
path = RoutePreview;
|
||||
sourceTree = "<group>";
|
||||
|
@ -1657,6 +1651,17 @@
|
|||
path = FacebookAlert;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F6BD33731B62400E00F2CE18 /* Dashboard */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F6BD33771B62400E00F2CE18 /* MWMPortraitNavigationDashboard.xib */,
|
||||
F6BD33741B62400E00F2CE18 /* MWMLandscapeNavigationDashboard.xib */,
|
||||
F6BD33751B62400E00F2CE18 /* MWMNavigationDashboard.h */,
|
||||
F6BD33761B62400E00F2CE18 /* MWMNavigationDashboard.mm */,
|
||||
);
|
||||
path = Dashboard;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
F6C9343D1AE6473F00DDC624 /* Animation */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
|
@ -2095,7 +2100,7 @@
|
|||
FA46DA2C12D4166E00968C36 /* countries.txt in Resources */,
|
||||
EE583CBB12F773F00042CBE3 /* unicode_blocks.txt in Resources */,
|
||||
EEFE7C1412F8C9E1006AF8C3 /* fonts_blacklist.txt in Resources */,
|
||||
34D783D51B5F9D7800E0C0EE /* MWMLandscapeRoutePreview.xib in Resources */,
|
||||
F6BD33781B62400E00F2CE18 /* MWMLandscapeNavigationDashboard.xib in Resources */,
|
||||
F64F199E1AB81A00006EAF7E /* MWMDefaultAlert.xib in Resources */,
|
||||
EEFE7C1512F8C9E1006AF8C3 /* fonts_whitelist.txt in Resources */,
|
||||
F64F4B711B4A41D40081A24A /* MWMDownloaderDialogHeader.xib in Resources */,
|
||||
|
@ -2118,13 +2123,13 @@
|
|||
34BC72281B0DECAE0012A34B /* MWMSideMenuViews.xib in Resources */,
|
||||
97FC99DE19C1A2CD00C1CF98 /* resources-xhdpi in Resources */,
|
||||
97D40C0A184D031900A1D572 /* Images.xcassets in Resources */,
|
||||
F6BD337F1B62403B00F2CE18 /* MWMLandscapeRoutePreview.xib in Resources */,
|
||||
B0DFE6311A1B78A200B6C35E /* LocalNotifications.plist in Resources */,
|
||||
978D4A31199A11E600D72CA7 /* faq.html in Resources */,
|
||||
F66A8FB21B0A0954001B9C97 /* PlacePageView.xib in Resources */,
|
||||
97FC99E019C1A2CD00C1CF98 /* resources-xxhdpi in Resources */,
|
||||
97719D4B1843B86700BDD815 /* Main_iPad.storyboard in Resources */,
|
||||
F64F19A41AB81A00006EAF7E /* MWMDownloadTransitMapAlert.xib in Resources */,
|
||||
34D783D41B5F9D7800E0C0EE /* MWMPortraitNavigationDashboard.xib in Resources */,
|
||||
F6BBF2C81B4FFB8C000CF8E2 /* MWMLocationAlert.xib in Resources */,
|
||||
97A5967F19B9CD47007A963F /* copyright.html in Resources */,
|
||||
978F9247183B6671000D6C7C /* Main_iPhone.storyboard in Resources */,
|
||||
|
@ -2143,10 +2148,8 @@
|
|||
F67BBB581AC54A7800D162C7 /* MWMFeedbackAlert.xib in Resources */,
|
||||
FA140653162A6288002BC1ED /* empty.png in Resources */,
|
||||
FA140655162A6288002BC1ED /* eye.png in Resources */,
|
||||
34D783D61B5F9D7800E0C0EE /* MWMPortraitRoutePreview.xib in Resources */,
|
||||
FA140657162A6288002BC1ED /* eye@2x.png in Resources */,
|
||||
F7E7BA221672328F00B4492E /* atm.png in Resources */,
|
||||
34D783D21B5F9D7800E0C0EE /* MWMLandscapeNavigationDashboard.xib in Resources */,
|
||||
F7E7BA231672328F00B4492E /* atm@2x.png in Resources */,
|
||||
F7E7BA241672328F00B4492E /* bank.png in Resources */,
|
||||
34BC72231B0DECAE0012A34B /* MWMLocationButton.xib in Resources */,
|
||||
|
@ -2156,6 +2159,7 @@
|
|||
F7E7BA261672328F00B4492E /* entertainment.png in Resources */,
|
||||
F6CB21621AEE902B00FB8963 /* PlacePageLinkCell.xib in Resources */,
|
||||
349A35841B53E967009677EE /* MWMDownloadMapRequest.xib in Resources */,
|
||||
F6BD33801B62403B00F2CE18 /* MWMPortraitRoutePreview.xib in Resources */,
|
||||
F7E7BA271672328F00B4492E /* entertainment@2x.png in Resources */,
|
||||
F7E7BA281672328F00B4492E /* food.png in Resources */,
|
||||
F7E7BA291672328F00B4492E /* food@2x.png in Resources */,
|
||||
|
@ -2166,6 +2170,7 @@
|
|||
F7E7BA2C1672328F00B4492E /* hospital.png in Resources */,
|
||||
F6CB21641AEFC42800FB8963 /* PlacePageActionBar.xib in Resources */,
|
||||
F6CB216A1AF1303900FB8963 /* PlacePageBookmarkCell.xib in Resources */,
|
||||
F6BD337A1B62400E00F2CE18 /* MWMPortraitNavigationDashboard.xib in Resources */,
|
||||
F7E7BA2D1672328F00B4492E /* hospital@2x.png in Resources */,
|
||||
F7E7BA2E1672328F00B4492E /* parking.png in Resources */,
|
||||
F7E7BA2F1672328F00B4492E /* parking@2x.png in Resources */,
|
||||
|
@ -2286,7 +2291,6 @@
|
|||
B08AA8CE1A24C7BC00810B1C /* LocalNotificationInfoProvider.m in Sources */,
|
||||
1D3623260D0F684500981E51 /* MapsAppDelegate.mm in Sources */,
|
||||
F67BBB571AC54A7800D162C7 /* MWMFeedbackAlert.mm in Sources */,
|
||||
34D783D71B5F9D7800E0C0EE /* MWMRoutePreview.m in Sources */,
|
||||
349A35831B53E967009677EE /* MWMDownloadMapRequest.mm in Sources */,
|
||||
A32B6D4C1A14980500E54A65 /* iosOGLContext.mm in Sources */,
|
||||
B0E1FCDF1A2343BC00A8E08B /* NextTurnPhoneView.m in Sources */,
|
||||
|
@ -2318,6 +2322,7 @@
|
|||
34BC72221B0DECAE0012A34B /* MWMLocationButtonView.mm in Sources */,
|
||||
340F24631B14910500F874CD /* RouteState.mm in Sources */,
|
||||
9747264318323080006B7CB7 /* UIKitCategories.m in Sources */,
|
||||
F6BD33811B62403B00F2CE18 /* MWMRoutePreview.mm in Sources */,
|
||||
977E26BE19E31BBE00BA2219 /* CountryTreeVC.mm in Sources */,
|
||||
97A8001418B2140A000C07A2 /* SearchResultCell.m in Sources */,
|
||||
97F0817E19AF72590098FB0B /* BadgeView.m in Sources */,
|
||||
|
@ -2327,7 +2332,6 @@
|
|||
F67BC2751B254F5500FE1D7B /* MWMPlacePageTypeDescription.mm in Sources */,
|
||||
B08AA8DA1A26299A00810B1C /* TimeUtils.m in Sources */,
|
||||
F6CB216D1AF13EBD00FB8963 /* MWMPlacePageBookmarkCell.mm in Sources */,
|
||||
34D783DA1B5F9DB100E0C0EE /* MWMNavigationView.m in Sources */,
|
||||
F653D4231AE9398700282659 /* MWMPlacePageViewManager.mm in Sources */,
|
||||
F65243351B0B634F00BFA9D4 /* MWMPlacePage+Animation.mm in Sources */,
|
||||
976D86F519CB21BD00C920EF /* RouteView.mm in Sources */,
|
||||
|
@ -2341,6 +2345,7 @@
|
|||
FAA5C2A2144F135F005337F6 /* LocationManager.mm in Sources */,
|
||||
F66A8FAC1B09F137001B9C97 /* MWMiPadPlacePage.mm in Sources */,
|
||||
978F9240183B660F000D6C7C /* SettingsViewController.mm in Sources */,
|
||||
F6BD33871B62412E00F2CE18 /* MWMNavigationDashboardEntity.mm in Sources */,
|
||||
F6CB21601AEE7A5B00FB8963 /* MWMPlacePageInfoCell.mm in Sources */,
|
||||
B0E1FCDC1A23399E00A8E08B /* RouteOverallInfoView.m in Sources */,
|
||||
F6DBF9B61AA8779300F2EC2C /* CALayer+RuntimeAttributes.mm in Sources */,
|
||||
|
@ -2359,6 +2364,7 @@
|
|||
B0FBFA2B1A515B4C0086819E /* TableViewController.m in Sources */,
|
||||
F785EB4016386FC4003A38A8 /* BookmarkCell.mm in Sources */,
|
||||
34BC72241B0DECAE0012A34B /* MWMMapViewControlsManager.mm in Sources */,
|
||||
F6BD33791B62400E00F2CE18 /* MWMNavigationDashboard.mm in Sources */,
|
||||
974D041D1977DE430081D0A7 /* LocalNotificationManager.mm in Sources */,
|
||||
97C98522186AE3CF00AF7E9E /* AppInfo.mm in Sources */,
|
||||
978F9242183B660F000D6C7C /* SelectableCell.m in Sources */,
|
||||
|
@ -2367,7 +2373,6 @@
|
|||
CB252D6F16FF82C9001E41E9 /* Statistics.mm in Sources */,
|
||||
978F9244183B660F000D6C7C /* SwitchCell.m in Sources */,
|
||||
342AD7721B53D32F00E0B997 /* UIView+RuntimeAttributes.m in Sources */,
|
||||
34D783D31B5F9D7800E0C0EE /* MWMNavigationDashboard.mm in Sources */,
|
||||
F64F4B6D1B46A51F0081A24A /* MWMDownloaderDialogCell.mm in Sources */,
|
||||
97508423199522D300A7457D /* SettingsAndMoreVC.mm in Sources */,
|
||||
F6ED13541B1643900095C6DE /* MWMDirectionView.mm in Sources */,
|
||||
|
@ -2378,6 +2383,7 @@
|
|||
97F61794183E7445009919E2 /* LinkCell.m in Sources */,
|
||||
976D86EC19C8697700C920EF /* ProgressView.m in Sources */,
|
||||
B0FBFA271A515AFD0086819E /* ViewController.m in Sources */,
|
||||
F6BD33841B6240F200F2CE18 /* MWMNavigationView.m in Sources */,
|
||||
3472EC051B4D44BE0085CB79 /* UIFont+MapsMeFonts.mm in Sources */,
|
||||
342AD76F1B53D30C00E0B997 /* UIButton+RuntimeAttributes.m in Sources */,
|
||||
349A358C1B53EABC009677EE /* MWMSearchDownloadMapRequest.m in Sources */,
|
||||
|
|