Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Classes/Models/RZDebugMenuSettingsDataSource.h
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,6 @@

- (id)initWithDictionary:(NSDictionary *)plistData;
- (RZDebugMenuSettingsItem *)settingsItemAtIndexPath:(NSIndexPath *)indexPath;
- (void)resetTableDefaults;

@end
7 changes: 7 additions & 0 deletions Classes/Models/RZDebugMenuSettingsDataSource.m
Original file line number Diff line number Diff line change
Expand Up @@ -362,4 +362,11 @@ - (RZDebugMenuSettingsItem *)settingsItemAtIndexPath:(NSIndexPath *)indexPath
return [cellItemsMetaData objectAtIndex:indexPath.row];
}

#pragma mark - reset settings method

- (void)resetTableDefaults
{
[RZDebugMenuSettingsInterface resetDefaultsForSettings:self.groupedSections];
}

@end
1 change: 1 addition & 0 deletions Classes/Models/RZDebugMenuSettingsInterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@

+ (void)setValue:(id)value forDebugSettingsKey:(NSString *)key;
+ (id)valueForDebugSettingsKey:(NSString *)key;
+ (void)resetDefaultsForSettings:(NSDictionary *)settingsItems;
+ (NSString *)generateSettingsKey:(NSString *)identifier;

@end
16 changes: 16 additions & 0 deletions Classes/Models/RZDebugMenuSettingsInterface.m
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#import "RZDebugMenuSettingsInterface.h"

#import "RZDebugMenu.h"
#import "RZDebugMenuSettingsItem.h"

static NSString * const kRZUserSettingsDebugPrefix = @"DEBUG_";

Expand Down Expand Up @@ -50,6 +51,21 @@ + (void)setValue:(id)value forDebugSettingsKey:(NSString *)key
}
}

#pragma mark - reset setting method

+ (void)resetDefaultsForSettings:(NSDictionary *)settingsItems
{
// settingsItems is dictionary registered with user defaults. Still holds original default values
NSArray *sections = [settingsItems allKeys];
for ( NSString *section in sections ) {
NSArray *sectionSettings = [settingsItems objectForKey:section];

for ( RZDebugMenuSettingsItem *settingItem in sectionSettings ) {
[self setValue:settingItem.settingsValue forDebugSettingsKey:settingItem.settingsKey];
}
}
}

#pragma mark - Preprocessing methods

+ (NSString *)generateSettingsKey:(NSString *)identifier
Expand Down
1 change: 0 additions & 1 deletion Classes/RZDebugMenuSettingsObserverManager.m
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@ - (void)removeObserver:(id)observer forKey:(NSString *)key

- (void)notifyObserversWithValue:(id)value forKey:(NSString *)key
{

NSSet *observers = [self.observerKeyMap objectForKey:key];
for (RZDebugMenuObserver *observer in observers) {
id target = observer.target;
Expand Down
12 changes: 12 additions & 0 deletions Classes/UI/View Controllers/RZDebugMenuModalViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
static NSString * const kRZDisclosureReuseIdentifier = @"environments";
static NSString * const kRZToggleReuseIdentifier = @"toggle";
static NSString * const kRZVersionInfoReuseIdentifier = @"version";
static NSString * const kRZResetButtonTitle = @"Reset";

@interface RZDebugMenuModalViewController ()
<RZDebugMenuMultiItemListViewControllerDelegate,
Expand Down Expand Up @@ -59,6 +60,11 @@ - (void)viewDidLoad
CGFloat width = CGRectGetWidth(self.view.bounds);
CGFloat height = CGRectGetHeight(self.view.bounds);

self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:kRZResetButtonTitle
style:UIBarButtonItemStylePlain
target:self
action:@selector(resetSettings)];

self.optionsTableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, width, height) style:UITableViewStyleGrouped];

self.optionsTableView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
Expand Down Expand Up @@ -126,6 +132,12 @@ - (void)closeView
[self dismissViewControllerAnimated:YES completion:nil];
}

- (void)resetSettings
{
[self.debugSettingsDataSource resetTableDefaults];
[self.optionsTableView reloadData];
}

#pragma mark - table view delegate methods

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
Expand Down