public globalLeftPanel/globalRightPanel
This commit is contained in:
parent
5b92e64507
commit
8816a06fe5
@ -24,8 +24,12 @@ typedef NS_ENUM(NSInteger, MFNumberOfDrawers) {
|
|||||||
@interface MVMCoreUISplitViewController : UIViewController
|
@interface MVMCoreUISplitViewController : UIViewController
|
||||||
|
|
||||||
// Reference to the panels.
|
// Reference to the panels.
|
||||||
@property (nullable, weak, nonatomic, readonly) UIViewController <MVMCoreUIPanelProtocol> *leftPanel;
|
@property (nullable, weak, nonatomic) UIViewController <MVMCoreUIPanelProtocol> *leftPanel;
|
||||||
@property (nullable, weak, nonatomic, readonly) UIViewController <MVMCoreUIPanelProtocol> *rightPanel;
|
@property (nullable, weak, nonatomic) UIViewController <MVMCoreUIPanelProtocol> *rightPanel;
|
||||||
|
|
||||||
|
// For keeping
|
||||||
|
@property (nullable, strong, nonatomic) UIViewController <MVMCoreUIPanelProtocol> *globalLeftPanel;
|
||||||
|
@property (nullable, strong, nonatomic) UIViewController <MVMCoreUIPanelProtocol> *globalRightPanel;
|
||||||
|
|
||||||
// Can be of protocol MVMCoreUIPanelButtonProtocol
|
// Can be of protocol MVMCoreUIPanelButtonProtocol
|
||||||
@property (nullable, strong, nonatomic) UIBarButtonItem *leftPanelButton;
|
@property (nullable, strong, nonatomic) UIBarButtonItem *leftPanelButton;
|
||||||
@ -79,6 +83,9 @@ typedef NS_ENUM(NSInteger, MFNumberOfDrawers) {
|
|||||||
// contains speicaly logic to set the icon color
|
// contains speicaly logic to set the icon color
|
||||||
- (void)setNavigationIconColor:(nullable UIColor *)color;
|
- (void)setNavigationIconColor:(nullable UIColor *)color;
|
||||||
|
|
||||||
|
///create right and left panel. if left and right panel is already created, will replace them
|
||||||
|
- (void)createPanels;
|
||||||
|
|
||||||
/// Updates the panels that are used.
|
/// Updates the panels that are used.
|
||||||
- (void)setupPanels;
|
- (void)setupPanels;
|
||||||
|
|
||||||
@ -120,10 +127,6 @@ typedef NS_ENUM(NSInteger, MFNumberOfDrawers) {
|
|||||||
- (nullable UIViewController <MVMCoreUIPanelProtocol> *)createLeftPanelViewController;
|
- (nullable UIViewController <MVMCoreUIPanelProtocol> *)createLeftPanelViewController;
|
||||||
- (nullable UIViewController <MVMCoreUIPanelProtocol> *)createRightPanelViewController;
|
- (nullable UIViewController <MVMCoreUIPanelProtocol> *)createRightPanelViewController;
|
||||||
|
|
||||||
//replace gloabl panel
|
|
||||||
- (void)updateGlobalLeftPanelViewController:(nullable UIViewController <MVMCoreUIPanelProtocol> *)leftPanelController;
|
|
||||||
- (void)updateGlobalRightPanelViewController:(nullable UIViewController <MVMCoreUIPanelProtocol> *)rightPanelController;
|
|
||||||
|
|
||||||
// subclass to change image of back button
|
// subclass to change image of back button
|
||||||
- (nullable UIImage *)imageForBackButton;
|
- (nullable UIImage *)imageForBackButton;
|
||||||
|
|
||||||
|
|||||||
@ -44,12 +44,6 @@ typedef NS_OPTIONS(NSInteger, MFExtendedDrawer) {
|
|||||||
@property (weak, nonatomic) UIView *leftPanelSeparator;
|
@property (weak, nonatomic) UIView *leftPanelSeparator;
|
||||||
@property (weak, nonatomic) UIView *rightPanelSeparator;
|
@property (weak, nonatomic) UIView *rightPanelSeparator;
|
||||||
|
|
||||||
// For keeping
|
|
||||||
@property (strong, nonatomic, readwrite) UIViewController <MVMCoreUIPanelProtocol> *globalLeftPanel;
|
|
||||||
@property (strong, nonatomic, readwrite) UIViewController <MVMCoreUIPanelProtocol> *globalRightPanel;
|
|
||||||
|
|
||||||
@property (weak, nonatomic, readwrite) UIViewController <MVMCoreUIPanelProtocol> *leftPanel;
|
|
||||||
@property (weak, nonatomic, readwrite) UIViewController <MVMCoreUIPanelProtocol> *rightPanel;
|
|
||||||
@property (weak, nonatomic, readwrite) NavigationController *navigationController;
|
@property (weak, nonatomic, readwrite) NavigationController *navigationController;
|
||||||
|
|
||||||
// A view that covers the detail view when the master is out.
|
// A view that covers the detail view when the master is out.
|
||||||
@ -114,14 +108,6 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)updateGlobalLeftPanelViewController:(nullable UIViewController <MVMCoreUIPanelProtocol> *)leftPanelController {
|
|
||||||
self.globalLeftPanel = leftPanelController;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (void)updateGlobalRightPanelViewController:(nullable UIViewController <MVMCoreUIPanelProtocol> *)rightPanelController {
|
|
||||||
self.globalRightPanel = rightPanelController;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (nullable NSArray <UIBarButtonItem *>*)additionalLeftButtons {
|
- (nullable NSArray <UIBarButtonItem *>*)additionalLeftButtons {
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
@ -366,7 +352,7 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)showLeftPanelAnimated:(BOOL)animated explict:(BOOL)explict {
|
- (void)showLeftPanelAnimated:(BOOL)animated explict:(BOOL)explict {
|
||||||
if (!self.globalLeftPanel) {
|
if (!self.leftPanel) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
||||||
@ -523,9 +509,6 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)hideRightPanelAnimated:(BOOL)animated checkingForOtherExtendedDrawers:(BOOL)checkingForOtherExtendedDrawers {
|
- (void)hideRightPanelAnimated:(BOOL)animated checkingForOtherExtendedDrawers:(BOOL)checkingForOtherExtendedDrawers {
|
||||||
if (!self.globalRightPanel) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
||||||
if (self.mainViewTrailing.constant > .1) {
|
if (self.mainViewTrailing.constant > .1) {
|
||||||
if (checkingForOtherExtendedDrawers && self.explictlyShowingPanel == self.rightPanel) {
|
if (checkingForOtherExtendedDrawers && self.explictlyShowingPanel == self.rightPanel) {
|
||||||
@ -565,7 +548,7 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)showRightPanelAnimated:(BOOL)animated explict:(BOOL)explict {
|
- (void)showRightPanelAnimated:(BOOL)animated explict:(BOOL)explict {
|
||||||
if (!self.globalRightPanel) {
|
if (!self.rightPanel) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
[MVMCoreDispatchUtility performBlockOnMainThread:^{
|
||||||
@ -786,6 +769,13 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)createPanels {
|
||||||
|
// Create panels
|
||||||
|
self.globalLeftPanel = [self createLeftPanelViewController];
|
||||||
|
self.globalRightPanel = [self createRightPanelViewController];
|
||||||
|
[self setupPanels];
|
||||||
|
}
|
||||||
|
|
||||||
- (void)setupPanels {
|
- (void)setupPanels {
|
||||||
[self forceHideBothDrawers];
|
[self forceHideBothDrawers];
|
||||||
[self setupLeftPanel];
|
[self setupLeftPanel];
|
||||||
@ -882,10 +872,7 @@ CGFloat const PanelAnimationDuration = 0.2;
|
|||||||
[NSLayoutConstraint constraintWithItem:coverView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:mainView attribute:NSLayoutAttributeTop multiplier:1.0 constant:0].active = YES;
|
[NSLayoutConstraint constraintWithItem:coverView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:mainView attribute:NSLayoutAttributeTop multiplier:1.0 constant:0].active = YES;
|
||||||
[NSLayoutConstraint constraintWithItem:coverView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:mainView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0].active = YES;
|
[NSLayoutConstraint constraintWithItem:coverView attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:mainView attribute:NSLayoutAttributeBottom multiplier:1.0 constant:0].active = YES;
|
||||||
|
|
||||||
// Create panels
|
[self createPanels];
|
||||||
self.globalLeftPanel = [self createLeftPanelViewController];
|
|
||||||
self.globalRightPanel = [self createRightPanelViewController];
|
|
||||||
[self setupPanels];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user