summaryrefslogtreecommitdiff
path: root/macosx/plugins/PeopsXgl/macsrc
diff options
context:
space:
mode:
authorSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-08-21 00:36:42 +0000
committerSND\MaddTheSane_cp <SND\MaddTheSane_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2013-08-21 00:36:42 +0000
commite57165ae3f1706afec533d7b3cae17555a0f38ad (patch)
tree569ef31d65ee53b19589e0b20e42ab7b96acb06c /macosx/plugins/PeopsXgl/macsrc
parentb432dc873778f989f0dba95a87e1511558eb44ec (diff)
Implement window size for the PeopsXGL plug-in on OS X.
This plug-in will also try to fix the old, broken, and unused "Window Size" pref key. git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@86779 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'macosx/plugins/PeopsXgl/macsrc')
-rwxr-xr-xmacosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.h3
-rwxr-xr-xmacosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.m66
2 files changed, 44 insertions, 25 deletions
diff --git a/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.h b/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.h
index 6039cb34..2bc40052 100755
--- a/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.h
+++ b/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.h
@@ -21,8 +21,9 @@
IBOutlet NSControl *vSync;
IBOutlet NSControl *proportionalResize;
- IBOutlet NSPopUpButton *windowSize;
IBOutlet NSPopUpButton *fullscreenSize;
+ IBOutlet NSFormCell *windowWidth;
+ IBOutlet NSFormCell *windowHeighth;
IBOutlet NSPopUpButton *offscreenDrawing;
IBOutlet NSPopUpButton *texColorDepth;
diff --git a/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.m b/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.m
index af6ee458..c963c35a 100755
--- a/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.m
+++ b/macosx/plugins/PeopsXgl/macsrc/NetSfPeopsOpenGLPluginConfigController.m
@@ -123,6 +123,17 @@ void PrepFactoryDefaultPreferences(void)
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
+ NSDictionary* keyValues = [defaults dictionaryForKey:PrefsKey];
+
+ if (keyValues && [[keyValues objectForKey:@"Window Size"] isKindOfClass:[NSNumber class]]) {
+ NSMutableDictionary *tmpDict = [[NSMutableDictionary alloc] initWithDictionary:keyValues];
+ [tmpDict setObject:NSStringFromSize(NSMakeSize(800, 600)) forKey:@"Window Size"];
+ [defaults setObject:tmpDict forKey:PrefsKey];
+ [defaults synchronize];
+ RELEASEOBJ(tmpDict);
+ }
+
+
[defaults registerDefaults:[NSDictionary dictionaryWithObjectsAndKeys:
[NSDictionary dictionaryWithObjectsAndKeys:
@NO, kFPSCounter,
@@ -141,7 +152,7 @@ void PrepFactoryDefaultPreferences(void)
@0, @"Texture Enhancement Level",
@0, @"Texture Filter Level",
@0, @"Frame Buffer Level",
- @0, @"Window Size",
+ NSStringFromSize(NSMakeSize(800, 600)), @"Window Size",
@NO, @"Draw Scanlines",
// nasty:
[NSArchiver archivedDataWithRootObject: [NSColor colorWithCalibratedRed:0 green:0 blue:0 alpha:0.25]], @"Scanline Color",
@@ -169,7 +180,7 @@ void ReadConfig(void)
PrepFactoryDefaultPreferences(); // in case user deletes, or on new startup
NSDictionary* keyValues = [[NSUserDefaults standardUserDefaults] dictionaryForKey:PrefsKey];
-
+
// bind all prefs settings to their PCSXR counterparts
// with a little finagling to make it work as expected
iShowFPS = [[keyValues objectForKey:kFPSCounter] boolValue];
@@ -191,8 +202,14 @@ void ReadConfig(void)
// we always start out at 800x600 (at least until resizing the window is implemented)
- iResX = 800;
- iResY = 600;
+ NSSize winSize = NSSizeFromString([keyValues objectForKey:@"Window Size"]);
+ if (bChangeWinMode == 1) {
+ iResX = winSize.width;
+ iResY = winSize.height;
+ } else {
+ iResX = 800;
+ iResY = 600;
+ }
iBlurBuffer = [[keyValues objectForKey:@"Blur"] boolValue]; // not noticeable, but doesn't harm
iUseScanLines = [[keyValues objectForKey:@"Draw Scanlines"] boolValue]; // works
@@ -277,7 +294,6 @@ void ReadConfig(void)
- (IBAction)ok:(id)sender
{
-
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
unsigned int hackValues = 0;
@@ -290,31 +306,31 @@ void ReadConfig(void)
self.keyValues = [NSMutableDictionary dictionaryWithDictionary: [[NSUserDefaults standardUserDefaults] dictionaryForKey:PrefsKey]];
NSMutableDictionary *writeDic = [NSMutableDictionary dictionaryWithDictionary:keyValues];
- [writeDic setObject:@((unsigned int)hackValues) forKey:kHacks];
- [writeDic setObject:@((BOOL)[hackEnable integerValue]) forKey:kHacksEnable];
- [writeDic setObject:@((BOOL)[fpsCounter integerValue]) forKey:kFPSCounter];
+ [writeDic setObject:@(hackValues) forKey:kHacks];
+ [writeDic setObject:([hackEnable integerValue] ? @YES : @NO) forKey:kHacksEnable];
+ [writeDic setObject:([fpsCounter integerValue] ? @YES : @NO) forKey:kFPSCounter];
[writeDic setObject:[NSArchiver archivedDataWithRootObject:[scanlineColorWell color]] forKey:@"Scanline Color"];
- [writeDic setObject:@((BOOL)[frameSkipping integerValue]) forKey:kFrameSkipping];
- [writeDic setObject:@((BOOL)[autoFullScreen integerValue]) forKey:kAutoFullScreen];
- //[writeDic setObject:@((BOOL)[frameLimit integerValue]) forKey:kFrameLimit];
- [writeDic setObject:@((BOOL)[proportionalResize integerValue]) forKey:@"Proportional Resize"];
+ [writeDic setObject:([frameSkipping integerValue] ? @YES : @NO) forKey:kFrameSkipping];
+ [writeDic setObject:([autoFullScreen integerValue] ? @YES : @NO) forKey:kAutoFullScreen];
+ //[writeDic setObject:([frameLimit integerValue] ? @YES : @NO) forKey:kFrameLimit];
+ [writeDic setObject:([proportionalResize integerValue] ? @YES : @NO) forKey:@"Proportional Resize"];
[writeDic setObject:@([ditherMode indexOfItem:[ditherMode selectedItem]]) forKey:@"Dither Mode"];
[writeDic setObject:@([offscreenDrawing indexOfItem:[offscreenDrawing selectedItem]]) forKey:@"Offscreen Drawing Level"];
[writeDic setObject:@([texColorDepth indexOfItem:[texColorDepth selectedItem]]) forKey:@"Texture Color Depth Level"];
[writeDic setObject:@([texEnhancment integerValue]) forKey:@"Texture Enhancement Level"];
[writeDic setObject:@([texFiltering integerValue]) forKey:@"Texture Filter Level"];
[writeDic setObject:@([frameBufferEffects indexOfItem:[frameBufferEffects selectedItem]]) forKey:@"Frame Buffer Level"];
- [writeDic setObject:@((BOOL)[drawScanlines integerValue]) forKey:@"Draw Scanlines"];
- [writeDic setObject:@((BOOL)[advancedBlending integerValue]) forKey:@"Advanced Blending"];
- [writeDic setObject:@((BOOL)[opaquePass integerValue]) forKey:@"Opaque Pass"];
- [writeDic setObject:@((BOOL)[blurEffect integerValue]) forKey:@"Blur"];
- [writeDic setObject:@((BOOL)[zMaskClipping integerValue]) forKey:@"Z Mask Clipping"];
- [writeDic setObject:@((BOOL)[wireframeOnly integerValue]) forKey:@"Wireframe Mode"];
- [writeDic setObject:@((BOOL)[mjpegDecoder integerValue]) forKey:@"Emulate mjpeg decoder"];
- [writeDic setObject:@((BOOL)[mjpegDecoder15bit integerValue]) forKey:@"Fast mjpeg decoder"];
- [writeDic setObject:@((BOOL)[gteAccuracy integerValue]) forKey:@"GteAccuracy"];
- [writeDic setObject:@((BOOL)[vSync integerValue]) forKey:kVSync];
-
+ [writeDic setObject:([drawScanlines integerValue] ? @YES : @NO) forKey:@"Draw Scanlines"];
+ [writeDic setObject:([advancedBlending integerValue] ? @YES : @NO) forKey:@"Advanced Blending"];
+ [writeDic setObject:([opaquePass integerValue] ? @YES : @NO) forKey:@"Opaque Pass"];
+ [writeDic setObject:([blurEffect integerValue] ? @YES : @NO) forKey:@"Blur"];
+ [writeDic setObject:([zMaskClipping integerValue] ? @YES : @NO) forKey:@"Z Mask Clipping"];
+ [writeDic setObject:([wireframeOnly integerValue] ? @YES : @NO) forKey:@"Wireframe Mode"];
+ [writeDic setObject:([mjpegDecoder integerValue] ? @YES : @NO) forKey:@"Emulate mjpeg decoder"];
+ [writeDic setObject:([mjpegDecoder15bit integerValue] ? @YES : @NO) forKey:@"Fast mjpeg decoder"];
+ [writeDic setObject:([gteAccuracy integerValue] ? @YES : @NO) forKey:@"GteAccuracy"];
+ [writeDic setObject:([vSync integerValue] ? @YES : @NO) forKey:kVSync];
+ [writeDic setObject:NSStringFromSize(NSMakeSize([windowWidth integerValue], [windowHeighth integerValue])) forKey:@"Window Size"];
//[writeDic setObject:@([windowSize indexOfItem:[windowSize selectedItem]]) forKey:@"Window Size"];
@@ -392,7 +408,9 @@ void ReadConfig(void)
[frameBufferEffects selectItemAtIndex:[[keyValues objectForKey:@"Frame Buffer Level"] integerValue]];
[vSync setIntegerValue:[[keyValues objectForKey:kVSync] boolValue]];
[proportionalResize setIntegerValue:[[keyValues objectForKey:@"Proportional Resize"] boolValue]];
-
+ NSSize winSize = NSSizeFromString([keyValues objectForKey:@"Window Size"]);
+ [windowWidth setIntegerValue:winSize.width];
+ [windowHeighth setIntegerValue:winSize.height];
//[windowSize selectItemAtIndex:[[keyValues objectForKey:@"Window Size"] integerValue]];
}