forked from organicmaps/organicmaps
[ios] Minor refactoring
This commit is contained in:
parent
36a9281054
commit
211bd4e846
2 changed files with 18 additions and 15 deletions
|
@ -675,40 +675,42 @@ NSInteger compareAddress(id l, id r, void * context)
|
|||
[m_popover presentPopoverFromRect:CGRectMake(tmp.x / sf, tmp.y / sf, 1, 1) inView:self.view permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
|
||||
}
|
||||
|
||||
- (void)prepareForApi
|
||||
- (void) prepareForApi
|
||||
{
|
||||
_isApiMode = YES;
|
||||
if ([self shouldShowNavBar])
|
||||
{
|
||||
self.navigationController.navigationBarHidden = NO;
|
||||
UIBarButtonItem * closeButton = [[[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"back", nil) style: UIBarButtonItemStyleDone target:self action:@selector(returnToApiApp)] autorelease];
|
||||
self.navigationItem.leftBarButtonItem = closeButton;
|
||||
self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:NSLocalizedString(@"back", nil) style: UIBarButtonItemStyleDone target:self action:@selector(returnToApiApp)] autorelease];
|
||||
self.navigationItem.title = [NSString stringWithUTF8String:GetFramework().GetMapApiAppTitle().c_str()];
|
||||
self.navigationController.navigationBarHidden = NO;
|
||||
}
|
||||
}
|
||||
|
||||
- (void) clearApiMode
|
||||
{
|
||||
_isApiMode = NO;
|
||||
self.navigationController.navigationItem.title = @"";
|
||||
GetFramework().ClearMapApiPoints();
|
||||
[self Invalidate];
|
||||
[self.navigationController setNavigationBarHidden:YES animated:YES];
|
||||
GetFramework().GetBalloonManager().Hide();
|
||||
self.navigationController.navigationItem.title = @"";
|
||||
Framework & f = GetFramework();
|
||||
f.ClearMapApiPoints();
|
||||
f.GetBalloonManager().Hide();
|
||||
}
|
||||
|
||||
-(void)returnToApiApp
|
||||
+ (NSURL *) getBackUrl
|
||||
{
|
||||
NSString * backUrl = [NSString stringWithUTF8String:GetFramework().GetMapApiBackUrl().c_str()];
|
||||
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:backUrl]];
|
||||
return [NSURL URLWithString:[NSString stringWithUTF8String:GetFramework().GetMapApiBackUrl().c_str()]];
|
||||
}
|
||||
|
||||
-(void) returnToApiApp
|
||||
{
|
||||
[[UIApplication sharedApplication] openURL:[MapViewController getBackUrl]];
|
||||
[self clearApiMode];
|
||||
}
|
||||
|
||||
-(BOOL) shouldShowNavBar
|
||||
{
|
||||
Framework & f = GetFramework();
|
||||
NSString * backUrl = [NSString stringWithUTF8String:f.GetMapApiBackUrl().c_str()];
|
||||
return (_isApiMode && [backUrl length] && [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:backUrl]]);
|
||||
return (_isApiMode && [[UIApplication sharedApplication] canOpenURL:[MapViewController getBackUrl]]);
|
||||
}
|
||||
|
||||
- (void)dismissPopover
|
||||
|
|
|
@ -183,11 +183,12 @@ void InitLocalizedStrings()
|
|||
annotation:(id)annotation
|
||||
{
|
||||
NSString * scheme = url.scheme;
|
||||
Framework & f = GetFramework();
|
||||
// geo scheme support, see http://tools.ietf.org/html/rfc5870
|
||||
if ([scheme isEqualToString:@"geo"] || [scheme isEqualToString:@"ge0"])
|
||||
{
|
||||
url_scheme::ApiPoint apiPoint;
|
||||
if (GetFramework().SetViewportByURL([url.absoluteString UTF8String], apiPoint))
|
||||
if (f.SetViewportByURL([url.absoluteString UTF8String], apiPoint))
|
||||
{
|
||||
[self showParsedBookmarkOnMap:apiPoint];
|
||||
m_didOpenedWithUrl = YES;
|
||||
|
@ -201,7 +202,7 @@ void InitLocalizedStrings()
|
|||
if ([scheme isEqualToString:@"mapswithme"] || [scheme isEqualToString:@"mwm"])
|
||||
{
|
||||
url_scheme::ApiPoint apiPoint;
|
||||
if (GetFramework().SetViewportByURL([url.absoluteString UTF8String], apiPoint));
|
||||
if (f.SetViewportByURL([url.absoluteString UTF8String], apiPoint));
|
||||
{
|
||||
[[Statistics instance] logApiUsage:sourceApplication];
|
||||
[self showMap];
|
||||
|
|
Loading…
Add table
Reference in a new issue