//
//  LCNavigationBar.h
//  LCToolkit
//
//  Created by Logan Collins on 6/22/10.
//  Copyright 2010 Logan Collins. All rights reserved.
//

#import <Cocoa/Cocoa.h>


@class LCNavigationItem;


@protocol LCNavigationBarDelegate;


@interface LCNavigationBar : NSView {
@private
	NSMutableArray *items;
	NSPathControl *pathControl;
	id delegate;
}

@property (assign) id <LCNavigationBarDelegate> delegate;

@property (copy) NSArray *items;

@property (readonly) LCNavigationItem *topItem;

- (void)pushNavigationItem:(LCNavigationItem *)item;
- (void)popToNavigationItem:(LCNavigationItem *)item;
- (void)popToRootNavigationItem;
- (void)popNavigationItem;

@end


@protocol LCNavigationBarDelegate <NSObject>

@optional

- (BOOL)navigationBar:(LCNavigationBar *)navigationBar shouldPushItem:(LCNavigationItem *)item;
- (void)navigationBar:(LCNavigationBar *)navigationBar didPushItem:(LCNavigationItem *)item;
- (BOOL)navigationBar:(LCNavigationBar *)navigationBar shouldPopToItem:(LCNavigationItem *)item;
- (void)navigationBar:(LCNavigationBar *)navigationBar didPopToItem:(LCNavigationItem *)item;

@end
