From d8cfdba5bffc84b917f11db9564319693f29a629 Mon Sep 17 00:00:00 2001 From: Simon Howard Date: Sat, 4 Jun 2016 19:29:09 -0400 Subject: [PATCH] osx: Tweak launcher interface. Change preferences window to use standard NSPathControl controls for selecting IWAD file paths. Make the command line arguments text box multiline to better support long command lines. --- pkg/osx/GNUmakefile | 1 - pkg/osx/IWADController.m | 33 +- pkg/osx/IWADLocation.h | 36 - pkg/osx/IWADLocation.m | 66 - pkg/osx/Resources/launcher.nib/designable.nib | 4100 ++--------------- .../Resources/launcher.nib/keyedobjects.nib | Bin 32366 -> 22494 bytes 6 files changed, 528 insertions(+), 3708 deletions(-) delete mode 100644 pkg/osx/IWADLocation.h delete mode 100644 pkg/osx/IWADLocation.m diff --git a/pkg/osx/GNUmakefile b/pkg/osx/GNUmakefile index f4ad51da..4566411f 100644 --- a/pkg/osx/GNUmakefile +++ b/pkg/osx/GNUmakefile @@ -129,7 +129,6 @@ LAUNCHER_OBJS= \ AppController.o \ Execute.o \ IWADController.o \ - IWADLocation.o \ LauncherManager.o \ main.o diff --git a/pkg/osx/IWADController.m b/pkg/osx/IWADController.m index 35ceef82..cdffc453 100644 --- a/pkg/osx/IWADController.m +++ b/pkg/osx/IWADController.m @@ -16,7 +16,6 @@ #include #include #include "IWADController.h" -#include "IWADLocation.h" typedef enum { @@ -58,7 +57,7 @@ static NSString *IWADFilenames[NUM_IWAD_TYPES + 1] = @implementation IWADController -- (void) getIWADList: (IWADLocation **) iwadList +- (void) getIWADList: (NSPathControl **) iwadList { iwadList[IWAD_DOOM1] = self->doom1; iwadList[IWAD_DOOM2] = self->doom2; @@ -90,7 +89,7 @@ static NSString *IWADFilenames[NUM_IWAD_TYPES + 1] = - (NSString *) getIWADLocation { IWAD selectedIWAD; - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; selectedIWAD = [self getSelectedIWAD]; @@ -102,7 +101,7 @@ static NSString *IWADFilenames[NUM_IWAD_TYPES + 1] = { [self getIWADList: iwadList]; - return [iwadList[selectedIWAD] getLocation]; + return [[iwadList[selectedIWAD] URL] path]; } } @@ -133,7 +132,7 @@ static const char *NameForIWAD(IWAD iwad) - (void) setIWADConfig { - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; NSUserDefaults *defaults; NSString *key; NSString *value; @@ -152,7 +151,7 @@ static const char *NameForIWAD(IWAD iwad) if (value != nil) { - [iwadList[i] setLocation:value]; + [iwadList[i] setURL: [NSURL fileURLWithPath: value]]; } } } @@ -190,7 +189,7 @@ static const char *NameForIWAD(IWAD iwad) - (BOOL) setDropdownList { - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; BOOL have_wads; id location; unsigned int i; @@ -205,7 +204,7 @@ static const char *NameForIWAD(IWAD iwad) for (i=0; i 0) { @@ -229,7 +228,7 @@ static const char *NameForIWAD(IWAD iwad) - (void) saveConfig { - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; IWAD selectedIWAD; NSUserDefaults *defaults; NSString *key; @@ -245,7 +244,7 @@ static const char *NameForIWAD(IWAD iwad) for (i=0; i 0) { @@ -330,7 +329,7 @@ static const char *NameForIWAD(IWAD iwad) for (i=0; i 0) { @@ -375,7 +374,7 @@ static const char *NameForIWAD(IWAD iwad) - (BOOL) addIWADPath: (NSString *) path { - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; NSArray *pathComponents; NSString *filename; unsigned int i; @@ -394,7 +393,7 @@ static const char *NameForIWAD(IWAD iwad) { // Configure this IWAD. - [iwadList[i] setLocation: path]; + [iwadList[i] setURL: [NSURL fileURLWithPath: path]]; // Rebuild dropdown list and select the new IWAD. @@ -411,7 +410,7 @@ static const char *NameForIWAD(IWAD iwad) - (BOOL) selectGameByName: (const char *) name { - IWADLocation *iwadList[NUM_IWAD_TYPES]; + NSPathControl *iwadList[NUM_IWAD_TYPES]; NSString *location; const char *name2; int i; @@ -429,7 +428,7 @@ static const char *NameForIWAD(IWAD iwad) for (i = 0; i < NUM_IWAD_TYPES; ++i) { - location = [iwadList[i] getLocation]; + location = [[iwadList[i] URL] path]; name2 = NameForIWAD(i); if (!strcmp(name, name2) diff --git a/pkg/osx/IWADLocation.h b/pkg/osx/IWADLocation.h deleted file mode 100644 index 520d7276..00000000 --- a/pkg/osx/IWADLocation.h +++ /dev/null @@ -1,36 +0,0 @@ -// -// Copyright(C) 2005-2014 Simon Howard -// -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// - -#ifndef LAUNCHER_IWADLOCATION_H -#define LAUNCHER_IWADLOCATION_H - -#include - -#include "IWADController.h" - -@interface IWADLocation : NSObject -{ - IWADController *iwadController; - - id locationConfigBox; -} - -- (void) setButtonClicked: (id)sender; -- (NSString *) getLocation; -- (void) setLocation: (NSString *) value; - -@end - -#endif /* #ifndef LAUNCHER_IWADLOCATION_H */ - diff --git a/pkg/osx/IWADLocation.m b/pkg/osx/IWADLocation.m deleted file mode 100644 index 56680f5b..00000000 --- a/pkg/osx/IWADLocation.m +++ /dev/null @@ -1,66 +0,0 @@ -// -// Copyright(C) 2005-2014 Simon Howard -// -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// - -#include -#include "IWADLocation.h" - -static id WAD_TYPES[] = -{ - @"wad", @"WAD" -}; - -@implementation IWADLocation - -- (void) setButtonClicked: (id)sender -{ - NSArray *wadTypes = [NSArray arrayWithObjects: WAD_TYPES count: 2]; - NSOpenPanel *openPanel; - NSArray *filenames; - int result; - - [wadTypes retain]; - - // Open a file selector for the new file. - - openPanel = [NSOpenPanel openPanel]; - [openPanel setTitle: @"Add IWAD file"]; - [openPanel setCanChooseFiles: YES]; - [openPanel setCanChooseDirectories: NO]; - - result = [openPanel runModalForTypes: wadTypes]; - - // If the "OK" button was clicked, add the new IWAD file to the list. - - if (result == NSOKButton) - { - filenames = [openPanel filenames]; - [self setLocation: [filenames lastObject]]; - - [self->iwadController saveConfig]; - [self->iwadController setDropdownList]; - } -} - -- (NSString *) getLocation -{ - return [self->locationConfigBox stringValue]; -} - -- (void) setLocation: (NSString *) filename -{ - [self->locationConfigBox setStringValue: filename]; -} - -@end - diff --git a/pkg/osx/Resources/launcher.nib/designable.nib b/pkg/osx/Resources/launcher.nib/designable.nib index 73a01abd..613c4926 100644 --- a/pkg/osx/Resources/launcher.nib/designable.nib +++ b/pkg/osx/Resources/launcher.nib/designable.nib @@ -1,3588 +1,512 @@ - - - - 1060 - 10K549 - 851 - 1038.36 - 461.00 - - com.apple.InterfaceBuilder.CocoaPlugin - 851 - - - YES - - - - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - - PluginDependencyRecalculationVersion - - - - YES - - - NSApplication - - - - FirstResponder - - - NSApplication - - - 7 - 2 - {{350, 488}, {530, 190}} - 1886912512 - (Package Name) Launcher - NSWindow - - View - - {1.79769e+308, 1.79769e+308} - {243.529, 107} - - - 256 - - YES - - - 256 - {{17, 159}, {360, 11}} - - YES - - 67239424 - 272629760 - U2VsZWN0IGEgZ2FtZToKA - - LucidaGrande - 9 - 3614 - - - - 6 - System - controlColor - - 3 - MC42NjY2NjY2NjY3AA - - - - 6 - System - controlTextColor - - 3 - MAA - - - - - - - 256 - {{17, 127}, {259, 26}} - - YES - - -2076049856 - 2048 - - LucidaGrande - 13 - 1044 - - - 109199615 - 1 - - LucidaGrande - 13 - 16 - - - - - - 400 - 75 - - - Game name - - 1048576 - 2147483647 - 1 - - NSImage - NSMenuCheckmark - - - NSImage - NSMenuMixedState - - _popUpItemAction: - - - YES - - - OtherViews - - - YES - - - - 3 - YES - YES - 1 - - - - - 256 - - YES - - YES - Apple PDF pasteboard type - Apple PICT pasteboard type - Apple PNG pasteboard type - NSFilenamesPboardType - NeXT Encapsulated PostScript v1.2 pasteboard type - NeXT TIFF v4.0 pasteboard type - - - {{382, 51}, {128, 128}} - - YES - - 130560 - 33554432 - - NSImage - 128x128 - - 0 - 1 - 0 - YES - - YES - - - - 256 - {{281, 129}, {93, 23}} - - YES - - 67239424 - 134217728 - Configure... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{17, 100}, {360, 11}} - - YES - - 67239424 - 272629760 - Q29tbWFuZCBsaW5lIGFyZ3VtZW50czoKA - - - - - - - - - 256 - {{20, 70}, {354, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - 6 - System - textBackgroundColor - - 3 - MQA - - - - 6 - System - textColor - - - - - - - 256 - {{387, 12}, {129, 32}} - - YES - - -2080244224 - 134217728 - Launch Game - - - -2038284033 - 1 - - - - - - 200 - 25 - - - - - 256 - {{14, 12}, {149, 32}} - - YES - - 67239424 - 134217728 - Run Setup Tool... - - - -2038284033 - 1 - - - - - - 200 - 25 - - - - {530, 190} - - - {{0, 0}, {1440, 878}} - {243.529, 129} - {1.79769e+308, 1.79769e+308} - - - MainMenu - - YES - - - Launcher - - 1048576 - 2147483647 - - - submenuAction: - - Launcher - - YES - - - About... - - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - IWAD configuration... - , - 1048576 - 2147483647 - - - - - - Command Prompt... - t - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Services - - 1048576 - 2147483647 - - - submenuAction: - - - Services - - - YES - - _NSServicesMenu - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Hide - h - 1048576 - 2147483647 - - - - - - Hide Others - h - 1572864 - 2147483647 - - - - - - Show All - - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Quit - q - 1048576 - 2147483647 - - - - - _NSAppleMenu - - - - - Edit - - 1048576 - 2147483647 - - - submenuAction: - - - Edit - - - YES - - - Undo - z - 1048576 - 2147483647 - - - - - - Redo - Z - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Cut - x - 1048576 - 2147483647 - - - - - - Copy - c - 1048576 - 2147483647 - - - - - - Paste - v - 1048576 - 2147483647 - - - - - - Delete - - 1048576 - 2147483647 - - - - - - Select All - a - 1048576 - 2147483647 - - - - - - - - - Window - - 1048576 - 2147483647 - - - submenuAction: - - - Window - - - YES - - - Minimize - m - 1048576 - 2147483647 - - - - - - Zoom - - 1048576 - 2147483647 - - - - - - YES - YES - - - 1048576 - 2147483647 - - - - - - Bring All to Front - - 1048576 - 2147483647 - - - - - _NSWindowsMenu - - - - - Help - - 2147483647 - - - submenuAction: - - Help - - YES - - - Introduction - ? - 1048576 - 2147483647 - - - - - - Set up guide - - 2147483647 - - - - - - Command line reference - - 2147483647 - - - - - - More documentation... - - 2147483647 - - - - - - YES - YES - - - 2147483647 - - - - - - Software license - - 2147483647 - - - - - _NSHelpMenu - - - - _NSMainMenu - - - LauncherManager - - - IWADController - - - 7 - 2 - {{377, 417}, {518, 308}} - 1886912512 - IWAD configuration - - NSWindow - - - View - - {1.79769e+308, 1.79769e+308} - {213, 107} - - - 256 - - YES - - - 256 - {{422, 12}, {82, 32}} - - YES - - 67239424 - 134217728 - Close - - - -2038284033 - 1 - - - - - - 200 - 25 - - - - - 268 - {{17, 16}, {25, 25}} - - YES - - 67239424 - 134217728 - - - - -2038415105 - 161 - - - 200 - 25 - - - - - 12 - {{13, 42}, {492, 260}} - - - YES - - 1 - - - 256 - - YES - - - 256 - {{14, 200}, {446, 11}} - - YES - - 67239424 - 272629760 - Doom IWAD location (doom.wad): - - - - - - - - - 256 - {{17, 171}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{393, 169}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{14, 152}, {446, 11}} - - YES - - 67239424 - 272629760 - Doom II IWAD location (doom2.wad): - - - - - - - - - 256 - {{17, 122}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{393, 122}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{14, 103}, {446, 11}} - - YES - - 67239424 - 272629760 - RmluYWwgRG9vbTogVE5UOiBFdmlsdXRpb24gbG9jYXRpb24gKHRudC53YWQpOgo - - - - - - - - - 256 - {{17, 73}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{393, 73}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{14, 55}, {446, 11}} - - YES - - 67239424 - 272629760 - RmluYWwgRG9vbTogUGx1dG9uaWEgRXhwZXJpbWVudCBsb2NhdGlvbiAocGx1dG9uaWEud2FkKToKA - - - - - - - - - 256 - {{17, 25}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{393, 25}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - {{10, 33}, {472, 214}} - - - Doom - - - - - 2 - - - 256 - - YES - - - 256 - {{14, 55}, {446, 11}} - - YES - - 67239424 - 272629760 - Chex Quest IWAD location (chex.wad): - - - - - - - - - 256 - {{17, 25}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{393, 25}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{393, 73}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{393, 122}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 268 - {{17, 122}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 268 - {{17, 171}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - - 256 - {{14, 145}, {446, 17}} - - YES - - 67239424 - 272629760 - Hexen IWAD location (hexen.wad): - - - - - - - - - 256 - {{14, 194}, {446, 17}} - - YES - - 67239424 - 272629760 - Heretic IWAD location (heretic.wad): - - - - - - - - - 256 - {{393, 169}, {63, 23}} - - YES - - 67239424 - 134217728 - Set... - - - -2038021889 - 32 - - - - 400 - 75 - - - - - 256 - {{14, 103}, {446, 11}} - - YES - - 67239424 - 272629760 - Strife IWAD location (strife1.wad): - - - - - - - - - 256 - {{17, 73}, {369, 22}} - - YES - - -1804468671 - 272630784 - - - - YES - - - - - - {{10, 33}, {472, 214}} - - Other games - - - - - - - 0 - YES - YES - - YES - - - - - {518, 308} - - - {{0, 0}, {1440, 878}} - {213, 129} - {1.79769e+308, 1.79769e+308} - - - IWADLocation - - - IWADLocation - - - IWADLocation - - - IWADLocation - - - IWADLocation - - - AppController - - - IWADLocation - - - IWADLocation - - - IWADLocation - - - - - YES - - - performMiniaturize: - - - - 37 - - - - arrangeInFront: - - - - 39 - - - - terminate: - - - - 139 - - - - orderFrontStandardAboutPanel: - - - - 142 - - - - hideOtherApplications: - - - - 146 - - - - hide: - - - - 152 - - - - unhideAllApplications: - - - - 153 - - - - performZoom: - - - - 198 - - - - launcherWindow - - - - 207 - - - - commandLineArguments - - - - 222 - - - - runSetup: - - - - 223 - - - - launch: - - - - 224 - - - - openConfigWindow: - - - - 226 - - - - locationConfigBox - - - - 251 - - - - locationConfigBox - - - - 252 - - - - locationConfigBox - - - - 253 - - - - locationConfigBox - - - - 254 - - - - setButtonClicked: - - - - 255 - - - - setButtonClicked: - - - - 256 - - - - setButtonClicked: - - - - 257 - - - - setButtonClicked: - - - - 258 - - - - closeConfigWindow: - - - - 259 - - - - doom1 - - - - 260 - - - - doom2 - - - - 261 - - - - tnt - - - - 262 - - - - plutonia - - - - 263 - - - - chex - - - - 264 - - - - configWindow - - - - 265 - - - - iwadSelector - - - - 266 - - - - locationConfigBox - - - - 267 - - - - openConfigWindow: - - - - 268 - - - - iwadController - - - - 269 - - - - delegate - - - - 271 - - - - launcherManager - - - - 272 - - - - setButtonClicked: - - - - 273 - - - - paste: - - - - 306 - - - - delete: - - - - 307 - - - - cut: - - - - 310 - - - - undo: - - - - 313 - - - - copy: - - - - 315 - - - - selectAll: - - - - 317 - - - - redo: - - - - 318 - - - - openTerminal: - - - - 321 - - - - launchButton - - - - 322 - - - - openINSTALL: - - - - 374 - - - - openCMDLINE: - - - - 376 - - - - openDocumentation: - - - - 378 - - - - openCOPYING: - - - - 381 - - - - openREADME: - - - - 382 - - - - openINSTALL: - - - - 385 - - - - locationConfigBox - - - - 403 - - - - locationConfigBox - - - - 404 - - - - setButtonClicked: - - - - 411 - - - - setButtonClicked: - - - - 412 - - - - heretic - - - - 413 - - - - hexen - - - - 414 - - - - locationConfigBox - - - - 423 - - - - setButtonClicked: - - - - 424 - - - - strife - - - - 425 - - - - - YES - - 0 - - YES - - - - - - -2 - - - File's Owner - - - -1 - - - First Responder - - - 21 - - - YES - - - - Launcher Window - - - 2 - - - YES - - - - - - - - - - - - - 209 - - - YES - - - - - - 211 - - - YES - - - - - - 216 - - - YES - - - - - - 217 - - - YES - - - - - - 218 - - - YES - - - - - - 219 - - - YES - - - - - - 220 - - - YES - - - - - - 221 - - - YES - - - - - - 29 - - - YES - - - - - - - MainMenu - - - 19 - - - YES - - - - - - 24 - - - YES - - - - - - - - - 5 - - - - - 23 - - - - - 92 - - - - - 197 - - - - - 56 - - - YES - - - - - - 57 - - - YES - - - - - - - - - - - - - - - - - 58 - - - - - 129 - - - - - 131 - - - YES - - - - - - 130 - - - - - 134 - - - - - 136 - - - - - 143 - - - - - 144 - - - - - 145 - - - - - 149 - - - - - 150 - - - - - 196 - - - - - 320 - - - - - 274 - - - YES - - - - - - 275 - - - YES - - - - - - - - - - - - - 281 - - - - - 282 - - - - - 287 - - - - - 289 - - - - - 290 - - - - - 291 - - - - - 293 - - - - - 301 - - - - - 206 - - - LauncherManager - - - 225 - - - IWADController - - - 227 - - - YES - - - - Configuration Window - - - 228 - - - YES - - - - - - - - 250 - - - YES - - - - - - 229 - - - Doom1IWAD - - - 230 - - - Doom2IWAD - - - 231 - - - TNTIWAD - - - 232 - - - PlutoniaIWAD - - - 233 - - - ChexIWAD - - - 270 - - - AppController - - - 325 - - - - - 326 - - - YES - - - - - - 327 - - - - - 328 - - - - - 329 - - - - - 330 - - - - - 331 - - - - - 332 - - - - - 348 - - - - - 212 - - - YES - - - - - - 213 - - - - - -3 - - - Application - - - 369 - - - YES - - - - - - 370 - - - YES - - - - - - - - - - - 371 - - - - - 373 - - - - - 375 - - - - - 377 - - - - - 379 - - - - - 380 - - - - - 383 - - - YES - - - - - - 384 - - - - - 386 - - - YES - - - - - - - 387 - - - YES - - - - - - 388 - - - YES - - - - - - 389 - - - YES - - - - - - - - - - - - - - - - - 390 - - - YES - - - - - - - - - - - - - - - - - 234 - - - YES - - - - - - 333 - - - - - 235 - - - YES - - - - - - 334 - - - - - 236 - - - YES - - - - - - 335 - - - - - 238 - - - YES - - - - - - 336 - - - - - 239 - - - YES - - - - - - 337 - - - - - 240 - - - YES - - - - - - 338 - - - - - 241 - - - YES - - - - - - 339 - - - - - 242 - - - YES - - - - - - 340 - - - - - 243 - - - YES - - - - - - 341 - - - - - 244 - - - YES - - - - - - 342 - - - - - 245 - - - YES - - - - - - 343 - - - - - 246 - - - YES - - - - - - 344 - - - - - 247 - - - YES - - - - - - 345 - - - - - 248 - - - YES - - - - - - 346 - - - - - 249 - - - YES - - - - - - 347 - - - - - 391 - - - YES - - - - - - 392 - - - - - 393 - - - YES - - - - - - 394 - - - - - 397 - - - YES - - - - - - 398 - - - - - 399 - - - YES - - - - - - 400 - - - - - 401 - - - HereticIWAD - - - 402 - - - HexenIWAD - - - 405 - - - YES - - - - - - 406 - - - - - 408 - - - YES - - - - - - 409 - - - - - 415 - - - YES - - - - - - 416 - - - - - 417 - - - YES - - - - - - 418 - - - - - 419 - - - YES - - - - - - 420 - - - - - 422 - - - StrifeIWAD - - - - - YES - - YES - 129.IBPluginDependency - 129.ImportedFromIB2 - 130.IBEditorWindowLastContentRect - 130.IBPluginDependency - 130.ImportedFromIB2 - 131.IBPluginDependency - 131.ImportedFromIB2 - 134.IBPluginDependency - 134.ImportedFromIB2 - 136.IBPluginDependency - 136.ImportedFromIB2 - 143.IBPluginDependency - 143.ImportedFromIB2 - 144.IBPluginDependency - 144.ImportedFromIB2 - 145.IBPluginDependency - 145.ImportedFromIB2 - 149.IBPluginDependency - 149.ImportedFromIB2 - 150.IBPluginDependency - 150.ImportedFromIB2 - 19.IBPluginDependency - 19.ImportedFromIB2 - 196.IBPluginDependency - 196.ImportedFromIB2 - 197.IBPluginDependency - 197.ImportedFromIB2 - 2.IBPluginDependency - 2.ImportedFromIB2 - 206.ImportedFromIB2 - 209.IBPluginDependency - 209.IBViewBoundsToFrameTransform - 209.ImportedFromIB2 - 21.IBEditorWindowLastContentRect - 21.IBPluginDependency - 21.IBWindowTemplateEditedContentRect - 21.ImportedFromIB2 - 21.NSWindowTemplate.visibleAtLaunch - 21.windowTemplate.hasMinSize - 21.windowTemplate.minSize - 211.IBPluginDependency - 211.IBViewBoundsToFrameTransform - 211.ImportedFromIB2 - 212.IBPluginDependency - 212.ImportedFromIB2 - 213.IBPluginDependency - 213.ImportedFromIB2 - 216.IBPluginDependency - 216.IBViewBoundsToFrameTransform - 216.ImportedFromIB2 - 217.IBPluginDependency - 217.IBViewBoundsToFrameTransform - 217.ImportedFromIB2 - 218.IBPluginDependency - 218.IBViewBoundsToFrameTransform - 218.ImportedFromIB2 - 219.IBPluginDependency - 219.IBViewBoundsToFrameTransform - 219.ImportedFromIB2 - 220.IBPluginDependency - 220.IBViewBoundsToFrameTransform - 220.ImportedFromIB2 - 221.IBPluginDependency - 221.IBViewBoundsToFrameTransform - 221.ImportedFromIB2 - 225.ImportedFromIB2 - 227.IBEditorWindowLastContentRect - 227.IBPluginDependency - 227.IBWindowTemplateEditedContentRect - 227.ImportedFromIB2 - 227.windowTemplate.hasMinSize - 227.windowTemplate.minSize - 228.IBPluginDependency - 228.ImportedFromIB2 - 229.ImportedFromIB2 - 23.IBPluginDependency - 23.ImportedFromIB2 - 230.ImportedFromIB2 - 231.ImportedFromIB2 - 232.ImportedFromIB2 - 233.ImportedFromIB2 - 234.IBPluginDependency - 234.IBViewBoundsToFrameTransform - 234.ImportedFromIB2 - 235.IBPluginDependency - 235.IBViewBoundsToFrameTransform - 235.ImportedFromIB2 - 236.IBPluginDependency - 236.IBViewBoundsToFrameTransform - 236.ImportedFromIB2 - 238.IBPluginDependency - 238.IBViewBoundsToFrameTransform - 238.ImportedFromIB2 - 239.IBPluginDependency - 239.IBViewBoundsToFrameTransform - 239.ImportedFromIB2 - 24.IBEditorWindowLastContentRect - 24.IBPluginDependency - 24.ImportedFromIB2 - 240.IBPluginDependency - 240.IBViewBoundsToFrameTransform - 240.ImportedFromIB2 - 241.IBPluginDependency - 241.IBViewBoundsToFrameTransform - 241.ImportedFromIB2 - 242.IBPluginDependency - 242.IBViewBoundsToFrameTransform - 242.ImportedFromIB2 - 243.IBPluginDependency - 243.IBViewBoundsToFrameTransform - 243.ImportedFromIB2 - 244.IBPluginDependency - 244.IBViewBoundsToFrameTransform - 244.ImportedFromIB2 - 245.IBPluginDependency - 245.IBViewBoundsToFrameTransform - 245.ImportedFromIB2 - 246.IBPluginDependency - 246.IBViewBoundsToFrameTransform - 246.ImportedFromIB2 - 247.IBPluginDependency - 247.IBViewBoundsToFrameTransform - 247.ImportedFromIB2 - 248.IBPluginDependency - 248.IBViewBoundsToFrameTransform - 248.ImportedFromIB2 - 249.IBPluginDependency - 249.IBViewBoundsToFrameTransform - 249.ImportedFromIB2 - 250.IBPluginDependency - 250.IBViewBoundsToFrameTransform - 250.ImportedFromIB2 - 270.ImportedFromIB2 - 274.IBPluginDependency - 274.ImportedFromIB2 - 275.IBEditorWindowLastContentRect - 275.IBPluginDependency - 275.ImportedFromIB2 - 281.IBPluginDependency - 281.ImportedFromIB2 - 282.IBPluginDependency - 282.ImportedFromIB2 - 287.IBPluginDependency - 287.ImportedFromIB2 - 289.IBPluginDependency - 289.ImportedFromIB2 - 29.IBEditorWindowLastContentRect - 29.IBPluginDependency - 29.ImportedFromIB2 - 290.IBPluginDependency - 290.ImportedFromIB2 - 291.IBPluginDependency - 291.ImportedFromIB2 - 293.IBPluginDependency - 293.ImportedFromIB2 - 301.IBPluginDependency - 301.ImportedFromIB2 - 320.IBPluginDependency - 320.ImportedFromIB2 - 369.IBPluginDependency - 370.IBEditorWindowLastContentRect - 370.IBPluginDependency - 371.IBPluginDependency - 373.IBPluginDependency - 375.IBPluginDependency - 377.IBPluginDependency - 379.IBPluginDependency - 380.IBPluginDependency - 383.IBPluginDependency - 383.IBViewBoundsToFrameTransform - 384.IBPluginDependency - 386.IBPluginDependency - 386.IBViewBoundsToFrameTransform - 387.IBPluginDependency - 388.IBPluginDependency - 389.IBPluginDependency - 390.IBPluginDependency - 391.IBPluginDependency - 391.IBViewBoundsToFrameTransform - 392.IBPluginDependency - 393.IBPluginDependency - 393.IBViewBoundsToFrameTransform - 394.IBPluginDependency - 397.IBPluginDependency - 397.IBViewBoundsToFrameTransform - 397.ImportedFromIB2 - 399.IBPluginDependency - 399.IBViewBoundsToFrameTransform - 399.ImportedFromIB2 - 401.IBPluginDependency - 402.IBPluginDependency - 405.IBPluginDependency - 405.IBViewBoundsToFrameTransform - 405.ImportedFromIB2 - 408.IBPluginDependency - 408.IBViewBoundsToFrameTransform - 408.ImportedFromIB2 - 415.IBPluginDependency - 415.IBViewBoundsToFrameTransform - 415.ImportedFromIB2 - 417.IBPluginDependency - 417.IBViewBoundsToFrameTransform - 417.ImportedFromIB2 - 419.IBPluginDependency - 419.IBViewBoundsToFrameTransform - 419.ImportedFromIB2 - 422.IBPluginDependency - 5.IBPluginDependency - 5.ImportedFromIB2 - 56.IBPluginDependency - 56.ImportedFromIB2 - 57.IBEditorWindowLastContentRect - 57.IBPluginDependency - 57.ImportedFromIB2 - 58.IBPluginDependency - 58.ImportedFromIB2 - 92.IBPluginDependency - 92.ImportedFromIB2 - - - YES - com.apple.InterfaceBuilder.CocoaPlugin - - {{576, 728}, {64, 6}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwyEAAA - - - {{368, 418}, {530, 190}} - com.apple.InterfaceBuilder.CocoaPlugin - {{368, 418}, {530, 190}} - - - - {243.529, 107} - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwxAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - AUO/AABCTAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDjIAAww8AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwwoAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBoAAAwu4AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDwYAAwgQAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwigAAA - - - - {{358, 421}, {518, 308}} - com.apple.InterfaceBuilder.CocoaPlugin - {{358, 421}, {518, 308}} - - - {213, 107} - com.apple.InterfaceBuilder.CocoaPlugin - - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABD24AAw5+AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwz8AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDxoAAxBJAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwyAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAww8AAA - - - {{469, 741}, {194, 73}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDyoAAwwcAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwuAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwroAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDzoAAwqwAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwmAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwjQAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDzoAAwdAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwnwAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwjAAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDy4AAwfgAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABD2gAAwqIAAA - - - - com.apple.InterfaceBuilder.CocoaPlugin - - {{425, 661}, {151, 153}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{329, 814}, {272, 20}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - {{540, 701}, {238, 113}} - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwhwAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBUAAAw5YAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwxAAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBgAAAw0EAAA - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwyEAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBUAAAw1EAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDxIAAww0AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABDxIAAw0AAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBYAAAwtYAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABBiAAAwq4AAA - - - com.apple.InterfaceBuilder.CocoaPlugin - - P4AAAL+AAABD0YAAwpYAAA - - - com.apple.InterfaceBuilder.CocoaPlugin - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - {{341, 611}, {235, 203}} - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin - - - - - YES - - - YES - - - - - YES - - - YES - - - - 425 - - - - YES - - AppController - NSObject - - launcherManager - id - - - launcherManager - - launcherManager - id - - - - IBUserSource - - - - - FirstResponder - NSObject - - IBUserSource - - - - - IWADController - NSObject - - YES - - YES - closeConfigWindow: - openConfigWindow: - - - YES - id - id - - - - YES - - YES - closeConfigWindow: - openConfigWindow: - - - YES - - closeConfigWindow: - id - - - openConfigWindow: - id - - - - - YES - - YES - chex - configWindow - doom1 - doom2 - heretic - hexen - iwadSelector - plutonia - strife - tnt - - - YES - id - id - id - id - id - id - id - id - id - id - - - - YES - - YES - chex - configWindow - doom1 - doom2 - heretic - hexen - iwadSelector - plutonia - strife - tnt - - - YES - - chex - id - - - configWindow - id - - - doom1 - id - - - doom2 - id - - - heretic - id - - - hexen - id - - - iwadSelector - id - - - plutonia - id - - - strife - id - - - tnt - id - - - - - IBUserSource - - - - - IWADLocation - NSObject - - setButtonClicked: - id - - - setButtonClicked: - - setButtonClicked: - id - - - - locationConfigBox - id - - - locationConfigBox - - locationConfigBox - id - - - - IBUserSource - - - - - LauncherManager - NSObject - - YES - - YES - launch: - openCMDLINE: - openCOPYING: - openDocumentation: - openINSTALL: - openREADME: - openTerminal: - runSetup: - - - YES - id - id - id - id - id - id - id - id - - - - YES - - YES - launch: - openCMDLINE: - openCOPYING: - openDocumentation: - openINSTALL: - openREADME: - openTerminal: - runSetup: - - - YES - - launch: - id - - - openCMDLINE: - id - - - openCOPYING: - id - - - openDocumentation: - id - - - openINSTALL: - id - - - openREADME: - id - - - openTerminal: - id - - - runSetup: - id - - - - - YES - - YES - commandLineArguments - iwadController - launchButton - launcherWindow - - - YES - id - id - id - id - - - - YES - - YES - commandLineArguments - iwadController - launchButton - launcherWindow - - - YES - - commandLineArguments - id - - - iwadController - id - - - launchButton - id - - - launcherWindow - id - - - - - IBUserSource - - - - - - 0 - IBCocoaFramework - - com.apple.InterfaceBuilder.CocoaPlugin.macosx - - - - com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 - - - YES - - 3 - - YES - - YES - 128x128 - NSMenuCheckmark - NSMenuMixedState - - - YES - {128, 128} - {9, 8} - {7, 2} - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Select a game: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Command line arguments: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + WAD + wad + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + WAD + wad + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pkg/osx/Resources/launcher.nib/keyedobjects.nib b/pkg/osx/Resources/launcher.nib/keyedobjects.nib index e23926a718e9560cbc062bf8fc85c4ea1951014b..963533f52837bab62e5bf46a16c0d17ceaa7c3a8 100644 GIT binary patch literal 22494 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 K|F*wbv;PnJoeSRp literal 32366 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 galc#S&T{9uZ&xRls`<_T8&lOh6#3