WizardKit  0.1
WKWizardPanel.h
00001 /*
00002  * WKWizardPanel.h
00003  *
00004  * Interface declaration of the WKWizardPanel class for the
00005  * WizardKit framework
00006  *
00007  * Copyright (c) 2006, by Saso Kiselkov
00008  *
00009  * For license details please see the file COPYING included with this
00010  * source distribution package.
00011  */
00012 
00013 #ifndef _WK_WIZARD_PANEL_H_
00014 #define _WK_WIZARD_PANEL_H_
00015 
00016 #import <AppKit/NSPanel.h>
00017 
00018 @class NSString,
00019        NSArray,
00020        NSMutableDictionary;
00021 @class NSView, NSBox;
00022 
00023 extern NSString * const WKWizardPanelDidChangeCurrentStageNotification;
00024 
00025 @interface WKWizardPanel : NSPanel <NSCoding>
00026 {
00027   // run control
00028   BOOL runsInModalSession;
00029   BOOL centersBeforeActivating;
00030   BOOL isActive;
00031 
00032   // stages
00033   NSArray * stages;
00034   NSString * initialStage;
00035   unsigned int currentStage;
00036 }
00037 
00038 - (void) setStages: (NSArray *) someStages;
00039 - (NSArray *) stages;
00040 
00041 - (void) setRunsInModalSession: (BOOL) flag;
00042 - (BOOL) runsInModalSession;
00043 
00044 - (void) setInitialStage: (NSString *) aStageName;
00045 - (NSString *) initialStage;
00046 
00047 - (void) setCentersBeforeActivating: (BOOL) flag;
00048 - (BOOL) centersBeforeActivating;
00049 
00050 - (void) setCurrentStage: (NSString *) aStageName;
00051 - (NSArray *) currentStage;
00052 
00053 - (void) nextStage: (id) sender;
00054 - (void) previousStage: (id) sender;
00055 
00056 - (int) activate: (id) sender;
00057 - (void) deactivate: (id) sender;
00058 - (void) deactivateWithCode: (int) aCode;
00059 
00060 - (BOOL) isActive;
00061 
00062 @end
00063 
00064 @interface NSObject (WKWizardPanelDelegate)
00065 
00066 - (NSView *) wizardPanel: (WKWizardPanel *) sender
00067             viewForStage: (NSString *) aStageName;
00068 
00069 - (NSView *)       wizardPanel: (WKWizardPanel *) sender
00070  initialFirstResponderForStage: (NSString *) aStageName;
00071 
00072 @end
00073 
00074 #endif // _WK_WIZARD_PANEL_H_