/*
 
 Owner: michael@boinx.com
 Company: Boinx Software Ltd., Germany
 
 Abstract: Abstarct superclass for all AssistantPanes. Has default implementations of all methods declared in BXAssistantPaneProtocoll. Override those methods in new assistant as needed.
 
 
 Related:	BXAssistantController.h
			BXAssistantPaneProviderProtocol.h
			BXAssistantPaneProvider.h
			BXAssistantPaneProtocoll.h
			and its subclasses for all the assistants
 
 Documentation : Documentation/assistant_panes.html
 
 */

#import "BXAssistantPaneProtocol.h"

//#define DEBUG_METHOD_CALLS

@interface BXAssistantPane : NSObject <BXAssistantPaneProtocol>
{
	IBOutlet NSView* paneView;
	
	BOOL _active;
    NSString *_assistantPaneID;
    NSString *_assistantPaneNibName;
	
	id _assistantContoller;
	id _popOverWindowController;

	@private
		NSArray *_topLevelNibObjects;
		BOOL _isPaneLoaded;
}


- (id)assistantController;
- (void)setAssistantController:(id)inController;

- (id)popOverAlertController;
- (void)hidePopOverAlert:(NSNotification *)aNotification;	// can be called in subclasses to remove observation from Notification Center -> has to call -hidePopOver: to hide it.
- (void)hidePopOver:(NSNotification *)aNotification;

@end
