From 23d7efb0542c3e31302f30a36391be1d81de5908 Mon Sep 17 00:00:00 2001 From: Joao Nunes Date: Wed, 14 Aug 2013 13:48:54 +0300 Subject: [PATCH 1/2] Added variable names to block declarations to help in code completion --- MMDrawerController/MMDrawerController.m | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/MMDrawerController/MMDrawerController.m b/MMDrawerController/MMDrawerController.m index e4102918..629469eb 100644 --- a/MMDrawerController/MMDrawerController.m +++ b/MMDrawerController/MMDrawerController.m @@ -171,7 +171,7 @@ -(id)initWithCenterViewController:(UIViewController *)centerViewController right } #pragma mark - Open/Close methods --(void)toggleDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated completion:(void (^)(BOOL))completion{ +-(void)toggleDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated completion:(void (^)(BOOL finished))completion{ NSParameterAssert(drawerSide!=MMDrawerSideNone); if(self.openSide == MMDrawerSideNone){ [self openDrawerSide:drawerSide animated:animated completion:completion]; @@ -189,11 +189,11 @@ -(void)toggleDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated complet } } --(void)closeDrawerAnimated:(BOOL)animated completion:(void (^)(BOOL))completion{ +-(void)closeDrawerAnimated:(BOOL)animated completion:(void (^)(BOOL finished))completion{ [self closeDrawerAnimated:animated velocity:self.animationVelocity animationOptions:UIViewAnimationOptionCurveEaseInOut completion:completion]; } --(void)closeDrawerAnimated:(BOOL)animated velocity:(CGFloat)velocity animationOptions:(UIViewAnimationOptions)options completion:(void (^)(BOOL))completion{ +-(void)closeDrawerAnimated:(BOOL)animated velocity:(CGFloat)velocity animationOptions:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion{ if (self.isAnimatingDrawer) { if(completion){ completion(NO); @@ -249,13 +249,13 @@ -(void)closeDrawerAnimated:(BOOL)animated velocity:(CGFloat)velocity animationOp } } --(void)openDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated completion:(void (^)(BOOL))completion{ +-(void)openDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated completion:(void (^)(BOOL finished))completion{ NSParameterAssert(drawerSide != MMDrawerSideNone); [self openDrawerSide:drawerSide animated:animated velocity:self.animationVelocity animationOptions:UIViewAnimationOptionCurveEaseInOut completion:completion]; } --(void)openDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated velocity:(CGFloat)velocity animationOptions:(UIViewAnimationOptions)options completion:(void (^)(BOOL))completion{ +-(void)openDrawerSide:(MMDrawerSide)drawerSide animated:(BOOL)animated velocity:(CGFloat)velocity animationOptions:(UIViewAnimationOptions)options completion:(void (^)(BOOL finished))completion{ NSParameterAssert(drawerSide != MMDrawerSideNone); if(self.isAnimatingDrawer){ if(completion){ @@ -351,7 +351,7 @@ -(void)setCenterViewController:(UIViewController *)centerViewController animated } } --(void)setCenterViewController:(UIViewController *)newCenterViewController withCloseAnimation:(BOOL)animated completion:(void(^)(BOOL))completion{ +-(void)setCenterViewController:(UIViewController *)newCenterViewController withCloseAnimation:(BOOL)animated completion:(void(^)(BOOL finished))completion{ [self setCenterViewController:newCenterViewController animated:animated]; if(self.openSide != MMDrawerSideNone){ @@ -377,7 +377,7 @@ -(void)setCenterViewController:(UIViewController *)newCenterViewController withC } } --(void)setCenterViewController:(UIViewController *)newCenterViewController withFullCloseAnimation:(BOOL)animated completion:(void(^)(BOOL))completion{ +-(void)setCenterViewController:(UIViewController *)newCenterViewController withFullCloseAnimation:(BOOL)animated completion:(void(^)(BOOL finished))completion{ if(self.openSide != MMDrawerSideNone && animated){ From 92b7bb48cf3d938a77f5c2638b8dff9fb8db04be Mon Sep 17 00:00:00 2001 From: Joao Nunes Date: Wed, 14 Aug 2013 13:52:14 +0300 Subject: [PATCH 2/2] Added InitWithCoder to support Storyboards Fixed initWithCenterViewController:leftDrawerViewController:rightDrawerViewController: to configure the Drawer properly --- MMDrawerController/MMDrawerController.m | 40 ++++++++++++++++++------- 1 file changed, 29 insertions(+), 11 deletions(-) diff --git a/MMDrawerController/MMDrawerController.m b/MMDrawerController/MMDrawerController.m index 629469eb..23d0063e 100644 --- a/MMDrawerController/MMDrawerController.m +++ b/MMDrawerController/MMDrawerController.m @@ -133,20 +133,35 @@ @implementation MMDrawerController #pragma mark - Init -- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { - self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; - if (self) { - [self setMaximumLeftDrawerWidth:MMDrawerDefaultWidth]; - [self setMaximumRightDrawerWidth:MMDrawerDefaultWidth]; +-(void)commomInit +{ + [self setMaximumLeftDrawerWidth:MMDrawerDefaultWidth]; + [self setMaximumRightDrawerWidth:MMDrawerDefaultWidth]; + + [self setAnimationVelocity:MMDrawerDefaultAnimationVelocity]; + + [self setShowsShadow:YES]; + [self setShouldStretchDrawer:YES]; + + [self setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeNone]; + [self setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeNone]; + [self setCenterHiddenInteractionMode:MMDrawerOpenCenterInteractionModeNavigationBarOnly]; - [self setAnimationVelocity:MMDrawerDefaultAnimationVelocity]; +} - [self setShowsShadow:YES]; - [self setShouldStretchDrawer:YES]; +- (id)initWithCoder:(NSCoder *)aDecoder +{ + self = [super initWithCoder:aDecoder]; + if (self) { + [self commomInit]; + } + return self; +} - [self setOpenDrawerGestureModeMask:MMOpenDrawerGestureModeNone]; - [self setCloseDrawerGestureModeMask:MMCloseDrawerGestureModeNone]; - [self setCenterHiddenInteractionMode:MMDrawerOpenCenterInteractionModeNavigationBarOnly]; +- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { + self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; + if (self) { + [self commomInit]; } return self; } @@ -155,6 +170,9 @@ -(id)initWithCenterViewController:(UIViewController *)centerViewController leftD NSParameterAssert(centerViewController); self = [super init]; if(self){ + + [self commomInit]; + [self setCenterViewController:centerViewController]; [self setLeftDrawerViewController:leftDrawerViewController]; [self setRightDrawerViewController:rightDrawerViewController];