- Rewrote LauncherPreferences -> PLPreferences + Now the file layout is the same as UI layout + (get/set)Preference are replaced with corresponding get/set types + Getting/setting is now done through keyPath instead of manually iterating over subdictionaries. + Implemented an isolation layer, allowing an instance to have its own settings. This is off by default - Implemented launcher_profiles + Added Profile manager that can be accessed from the sidebar + Moved "Game directory (instances)" to this screen + Replaced version selector with profile selector. Version selector is moved into profile editor. - Other changes + Cleanup code by using NSPredicate instead of huge for loops + Titles in settings are made multilined + Controller config: replaced bar button items with localized ones Due to how large the changes are, this is committed directly to the mainline branch. Bugs are expected to be found (although I did enough tests for this locally)
23 lines
884 B
Objective-C
23 lines
884 B
Objective-C
#import <UIKit/UIKit.h>
|
|
|
|
typedef void(^CreateView)(UITableViewCell *, NSString *,NSString *, NSDictionary *);
|
|
typedef id (^GetPreferenceBlock)(NSString *, NSString *);
|
|
typedef void (^SetPreferenceBlock)(NSString *, NSString *, id);
|
|
|
|
@interface PLPrefTableViewController : UITableViewController<UITextFieldDelegate>
|
|
|
|
@property(nonatomic) CreateView typeButton, typeChildPane, typePickField, typeTextField, typeSlider, typeSwitch;
|
|
|
|
@property(nonatomic) GetPreferenceBlock getPreference;
|
|
@property(nonatomic) SetPreferenceBlock setPreference;
|
|
@property(nonatomic) BOOL prefSectionsVisible, hasDetail;
|
|
|
|
@property(nonatomic) NSArray<NSString*>* prefSections;
|
|
@property(nonatomic) NSMutableArray<NSNumber*>* prefSectionsVisibility;
|
|
@property(nonatomic) NSArray<NSArray<NSDictionary*>*>* prefContents;
|
|
@property(nonatomic) BOOL prefDetailVisible;
|
|
|
|
- (UIBarButtonItem *)drawHelpButton;
|
|
|
|
@end
|