[ios] Replaced bookmarks icons, implemented bookmarks adding/pin remove
|
@ -1,5 +1,13 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
@interface AddBookmarkVC : UITableViewController
|
||||
@class BalloonView;
|
||||
|
||||
@interface AddBookmarkVC : UITableViewController <UITextFieldDelegate>
|
||||
{
|
||||
// @TODO store as a property to retain reference
|
||||
BalloonView * m_balloon;
|
||||
}
|
||||
|
||||
- (id) initWithBalloonView:(BalloonView *)view;
|
||||
|
||||
@end
|
||||
|
|
|
@ -1,20 +1,29 @@
|
|||
#import "AddBookmarkVC.h"
|
||||
#import "BalloonView.h"
|
||||
#import "Framework.h"
|
||||
|
||||
@implementation AddBookmarkVC
|
||||
|
||||
- (id)initWithStyle:(UITableViewStyle)style
|
||||
- (id) initWithBalloonView:(BalloonView *)view
|
||||
{
|
||||
self = [super initWithStyle:style];
|
||||
self = [super initWithStyle:UITableViewStyleGrouped];
|
||||
if (self)
|
||||
{
|
||||
m_balloon = view;
|
||||
|
||||
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(onAddClicked)];
|
||||
self.title = NSLocalizedString(@"Add Bookmark", @"Add bookmark dialog title");
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)onAddClicked:(id)sender
|
||||
- (void)onAddClicked
|
||||
{
|
||||
GetFramework().AddBookmark(m2::PointD(m_balloon.globalPosition.x, m_balloon.globalPosition.y), [m_balloon.title UTF8String]);
|
||||
[m_balloon hide];
|
||||
// Don't forget to hide navbar
|
||||
[self.navigationController setNavigationBarHidden:YES animated:YES];
|
||||
[self.navigationController popToRootViewControllerAnimated:YES];
|
||||
}
|
||||
|
||||
- (void)viewWillAppear:(BOOL)animated
|
||||
|
@ -40,15 +49,23 @@
|
|||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
||||
{
|
||||
UITableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"AddBMCell"];
|
||||
if (cell == nil)
|
||||
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"AddBMCell"] autorelease];
|
||||
|
||||
UITableViewCell * cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"AddBMCell"] autorelease];
|
||||
switch (indexPath.row)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
UITextField * f = [[[UITextField alloc] initWithFrame:CGRectMake(0, 0, 200, 21)] autorelease];
|
||||
f.textAlignment = UITextAlignmentRight;
|
||||
f.returnKeyType = UIReturnKeyDone;
|
||||
f.clearButtonMode = UITextFieldViewModeWhileEditing;
|
||||
f.delegate = self;
|
||||
f.placeholder = NSLocalizedString(@"Name", @"Add bookmark dialog - bookmark name");
|
||||
f.text = m_balloon.title;
|
||||
f.textColor = cell.detailTextLabel.textColor;
|
||||
cell.accessoryView = f;
|
||||
cell.textLabel.text = NSLocalizedString(@"Name", @"Add bookmark dialog - bookmark name");
|
||||
cell.detailTextLabel.text = @"Washington";
|
||||
cell.selectionStyle = UITableViewCellSelectionStyleNone;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
|
@ -58,7 +75,7 @@
|
|||
|
||||
case 2:
|
||||
cell.textLabel.text = NSLocalizedString(@"Color", @"Add bookmark dialog - bookmark color");
|
||||
cell.detailTextLabel.text = @"Blue";
|
||||
cell.accessoryView = [m_balloon pinImage];
|
||||
break;
|
||||
}
|
||||
return cell;
|
||||
|
@ -69,4 +86,10 @@
|
|||
[[tableView cellForRowAtIndexPath:indexPath] setSelected:NO animated:YES];
|
||||
}
|
||||
|
||||
- (BOOL)textFieldShouldReturn:(UITextField *)textField
|
||||
{
|
||||
[textField resignFirstResponder];
|
||||
return NO;
|
||||
}
|
||||
|
||||
@end
|
||||
|
|
|
@ -1,18 +1,22 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
#include "../../geometry/point2d.hpp"
|
||||
|
||||
#include "Framework.h"
|
||||
|
||||
@interface BalloonView : NSObject
|
||||
{
|
||||
UIImageView * m_pinView;
|
||||
UITableViewCell * m_titleView;
|
||||
id m_target;
|
||||
SEL m_selector;
|
||||
|
||||
Framework::AddressInfo m_addressInfo;
|
||||
}
|
||||
|
||||
@property(nonatomic, retain) NSString * title;
|
||||
// Currently contains automatically updated address info
|
||||
@property(nonatomic, retain) NSString * description;
|
||||
@property(nonatomic, retain) UIImageView * pinImage;
|
||||
// Stores displayed bookmark icon name
|
||||
@property(nonatomic, retain) NSString * color;
|
||||
@property(nonatomic, assign, readonly) BOOL isDisplayed;
|
||||
@property(nonatomic, assign) CGPoint globalPosition;
|
||||
|
||||
|
|
|
@ -1,17 +1,49 @@
|
|||
#import "BalloonView.h"
|
||||
#import <QuartzCore/CALayer.h>
|
||||
|
||||
static string formatAddress(string const & house, string const & street,
|
||||
string const & city, string const & country)
|
||||
{
|
||||
string result = house;
|
||||
if (!street.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ' ';
|
||||
result += street;
|
||||
}
|
||||
if (!city.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ", ";
|
||||
result += city;
|
||||
}
|
||||
if (!country.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ", ";
|
||||
result += country;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
@implementation BalloonView
|
||||
|
||||
@synthesize globalPosition;
|
||||
@synthesize title;
|
||||
@synthesize description;
|
||||
@synthesize pinImage;
|
||||
@synthesize color;
|
||||
@synthesize isDisplayed;
|
||||
|
||||
- (id) initWithTarget:(id)target andSelector:(SEL)selector;
|
||||
{
|
||||
if ((self = [super init]))
|
||||
{
|
||||
// Default bookmark pin color
|
||||
color = [[NSString alloc] initWithString:@"purple"];
|
||||
pinImage = [[UIImageView alloc] initWithImage:[UIImage imageNamed:self.color]];
|
||||
m_titleView = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"BookmarkTitle"];
|
||||
isDisplayed = NO;
|
||||
m_target = target;
|
||||
m_selector = selector;
|
||||
|
@ -22,20 +54,22 @@
|
|||
- (void) dealloc
|
||||
{
|
||||
[m_titleView release];
|
||||
[m_pinView release];
|
||||
self.pinImage = nil;
|
||||
self.color = nil;
|
||||
self.title = nil;
|
||||
self.description = nil;
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (void) showButtonsInView:(UIView *)view atPoint:(CGPoint)pt
|
||||
{
|
||||
m_titleView = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"BookmarkTitle"];
|
||||
m_titleView.textLabel.text = title;
|
||||
m_titleView.textLabel.text = self.title;
|
||||
m_titleView.textLabel.textColor = [UIColor whiteColor];
|
||||
m_titleView.detailTextLabel.text = description;
|
||||
m_titleView.detailTextLabel.text = self.description;
|
||||
m_titleView.detailTextLabel.textColor = [UIColor whiteColor];
|
||||
m_titleView.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
|
||||
m_titleView.backgroundColor = [UIColor blackColor];
|
||||
m_titleView.layer.cornerRadius = 5;
|
||||
m_titleView.layer.cornerRadius = 10;
|
||||
// m_titleView.alpha = 0.8;
|
||||
// m_titleView.textLabel.backgroundColor = [UIColor clearColor];
|
||||
// m_titleView.detailTextLabel.backgroundColor = [UIColor clearColor];
|
||||
|
@ -66,16 +100,15 @@
|
|||
}
|
||||
isDisplayed = YES;
|
||||
|
||||
m_pinView = [[UIImageView alloc ]initWithImage:[UIImage imageNamed:@"marker"]];
|
||||
CGFloat const w = m_pinView.bounds.size.width;
|
||||
CGFloat const h = m_pinView.bounds.size.height;
|
||||
m_pinView.frame = CGRectMake(pt.x - w/2, 0 - h, w, h);
|
||||
CGFloat const w = self.pinImage.bounds.size.width;
|
||||
CGFloat const h = self.pinImage.bounds.size.height;
|
||||
self.pinImage.frame = CGRectMake(pt.x - w/2, 0 - h, w, h);
|
||||
|
||||
[view addSubview:m_pinView];
|
||||
[view addSubview:self.pinImage];
|
||||
|
||||
// Animate pin to the touched point
|
||||
[UIView transitionWithView:m_pinView duration:0.1 options:UIViewAnimationOptionCurveEaseIn
|
||||
animations:^{ m_pinView.frame = CGRectMake(pt.x - w/2, pt.y - h, w, h); }
|
||||
[UIView transitionWithView:self.pinImage duration:0.1 options:UIViewAnimationOptionCurveEaseIn
|
||||
animations:^{ self.pinImage.frame = CGRectMake(pt.x - w/2, pt.y - h, w, h); }
|
||||
completion:^(BOOL){
|
||||
[self showButtonsInView:view atPoint:CGPointMake(pt.x, pt.y - h)];
|
||||
}];
|
||||
|
@ -85,9 +118,9 @@
|
|||
{
|
||||
if (isDisplayed)
|
||||
{
|
||||
CGFloat const w1 = m_pinView.bounds.size.width;
|
||||
CGFloat const h1 = m_pinView.bounds.size.height;
|
||||
m_pinView.frame = CGRectMake(pt.x - w1/2, pt.y - h1, w1, h1);
|
||||
CGFloat const w1 = self.pinImage.bounds.size.width;
|
||||
CGFloat const h1 = self.pinImage.bounds.size.height;
|
||||
self.pinImage.frame = CGRectMake(pt.x - w1/2, pt.y - h1, w1, h1);
|
||||
|
||||
CGFloat const w2 = m_titleView.bounds.size.width;
|
||||
CGFloat const h2 = m_titleView.bounds.size.height;
|
||||
|
@ -98,14 +131,29 @@
|
|||
- (void) hide
|
||||
{
|
||||
[m_titleView removeFromSuperview];
|
||||
[m_titleView release];
|
||||
m_titleView = nil;
|
||||
|
||||
[m_pinView removeFromSuperview];
|
||||
[m_pinView release];
|
||||
m_pinView = nil;
|
||||
|
||||
[self.pinImage removeFromSuperview];
|
||||
isDisplayed = NO;
|
||||
}
|
||||
|
||||
// Overrided property setter to update address and displayed information
|
||||
- (void) setGlobalPosition:(CGPoint)pos
|
||||
{
|
||||
globalPosition = pos;
|
||||
GetFramework().GetAddressInfo(m2::PointD(pos.x, pos.y), m_addressInfo);
|
||||
if (m_addressInfo.m_name.empty())
|
||||
self.title = NSLocalizedString(@"Dropped Pin", @"Unknown Dropped Pin title, when name can't be determined");
|
||||
else
|
||||
self.title = [NSString stringWithUTF8String:m_addressInfo.m_name.c_str()];
|
||||
self.description = [NSString stringWithUTF8String:formatAddress(m_addressInfo.m_house,
|
||||
m_addressInfo.m_street,
|
||||
m_addressInfo.m_city,
|
||||
m_addressInfo.m_country).c_str()];
|
||||
}
|
||||
|
||||
// Overrided property setter to reload another pin image
|
||||
- (void) setColor:(NSString *)newColor
|
||||
{
|
||||
color = newColor;
|
||||
self.pinImage.image = [UIImage imageNamed:newColor];
|
||||
}
|
||||
@end
|
||||
|
|
|
@ -1,7 +1,14 @@
|
|||
#import <UIKit/UIKit.h>
|
||||
|
||||
@class BalloonView;
|
||||
|
||||
@interface PlacePageVC : UITableViewController
|
||||
{
|
||||
BOOL m_hideNavBar;
|
||||
// @TODO store as a property to retain reference
|
||||
BalloonView * m_balloon;
|
||||
}
|
||||
|
||||
- (id) initWithBalloonView:(BalloonView *)view;
|
||||
|
||||
@end
|
||||
|
|
|
@ -1,14 +1,17 @@
|
|||
#import "PlacePageVC.h"
|
||||
#import "AddBookmarkVC.h"
|
||||
#import "BalloonView.h"
|
||||
|
||||
@implementation PlacePageVC
|
||||
|
||||
- (id)initWithStyle:(UITableViewStyle)style
|
||||
- (id) initWithBalloonView:(BalloonView *)view
|
||||
{
|
||||
self = [super initWithStyle:style];
|
||||
self = [super initWithStyle:UITableViewStyleGrouped];
|
||||
if (self)
|
||||
{
|
||||
self.title = NSLocalizedString(@"Place Page", @"Add bookmark dialog title");
|
||||
m_balloon = view;
|
||||
|
||||
self.title = m_balloon.title;
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
@ -34,7 +37,7 @@
|
|||
|
||||
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
|
||||
{
|
||||
return 2;
|
||||
return 3;
|
||||
}
|
||||
|
||||
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
|
||||
|
@ -44,12 +47,24 @@
|
|||
|
||||
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
|
||||
{
|
||||
UITableViewCell * cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"] autorelease];
|
||||
cell.textLabel.textAlignment = UITextAlignmentCenter;
|
||||
UITableViewCell * cell;
|
||||
if (indexPath.section == 0)
|
||||
cell.textLabel.text = NSLocalizedString(@"Add To Bookmarks", @"Place Page - Add To Bookmarks button");
|
||||
{
|
||||
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:@"AddressCell"] autorelease];
|
||||
cell.textLabel.text = NSLocalizedString(@"Address", @"Place Page - Address cell");
|
||||
cell.detailTextLabel.numberOfLines = 0;
|
||||
cell.detailTextLabel.textAlignment = UITextAlignmentLeft;
|
||||
cell.detailTextLabel.text = m_balloon.description;
|
||||
}
|
||||
else
|
||||
cell.textLabel.text = NSLocalizedString(@"Remove Pin", @"Place Page - Remove Pin button");
|
||||
{
|
||||
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"cell"] autorelease];
|
||||
cell.textLabel.textAlignment = UITextAlignmentCenter;
|
||||
if (indexPath.section == 1)
|
||||
cell.textLabel.text = NSLocalizedString(@"Add To Bookmarks", @"Place Page - Add To Bookmarks button");
|
||||
else
|
||||
cell.textLabel.text = NSLocalizedString(@"Remove Pin", @"Place Page - Remove Pin button");
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
|
||||
|
@ -57,16 +72,23 @@
|
|||
{
|
||||
[[tableView cellForRowAtIndexPath:indexPath] setSelected:NO animated:YES];
|
||||
|
||||
if (indexPath.section == 0)
|
||||
switch (indexPath.section)
|
||||
{
|
||||
AddBookmarkVC * addVC = [[AddBookmarkVC alloc] initWithStyle:UITableViewStyleGrouped];
|
||||
m_hideNavBar = NO;
|
||||
[self.navigationController pushViewController:addVC animated:YES];
|
||||
[addVC release];
|
||||
}
|
||||
else
|
||||
{
|
||||
[self.navigationController popViewControllerAnimated:YES];
|
||||
case 1:
|
||||
{
|
||||
AddBookmarkVC * addVC = [[AddBookmarkVC alloc] initWithBalloonView:m_balloon];
|
||||
m_hideNavBar = NO;
|
||||
[self.navigationController pushViewController:addVC animated:YES];
|
||||
[addVC release];
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
{
|
||||
[m_balloon hide];
|
||||
[self.navigationController popViewControllerAnimated:YES];
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
BIN
iphone/Maps/Bookmarks/blue.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/blue@2x.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
iphone/Maps/Bookmarks/brown.png
Normal file
After Width: | Height: | Size: 2 KiB |
BIN
iphone/Maps/Bookmarks/brown@2x.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
iphone/Maps/Bookmarks/green.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/green@2x.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 3.8 KiB |
BIN
iphone/Maps/Bookmarks/orange.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/orange@2x.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
iphone/Maps/Bookmarks/pink.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/pink@2x.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
iphone/Maps/Bookmarks/purple.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/purple@2x.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
iphone/Maps/Bookmarks/red.png
Normal file
After Width: | Height: | Size: 2 KiB |
BIN
iphone/Maps/Bookmarks/red@2x.png
Normal file
After Width: | Height: | Size: 3.2 KiB |
BIN
iphone/Maps/Bookmarks/yellow.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
iphone/Maps/Bookmarks/yellow@2x.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
|
@ -11,31 +11,6 @@
|
|||
#include "Framework.h"
|
||||
#include "RenderContext.hpp"
|
||||
|
||||
static string formatAddress(string const & house, string const & street,
|
||||
string const & city, string const & country)
|
||||
{
|
||||
string result = house;
|
||||
if (!street.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ' ';
|
||||
result += street;
|
||||
}
|
||||
if (!city.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ' ';
|
||||
result += city;
|
||||
}
|
||||
if (!country.empty())
|
||||
{
|
||||
if (!result.empty())
|
||||
result += ' ';
|
||||
result += country;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@implementation MapViewController
|
||||
|
||||
@synthesize m_myPositionButton;
|
||||
|
@ -135,22 +110,11 @@ static string formatAddress(string const & house, string const & street,
|
|||
[bVC release];
|
||||
}
|
||||
|
||||
|
||||
- (void)onBookmarkClicked
|
||||
{
|
||||
PlacePageVC * placePageVC = [[PlacePageVC alloc] initWithStyle:UITableViewStyleGrouped];
|
||||
PlacePageVC * placePageVC = [[PlacePageVC alloc] initWithBalloonView:m_bookmark];
|
||||
[self.navigationController pushViewController:placePageVC animated:YES];
|
||||
[placePageVC release];
|
||||
|
||||
// m2::PointD const ptG = m2::PointD(m_bookmark.globalPosition.x, m_bookmark.globalPosition.y);
|
||||
//
|
||||
// Framework::AddressInfo info;
|
||||
// m_framework->GetAddressInfo(ptG, info);
|
||||
// m_framework->AddBookmark(ptG, info.m_name);
|
||||
//
|
||||
// [m_bookmark hide];
|
||||
//
|
||||
// m_framework->Invalidate();
|
||||
}
|
||||
|
||||
- (CGPoint) viewPoint2GlobalPoint:(CGPoint)pt
|
||||
|
@ -174,10 +138,6 @@ static string formatAddress(string const & house, string const & street,
|
|||
|
||||
CGPoint const pixelPos = [point CGPointValue];
|
||||
CGPoint const globalPos = [self viewPoint2GlobalPoint:pixelPos];
|
||||
Framework::AddressInfo addr;
|
||||
GetFramework().GetAddressInfo(m2::PointD(globalPos.x, globalPos.y), addr);
|
||||
m_bookmark.title = [NSString stringWithUTF8String:addr.m_name.c_str()];
|
||||
m_bookmark.description = [NSString stringWithUTF8String:formatAddress(addr.m_house, addr.m_street, addr.m_city, addr.m_country).c_str()];
|
||||
m_bookmark.globalPosition = globalPos;
|
||||
[m_bookmark showInView:self.view atPoint:pixelPos];
|
||||
}
|
||||
|
|
|
@ -54,6 +54,38 @@
|
|||
F7B90CD41521E6D200C054EE /* CustomNavigationView.mm in Sources */ = {isa = PBXBuildFile; fileRef = F7B90CD21521E6D100C054EE /* CustomNavigationView.mm */; };
|
||||
F7FDD823147F30CC005900FA /* drules_proto.bin in Resources */ = {isa = PBXBuildFile; fileRef = F7FDD822147F30CC005900FA /* drules_proto.bin */; };
|
||||
FA04373212CAB83F00017494 /* libstorage.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FA04373112CAB83F00017494 /* libstorage.a */; };
|
||||
FA0545F0155C22D4001F4E37 /* blue.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E0155C22D4001F4E37 /* blue.png */; };
|
||||
FA0545F1155C22D4001F4E37 /* blue.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E0155C22D4001F4E37 /* blue.png */; };
|
||||
FA0545F2155C22D4001F4E37 /* blue@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E1155C22D4001F4E37 /* blue@2x.png */; };
|
||||
FA0545F3155C22D4001F4E37 /* blue@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E1155C22D4001F4E37 /* blue@2x.png */; };
|
||||
FA0545F4155C22D4001F4E37 /* brown.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E2155C22D4001F4E37 /* brown.png */; };
|
||||
FA0545F5155C22D4001F4E37 /* brown.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E2155C22D4001F4E37 /* brown.png */; };
|
||||
FA0545F6155C22D4001F4E37 /* brown@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E3155C22D4001F4E37 /* brown@2x.png */; };
|
||||
FA0545F7155C22D4001F4E37 /* brown@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E3155C22D4001F4E37 /* brown@2x.png */; };
|
||||
FA0545F8155C22D4001F4E37 /* green.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E4155C22D4001F4E37 /* green.png */; };
|
||||
FA0545F9155C22D4001F4E37 /* green.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E4155C22D4001F4E37 /* green.png */; };
|
||||
FA0545FA155C22D4001F4E37 /* green@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E5155C22D4001F4E37 /* green@2x.png */; };
|
||||
FA0545FB155C22D4001F4E37 /* green@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E5155C22D4001F4E37 /* green@2x.png */; };
|
||||
FA0545FC155C22D4001F4E37 /* orange.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E6155C22D4001F4E37 /* orange.png */; };
|
||||
FA0545FD155C22D4001F4E37 /* orange.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E6155C22D4001F4E37 /* orange.png */; };
|
||||
FA0545FE155C22D4001F4E37 /* orange@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E7155C22D4001F4E37 /* orange@2x.png */; };
|
||||
FA0545FF155C22D4001F4E37 /* orange@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E7155C22D4001F4E37 /* orange@2x.png */; };
|
||||
FA054600155C22D4001F4E37 /* pink.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E8155C22D4001F4E37 /* pink.png */; };
|
||||
FA054601155C22D4001F4E37 /* pink.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E8155C22D4001F4E37 /* pink.png */; };
|
||||
FA054602155C22D4001F4E37 /* pink@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E9155C22D4001F4E37 /* pink@2x.png */; };
|
||||
FA054603155C22D4001F4E37 /* pink@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545E9155C22D4001F4E37 /* pink@2x.png */; };
|
||||
FA054604155C22D4001F4E37 /* purple.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EA155C22D4001F4E37 /* purple.png */; };
|
||||
FA054605155C22D4001F4E37 /* purple.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EA155C22D4001F4E37 /* purple.png */; };
|
||||
FA054606155C22D4001F4E37 /* purple@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EB155C22D4001F4E37 /* purple@2x.png */; };
|
||||
FA054607155C22D4001F4E37 /* purple@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EB155C22D4001F4E37 /* purple@2x.png */; };
|
||||
FA054608155C22D4001F4E37 /* red.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EC155C22D4001F4E37 /* red.png */; };
|
||||
FA054609155C22D4001F4E37 /* red.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EC155C22D4001F4E37 /* red.png */; };
|
||||
FA05460A155C22D4001F4E37 /* red@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545ED155C22D4001F4E37 /* red@2x.png */; };
|
||||
FA05460B155C22D4001F4E37 /* red@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545ED155C22D4001F4E37 /* red@2x.png */; };
|
||||
FA05460C155C22D4001F4E37 /* yellow.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EE155C22D4001F4E37 /* yellow.png */; };
|
||||
FA05460D155C22D4001F4E37 /* yellow.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EE155C22D4001F4E37 /* yellow.png */; };
|
||||
FA05460E155C22D4001F4E37 /* yellow@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EF155C22D4001F4E37 /* yellow@2x.png */; };
|
||||
FA05460F155C22D4001F4E37 /* yellow@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA0545EF155C22D4001F4E37 /* yellow@2x.png */; };
|
||||
FA065FED128614C400FEA989 /* MainWindow-iPad.xib in Resources */ = {isa = PBXBuildFile; fileRef = FA065FEC128614C400FEA989 /* MainWindow-iPad.xib */; };
|
||||
FA065FFF1286167A00FEA989 /* Default@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA065FFD1286167A00FEA989 /* Default@2x.png */; };
|
||||
FA0660001286167A00FEA989 /* Default.png in Resources */ = {isa = PBXBuildFile; fileRef = FA065FFE1286167A00FEA989 /* Default.png */; };
|
||||
|
@ -75,10 +107,6 @@
|
|||
FA36B80C15403A4F004560CC /* BalloonView.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80415403A4F004560CC /* BalloonView.mm */; };
|
||||
FA36B80D15403A4F004560CC /* BookmarksVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80615403A4F004560CC /* BookmarksVC.mm */; };
|
||||
FA36B80E15403A4F004560CC /* BookmarksVC.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA36B80615403A4F004560CC /* BookmarksVC.mm */; };
|
||||
FA36B80F15403A4F004560CC /* marker.png in Resources */ = {isa = PBXBuildFile; fileRef = FA36B80715403A4F004560CC /* marker.png */; };
|
||||
FA36B81015403A4F004560CC /* marker.png in Resources */ = {isa = PBXBuildFile; fileRef = FA36B80715403A4F004560CC /* marker.png */; };
|
||||
FA36B81115403A4F004560CC /* marker@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA36B80815403A4F004560CC /* marker@2x.png */; };
|
||||
FA36B81215403A4F004560CC /* marker@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FA36B80815403A4F004560CC /* marker@2x.png */; };
|
||||
FA4135EA120A263C0062D5B4 /* CountriesViewController.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA4135E2120A263C0062D5B4 /* CountriesViewController.mm */; };
|
||||
FA4135ED120A263C0062D5B4 /* SettingsManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = FA4135E7120A263C0062D5B4 /* SettingsManager.mm */; };
|
||||
FA459EB414327AF700B5BB3C /* WorldCoasts.mwm in Resources */ = {isa = PBXBuildFile; fileRef = FA459EB314327AF700B5BB3C /* WorldCoasts.mwm */; };
|
||||
|
@ -1326,6 +1354,22 @@
|
|||
F7DD848614FE7FE0005695E1 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
|
||||
F7FDD822147F30CC005900FA /* drules_proto.bin */ = {isa = PBXFileReference; lastKnownFileType = archive.macbinary; name = drules_proto.bin; path = ../../data/drules_proto.bin; sourceTree = "<group>"; };
|
||||
FA04373112CAB83F00017494 /* libstorage.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = libstorage.a; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E0155C22D4001F4E37 /* blue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = blue.png; path = Bookmarks/blue.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E1155C22D4001F4E37 /* blue@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "blue@2x.png"; path = "Bookmarks/blue@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E2155C22D4001F4E37 /* brown.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = brown.png; path = Bookmarks/brown.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E3155C22D4001F4E37 /* brown@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "brown@2x.png"; path = "Bookmarks/brown@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E4155C22D4001F4E37 /* green.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = green.png; path = Bookmarks/green.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E5155C22D4001F4E37 /* green@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "green@2x.png"; path = "Bookmarks/green@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E6155C22D4001F4E37 /* orange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = orange.png; path = Bookmarks/orange.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E7155C22D4001F4E37 /* orange@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "orange@2x.png"; path = "Bookmarks/orange@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E8155C22D4001F4E37 /* pink.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = pink.png; path = Bookmarks/pink.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545E9155C22D4001F4E37 /* pink@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "pink@2x.png"; path = "Bookmarks/pink@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545EA155C22D4001F4E37 /* purple.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = purple.png; path = Bookmarks/purple.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545EB155C22D4001F4E37 /* purple@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "purple@2x.png"; path = "Bookmarks/purple@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545EC155C22D4001F4E37 /* red.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = red.png; path = Bookmarks/red.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545ED155C22D4001F4E37 /* red@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "red@2x.png"; path = "Bookmarks/red@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA0545EE155C22D4001F4E37 /* yellow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = yellow.png; path = Bookmarks/yellow.png; sourceTree = SOURCE_ROOT; };
|
||||
FA0545EF155C22D4001F4E37 /* yellow@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "yellow@2x.png"; path = "Bookmarks/yellow@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA065FEC128614C400FEA989 /* MainWindow-iPad.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = "MainWindow-iPad.xib"; path = "Resources-iPad/MainWindow-iPad.xib"; sourceTree = SOURCE_ROOT; };
|
||||
FA065FFD1286167A00FEA989 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA065FFE1286167A00FEA989 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = SOURCE_ROOT; };
|
||||
|
@ -1350,8 +1394,6 @@
|
|||
FA36B80415403A4F004560CC /* BalloonView.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = BalloonView.mm; path = Bookmarks/BalloonView.mm; sourceTree = SOURCE_ROOT; };
|
||||
FA36B80515403A4F004560CC /* BookmarksVC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BookmarksVC.h; path = Bookmarks/BookmarksVC.h; sourceTree = SOURCE_ROOT; };
|
||||
FA36B80615403A4F004560CC /* BookmarksVC.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = BookmarksVC.mm; path = Bookmarks/BookmarksVC.mm; sourceTree = SOURCE_ROOT; };
|
||||
FA36B80715403A4F004560CC /* marker.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = marker.png; path = Bookmarks/marker.png; sourceTree = SOURCE_ROOT; };
|
||||
FA36B80815403A4F004560CC /* marker@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "marker@2x.png"; path = "Bookmarks/marker@2x.png"; sourceTree = SOURCE_ROOT; };
|
||||
FA4135E1120A263C0062D5B4 /* CountriesViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; name = CountriesViewController.h; path = Settings/CountriesViewController.h; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
|
||||
FA4135E2120A263C0062D5B4 /* CountriesViewController.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; lineEnding = 0; name = CountriesViewController.mm; path = Settings/CountriesViewController.mm; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
|
||||
FA4135E6120A263C0062D5B4 /* SettingsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SettingsManager.h; path = Settings/SettingsManager.h; sourceTree = SOURCE_ROOT; };
|
||||
|
@ -2240,8 +2282,22 @@
|
|||
FA36B8171540466A004560CC /* Images */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
FA36B80715403A4F004560CC /* marker.png */,
|
||||
FA36B80815403A4F004560CC /* marker@2x.png */,
|
||||
FA0545E0155C22D4001F4E37 /* blue.png */,
|
||||
FA0545E1155C22D4001F4E37 /* blue@2x.png */,
|
||||
FA0545E2155C22D4001F4E37 /* brown.png */,
|
||||
FA0545E3155C22D4001F4E37 /* brown@2x.png */,
|
||||
FA0545E4155C22D4001F4E37 /* green.png */,
|
||||
FA0545E5155C22D4001F4E37 /* green@2x.png */,
|
||||
FA0545E6155C22D4001F4E37 /* orange.png */,
|
||||
FA0545E7155C22D4001F4E37 /* orange@2x.png */,
|
||||
FA0545E8155C22D4001F4E37 /* pink.png */,
|
||||
FA0545E9155C22D4001F4E37 /* pink@2x.png */,
|
||||
FA0545EA155C22D4001F4E37 /* purple.png */,
|
||||
FA0545EB155C22D4001F4E37 /* purple@2x.png */,
|
||||
FA0545EC155C22D4001F4E37 /* red.png */,
|
||||
FA0545ED155C22D4001F4E37 /* red@2x.png */,
|
||||
FA0545EE155C22D4001F4E37 /* yellow.png */,
|
||||
FA0545EF155C22D4001F4E37 /* yellow@2x.png */,
|
||||
);
|
||||
name = Images;
|
||||
sourceTree = "<group>";
|
||||
|
@ -3463,8 +3519,22 @@
|
|||
FA8A71D6153D83C8005D9795 /* bookmarks-highlighted@2x.png in Resources */,
|
||||
FA8A71D8153D83C8005D9795 /* bookmarks.png in Resources */,
|
||||
FA8A71DA153D83C8005D9795 /* bookmarks@2x.png in Resources */,
|
||||
FA36B80F15403A4F004560CC /* marker.png in Resources */,
|
||||
FA36B81115403A4F004560CC /* marker@2x.png in Resources */,
|
||||
FA0545F0155C22D4001F4E37 /* blue.png in Resources */,
|
||||
FA0545F2155C22D4001F4E37 /* blue@2x.png in Resources */,
|
||||
FA0545F4155C22D4001F4E37 /* brown.png in Resources */,
|
||||
FA0545F6155C22D4001F4E37 /* brown@2x.png in Resources */,
|
||||
FA0545F8155C22D4001F4E37 /* green.png in Resources */,
|
||||
FA0545FA155C22D4001F4E37 /* green@2x.png in Resources */,
|
||||
FA0545FC155C22D4001F4E37 /* orange.png in Resources */,
|
||||
FA0545FE155C22D4001F4E37 /* orange@2x.png in Resources */,
|
||||
FA054600155C22D4001F4E37 /* pink.png in Resources */,
|
||||
FA054602155C22D4001F4E37 /* pink@2x.png in Resources */,
|
||||
FA054604155C22D4001F4E37 /* purple.png in Resources */,
|
||||
FA054606155C22D4001F4E37 /* purple@2x.png in Resources */,
|
||||
FA054608155C22D4001F4E37 /* red.png in Resources */,
|
||||
FA05460A155C22D4001F4E37 /* red@2x.png in Resources */,
|
||||
FA05460C155C22D4001F4E37 /* yellow.png in Resources */,
|
||||
FA05460E155C22D4001F4E37 /* yellow@2x.png in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
@ -4053,8 +4123,22 @@
|
|||
FA8A71D7153D83C8005D9795 /* bookmarks-highlighted@2x.png in Resources */,
|
||||
FA8A71D9153D83C8005D9795 /* bookmarks.png in Resources */,
|
||||
FA8A71DB153D83C8005D9795 /* bookmarks@2x.png in Resources */,
|
||||
FA36B81015403A4F004560CC /* marker.png in Resources */,
|
||||
FA36B81215403A4F004560CC /* marker@2x.png in Resources */,
|
||||
FA0545F1155C22D4001F4E37 /* blue.png in Resources */,
|
||||
FA0545F3155C22D4001F4E37 /* blue@2x.png in Resources */,
|
||||
FA0545F5155C22D4001F4E37 /* brown.png in Resources */,
|
||||
FA0545F7155C22D4001F4E37 /* brown@2x.png in Resources */,
|
||||
FA0545F9155C22D4001F4E37 /* green.png in Resources */,
|
||||
FA0545FB155C22D4001F4E37 /* green@2x.png in Resources */,
|
||||
FA0545FD155C22D4001F4E37 /* orange.png in Resources */,
|
||||
FA0545FF155C22D4001F4E37 /* orange@2x.png in Resources */,
|
||||
FA054601155C22D4001F4E37 /* pink.png in Resources */,
|
||||
FA054603155C22D4001F4E37 /* pink@2x.png in Resources */,
|
||||
FA054605155C22D4001F4E37 /* purple.png in Resources */,
|
||||
FA054607155C22D4001F4E37 /* purple@2x.png in Resources */,
|
||||
FA054609155C22D4001F4E37 /* red.png in Resources */,
|
||||
FA05460B155C22D4001F4E37 /* red@2x.png in Resources */,
|
||||
FA05460D155C22D4001F4E37 /* yellow.png in Resources */,
|
||||
FA05460F155C22D4001F4E37 /* yellow@2x.png in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
|