Play-/Source/ui_ios/SettingsViewController.mm

66 lines
2.5 KiB
Text
Raw Normal View History

#import "SettingsViewController.h"
2019-04-08 20:27:54 -04:00
#import "ResolutionFactorSelectorViewController.h"
#include "../AppConfig.h"
#include "PreferenceDefs.h"
#include "../gs/GSH_OpenGL/GSH_OpenGL.h"
@implementation SettingsViewController
2020-12-02 18:37:31 -05:00
- (void)updateResolutionFactorLabel
2019-04-08 20:27:54 -04:00
{
int factor = CAppConfig::GetInstance().GetPreferenceInteger(PREF_CGSH_OPENGL_RESOLUTION_FACTOR);
2020-12-02 18:37:31 -05:00
[resolutionFactor setText:[NSString stringWithFormat:@"%dx", factor]];
2019-04-08 20:27:54 -04:00
}
2020-12-02 18:37:31 -05:00
- (void)viewDidLoad
{
2020-12-02 18:37:31 -05:00
[showFpsSwitch setOn:CAppConfig::GetInstance().GetPreferenceBoolean(PREFERENCE_UI_SHOWFPS)];
[showVirtualPadSwitch setOn:CAppConfig::GetInstance().GetPreferenceBoolean(PREFERENCE_UI_SHOWVIRTUALPAD)];
2019-04-08 20:27:54 -04:00
[self updateResolutionFactorLabel];
2020-12-02 18:37:31 -05:00
[forceBilinearFiltering setOn:CAppConfig::GetInstance().GetPreferenceBoolean(PREF_CGSH_OPENGL_FORCEBILINEARTEXTURES)];
2020-12-02 18:37:31 -05:00
[enableAudioOutput setOn:CAppConfig::GetInstance().GetPreferenceBoolean(PREFERENCE_AUDIO_ENABLEOUTPUT)];
NSString* versionString = [NSString stringWithFormat:@"%s - %s", PLAY_VERSION, __DATE__];
versionInfoLabel.text = versionString;
}
2020-12-02 18:37:31 -05:00
- (void)viewDidDisappear:(BOOL)animated
{
CAppConfig::GetInstance().SetPreferenceBoolean(PREFERENCE_UI_SHOWFPS, showFpsSwitch.isOn);
CAppConfig::GetInstance().SetPreferenceBoolean(PREFERENCE_UI_SHOWVIRTUALPAD, showVirtualPadSwitch.isOn);
2020-12-02 18:37:31 -05:00
2016-01-19 10:32:11 -05:00
CAppConfig::GetInstance().SetPreferenceBoolean(PREF_CGSH_OPENGL_FORCEBILINEARTEXTURES, forceBilinearFiltering.isOn);
2020-12-02 18:37:31 -05:00
CAppConfig::GetInstance().SetPreferenceBoolean(PREFERENCE_AUDIO_ENABLEOUTPUT, enableAudioOutput.isOn);
2020-12-02 18:37:31 -05:00
CAppConfig::GetInstance().Save();
}
2020-12-02 18:37:31 -05:00
- (void)tableView:(UITableView*)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath
2019-04-08 20:27:54 -04:00
{
2020-12-02 18:37:31 -05:00
[tableView deselectRowAtIndexPath:indexPath animated:YES];
2019-04-08 20:27:54 -04:00
}
2020-12-02 18:37:31 -05:00
- (void)prepareForSegue:(UIStoryboardSegue*)segue sender:(id)sender
2019-04-08 20:27:54 -04:00
{
2020-12-02 18:37:31 -05:00
if([segue.destinationViewController isKindOfClass:[ResolutionFactorSelectorViewController class]])
2019-04-08 20:27:54 -04:00
{
ResolutionFactorSelectorViewController* selector = (ResolutionFactorSelectorViewController*)segue.destinationViewController;
selector.factor = CAppConfig::GetInstance().GetPreferenceInteger(PREF_CGSH_OPENGL_RESOLUTION_FACTOR);
}
}
2020-12-02 18:37:31 -05:00
- (IBAction)returnToSettings:(UIStoryboardSegue*)segue
2019-04-08 20:27:54 -04:00
{
2020-12-02 18:37:31 -05:00
if([segue.sourceViewController isKindOfClass:[ResolutionFactorSelectorViewController class]])
2019-04-08 20:27:54 -04:00
{
ResolutionFactorSelectorViewController* selector = (ResolutionFactorSelectorViewController*)segue.sourceViewController;
CAppConfig::GetInstance().SetPreferenceInteger(PREF_CGSH_OPENGL_RESOLUTION_FACTOR, selector.factor);
[self updateResolutionFactorLabel];
}
}
@end