Merge branch 'master' of https://code.grnet.gr/git/pithos-ios
[pithos-ios] / Classes / PasscodeViewController.h
1 //
2 //  PasscodeViewController.h
3 //  OpenStack
4 //
5 //  Created by Mike Mayo on 10/26/10.
6 //  The OpenStack project is provided under the Apache 2.0 license.
7 //
8
9 #import <UIKit/UIKit.h>
10
11 #define kModeEnterPasscode 0
12 #define kModeSetPasscode 1
13 #define kModeDisablePasscode 2
14 #define kModeChangePasscode 3
15
16 @class PasscodeLockViewController, SettingsViewController, RootViewController;
17
18 // this class asks for the passcode and allows you to set it
19
20 @interface PasscodeViewController : UIViewController <UITextFieldDelegate, UITableViewDelegate, UITableViewDataSource> {
21
22     PasscodeLockViewController *passcodeLockViewController;
23     SettingsViewController *settingsViewController;
24     RootViewController *rootViewController;
25     
26     UILabel *passcodeConfirmationWarningLabel;
27     UIView *failedAttemptsView;
28     UILabel *failedAttemptsLabel;
29     NSInteger failedAttemptsCount;
30
31     // to be like Apple's passcode lock style, we're going to use three table views
32     // and slide them around as needed
33     NSUInteger tableIndex;
34     NSMutableArray *tableViews;
35     NSMutableArray *textFields;
36     NSMutableArray *squares;
37     
38     IBOutlet UITableView *enterPasscodeTableView;
39     UITextField *enterPasscodeTextField;
40     NSArray *enterPasscodeSquareImageViews;
41
42     IBOutlet UITableView *setPasscodeTableView;
43     UITextField *setPasscodeTextField;
44     NSArray *setPasscodeSquareImageViews;
45
46     IBOutlet UITableView *confirmPasscodeTableView;
47     UITextField *confirmPasscodeTextField;
48     NSArray *confirmPasscodeSquareImageViews;
49
50     // there are two modes: entering a password and setting a password
51     NSUInteger mode;
52     
53     BOOL simplePasscodeOn;
54     BOOL passcodeLockOn;
55     BOOL eraseData;
56     
57     CGFloat viewWidth;
58 }
59
60 @property (nonatomic, assign) NSUInteger mode;
61 @property (nonatomic, retain) PasscodeLockViewController *passcodeLockViewController;
62 @property (nonatomic, retain) SettingsViewController *settingsViewController;
63 @property (nonatomic, retain) RootViewController *rootViewController;
64
65 @end