aboutsummaryrefslogtreecommitdiffhomepage
path: root/experimental/iOSSampleApp/Shared/SkOptionsTableViewController.h
blob: 13d6c1b8a478af591069f15eba3544d7da15cef6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#import <UIKit/UIKit.h>
#import "SkOptionListController.h"
#import "SkOSMenu.h"
#import "SkEvent.h"
#import "SkUIView.h"
@interface SkOptionItem : NSObject {
    UITableViewCell* fCell;
    const SkOSMenu::Item* fItem;
}
@property (nonatomic, assign) const SkOSMenu::Item* fItem;
@property (nonatomic, retain) UITableViewCell* fCell;

@end

@interface SkOptionListItem : SkOptionItem{
    SkOptionListController* fOptions;
}
@property (nonatomic, retain) SkOptionListController* fOptions;

@end

@interface SkOptionsTableViewController : UITableViewController <UINavigationControllerDelegate, SkUIViewOptionsDelegate> {
    NSMutableArray* fItems;
    const SkTDArray<SkOSMenu*>* fMenus;
    SkOptionListItem* fCurrentList;
}

@property (nonatomic, retain) NSMutableArray* fItems;
@property (nonatomic, retain) SkOptionListItem* fCurrentList;

- (void)registerMenus:(const SkTDArray<SkOSMenu*>*)menus;
- (void)updateMenu:(SkOSMenu*)menu;
- (void)loadMenu:(SkOSMenu*)menu;

- (UITableViewCell*)createAction:(NSString*)title;
- (UITableViewCell*)createSlider:(NSString*)title min:(float)min max:(float)max default:(float)value;
- (UITableViewCell*)createSwitch:(NSString*)title default:(BOOL)state;
- (UITableViewCell*)createTriState:(NSString*)title default:(int)index;
- (UITableViewCell*)createTextField:(NSString*)title default:(NSString*)value;
- (UITableViewCell*)createList:(NSString*)title default:(NSString*)value;

@end