forked from Mirrors/openclonk
Mac: Put game loop below NSApplicationMain in call hierarchy
parent
d9fa2eb60e
commit
956de7aef5
|
@ -9,12 +9,12 @@
|
|||
|
||||
@interface SDLMain: NSObject
|
||||
{
|
||||
NSString* clonkDirectory;
|
||||
NSMutableArray* gatheredArguments;
|
||||
NSString* clonkDirectory;
|
||||
NSString* addonSupplied;
|
||||
BOOL doNotLaunch;
|
||||
BOOL hasFinished;
|
||||
BOOL terminateRequested;
|
||||
BOOL gameLoopFinished;
|
||||
}
|
||||
- (NSString*) clonkDirectory;
|
||||
- (BOOL) argsLookLikeItShouldBeInstallation:(char**)argv argc:(int)argc;
|
||||
|
|
154
xcode/SDLMain.mm
154
xcode/SDLMain.mm
|
@ -7,16 +7,24 @@
|
|||
/* The main class of the application, the appl¤ication's delegate */
|
||||
@implementation SDLMain
|
||||
|
||||
- (id) init {
|
||||
- (id) init
|
||||
{
|
||||
if (self = [super init]) {
|
||||
// first argument is path to executable (for authenticity)
|
||||
gatheredArguments = [NSMutableArray arrayWithCapacity:10];
|
||||
gatheredArguments = [[NSMutableArray arrayWithCapacity:10] retain];
|
||||
[gatheredArguments addObject:[[NSBundle mainBundle] executablePath]];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void) release {
|
||||
- (void)awakeFromNib
|
||||
{
|
||||
[[NSAppleEventManager sharedAppleEventManager] setEventHandler:self
|
||||
andSelector:@selector(getUrl:withReplyEvent:)
|
||||
forEventClass:kInternetEventClass andEventID:kAEGetURL];
|
||||
}
|
||||
|
||||
- (void) release
|
||||
{
|
||||
if (terminateRequested)
|
||||
[NSApp replyToApplicationShouldTerminate:YES];
|
||||
[super release];
|
||||
|
@ -28,17 +36,18 @@
|
|||
|
||||
NSArray* clonkFileNameExtensions = [NSArray arrayWithObjects:@"c4d", @"c4s", @"c4f", @"c4g", @"c4s", nil];
|
||||
if ([clonkFileNameExtensions containsObject:pathExtension])
|
||||
{
|
||||
// later decide whether to install or run
|
||||
addonSupplied = filename;
|
||||
if (hasFinished) {
|
||||
// if application is already running install immediately
|
||||
[self installAddOn];
|
||||
return YES;
|
||||
}
|
||||
// still add to gatheredArguments
|
||||
// return YES;
|
||||
}
|
||||
{
|
||||
// later decide whether to install or run
|
||||
addonSupplied = filename;
|
||||
if (YES)
|
||||
{
|
||||
// if application is already running install immediately
|
||||
[self installAddOn];
|
||||
return YES;
|
||||
}
|
||||
// still add to gatheredArguments
|
||||
// return YES;
|
||||
}
|
||||
|
||||
// Key/Update files or simply arguments: Just pass to engine, will install
|
||||
[gatheredArguments addObject:filename];
|
||||
|
@ -52,6 +61,30 @@
|
|||
[gatheredArguments addObject:url];
|
||||
}
|
||||
|
||||
- (void)gameLoop
|
||||
{
|
||||
[[NSFileManager defaultManager] changeCurrentDirectoryPath:[self clonkDirectory]];
|
||||
|
||||
[NSApp activateIgnoringOtherApps:YES];
|
||||
|
||||
/*if ([self argsLookLikeItShouldBeInstallation:argv argc:argc]) {
|
||||
if ([self installAddOn])
|
||||
return 0;
|
||||
}*/
|
||||
|
||||
// Hand off to Clonk code
|
||||
char** newArgv;
|
||||
int newArgc;
|
||||
[self makeFakeArgs:&newArgv argc:&newArgc];
|
||||
int status = SDL_main(newArgc, newArgv);
|
||||
|
||||
for (int i = newArgc-1; i >= 0; i--)
|
||||
{
|
||||
free (newArgv[i]);
|
||||
}
|
||||
free(newArgv);
|
||||
}
|
||||
|
||||
/* Called when the internal event loop has just started running */
|
||||
- (void) applicationDidFinishLaunching: (NSNotification *) note
|
||||
{
|
||||
|
@ -59,12 +92,19 @@
|
|||
for (NSString* key in args) {
|
||||
[gatheredArguments addObject:[NSString stringWithFormat:@"/%@:%@", key, [args valueForKey:key]]];
|
||||
}*/
|
||||
hasFinished = YES;
|
||||
[self gameLoop];
|
||||
gameLoopFinished = YES;
|
||||
[NSApp terminate:self];
|
||||
}
|
||||
|
||||
- (NSApplicationTerminateReply) applicationShouldTerminate:(NSApplication*)application {
|
||||
[self terminate:application];
|
||||
return NSTerminateCancel; // cancels logoff but it's the only way that does not interrupt the lifecycle of the application
|
||||
- (NSApplicationTerminateReply)applicationShouldTerminate:(NSApplication*)application
|
||||
{
|
||||
if (!gameLoopFinished)
|
||||
{
|
||||
[self terminate:application];
|
||||
return NSTerminateCancel; // cancels logoff but it's the only way that does not interrupt the lifecycle of the application
|
||||
}
|
||||
return NSTerminateNow;
|
||||
}
|
||||
|
||||
- (void)terminate:(NSApplication*)sender
|
||||
|
@ -75,12 +115,9 @@
|
|||
SDL_PushEvent(&event);
|
||||
}
|
||||
|
||||
- (BOOL)hasFinished {
|
||||
return hasFinished;
|
||||
}
|
||||
|
||||
// arguments that should be converted to a c char* array and then passed on to SDL_main
|
||||
- (NSMutableArray*)gatheredArguments {
|
||||
- (NSMutableArray*)gatheredArguments
|
||||
{
|
||||
return gatheredArguments;
|
||||
}
|
||||
|
||||
|
@ -94,8 +131,9 @@
|
|||
}
|
||||
|
||||
// Look for -psn argument which generally is a clue that the application should open a file (double-clicking, calling /usr/bin/open and such)
|
||||
- (BOOL) argsLookLikeItShouldBeInstallation:(char**)argv argc:(int)argc {
|
||||
// not having this check leads to deletion of Clonk foler -.-
|
||||
- (BOOL) argsLookLikeItShouldBeInstallation:(char**)argv argc:(int)argc
|
||||
{
|
||||
// not having this check leads to deletion of Clonk folder -.-
|
||||
if (!addonSupplied)
|
||||
return NO;
|
||||
for (int i = 0; i < argc; i++) {
|
||||
|
@ -106,7 +144,8 @@
|
|||
}
|
||||
|
||||
// Copies the add-on to the clonk directory
|
||||
- (BOOL) installAddOn {
|
||||
- (BOOL) installAddOn
|
||||
{
|
||||
|
||||
if (!addonSupplied)
|
||||
return NO;
|
||||
|
@ -141,11 +180,13 @@
|
|||
}
|
||||
|
||||
// convert gatheredArguments to c array
|
||||
- (void)makeFakeArgs:(char***)argv argc:(int*)argc {
|
||||
- (void)makeFakeArgs:(char***)argv argc:(int*)argc
|
||||
{
|
||||
int argCount = [gatheredArguments count];
|
||||
char** args = (char**)malloc(sizeof(char*) * argCount);
|
||||
for (int i = 0; i < argCount; i++) {
|
||||
args[i] = strdup([[gatheredArguments objectAtIndex:i] cStringUsingEncoding:NSASCIIStringEncoding]);
|
||||
for (int i = 0; i < argCount; i++)
|
||||
{
|
||||
args[i] = strdup([[gatheredArguments objectAtIndex:i] cStringUsingEncoding:NSUTF8StringEncoding]);
|
||||
}
|
||||
*argv = args;
|
||||
*argc = argCount;
|
||||
|
@ -158,56 +199,7 @@
|
|||
#endif
|
||||
|
||||
/* Main entry point to executable - should *not* be SDL_main! */
|
||||
int main (int argc, char **argv)
|
||||
int main (int argc, const char **argv)
|
||||
{
|
||||
// Catches whatever would be leaked otherwise.
|
||||
// Gets rid of warnings from hax0red SDL framework.
|
||||
[[NSAutoreleasePool alloc] init];
|
||||
|
||||
SDLMain* sdlMain = [[SDLMain alloc] init];
|
||||
[[NSFileManager defaultManager] changeCurrentDirectoryPath:[sdlMain clonkDirectory]];
|
||||
|
||||
// Set up application & delegate.
|
||||
[NSApplication sharedApplication];
|
||||
[NSApp setDelegate:sdlMain];
|
||||
[[NSAppleEventManager sharedAppleEventManager] setEventHandler:sdlMain
|
||||
andSelector:@selector(getUrl:withReplyEvent:) forEventClass:kInternetEventClass andEventID:kAEGetURL];
|
||||
[NSBundle loadNibNamed:@"SDLMain" owner:NSApp];
|
||||
[NSApp finishLaunching];
|
||||
|
||||
[NSApp activateIgnoringOtherApps:YES];
|
||||
|
||||
// Now there's openFile calls and all that waiting for us in the event queue.
|
||||
// Fetch events until applicationHasFinishedLaunching was called.
|
||||
while (![sdlMain hasFinished]) {
|
||||
NSEvent *event = [NSApp nextEventMatchingMask:NSAnyEventMask
|
||||
untilDate:nil
|
||||
inMode:NSDefaultRunLoopMode
|
||||
dequeue:YES ];
|
||||
if ( event == nil ) {
|
||||
break;
|
||||
}
|
||||
[NSApp sendEvent:event];
|
||||
}
|
||||
|
||||
if ([sdlMain argsLookLikeItShouldBeInstallation:argv argc:argc]) {
|
||||
if ([sdlMain installAddOn])
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Hand off to Clonk code
|
||||
char** newArgv;
|
||||
int newArgc;
|
||||
[sdlMain makeFakeArgs:&newArgv argc:&newArgc];
|
||||
int status = SDL_main(newArgc, newArgv);
|
||||
|
||||
// I don't think this is even necessary since the OS will just wipe it all out when the process ends
|
||||
for (int i = newArgc-1; i >= 0; i--) {
|
||||
free (newArgv[i]);
|
||||
}
|
||||
free(newArgv);
|
||||
|
||||
[sdlMain release];
|
||||
|
||||
return status;
|
||||
return NSApplicationMain(argc, argv);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,679 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1060</int>
|
||||
<string key="IBDocument.SystemVersion">10C540</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">740</string>
|
||||
<string key="IBDocument.AppKitVersion">1038.25</string>
|
||||
<string key="IBDocument.HIToolboxVersion">458.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">740</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<integer value="57"/>
|
||||
</object>
|
||||
<object class="NSArray" key="IBDocument.PluginDependencies">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.Metadata">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys" id="0">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="IBDocument.RootObjects" id="119274832">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSCustomObject" id="818653880">
|
||||
<object class="NSMutableString" key="NSClassName">
|
||||
<characters key="NS.bytes">NSApplication</characters>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="22732454">
|
||||
<string key="NSClassName">FirstResponder</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="1044128150">
|
||||
<string key="NSClassName">NSApplication</string>
|
||||
</object>
|
||||
<object class="NSMenu" id="413282662">
|
||||
<string key="NSTitle">SDLMain</string>
|
||||
<object class="NSMutableArray" key="NSMenuItems">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSMenuItem" id="166399698">
|
||||
<reference key="NSMenu" ref="413282662"/>
|
||||
<string key="NSTitle">Clonk</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<object class="NSCustomResource" key="NSOnImage" id="236001633">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">NSMenuCheckmark</string>
|
||||
</object>
|
||||
<object class="NSCustomResource" key="NSMixedImage" id="855621955">
|
||||
<string key="NSClassName">NSImage</string>
|
||||
<string key="NSResourceName">NSMenuMixedState</string>
|
||||
</object>
|
||||
<string key="NSAction">submenuAction:</string>
|
||||
<object class="NSMenu" key="NSSubmenu" id="671325961">
|
||||
<string key="NSTitle">Clonk</string>
|
||||
<object class="NSMutableArray" key="NSMenuItems">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSMenuItem" id="905940774">
|
||||
<reference key="NSMenu" ref="671325961"/>
|
||||
<string key="NSTitle">Hide Clonk</string>
|
||||
<string key="NSKeyEquiv">h</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="430749323">
|
||||
<reference key="NSMenu" ref="671325961"/>
|
||||
<string key="NSTitle">Hide Others</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="45658860">
|
||||
<reference key="NSMenu" ref="671325961"/>
|
||||
<string key="NSTitle">Show All</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="1010818828">
|
||||
<reference key="NSMenu" ref="671325961"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
<string key="NSTitle"/>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="942357333">
|
||||
<reference key="NSMenu" ref="671325961"/>
|
||||
<string key="NSTitle">Quit Clonk</string>
|
||||
<string key="NSKeyEquiv">q</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
</object>
|
||||
<string key="NSName">_NSAppleMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="143812656">
|
||||
<reference key="NSMenu" ref="413282662"/>
|
||||
<string key="NSTitle">Window</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
<string key="NSAction">submenuAction:</string>
|
||||
<object class="NSMenu" key="NSSubmenu" id="594976293">
|
||||
<object class="NSMutableString" key="NSTitle">
|
||||
<characters key="NS.bytes">Window</characters>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="NSMenuItems">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSMenuItem" id="687345396">
|
||||
<reference key="NSMenu" ref="594976293"/>
|
||||
<string key="NSTitle">Minimize</string>
|
||||
<string key="NSKeyEquiv">m</string>
|
||||
<int key="NSKeyEquivModMask">1048576</int>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="236001633"/>
|
||||
<reference key="NSMixedImage" ref="855621955"/>
|
||||
</object>
|
||||
</object>
|
||||
<string key="NSName">_NSWindowsMenu</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<string key="NSName">_NSMainMenu</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="3445348">
|
||||
<string key="NSClassName">NSFontManager</string>
|
||||
</object>
|
||||
<object class="NSCustomObject" id="436992030">
|
||||
<string key="NSClassName">SDLMain</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBObjectContainer" key="IBDocument.Objects">
|
||||
<object class="NSMutableArray" key="connectionRecords">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">hideOtherApplications:</string>
|
||||
<reference key="source" ref="818653880"/>
|
||||
<reference key="destination" ref="430749323"/>
|
||||
</object>
|
||||
<int key="connectionID">146</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">hide:</string>
|
||||
<reference key="source" ref="818653880"/>
|
||||
<reference key="destination" ref="905940774"/>
|
||||
</object>
|
||||
<int key="connectionID">152</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">unhideAllApplications:</string>
|
||||
<reference key="source" ref="818653880"/>
|
||||
<reference key="destination" ref="45658860"/>
|
||||
</object>
|
||||
<int key="connectionID">153</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">performMiniaturize:</string>
|
||||
<reference key="source" ref="22732454"/>
|
||||
<reference key="destination" ref="687345396"/>
|
||||
</object>
|
||||
<int key="connectionID">328</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">delegate</string>
|
||||
<reference key="source" ref="1044128150"/>
|
||||
<reference key="destination" ref="436992030"/>
|
||||
</object>
|
||||
<int key="connectionID">338</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">terminate:</string>
|
||||
<reference key="source" ref="1044128150"/>
|
||||
<reference key="destination" ref="942357333"/>
|
||||
</object>
|
||||
<int key="connectionID">339</int>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBMutableOrderedSet" key="objectRecords">
|
||||
<object class="NSArray" key="orderedObjects">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">0</int>
|
||||
<reference key="object" ref="0"/>
|
||||
<reference key="children" ref="119274832"/>
|
||||
<nil key="parent"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-2</int>
|
||||
<reference key="object" ref="818653880"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">File's Owner</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-1</int>
|
||||
<reference key="object" ref="22732454"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">First Responder</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">29</int>
|
||||
<reference key="object" ref="413282662"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="166399698"/>
|
||||
<reference ref="143812656"/>
|
||||
</object>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">MainMenu</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">56</int>
|
||||
<reference key="object" ref="166399698"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="671325961"/>
|
||||
</object>
|
||||
<reference key="parent" ref="413282662"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">57</int>
|
||||
<reference key="object" ref="671325961"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="905940774"/>
|
||||
<reference ref="942357333"/>
|
||||
<reference ref="430749323"/>
|
||||
<reference ref="1010818828"/>
|
||||
<reference ref="45658860"/>
|
||||
</object>
|
||||
<reference key="parent" ref="166399698"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">134</int>
|
||||
<reference key="object" ref="905940774"/>
|
||||
<reference key="parent" ref="671325961"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">136</int>
|
||||
<reference key="object" ref="942357333"/>
|
||||
<reference key="parent" ref="671325961"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">145</int>
|
||||
<reference key="object" ref="430749323"/>
|
||||
<reference key="parent" ref="671325961"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">149</int>
|
||||
<reference key="object" ref="1010818828"/>
|
||||
<reference key="parent" ref="671325961"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">150</int>
|
||||
<reference key="object" ref="45658860"/>
|
||||
<reference key="parent" ref="671325961"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">284</int>
|
||||
<reference key="object" ref="143812656"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="594976293"/>
|
||||
</object>
|
||||
<reference key="parent" ref="413282662"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">285</int>
|
||||
<reference key="object" ref="594976293"/>
|
||||
<object class="NSMutableArray" key="children">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference ref="687345396"/>
|
||||
</object>
|
||||
<reference key="parent" ref="143812656"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">283</int>
|
||||
<reference key="object" ref="687345396"/>
|
||||
<reference key="parent" ref="594976293"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">253</int>
|
||||
<reference key="object" ref="3445348"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Font Manager</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">331</int>
|
||||
<reference key="object" ref="436992030"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">SDLMain</string>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">-3</int>
|
||||
<reference key="object" ref="1044128150"/>
|
||||
<reference key="parent" ref="0"/>
|
||||
<string key="objectName">Application</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="flattenedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="NSArray" key="dict.sortedKeys">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>134.IBPluginDependency</string>
|
||||
<string>134.ImportedFromIB2</string>
|
||||
<string>136.IBPluginDependency</string>
|
||||
<string>136.ImportedFromIB2</string>
|
||||
<string>145.IBPluginDependency</string>
|
||||
<string>145.ImportedFromIB2</string>
|
||||
<string>149.IBPluginDependency</string>
|
||||
<string>149.ImportedFromIB2</string>
|
||||
<string>150.IBPluginDependency</string>
|
||||
<string>150.ImportedFromIB2</string>
|
||||
<string>253.ImportedFromIB2</string>
|
||||
<string>283.IBPluginDependency</string>
|
||||
<string>283.ImportedFromIB2</string>
|
||||
<string>284.IBPluginDependency</string>
|
||||
<string>284.ImportedFromIB2</string>
|
||||
<string>285.IBEditorWindowLastContentRect</string>
|
||||
<string>285.IBPluginDependency</string>
|
||||
<string>285.ImportedFromIB2</string>
|
||||
<string>29.IBEditorWindowLastContentRect</string>
|
||||
<string>29.IBPluginDependency</string>
|
||||
<string>29.ImportedFromIB2</string>
|
||||
<string>331.ImportedFromIB2</string>
|
||||
<string>56.IBPluginDependency</string>
|
||||
<string>56.ImportedFromIB2</string>
|
||||
<string>57.IBEditorWindowLastContentRect</string>
|
||||
<string>57.IBPluginDependency</string>
|
||||
<string>57.ImportedFromIB2</string>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>{{124, 952}, {140, 23}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>{{52, 975}, {155, 20}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<boolean value="YES"/>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
<string>{{64, 882}, {185, 93}}</string>
|
||||
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<boolean value="YES"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="unlocalizedProperties">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="activeLocalization"/>
|
||||
<object class="NSMutableDictionary" key="localizations">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<reference key="dict.sortedKeys" ref="0"/>
|
||||
<object class="NSMutableArray" key="dict.values">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
</object>
|
||||
</object>
|
||||
<nil key="sourceID"/>
|
||||
<int key="maxID">339</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">FirstResponder</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">SDLMain</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">terminate:</string>
|
||||
<string key="NS.object.0">NSApplication</string>
|
||||
</object>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">SDLMain.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">SDLMain</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBUserSource</string>
|
||||
<string key="minorKey"/>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+">
|
||||
<bool key="EncodedWithXMLCoder">YES</bool>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">AddressBook.framework/Headers/ABActions.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSError.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSMetadata.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSNetServices.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObject.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSPort.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSSpellServer.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSStream.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSThread.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURL.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">Foundation.framework/Headers/NSXMLParser.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">PrintCore.framework/Headers/PDEPluginInterface.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">QuartzCore.framework/Headers/CAAnimation.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">QuartzCore.framework/Headers/CALayer.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBFrameworkSource</string>
|
||||
<string key="minorKey">QuartzCore.framework/Headers/CIImageProvider.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
</object>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1060" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
|
||||
<integer value="1050" key="NS.object.0"/>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string>
|
||||
<integer value="3000" key="NS.object.0"/>
|
||||
</object>
|
||||
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
|
||||
<string key="IBDocument.LastKnownRelativeProjectPath">Clonk.xcodeproj</string>
|
||||
<int key="IBDocument.defaultPropertyAccessControl">3</int>
|
||||
</data>
|
||||
</archive>
|
Loading…
Reference in New Issue