iOS-Slide-Menu/SlideMenu/Helper Classes/HomeViewController.m

116 lines
2.9 KiB
Objective-C
Executable File

//
// HomeViewController.m
// SlideMenu
//
// Created by Aryan Gh on 4/24/13.
// Copyright (c) 2013 Aryan Ghassemi. All rights reserved.
//
#import "HomeViewController.h"
#import "LeftMenuViewController.h"
@implementation HomeViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.scrollView.contentSize = CGSizeMake(self.view.frame.size.width, 503);
self.portraitSlideOffsetSegment.selectedSegmentIndex = [self indexFromPixels:[SlideNavigationController sharedInstance].portraitSlideOffset];
self.landscapeSlideOffsetSegment.selectedSegmentIndex = [self indexFromPixels:[SlideNavigationController sharedInstance].landscapeSlideOffset];
self.panGestureSwitch.on = [SlideNavigationController sharedInstance].enableSwipeGesture;
self.shadowSwitch.on = [SlideNavigationController sharedInstance].enableShadow;
self.limitPanGestureSwitch.on = ([SlideNavigationController sharedInstance].panGestureSideOffset == 0) ? NO : YES;
self.slideOutAnimationSwitch.on = ((LeftMenuViewController *)[SlideNavigationController sharedInstance].leftMenu).slideOutAnimationEnabled;
}
#pragma mark - SlideNavigationController Methods -
- (BOOL)slideNavigationControllerShouldDisplayLeftMenu
{
return YES;
}
- (BOOL)slideNavigationControllerShouldDisplayRightMenu
{
return YES;
}
#pragma mark - IBActions -
- (IBAction)bounceMenu:(id)sender
{
static Menu menu = MenuLeft;
[[SlideNavigationController sharedInstance] bounceMenu:menu withCompletion:nil];
menu = (menu == MenuLeft) ? MenuRight : MenuLeft;
}
- (IBAction)slideOutAnimationSwitchChanged:(UISwitch *)sender
{
((LeftMenuViewController *)[SlideNavigationController sharedInstance].leftMenu).slideOutAnimationEnabled = sender.isOn;
}
- (IBAction)limitPanGestureSwitchChanged:(UISwitch *)sender
{
[SlideNavigationController sharedInstance].panGestureSideOffset = (sender.isOn) ? 50 : 0;
}
- (IBAction)changeAnimationSelected:(id)sender
{
[[SlideNavigationController sharedInstance] openMenu:MenuRight withCompletion:nil];
}
- (IBAction)shadowSwitchSelected:(UISwitch *)sender
{
[SlideNavigationController sharedInstance].enableShadow = sender.isOn;
}
- (IBAction)enablePanGestureSelected:(UISwitch *)sender
{
[SlideNavigationController sharedInstance].enableSwipeGesture = sender.isOn;
}
- (IBAction)portraitSlideOffsetChanged:(UISegmentedControl *)sender
{
[SlideNavigationController sharedInstance].portraitSlideOffset = [self pixelsFromIndex:sender.selectedSegmentIndex];
}
- (IBAction)landscapeSlideOffsetChanged:(UISegmentedControl *)sender
{
[SlideNavigationController sharedInstance].landscapeSlideOffset = [self pixelsFromIndex:sender.selectedSegmentIndex];
}
#pragma mark - Helpers -
- (NSInteger)indexFromPixels:(NSInteger)pixels
{
if (pixels == 60)
return 0;
else if (pixels == 120)
return 1;
else
return 2;
}
- (NSInteger)pixelsFromIndex:(NSInteger)index
{
switch (index)
{
case 0:
return 60;
case 1:
return 120;
case 2:
return 200;
default:
return 0;
}
}
@end