CustomNavigationController.m 2.08 KB
//
//  CustomNavigationController.m
//  DUREX test
//
//  Created by Imanol Barba on 8/7/14.
//  Copyright (c) 2014 Emmoco. All rights reserved.
//

#import "CustomNavigationController.h"

@interface CustomNavigationController ()

@end

@implementation CustomNavigationController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.
}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (UIViewController *)popViewControllerAnimated:(BOOL)animated
{
    if(self.auxController == nil)
    {
        NSLog(@"[CustomNavigationController.m]: WARNING: No Auxiliar Controller assigned to Navigation controller");
        return [super popViewControllerAnimated:animated];
    }
    else
    {
        NSLog(@"[CustomNavigationController.m]: Navigation Stack has %d remaining levels",[[[self auxController] parentLayout] count]);
        if([[[self auxController] parentLayout] count] > 0)
        {
            NSLog(@"[CustomNavigationController.m]: Falling to previous navigation level");
            [[self auxController] navBack];
        }
        else
        {
            NSLog(@"[CustomNavigationController.m]: No more navigation levels in stack, falling to previous view");
            self.auxController = nil;
            return [super popViewControllerAnimated:animated];
        }
    }
    return nil;
}

/*- (void) setAuxController:(MenuTableViewController *)controller
{
    self.auxController = controller;
}*/

/*
#pragma mark - Navigation

// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    // Get the new view controller using [segue destinationViewController].
    // Pass the selected object to the new view controller.
}
*/

@end