2 // PasscodeViewController.h
5 // Created by Mike Mayo on 10/26/10.
6 // The OpenStack project is provided under the Apache 2.0 license.
9 #import <UIKit/UIKit.h>
11 #define kModeEnterPasscode 0
12 #define kModeSetPasscode 1
13 #define kModeDisablePasscode 2
14 #define kModeChangePasscode 3
16 @class PasscodeLockViewController, SettingsViewController, RootViewController, AccountHomeViewController;
18 // this class asks for the passcode and allows you to set it
20 @interface PasscodeViewController : UIViewController <UITextFieldDelegate, UITableViewDelegate, UITableViewDataSource> {
22 PasscodeLockViewController *passcodeLockViewController;
23 SettingsViewController *settingsViewController;
24 RootViewController *rootViewController;
25 AccountHomeViewController *accountHomeViewController;
27 UILabel *passcodeConfirmationWarningLabel;
28 UIView *failedAttemptsView;
29 UILabel *failedAttemptsLabel;
30 NSInteger failedAttemptsCount;
32 // to be like Apple's passcode lock style, we're going to use three table views
33 // and slide them around as needed
34 NSUInteger tableIndex;
35 NSMutableArray *tableViews;
36 NSMutableArray *textFields;
37 NSMutableArray *squares;
39 IBOutlet UITableView *enterPasscodeTableView;
40 UITextField *enterPasscodeTextField;
41 NSArray *enterPasscodeSquareImageViews;
43 IBOutlet UITableView *setPasscodeTableView;
44 UITextField *setPasscodeTextField;
45 NSArray *setPasscodeSquareImageViews;
47 IBOutlet UITableView *confirmPasscodeTableView;
48 UITextField *confirmPasscodeTextField;
49 NSArray *confirmPasscodeSquareImageViews;
51 // there are two modes: entering a password and setting a password
54 BOOL simplePasscodeOn;
61 @property (nonatomic, assign) NSUInteger mode;
62 @property (nonatomic, retain) PasscodeLockViewController *passcodeLockViewController;
63 @property (nonatomic, retain) SettingsViewController *settingsViewController;
64 @property (nonatomic, retain) RootViewController *rootViewController;
65 @property (nonatomic, retain) AccountHomeViewController *accountHomeViewController;