[Tux4kids-commits] r136 - in tuxmath/trunk: . macosx macosx/English.lproj macosx/TuxMath.xcodeproj

Tim Holy tholy-guest at alioth.debian.org
Thu Mar 15 12:58:46 CET 2007


Author: tholy-guest
Date: 2007-03-15 11:58:45 +0000 (Thu, 15 Mar 2007)
New Revision: 136

Added:
   tuxmath/trunk/macosx/
   tuxmath/trunk/macosx/English.lproj/
   tuxmath/trunk/macosx/English.lproj/InfoPlist.strings
   tuxmath/trunk/macosx/Info.plist
   tuxmath/trunk/macosx/Makefile
   tuxmath/trunk/macosx/SDLMain.h
   tuxmath/trunk/macosx/SDLMain.m
   tuxmath/trunk/macosx/TuxMath.xcodeproj/
   tuxmath/trunk/macosx/TuxMath.xcodeproj/project.pbxproj
   tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.mode1
   tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.pbxuser
   tuxmath/trunk/macosx/TuxMath_Prefix.pch
Log:
Commit of working MacOSX build tools. This uses Xcode.



Property changes on: tuxmath/trunk/macosx
___________________________________________________________________
Name: svn:ignore
   + build


Added: tuxmath/trunk/macosx/English.lproj/InfoPlist.strings
===================================================================
(Binary files differ)


Property changes on: tuxmath/trunk/macosx/English.lproj/InfoPlist.strings
___________________________________________________________________
Name: svn:executable
   + *
Name: svn:mime-type
   + application/octet-stream

Added: tuxmath/trunk/macosx/Info.plist
===================================================================
--- tuxmath/trunk/macosx/Info.plist	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/Info.plist	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>CFBundleDevelopmentRegion</key>
+	<string>English</string>
+	<key>CFBundleExecutable</key>
+	<string>${EXECUTABLE_NAME}</string>
+	<key>CFBundleIconFile</key>
+	<string>tuxmath.icns</string>
+	<key>CFBundleIdentifier</key>
+	<string>org.tux4kids.TuxMath</string>
+	<key>CFBundleInfoDictionaryVersion</key>
+	<string>6.0</string>
+	<key>CFBundleName</key>
+	<string>${PRODUCT_NAME}</string>
+	<key>CFBundlePackageType</key>
+	<string>APPL</string>
+	<key>CFBundleSignature</key>
+	<string>????</string>
+	<key>CFBundleVersion</key>
+	<string>1.0.1</string>
+	<key>NSMainNibFile</key>
+	<string>SDLMain</string>
+	<key>NSPrincipalClass</key>
+	<string>NSApplication</string>
+</dict>
+</plist>

Added: tuxmath/trunk/macosx/Makefile
===================================================================
--- tuxmath/trunk/macosx/Makefile	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/Makefile	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,10 @@
+MACRELEASEDIR = build/Release
+MACBUNDLE = $(MACRELEASEDIR)/TuxMath.app
+FRAMEWORKDIR = $(MACBUNDLE)/Contents/Frameworks/
+
+clean:
+	cd build && rm -r *
+
+macapp:
+	xcodebuild && echo "Creating dmg in $(MACRELEASEDIR)" && hdiutil create  -ov -srcfolder $(MACBUNDLE) -volname TuxMath -imagekey zlib-level=6 $(MACRELEASEDIR)/TuxMath.dmg
+

Added: tuxmath/trunk/macosx/SDLMain.h
===================================================================
--- tuxmath/trunk/macosx/SDLMain.h	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/SDLMain.h	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,11 @@
+/*   SDLMain.m - main entry point for our Cocoa-ized SDL app
+       Initial Version: Darrell Walisser <dwaliss1 at purdue.edu>
+       Non-NIB-Code & other changes: Max Horn <max at quendi.de>
+
+    Feel free to customize this file to suit your needs
+*/
+
+#import <Cocoa/Cocoa.h>
+
+ at interface SDLMain : NSObject
+ at end

Added: tuxmath/trunk/macosx/SDLMain.m
===================================================================
--- tuxmath/trunk/macosx/SDLMain.m	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/SDLMain.m	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,383 @@
+/*   SDLMain.m - main entry point for our Cocoa-ized SDL app
+       Initial Version: Darrell Walisser <dwaliss1 at purdue.edu>
+       Non-NIB-Code & other changes: Max Horn <max at quendi.de>
+
+    Feel free to customize this file to suit your needs
+*/
+
+#import "SDL.h"
+#import "SDLMain.h"
+#import <sys/param.h> /* for MAXPATHLEN */
+#import <unistd.h>
+
+/* For some reaon, Apple removed setAppleMenu from the headers in 10.4,
+ but the method still is there and works. To avoid warnings, we declare
+ it ourselves here. */
+ at interface NSApplication(SDL_Missing_Methods)
+- (void)setAppleMenu:(NSMenu *)menu;
+ at end
+
+/* Use this flag to determine whether we use SDLMain.nib or not */
+#define	SDL_USE_NIB_FILE	0
+
+/* Use this flag to determine whether we use CPS (docking) or not */
+#define SDL_USE_CPS		1
+#ifdef SDL_USE_CPS
+/* Portions of CPS.h */
+typedef struct CPSProcessSerNum
+{
+	UInt32		lo;
+	UInt32		hi;
+} CPSProcessSerNum;
+
+extern OSErr	CPSGetCurrentProcess( CPSProcessSerNum *psn);
+extern OSErr 	CPSEnableForegroundOperation( CPSProcessSerNum *psn, UInt32 _arg2, UInt32 _arg3, UInt32 _arg4, UInt32 _arg5);
+extern OSErr	CPSSetFrontProcess( CPSProcessSerNum *psn);
+
+#endif /* SDL_USE_CPS */
+
+static int    gArgc;
+static char  **gArgv;
+static BOOL   gFinderLaunch;
+static BOOL   gCalledAppMainline = FALSE;
+
+static NSString *getApplicationName(void)
+{
+    NSDictionary *dict;
+    NSString *appName = 0;
+
+    /* Determine the application name */
+    dict = (NSDictionary *)CFBundleGetInfoDictionary(CFBundleGetMainBundle());
+    if (dict)
+        appName = [dict objectForKey: @"CFBundleName"];
+    
+    if (![appName length])
+        appName = [[NSProcessInfo processInfo] processName];
+
+    return appName;
+}
+
+#if SDL_USE_NIB_FILE
+/* A helper category for NSString */
+ at interface NSString (ReplaceSubString)
+- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString;
+ at end
+#endif
+
+ at interface SDLApplication : NSApplication
+ at end
+
+ at implementation SDLApplication
+/* Invoked from the Quit menu item */
+- (void)terminate:(id)sender
+{
+    /* Post a SDL_QUIT event */
+    SDL_Event event;
+    event.type = SDL_QUIT;
+    SDL_PushEvent(&event);
+}
+ at end
+
+/* The main class of the application, the application's delegate */
+ at implementation SDLMain
+
+/* Set the working directory to the .app's parent directory */
+- (void) setupWorkingDirectory:(BOOL)shouldChdir
+{
+    if (shouldChdir)
+    {
+        char parentdir[MAXPATHLEN];
+		CFURLRef url = CFBundleCopyBundleURL(CFBundleGetMainBundle());
+		CFURLRef url2 = CFURLCreateCopyDeletingLastPathComponent(0, url);
+		if (CFURLGetFileSystemRepresentation(url2, true, (UInt8 *)parentdir, MAXPATHLEN)) {
+	        assert ( chdir (parentdir) == 0 );   /* chdir to the binary app's parent */
+		}
+		CFRelease(url);
+		CFRelease(url2);
+	}
+
+}
+
+#if SDL_USE_NIB_FILE
+
+/* Fix menu to contain the real app name instead of "SDL App" */
+- (void)fixMenu:(NSMenu *)aMenu withAppName:(NSString *)appName
+{
+    NSRange aRange;
+    NSEnumerator *enumerator;
+    NSMenuItem *menuItem;
+
+    aRange = [[aMenu title] rangeOfString:@"SDL App"];
+    if (aRange.length != 0)
+        [aMenu setTitle: [[aMenu title] stringByReplacingRange:aRange with:appName]];
+
+    enumerator = [[aMenu itemArray] objectEnumerator];
+    while ((menuItem = [enumerator nextObject]))
+    {
+        aRange = [[menuItem title] rangeOfString:@"SDL App"];
+        if (aRange.length != 0)
+            [menuItem setTitle: [[menuItem title] stringByReplacingRange:aRange with:appName]];
+        if ([menuItem hasSubmenu])
+            [self fixMenu:[menuItem submenu] withAppName:appName];
+    }
+    [ aMenu sizeToFit ];
+}
+
+#else
+
+static void setApplicationMenu(void)
+{
+    /* warning: this code is very odd */
+    NSMenu *appleMenu;
+    NSMenuItem *menuItem;
+    NSString *title;
+    NSString *appName;
+    
+    appName = getApplicationName();
+    appleMenu = [[NSMenu alloc] initWithTitle:@""];
+    
+    /* Add menu items */
+    title = [@"About " stringByAppendingString:appName];
+    [appleMenu addItemWithTitle:title action:@selector(orderFrontStandardAboutPanel:) keyEquivalent:@""];
+
+    [appleMenu addItem:[NSMenuItem separatorItem]];
+
+    title = [@"Hide " stringByAppendingString:appName];
+    [appleMenu addItemWithTitle:title action:@selector(hide:) keyEquivalent:@"h"];
+
+    menuItem = (NSMenuItem *)[appleMenu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"];
+    [menuItem setKeyEquivalentModifierMask:(NSAlternateKeyMask|NSCommandKeyMask)];
+
+    [appleMenu addItemWithTitle:@"Show All" action:@selector(unhideAllApplications:) keyEquivalent:@""];
+
+    [appleMenu addItem:[NSMenuItem separatorItem]];
+
+    title = [@"Quit " stringByAppendingString:appName];
+    [appleMenu addItemWithTitle:title action:@selector(terminate:) keyEquivalent:@"q"];
+
+    
+    /* Put menu into the menubar */
+    menuItem = [[NSMenuItem alloc] initWithTitle:@"" action:nil keyEquivalent:@""];
+    [menuItem setSubmenu:appleMenu];
+    [[NSApp mainMenu] addItem:menuItem];
+
+    /* Tell the application object that this is now the application menu */
+    [NSApp setAppleMenu:appleMenu];
+
+    /* Finally give up our references to the objects */
+    [appleMenu release];
+    [menuItem release];
+}
+
+/* Create a window menu */
+static void setupWindowMenu(void)
+{
+    NSMenu      *windowMenu;
+    NSMenuItem  *windowMenuItem;
+    NSMenuItem  *menuItem;
+
+    windowMenu = [[NSMenu alloc] initWithTitle:@"Window"];
+    
+    /* "Minimize" item */
+    menuItem = [[NSMenuItem alloc] initWithTitle:@"Minimize" action:@selector(performMiniaturize:) keyEquivalent:@"m"];
+    [windowMenu addItem:menuItem];
+    [menuItem release];
+    
+    /* Put menu into the menubar */
+    windowMenuItem = [[NSMenuItem alloc] initWithTitle:@"Window" action:nil keyEquivalent:@""];
+    [windowMenuItem setSubmenu:windowMenu];
+    [[NSApp mainMenu] addItem:windowMenuItem];
+    
+    /* Tell the application object that this is now the window menu */
+    [NSApp setWindowsMenu:windowMenu];
+
+    /* Finally give up our references to the objects */
+    [windowMenu release];
+    [windowMenuItem release];
+}
+
+/* Replacement for NSApplicationMain */
+static void CustomApplicationMain (int argc, char **argv)
+{
+    NSAutoreleasePool	*pool = [[NSAutoreleasePool alloc] init];
+    SDLMain				*sdlMain;
+
+    /* Ensure the application object is initialised */
+    [SDLApplication sharedApplication];
+    
+#ifdef SDL_USE_CPS
+    {
+        CPSProcessSerNum PSN;
+        /* Tell the dock about us */
+        if (!CPSGetCurrentProcess(&PSN))
+            if (!CPSEnableForegroundOperation(&PSN,0x03,0x3C,0x2C,0x1103))
+                if (!CPSSetFrontProcess(&PSN))
+                    [SDLApplication sharedApplication];
+    }
+#endif /* SDL_USE_CPS */
+
+    /* Set up the menubar */
+    [NSApp setMainMenu:[[NSMenu alloc] init]];
+    setApplicationMenu();
+    setupWindowMenu();
+
+    /* Create SDLMain and make it the app delegate */
+    sdlMain = [[SDLMain alloc] init];
+    [NSApp setDelegate:sdlMain];
+    
+    /* Start the main event loop */
+    [NSApp run];
+    
+    [sdlMain release];
+    [pool release];
+}
+
+#endif
+
+
+/*
+ * Catch document open requests...this lets us notice files when the app
+ *  was launched by double-clicking a document, or when a document was
+ *  dragged/dropped on the app's icon. You need to have a
+ *  CFBundleDocumentsType section in your Info.plist to get this message,
+ *  apparently.
+ *
+ * Files are added to gArgv, so to the app, they'll look like command line
+ *  arguments. Previously, apps launched from the finder had nothing but
+ *  an argv[0].
+ *
+ * This message may be received multiple times to open several docs on launch.
+ *
+ * This message is ignored once the app's mainline has been called.
+ */
+- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename
+{
+    const char *temparg;
+    size_t arglen;
+    char *arg;
+    char **newargv;
+
+    if (!gFinderLaunch)  /* MacOS is passing command line args. */
+        return FALSE;
+
+    if (gCalledAppMainline)  /* app has started, ignore this document. */
+        return FALSE;
+
+    temparg = [filename UTF8String];
+    arglen = SDL_strlen(temparg) + 1;
+    arg = (char *) SDL_malloc(arglen);
+    if (arg == NULL)
+        return FALSE;
+
+    newargv = (char **) realloc(gArgv, sizeof (char *) * (gArgc + 2));
+    if (newargv == NULL)
+    {
+        SDL_free(arg);
+        return FALSE;
+    }
+    gArgv = newargv;
+
+    SDL_strlcpy(arg, temparg, arglen);
+    gArgv[gArgc++] = arg;
+    gArgv[gArgc] = NULL;
+    return TRUE;
+}
+
+
+/* Called when the internal event loop has just started running */
+- (void) applicationDidFinishLaunching: (NSNotification *) note
+{
+    int status;
+
+    /* Set the working directory to the .app's parent directory */
+    [self setupWorkingDirectory:gFinderLaunch];
+
+#if SDL_USE_NIB_FILE
+    /* Set the main menu to contain the real app name instead of "SDL App" */
+    [self fixMenu:[NSApp mainMenu] withAppName:getApplicationName()];
+#endif
+
+    /* Hand off to main application code */
+    gCalledAppMainline = TRUE;
+    status = SDL_main (gArgc, gArgv);
+
+    /* We're done, thank you for playing */
+    exit(status);
+}
+ at end
+
+
+ at implementation NSString (ReplaceSubString)
+
+- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString
+{
+    unsigned int bufferSize;
+    unsigned int selfLen = [self length];
+    unsigned int aStringLen = [aString length];
+    unichar *buffer;
+    NSRange localRange;
+    NSString *result;
+
+    bufferSize = selfLen + aStringLen - aRange.length;
+    buffer = NSAllocateMemoryPages(bufferSize*sizeof(unichar));
+    
+    /* Get first part into buffer */
+    localRange.location = 0;
+    localRange.length = aRange.location;
+    [self getCharacters:buffer range:localRange];
+    
+    /* Get middle part into buffer */
+    localRange.location = 0;
+    localRange.length = aStringLen;
+    [aString getCharacters:(buffer+aRange.location) range:localRange];
+     
+    /* Get last part into buffer */
+    localRange.location = aRange.location + aRange.length;
+    localRange.length = selfLen - localRange.location;
+    [self getCharacters:(buffer+aRange.location+aStringLen) range:localRange];
+    
+    /* Build output string */
+    result = [NSString stringWithCharacters:buffer length:bufferSize];
+    
+    NSDeallocateMemoryPages(buffer, bufferSize);
+    
+    return result;
+}
+
+ at end
+
+
+
+#ifdef main
+#  undef main
+#endif
+
+
+/* Main entry point to executable - should *not* be SDL_main! */
+int main (int argc, char **argv)
+{
+    /* Copy the arguments into a global variable */
+    /* This is passed if we are launched by double-clicking */
+    if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) {
+        gArgv = (char **) SDL_malloc(sizeof (char *) * 2);
+        gArgv[0] = argv[0];
+        gArgv[1] = NULL;
+        gArgc = 1;
+        gFinderLaunch = YES;
+    } else {
+        int i;
+        gArgc = argc;
+        gArgv = (char **) SDL_malloc(sizeof (char *) * (argc+1));
+        for (i = 0; i <= argc; i++)
+            gArgv[i] = argv[i];
+        gFinderLaunch = NO;
+    }
+
+#if SDL_USE_NIB_FILE
+    [SDLApplication poseAsClass:[NSApplication class]];
+    NSApplicationMain (argc, argv);
+#else
+    CustomApplicationMain (argc, argv);
+#endif
+    return 0;
+}

Added: tuxmath/trunk/macosx/TuxMath.xcodeproj/project.pbxproj
===================================================================
--- tuxmath/trunk/macosx/TuxMath.xcodeproj/project.pbxproj	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/TuxMath.xcodeproj/project.pbxproj	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,487 @@
+// !$*UTF8*$!
+{
+	archiveVersion = 1;
+	classes = {
+	};
+	objectVersion = 42;
+	objects = {
+
+/* Begin PBXBuildFile section */
+		002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; };
+		002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = 002F39F909D0881F00EBEB88 /* SDL.framework */; };
+		8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
+		8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
+		A210C4890B927DFC004EB748 /* playsound.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE418F0B32C88100C66A5D /* playsound.c */; };
+		A210C4930B927EEB004EB748 /* alphabet.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C48F0B927EEA004EB748 /* alphabet.c */; };
+		A210C4940B927EEB004EB748 /* audio.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C4900B927EEA004EB748 /* audio.c */; };
+		A210C4960B927EEB004EB748 /* loaders.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C4920B927EEB004EB748 /* loaders.c */; };
+		A210C49B0B927F0F004EB748 /* pause.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C4970B927F0F004EB748 /* pause.c */; };
+		A210C49C0B927F0F004EB748 /* theme.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C4980B927F0F004EB748 /* theme.c */; };
+		A210C49D0B927F0F004EB748 /* titlescreen.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C4990B927F0F004EB748 /* titlescreen.c */; };
+		A210C49E0B927F0F004EB748 /* titlescreen.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A210C49A0B927F0F004EB748 /* titlescreen.h */; };
+		A210C7BE0BA6DF4A004EB748 /* libintl.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A210C7BD0BA6DF4A004EB748 /* libintl.h */; };
+		A210C7FE0BA817D6004EB748 /* SDLMain.m in Sources */ = {isa = PBXBuildFile; fileRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */; };
+		A210C8620BA8323F004EB748 /* highscore.c in Sources */ = {isa = PBXBuildFile; fileRef = A210C8610BA8323F004EB748 /* highscore.c */; };
+		A210C8640BA8325A004EB748 /* highscore.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A210C8630BA8325A004EB748 /* highscore.h */; };
+		A2AE41770B32C7EE00C66A5D /* data in Resources */ = {isa = PBXBuildFile; fileRef = A2AE40E70B32C7EE00C66A5D /* data */; };
+		A2AE41790B32C81600C66A5D /* tuxmath.icns in Resources */ = {isa = PBXBuildFile; fileRef = A2AE41780B32C81600C66A5D /* tuxmath.icns */; };
+		A2AE417E0B32C84A00C66A5D /* SDL_mixer.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A2AE417B0B32C84A00C66A5D /* SDL_mixer.framework */; };
+		A2AE417F0B32C84A00C66A5D /* SDL_ttf.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A2AE417C0B32C84A00C66A5D /* SDL_ttf.framework */; };
+		A2AE41980B32C88100C66A5D /* credits.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE41800B32C88100C66A5D /* credits.c */; };
+		A2AE41990B32C88100C66A5D /* credits.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41810B32C88100C66A5D /* credits.h */; };
+		A2AE419A0B32C88100C66A5D /* fileops.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE41820B32C88100C66A5D /* fileops.c */; };
+		A2AE419B0B32C88100C66A5D /* fileops.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41830B32C88100C66A5D /* fileops.h */; };
+		A2AE419C0B32C88100C66A5D /* game.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE41840B32C88100C66A5D /* game.c */; };
+		A2AE419D0B32C88100C66A5D /* game.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41850B32C88100C66A5D /* game.h */; };
+		A2AE41A20B32C88100C66A5D /* mathcards.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE418A0B32C88100C66A5D /* mathcards.c */; };
+		A2AE41A30B32C88100C66A5D /* mathcards.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE418B0B32C88100C66A5D /* mathcards.h */; };
+		A2AE41A50B32C88100C66A5D /* options.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE418D0B32C88100C66A5D /* options.c */; };
+		A2AE41A60B32C88100C66A5D /* options.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE418E0B32C88100C66A5D /* options.h */; };
+		A2AE41A80B32C88100C66A5D /* playsound.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41900B32C88100C66A5D /* playsound.h */; };
+		A2AE41A90B32C88100C66A5D /* setup.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE41910B32C88100C66A5D /* setup.c */; };
+		A2AE41AA0B32C88100C66A5D /* setup.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41920B32C88100C66A5D /* setup.h */; };
+		A2AE41AE0B32C88100C66A5D /* tuxmath.c in Sources */ = {isa = PBXBuildFile; fileRef = A2AE41960B32C88100C66A5D /* tuxmath.c */; };
+		A2AE41AF0B32C88100C66A5D /* tuxmath.h in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE41970B32C88100C66A5D /* tuxmath.h */; };
+		A2AE45060B342D9100C66A5D /* SDL_image.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A2AE45050B342D9100C66A5D /* SDL_image.framework */; };
+		A2AE45090B344DF500C66A5D /* SDL_image.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE45050B342D9100C66A5D /* SDL_image.framework */; };
+		A2AE450A0B344DFC00C66A5D /* SDL_mixer.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE417B0B32C84A00C66A5D /* SDL_mixer.framework */; };
+		A2AE450B0B344E0200C66A5D /* SDL_ttf.framework in Copy Frameworks into .app bundle */ = {isa = PBXBuildFile; fileRef = A2AE417C0B32C84A00C66A5D /* SDL_ttf.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXCopyFilesBuildPhase section */
+		002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */ = {
+			isa = PBXCopyFilesBuildPhase;
+			buildActionMask = 2147483647;
+			dstPath = "";
+			dstSubfolderSpec = 10;
+			files = (
+				A2AE450B0B344E0200C66A5D /* SDL_ttf.framework in Copy Frameworks into .app bundle */,
+				A2AE450A0B344DFC00C66A5D /* SDL_mixer.framework in Copy Frameworks into .app bundle */,
+				A2AE45090B344DF500C66A5D /* SDL_image.framework in Copy Frameworks into .app bundle */,
+				002F3A0009D0884600EBEB88 /* SDL.framework in Copy Frameworks into .app bundle */,
+				A2AE41990B32C88100C66A5D /* credits.h in Copy Frameworks into .app bundle */,
+				A2AE419B0B32C88100C66A5D /* fileops.h in Copy Frameworks into .app bundle */,
+				A2AE419D0B32C88100C66A5D /* game.h in Copy Frameworks into .app bundle */,
+				A2AE41A30B32C88100C66A5D /* mathcards.h in Copy Frameworks into .app bundle */,
+				A2AE41A60B32C88100C66A5D /* options.h in Copy Frameworks into .app bundle */,
+				A2AE41A80B32C88100C66A5D /* playsound.h in Copy Frameworks into .app bundle */,
+				A2AE41AA0B32C88100C66A5D /* setup.h in Copy Frameworks into .app bundle */,
+				A2AE41AF0B32C88100C66A5D /* tuxmath.h in Copy Frameworks into .app bundle */,
+				A210C49E0B927F0F004EB748 /* titlescreen.h in Copy Frameworks into .app bundle */,
+				A210C7BE0BA6DF4A004EB748 /* libintl.h in Copy Frameworks into .app bundle */,
+				A210C8640BA8325A004EB748 /* highscore.h in Copy Frameworks into .app bundle */,
+			);
+			name = "Copy Frameworks into .app bundle";
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXCopyFilesBuildPhase section */
+
+/* Begin PBXFileReference section */
+		002F39F909D0881F00EBEB88 /* SDL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL.framework; path = /Library/Frameworks/SDL.framework; sourceTree = "<absolute>"; };
+		002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = SDLMain.h; sourceTree = SOURCE_ROOT; };
+		002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = SDLMain.m; sourceTree = SOURCE_ROOT; };
+		089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+		1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
+		29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
+		29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
+		32CA4F630368D1EE00C91783 /* TuxMath_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TuxMath_Prefix.pch; sourceTree = "<group>"; };
+		8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
+		8D1107320486CEB800E47090 /* TuxMath.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TuxMath.app; sourceTree = BUILT_PRODUCTS_DIR; };
+		A210C48F0B927EEA004EB748 /* alphabet.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = alphabet.c; path = ../src/alphabet.c; sourceTree = SOURCE_ROOT; };
+		A210C4900B927EEA004EB748 /* audio.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = audio.c; path = ../src/audio.c; sourceTree = SOURCE_ROOT; };
+		A210C4920B927EEB004EB748 /* loaders.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = loaders.c; path = ../src/loaders.c; sourceTree = SOURCE_ROOT; };
+		A210C4970B927F0F004EB748 /* pause.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = pause.c; path = ../src/pause.c; sourceTree = SOURCE_ROOT; };
+		A210C4980B927F0F004EB748 /* theme.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = theme.c; path = ../src/theme.c; sourceTree = SOURCE_ROOT; };
+		A210C4990B927F0F004EB748 /* titlescreen.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = titlescreen.c; path = ../src/titlescreen.c; sourceTree = SOURCE_ROOT; };
+		A210C49A0B927F0F004EB748 /* titlescreen.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = titlescreen.h; path = ../src/titlescreen.h; sourceTree = SOURCE_ROOT; };
+		A210C7BD0BA6DF4A004EB748 /* libintl.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = libintl.h; path = /sw/include/libintl.h; sourceTree = "<absolute>"; };
+		A210C8610BA8323F004EB748 /* highscore.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = highscore.c; path = ../src/highscore.c; sourceTree = SOURCE_ROOT; };
+		A210C8630BA8325A004EB748 /* highscore.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = highscore.h; path = ../src/highscore.h; sourceTree = SOURCE_ROOT; };
+		A2AE40E70B32C7EE00C66A5D /* data */ = {isa = PBXFileReference; lastKnownFileType = folder; name = data; path = ../data; sourceTree = SOURCE_ROOT; };
+		A2AE41780B32C81600C66A5D /* tuxmath.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = tuxmath.icns; path = ../data/images/tuxmath.icns; sourceTree = SOURCE_ROOT; };
+		A2AE417B0B32C84A00C66A5D /* SDL_mixer.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL_mixer.framework; path = /Library/Frameworks/SDL_mixer.framework; sourceTree = "<absolute>"; };
+		A2AE417C0B32C84A00C66A5D /* SDL_ttf.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL_ttf.framework; path = /Library/Frameworks/SDL_ttf.framework; sourceTree = "<absolute>"; };
+		A2AE41800B32C88100C66A5D /* credits.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = credits.c; path = ../src/credits.c; sourceTree = SOURCE_ROOT; };
+		A2AE41810B32C88100C66A5D /* credits.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = credits.h; path = ../src/credits.h; sourceTree = SOURCE_ROOT; };
+		A2AE41820B32C88100C66A5D /* fileops.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = fileops.c; path = ../src/fileops.c; sourceTree = SOURCE_ROOT; };
+		A2AE41830B32C88100C66A5D /* fileops.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = fileops.h; path = ../src/fileops.h; sourceTree = SOURCE_ROOT; };
+		A2AE41840B32C88100C66A5D /* game.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = game.c; path = ../src/game.c; sourceTree = SOURCE_ROOT; };
+		A2AE41850B32C88100C66A5D /* game.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = game.h; path = ../src/game.h; sourceTree = SOURCE_ROOT; };
+		A2AE418A0B32C88100C66A5D /* mathcards.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = mathcards.c; path = ../src/mathcards.c; sourceTree = SOURCE_ROOT; };
+		A2AE418B0B32C88100C66A5D /* mathcards.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = mathcards.h; path = ../src/mathcards.h; sourceTree = SOURCE_ROOT; };
+		A2AE418D0B32C88100C66A5D /* options.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = options.c; path = ../src/options.c; sourceTree = SOURCE_ROOT; };
+		A2AE418E0B32C88100C66A5D /* options.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = options.h; path = ../src/options.h; sourceTree = SOURCE_ROOT; };
+		A2AE418F0B32C88100C66A5D /* playsound.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = playsound.c; path = ../src/playsound.c; sourceTree = SOURCE_ROOT; };
+		A2AE41900B32C88100C66A5D /* playsound.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = playsound.h; path = ../src/playsound.h; sourceTree = SOURCE_ROOT; };
+		A2AE41910B32C88100C66A5D /* setup.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = setup.c; path = ../src/setup.c; sourceTree = SOURCE_ROOT; };
+		A2AE41920B32C88100C66A5D /* setup.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = setup.h; path = ../src/setup.h; sourceTree = SOURCE_ROOT; };
+		A2AE41960B32C88100C66A5D /* tuxmath.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = tuxmath.c; path = ../src/tuxmath.c; sourceTree = SOURCE_ROOT; };
+		A2AE41970B32C88100C66A5D /* tuxmath.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = tuxmath.h; path = ../src/tuxmath.h; sourceTree = SOURCE_ROOT; };
+		A2AE45050B342D9100C66A5D /* SDL_image.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SDL_image.framework; path = /Library/Frameworks/SDL_image.framework; sourceTree = "<absolute>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+		8D11072E0486CEB800E47090 /* Frameworks */ = {
+			isa = PBXFrameworksBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				002F39FA09D0881F00EBEB88 /* SDL.framework in Frameworks */,
+				8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
+				A2AE417E0B32C84A00C66A5D /* SDL_mixer.framework in Frameworks */,
+				A2AE417F0B32C84A00C66A5D /* SDL_ttf.framework in Frameworks */,
+				A2AE45060B342D9100C66A5D /* SDL_image.framework in Frameworks */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+		080E96DDFE201D6D7F000001 /* Classes */ = {
+			isa = PBXGroup;
+			children = (
+				002F3A2B09D0888800EBEB88 /* SDLMain.h */,
+				002F3A2C09D0888800EBEB88 /* SDLMain.m */,
+			);
+			name = Classes;
+			sourceTree = "<group>";
+		};
+		1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				A2AE45050B342D9100C66A5D /* SDL_image.framework */,
+				A2AE417B0B32C84A00C66A5D /* SDL_mixer.framework */,
+				A2AE417C0B32C84A00C66A5D /* SDL_ttf.framework */,
+				002F39F909D0881F00EBEB88 /* SDL.framework */,
+				1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
+			);
+			name = "Linked Frameworks";
+			sourceTree = "<group>";
+		};
+		1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				29B97324FDCFA39411CA2CEA /* AppKit.framework */,
+				29B97325FDCFA39411CA2CEA /* Foundation.framework */,
+			);
+			name = "Other Frameworks";
+			sourceTree = "<group>";
+		};
+		19C28FACFE9D520D11CA2CBB /* Products */ = {
+			isa = PBXGroup;
+			children = (
+				8D1107320486CEB800E47090 /* TuxMath.app */,
+			);
+			name = Products;
+			sourceTree = "<group>";
+		};
+		29B97314FDCFA39411CA2CEA /* TuxMath */ = {
+			isa = PBXGroup;
+			children = (
+				A210C8630BA8325A004EB748 /* highscore.h */,
+				A210C8610BA8323F004EB748 /* highscore.c */,
+				080E96DDFE201D6D7F000001 /* Classes */,
+				29B97315FDCFA39411CA2CEA /* Other Sources */,
+				29B97317FDCFA39411CA2CEA /* Resources */,
+				29B97323FDCFA39411CA2CEA /* Frameworks */,
+				19C28FACFE9D520D11CA2CBB /* Products */,
+			);
+			name = TuxMath;
+			sourceTree = "<group>";
+		};
+		29B97315FDCFA39411CA2CEA /* Other Sources */ = {
+			isa = PBXGroup;
+			children = (
+				A210C7BD0BA6DF4A004EB748 /* libintl.h */,
+				A210C4970B927F0F004EB748 /* pause.c */,
+				A210C4980B927F0F004EB748 /* theme.c */,
+				A210C4990B927F0F004EB748 /* titlescreen.c */,
+				A210C49A0B927F0F004EB748 /* titlescreen.h */,
+				A210C48F0B927EEA004EB748 /* alphabet.c */,
+				A210C4900B927EEA004EB748 /* audio.c */,
+				A210C4920B927EEB004EB748 /* loaders.c */,
+				A2AE41800B32C88100C66A5D /* credits.c */,
+				A2AE41810B32C88100C66A5D /* credits.h */,
+				A2AE41820B32C88100C66A5D /* fileops.c */,
+				A2AE41830B32C88100C66A5D /* fileops.h */,
+				A2AE41840B32C88100C66A5D /* game.c */,
+				A2AE41850B32C88100C66A5D /* game.h */,
+				A2AE418A0B32C88100C66A5D /* mathcards.c */,
+				A2AE418B0B32C88100C66A5D /* mathcards.h */,
+				A2AE418D0B32C88100C66A5D /* options.c */,
+				A2AE418E0B32C88100C66A5D /* options.h */,
+				A2AE418F0B32C88100C66A5D /* playsound.c */,
+				A2AE41900B32C88100C66A5D /* playsound.h */,
+				A2AE41910B32C88100C66A5D /* setup.c */,
+				A2AE41920B32C88100C66A5D /* setup.h */,
+				A2AE41960B32C88100C66A5D /* tuxmath.c */,
+				A2AE41970B32C88100C66A5D /* tuxmath.h */,
+				32CA4F630368D1EE00C91783 /* TuxMath_Prefix.pch */,
+			);
+			name = "Other Sources";
+			sourceTree = "<group>";
+		};
+		29B97317FDCFA39411CA2CEA /* Resources */ = {
+			isa = PBXGroup;
+			children = (
+				A2AE41780B32C81600C66A5D /* tuxmath.icns */,
+				A2AE40E70B32C7EE00C66A5D /* data */,
+				8D1107310486CEB800E47090 /* Info.plist */,
+				089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
+			);
+			name = Resources;
+			sourceTree = "<group>";
+		};
+		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
+			isa = PBXGroup;
+			children = (
+				1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
+				1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
+			);
+			name = Frameworks;
+			sourceTree = "<group>";
+		};
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+		8D1107260486CEB800E47090 /* TuxMath */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "TuxMath" */;
+			buildPhases = (
+				8D1107290486CEB800E47090 /* Resources */,
+				8D11072C0486CEB800E47090 /* Sources */,
+				8D11072E0486CEB800E47090 /* Frameworks */,
+				002F39FD09D0883400EBEB88 /* Copy Frameworks into .app bundle */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = TuxMath;
+			productInstallPath = "$(HOME)/Applications";
+			productName = TuxMath;
+			productReference = 8D1107320486CEB800E47090 /* TuxMath.app */;
+			productType = "com.apple.product-type.application";
+		};
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+		29B97313FDCFA39411CA2CEA /* Project object */ = {
+			isa = PBXProject;
+			buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "TuxMath" */;
+			hasScannedForEncodings = 1;
+			mainGroup = 29B97314FDCFA39411CA2CEA /* TuxMath */;
+			projectDirPath = "";
+			targets = (
+				8D1107260486CEB800E47090 /* TuxMath */,
+			);
+		};
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+		8D1107290486CEB800E47090 /* Resources */ = {
+			isa = PBXResourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
+				A2AE41770B32C7EE00C66A5D /* data in Resources */,
+				A2AE41790B32C81600C66A5D /* tuxmath.icns in Resources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+		8D11072C0486CEB800E47090 /* Sources */ = {
+			isa = PBXSourcesBuildPhase;
+			buildActionMask = 2147483647;
+			files = (
+				A2AE41980B32C88100C66A5D /* credits.c in Sources */,
+				A2AE419A0B32C88100C66A5D /* fileops.c in Sources */,
+				A2AE419C0B32C88100C66A5D /* game.c in Sources */,
+				A2AE41A20B32C88100C66A5D /* mathcards.c in Sources */,
+				A2AE41A50B32C88100C66A5D /* options.c in Sources */,
+				A2AE41A90B32C88100C66A5D /* setup.c in Sources */,
+				A2AE41AE0B32C88100C66A5D /* tuxmath.c in Sources */,
+				A210C4890B927DFC004EB748 /* playsound.c in Sources */,
+				A210C4930B927EEB004EB748 /* alphabet.c in Sources */,
+				A210C4940B927EEB004EB748 /* audio.c in Sources */,
+				A210C4960B927EEB004EB748 /* loaders.c in Sources */,
+				A210C49B0B927F0F004EB748 /* pause.c in Sources */,
+				A210C49C0B927F0F004EB748 /* theme.c in Sources */,
+				A210C49D0B927F0F004EB748 /* titlescreen.c in Sources */,
+				A210C7FE0BA817D6004EB748 /* SDLMain.m in Sources */,
+				A210C8620BA8323F004EB748 /* highscore.c in Sources */,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+		};
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+		089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
+			isa = PBXVariantGroup;
+			children = (
+				089C165DFE840E0CC02AAC07 /* English */,
+			);
+			name = InfoPlist.strings;
+			sourceTree = "<group>";
+		};
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+		C01FCF4B08A954540054247B /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_PHASE_STRIP = NO;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)",
+				);
+				FRAMEWORK_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)\"";
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_ENABLE_FIX_AND_CONTINUE = YES;
+				GCC_MODEL_TUNING = G5;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(HOME)/Applications";
+				LIBRARY_SEARCH_PATHS = (
+					"$(inherited)",
+					/sw/lib,
+				);
+				PRODUCT_NAME = TuxMath;
+				WRAPPER_EXTENSION = app;
+				ZERO_LINK = YES;
+			};
+			name = Debug;
+		};
+		C01FCF4C08A954540054247B /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = (
+					ppc,
+					i386,
+				);
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(inherited)",
+					"$(FRAMEWORK_SEARCH_PATHS_QUOTED_1)",
+				);
+				FRAMEWORK_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)\"";
+				GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+				GCC_MODEL_TUNING = G5;
+				INFOPLIST_FILE = Info.plist;
+				INSTALL_PATH = "$(HOME)/Applications";
+				LIBRARY_SEARCH_PATHS = (
+					"$(inherited)",
+					/sw/lib,
+				);
+				PRODUCT_NAME = TuxMath;
+				WRAPPER_EXTENSION = app;
+			};
+			name = Release;
+		};
+		C01FCF4F08A954540054247B /* Debug */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = (
+					ppc,
+					i386,
+				);
+				CURRENT_PROJECT_VERSION = 1.0.1;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(HOME)/Library/Frameworks",
+					/Library/Frameworks,
+					"$(FRAMEWORK_SEARCH_PATHS)",
+				);
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"MACOSX=1",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_5)",
+					"$(inherited)",
+				);
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "DATA_PREFIX=\\\"TuxMath.app/Contents/Resources/data\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "VERSION=\\\"1.0.1\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "DATA_PREFIX=\\\"TuxMath.app/Contents/Resources/data\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "VERSION=\\\"1.5\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_5 = "LOCALEDIR=\\\"TuxMath.app/Contents/Resources/data/locale\\\"";
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				HEADER_SEARCH_PATHS = (
+					"$(HOME)/Library/Frameworks/SDL.framework/Headers",
+					/Library/Frameworks/SDL.framework/Headers,
+					/Library/Frameworks/SDL_image.framework/Headers,
+					/Library/Frameworks/SDL_mixer.framework/Headers,
+					/Library/Frameworks/SDL_ttf.framework/Headers,
+					"$(HEADER_SEARCH_PATHS)",
+				);
+				PREBINDING = NO;
+				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+				VERSIONING_SYSTEM = "";
+			};
+			name = Debug;
+		};
+		C01FCF5008A954540054247B /* Release */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				ARCHS = (
+					ppc,
+					i386,
+				);
+				CURRENT_PROJECT_VERSION = 1.0.1;
+				FRAMEWORK_SEARCH_PATHS = (
+					"$(HOME)/Library/Frameworks",
+					/Library/Frameworks,
+					"$(FRAMEWORK_SEARCH_PATHS)",
+				);
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					"MACOSX=1",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3)",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4)",
+					"$(GCC_PREPROCESSOR_DEFINITIONS_QUOTED_5)",
+					"$(inherited)",
+				);
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_1 = "DATA_PREFIX=\\\"TuxMath.app/Contents/Resources/data\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_2 = "VERSION=\\\"1.0.1\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_3 = "DATA_PREFIX=\\\"TuxMath.app/Contents/Resources/data\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_4 = "VERSION=\\\"1.5\\\"";
+				GCC_PREPROCESSOR_DEFINITIONS_QUOTED_5 = "LOCALEDIR=\\\"TuxMath.app/Contents/Resources/data/locale\\\"";
+				GCC_WARN_ABOUT_RETURN_TYPE = YES;
+				GCC_WARN_UNUSED_VARIABLE = YES;
+				HEADER_SEARCH_PATHS = (
+					"$(HOME)/Library/Frameworks/SDL.framework/Headers",
+					/Library/Frameworks/SDL.framework/Headers,
+					/Library/Frameworks/SDL_image.framework/Headers,
+					/Library/Frameworks/SDL_mixer.framework/Headers,
+					/Library/Frameworks/SDL_ttf.framework/Headers,
+					"$(HEADER_SEARCH_PATHS)",
+				);
+				PREBINDING = NO;
+				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+				VERSIONING_SYSTEM = "";
+			};
+			name = Release;
+		};
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+		C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "TuxMath" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				C01FCF4B08A954540054247B /* Debug */,
+				C01FCF4C08A954540054247B /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+		C01FCF4E08A954540054247B /* Build configuration list for PBXProject "TuxMath" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				C01FCF4F08A954540054247B /* Debug */,
+				C01FCF5008A954540054247B /* Release */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Release;
+		};
+/* End XCConfigurationList section */
+	};
+	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
+}

Added: tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.mode1
===================================================================
--- tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.mode1	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.mode1	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,1333 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+	<key>ActivePerspectiveName</key>
+	<string>Project</string>
+	<key>AllowedModules</key>
+	<array>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXSmartGroupTreeModule</string>
+			<key>Name</key>
+			<string>Groups and Files Outline View</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXNavigatorGroup</string>
+			<key>Name</key>
+			<string>Editor</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>XCTaskListModule</string>
+			<key>Name</key>
+			<string>Task List</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>XCDetailModule</string>
+			<key>Name</key>
+			<string>File and Smart Group Detail Viewer</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>1</string>
+			<key>Module</key>
+			<string>PBXBuildResultsModule</string>
+			<key>Name</key>
+			<string>Detailed Build Results Viewer</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>1</string>
+			<key>Module</key>
+			<string>PBXProjectFindModule</string>
+			<key>Name</key>
+			<string>Project Batch Find Tool</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXRunSessionModule</string>
+			<key>Name</key>
+			<string>Run Log</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXBookmarksModule</string>
+			<key>Name</key>
+			<string>Bookmarks Tool</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXClassBrowserModule</string>
+			<key>Name</key>
+			<string>Class Browser</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXCVSModule</string>
+			<key>Name</key>
+			<string>Source Code Control Tool</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXDebugBreakpointsModule</string>
+			<key>Name</key>
+			<string>Debug Breakpoints Tool</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>XCDockableInspector</string>
+			<key>Name</key>
+			<string>Inspector</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>n</string>
+			<key>Module</key>
+			<string>PBXOpenQuicklyModule</string>
+			<key>Name</key>
+			<string>Open Quickly Tool</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>1</string>
+			<key>Module</key>
+			<string>PBXDebugSessionModule</string>
+			<key>Name</key>
+			<string>Debugger</string>
+		</dict>
+		<dict>
+			<key>BundleLoadPath</key>
+			<string></string>
+			<key>MaxInstances</key>
+			<string>1</string>
+			<key>Module</key>
+			<string>PBXDebugCLIModule</string>
+			<key>Name</key>
+			<string>Debug Console</string>
+		</dict>
+	</array>
+	<key>Description</key>
+	<string>DefaultDescriptionKey</string>
+	<key>DockingSystemVisible</key>
+	<false/>
+	<key>Extension</key>
+	<string>mode1</string>
+	<key>FavBarConfig</key>
+	<dict>
+		<key>PBXProjectModuleGUID</key>
+		<string>A2AE41B30B32C93800C66A5D</string>
+		<key>XCBarModuleItemNames</key>
+		<dict/>
+		<key>XCBarModuleItems</key>
+		<array/>
+	</dict>
+	<key>FirstTimeWindowDisplayed</key>
+	<false/>
+	<key>Identifier</key>
+	<string>com.apple.perspectives.project.mode1</string>
+	<key>MajorVersion</key>
+	<integer>31</integer>
+	<key>MinorVersion</key>
+	<integer>1</integer>
+	<key>Name</key>
+	<string>Default</string>
+	<key>Notifications</key>
+	<array/>
+	<key>OpenEditors</key>
+	<array/>
+	<key>PerspectiveWidths</key>
+	<array>
+		<integer>-1</integer>
+		<integer>-1</integer>
+	</array>
+	<key>Perspectives</key>
+	<array>
+		<dict>
+			<key>ChosenToolbarItems</key>
+			<array>
+				<string>active-target-popup</string>
+				<string>active-buildstyle-popup</string>
+				<string>action</string>
+				<string>NSToolbarFlexibleSpaceItem</string>
+				<string>buildOrClean</string>
+				<string>build-and-runOrDebug</string>
+				<string>com.apple.ide.PBXToolbarStopButton</string>
+				<string>get-info</string>
+				<string>toggle-editor</string>
+				<string>NSToolbarFlexibleSpaceItem</string>
+				<string>com.apple.pbx.toolbar.searchfield</string>
+			</array>
+			<key>ControllerClassBaseName</key>
+			<string></string>
+			<key>IconName</key>
+			<string>WindowOfProjectWithEditor</string>
+			<key>Identifier</key>
+			<string>perspective.project</string>
+			<key>IsVertical</key>
+			<false/>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>BecomeActive</key>
+					<true/>
+					<key>ContentConfiguration</key>
+					<dict>
+						<key>PBXBottomSmartGroupGIDs</key>
+						<array>
+							<string>1C37FBAC04509CD000000102</string>
+							<string>1C37FAAC04509CD000000102</string>
+							<string>1C08E77C0454961000C914BD</string>
+							<string>1C37FABC05509CD000000102</string>
+							<string>1C37FABC05539CD112110102</string>
+							<string>E2644B35053B69B200211256</string>
+							<string>1C37FABC04509CD000100104</string>
+							<string>1CC0EA4004350EF90044410B</string>
+							<string>1CC0EA4004350EF90041110B</string>
+						</array>
+						<key>PBXProjectModuleGUID</key>
+						<string>1CE0B1FE06471DED0097A5F4</string>
+						<key>PBXProjectModuleLabel</key>
+						<string>Files</string>
+						<key>PBXProjectStructureProvided</key>
+						<string>yes</string>
+						<key>PBXSmartGroupTreeModuleColumnData</key>
+						<dict>
+							<key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+							<array>
+								<real>186</real>
+							</array>
+							<key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+							<array>
+								<string>MainColumn</string>
+							</array>
+						</dict>
+						<key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+						<dict>
+							<key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+							<array>
+								<string>29B97314FDCFA39411CA2CEA</string>
+								<string>29B97317FDCFA39411CA2CEA</string>
+								<string>A2AE40E70B32C7EE00C66A5D</string>
+								<string>A2DD43ED0BA9584700C5A800</string>
+								<string>A2DD440B0BA9584A00C5A800</string>
+								<string>29B97323FDCFA39411CA2CEA</string>
+								<string>1058C7A0FEA54F0111CA2CBB</string>
+								<string>1C37FBAC04509CD000000102</string>
+								<string>1C37FAAC04509CD000000102</string>
+								<string>1C37FABC05509CD000000102</string>
+							</array>
+							<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+							<array>
+								<array>
+									<integer>0</integer>
+								</array>
+							</array>
+							<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+							<string>{{0, 170}, {186, 338}}</string>
+						</dict>
+						<key>PBXTopSmartGroupGIDs</key>
+						<array/>
+						<key>XCIncludePerspectivesSwitch</key>
+						<true/>
+						<key>XCSharingToken</key>
+						<string>com.apple.Xcode.GFSharingToken</string>
+					</dict>
+					<key>GeometryConfiguration</key>
+					<dict>
+						<key>Frame</key>
+						<string>{{0, 0}, {203, 356}}</string>
+						<key>GroupTreeTableConfiguration</key>
+						<array>
+							<string>MainColumn</string>
+							<real>186</real>
+						</array>
+						<key>RubberWindowFrame</key>
+						<string>79 270 690 397 0 0 1024 746 </string>
+					</dict>
+					<key>Module</key>
+					<string>PBXSmartGroupTreeModule</string>
+					<key>Proportion</key>
+					<string>203pt</string>
+				</dict>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CE0B20306471E060097A5F4</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>MyNewFile14.java</string>
+								<key>PBXSplitModuleInNavigatorKey</key>
+								<dict>
+									<key>Split0</key>
+									<dict>
+										<key>PBXProjectModuleGUID</key>
+										<string>1CE0B20406471E060097A5F4</string>
+										<key>PBXProjectModuleLabel</key>
+										<string>MyNewFile14.java</string>
+									</dict>
+									<key>SplitCount</key>
+									<string>1</string>
+								</dict>
+								<key>StatusBarVisibility</key>
+								<true/>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {482, 0}}</string>
+								<key>RubberWindowFrame</key>
+								<string>79 270 690 397 0 0 1024 746 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXNavigatorGroup</string>
+							<key>Proportion</key>
+							<string>0pt</string>
+						</dict>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CE0B20506471E060097A5F4</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Detail</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 5}, {482, 351}}</string>
+								<key>RubberWindowFrame</key>
+								<string>79 270 690 397 0 0 1024 746 </string>
+							</dict>
+							<key>Module</key>
+							<string>XCDetailModule</string>
+							<key>Proportion</key>
+							<string>351pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>482pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Project</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>XCModuleDock</string>
+				<string>PBXSmartGroupTreeModule</string>
+				<string>XCModuleDock</string>
+				<string>PBXNavigatorGroup</string>
+				<string>XCDetailModule</string>
+			</array>
+			<key>TableOfContents</key>
+			<array>
+				<string>A2DD457B0BA9585A00C5A800</string>
+				<string>1CE0B1FE06471DED0097A5F4</string>
+				<string>A2DD457C0BA9585A00C5A800</string>
+				<string>1CE0B20306471E060097A5F4</string>
+				<string>1CE0B20506471E060097A5F4</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.default</string>
+		</dict>
+		<dict>
+			<key>ControllerClassBaseName</key>
+			<string></string>
+			<key>IconName</key>
+			<string>WindowOfProject</string>
+			<key>Identifier</key>
+			<string>perspective.morph</string>
+			<key>IsVertical</key>
+			<integer>0</integer>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>BecomeActive</key>
+					<integer>1</integer>
+					<key>ContentConfiguration</key>
+					<dict>
+						<key>PBXBottomSmartGroupGIDs</key>
+						<array>
+							<string>1C37FBAC04509CD000000102</string>
+							<string>1C37FAAC04509CD000000102</string>
+							<string>1C08E77C0454961000C914BD</string>
+							<string>1C37FABC05509CD000000102</string>
+							<string>1C37FABC05539CD112110102</string>
+							<string>E2644B35053B69B200211256</string>
+							<string>1C37FABC04509CD000100104</string>
+							<string>1CC0EA4004350EF90044410B</string>
+							<string>1CC0EA4004350EF90041110B</string>
+						</array>
+						<key>PBXProjectModuleGUID</key>
+						<string>11E0B1FE06471DED0097A5F4</string>
+						<key>PBXProjectModuleLabel</key>
+						<string>Files</string>
+						<key>PBXProjectStructureProvided</key>
+						<string>yes</string>
+						<key>PBXSmartGroupTreeModuleColumnData</key>
+						<dict>
+							<key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+							<array>
+								<real>186</real>
+							</array>
+							<key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+							<array>
+								<string>MainColumn</string>
+							</array>
+						</dict>
+						<key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+						<dict>
+							<key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+							<array>
+								<string>29B97314FDCFA39411CA2CEA</string>
+								<string>1C37FABC05509CD000000102</string>
+							</array>
+							<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+							<array>
+								<array>
+									<integer>0</integer>
+								</array>
+							</array>
+							<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+							<string>{{0, 0}, {186, 337}}</string>
+						</dict>
+						<key>PBXTopSmartGroupGIDs</key>
+						<array/>
+						<key>XCIncludePerspectivesSwitch</key>
+						<integer>1</integer>
+						<key>XCSharingToken</key>
+						<string>com.apple.Xcode.GFSharingToken</string>
+					</dict>
+					<key>GeometryConfiguration</key>
+					<dict>
+						<key>Frame</key>
+						<string>{{0, 0}, {203, 355}}</string>
+						<key>GroupTreeTableConfiguration</key>
+						<array>
+							<string>MainColumn</string>
+							<real>186</real>
+						</array>
+						<key>RubberWindowFrame</key>
+						<string>373 269 690 397 0 0 1440 878 </string>
+					</dict>
+					<key>Module</key>
+					<string>PBXSmartGroupTreeModule</string>
+					<key>Proportion</key>
+					<string>100%</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Morph</string>
+			<key>PreferredWidth</key>
+			<integer>300</integer>
+			<key>ServiceClasses</key>
+			<array>
+				<string>XCModuleDock</string>
+				<string>PBXSmartGroupTreeModule</string>
+			</array>
+			<key>TableOfContents</key>
+			<array>
+				<string>11E0B1FE06471DED0097A5F4</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.default.short</string>
+		</dict>
+	</array>
+	<key>PerspectivesBarVisible</key>
+	<false/>
+	<key>ShelfIsVisible</key>
+	<false/>
+	<key>SourceDescription</key>
+	<string>file at '/System/Library/PrivateFrameworks/DevToolsInterface.framework/Versions/A/Resources/XCPerspectivesSpecificationMode1.xcperspec'</string>
+	<key>StatusbarIsVisible</key>
+	<true/>
+	<key>TimeStamp</key>
+	<real>0.0</real>
+	<key>ToolbarDisplayMode</key>
+	<integer>1</integer>
+	<key>ToolbarIsVisible</key>
+	<true/>
+	<key>ToolbarSizeMode</key>
+	<integer>1</integer>
+	<key>Type</key>
+	<string>Perspectives</string>
+	<key>UpdateMessage</key>
+	<string>The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature).  You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature.  Do you wish to update to the latest Workspace defaults for project '%@'?</string>
+	<key>WindowJustification</key>
+	<integer>5</integer>
+	<key>WindowOrderList</key>
+	<array>
+		<string>A2AE41B80B32CA0C00C66A5D</string>
+		<string>/Users/staff/src/tux4kids/tuxmath/trunk/macosx/TuxMath.xcodeproj</string>
+	</array>
+	<key>WindowString</key>
+	<string>79 270 690 397 0 0 1024 746 </string>
+	<key>WindowTools</key>
+	<array>
+		<dict>
+			<key>FirstTimeWindowDisplayed</key>
+			<false/>
+			<key>Identifier</key>
+			<string>windowTool.build</string>
+			<key>IsVertical</key>
+			<true/>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CD0528F0623707200166675</string>
+								<key>PBXProjectModuleLabel</key>
+								<string></string>
+								<key>StatusBarVisibility</key>
+								<true/>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {981, 408}}</string>
+								<key>RubberWindowFrame</key>
+								<string>0 56 981 690 0 0 1024 746 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXNavigatorGroup</string>
+							<key>Proportion</key>
+							<string>408pt</string>
+						</dict>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>XCMainBuildResultsModuleGUID</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Build</string>
+								<key>XCBuildResultsTrigger_Collapse</key>
+								<integer>1021</integer>
+								<key>XCBuildResultsTrigger_Open</key>
+								<integer>1011</integer>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 413}, {981, 236}}</string>
+								<key>RubberWindowFrame</key>
+								<string>0 56 981 690 0 0 1024 746 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXBuildResultsModule</string>
+							<key>Proportion</key>
+							<string>236pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>649pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Build Results</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXBuildResultsModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<true/>
+			<key>TableOfContents</key>
+			<array>
+				<string>A2AE41B80B32CA0C00C66A5D</string>
+				<string>A2DD457E0BA959D200C5A800</string>
+				<string>1CD0528F0623707200166675</string>
+				<string>XCMainBuildResultsModuleGUID</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.build</string>
+			<key>WindowString</key>
+			<string>0 56 981 690 0 0 1024 746 </string>
+			<key>WindowToolGUID</key>
+			<string>A2AE41B80B32CA0C00C66A5D</string>
+			<key>WindowToolIsVisible</key>
+			<false/>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.debugger</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>Debugger</key>
+								<dict>
+									<key>HorizontalSplitView</key>
+									<dict>
+										<key>_collapsingFrameDimension</key>
+										<real>0.0</real>
+										<key>_indexOfCollapsedView</key>
+										<integer>0</integer>
+										<key>_percentageOfCollapsedView</key>
+										<real>0.0</real>
+										<key>isCollapsed</key>
+										<string>yes</string>
+										<key>sizes</key>
+										<array>
+											<string>{{0, 0}, {317, 164}}</string>
+											<string>{{317, 0}, {377, 164}}</string>
+										</array>
+									</dict>
+									<key>VerticalSplitView</key>
+									<dict>
+										<key>_collapsingFrameDimension</key>
+										<real>0.0</real>
+										<key>_indexOfCollapsedView</key>
+										<integer>0</integer>
+										<key>_percentageOfCollapsedView</key>
+										<real>0.0</real>
+										<key>isCollapsed</key>
+										<string>yes</string>
+										<key>sizes</key>
+										<array>
+											<string>{{0, 0}, {694, 164}}</string>
+											<string>{{0, 164}, {694, 216}}</string>
+										</array>
+									</dict>
+								</dict>
+								<key>LauncherConfigVersion</key>
+								<string>8</string>
+								<key>PBXProjectModuleGUID</key>
+								<string>1C162984064C10D400B95A72</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Debug - GLUTExamples (Underwater)</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>DebugConsoleDrawerSize</key>
+								<string>{100, 120}</string>
+								<key>DebugConsoleVisible</key>
+								<string>None</string>
+								<key>DebugConsoleWindowFrame</key>
+								<string>{{200, 200}, {500, 300}}</string>
+								<key>DebugSTDIOWindowFrame</key>
+								<string>{{200, 200}, {500, 300}}</string>
+								<key>Frame</key>
+								<string>{{0, 0}, {694, 380}}</string>
+								<key>RubberWindowFrame</key>
+								<string>321 238 694 422 0 0 1440 878 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXDebugSessionModule</string>
+							<key>Proportion</key>
+							<string>100%</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>100%</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Debugger</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXDebugSessionModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1CD10A99069EF8BA00B06720</string>
+				<string>1C0AD2AB069F1E9B00FABCE6</string>
+				<string>1C162984064C10D400B95A72</string>
+				<string>1C0AD2AC069F1E9B00FABCE6</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.debug</string>
+			<key>WindowString</key>
+			<string>321 238 694 422 0 0 1440 878 </string>
+			<key>WindowToolGUID</key>
+			<string>1CD10A99069EF8BA00B06720</string>
+			<key>WindowToolIsVisible</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.find</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>Dock</key>
+							<array>
+								<dict>
+									<key>ContentConfiguration</key>
+									<dict>
+										<key>PBXProjectModuleGUID</key>
+										<string>1CDD528C0622207200134675</string>
+										<key>PBXProjectModuleLabel</key>
+										<string>&lt;No Editor&gt;</string>
+										<key>PBXSplitModuleInNavigatorKey</key>
+										<dict>
+											<key>Split0</key>
+											<dict>
+												<key>PBXProjectModuleGUID</key>
+												<string>1CD0528D0623707200166675</string>
+											</dict>
+											<key>SplitCount</key>
+											<string>1</string>
+										</dict>
+										<key>StatusBarVisibility</key>
+										<integer>1</integer>
+									</dict>
+									<key>GeometryConfiguration</key>
+									<dict>
+										<key>Frame</key>
+										<string>{{0, 0}, {781, 167}}</string>
+										<key>RubberWindowFrame</key>
+										<string>62 385 781 470 0 0 1440 878 </string>
+									</dict>
+									<key>Module</key>
+									<string>PBXNavigatorGroup</string>
+									<key>Proportion</key>
+									<string>781pt</string>
+								</dict>
+							</array>
+							<key>Proportion</key>
+							<string>50%</string>
+						</dict>
+						<dict>
+							<key>BecomeActive</key>
+							<integer>1</integer>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CD0528E0623707200166675</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Project Find</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{8, 0}, {773, 254}}</string>
+								<key>RubberWindowFrame</key>
+								<string>62 385 781 470 0 0 1440 878 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXProjectFindModule</string>
+							<key>Proportion</key>
+							<string>50%</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>428pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Project Find</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXProjectFindModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1C530D57069F1CE1000CFCEE</string>
+				<string>1C530D58069F1CE1000CFCEE</string>
+				<string>1C530D59069F1CE1000CFCEE</string>
+				<string>1CDD528C0622207200134675</string>
+				<string>1C530D5A069F1CE1000CFCEE</string>
+				<string>1CE0B1FE06471DED0097A5F4</string>
+				<string>1CD0528E0623707200166675</string>
+			</array>
+			<key>WindowString</key>
+			<string>62 385 781 470 0 0 1440 878 </string>
+			<key>WindowToolGUID</key>
+			<string>1C530D57069F1CE1000CFCEE</string>
+			<key>WindowToolIsVisible</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>MENUSEPARATOR</string>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.debuggerConsole</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>BecomeActive</key>
+							<integer>1</integer>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1C78EAAC065D492600B07095</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Debugger Console</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {440, 358}}</string>
+								<key>RubberWindowFrame</key>
+								<string>650 41 440 400 0 0 1280 1002 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXDebugCLIModule</string>
+							<key>Proportion</key>
+							<string>358pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>358pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Debugger Console</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXDebugCLIModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1C78EAAD065D492600B07095</string>
+				<string>1C78EAAE065D492600B07095</string>
+				<string>1C78EAAC065D492600B07095</string>
+			</array>
+			<key>WindowString</key>
+			<string>650 41 440 400 0 0 1280 1002 </string>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.run</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>LauncherConfigVersion</key>
+								<string>3</string>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CD0528B0623707200166675</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Run</string>
+								<key>Runner</key>
+								<dict>
+									<key>HorizontalSplitView</key>
+									<dict>
+										<key>_collapsingFrameDimension</key>
+										<real>0.0</real>
+										<key>_indexOfCollapsedView</key>
+										<integer>0</integer>
+										<key>_percentageOfCollapsedView</key>
+										<real>0.0</real>
+										<key>isCollapsed</key>
+										<string>yes</string>
+										<key>sizes</key>
+										<array>
+											<string>{{0, 0}, {493, 167}}</string>
+											<string>{{0, 176}, {493, 267}}</string>
+										</array>
+									</dict>
+									<key>VerticalSplitView</key>
+									<dict>
+										<key>_collapsingFrameDimension</key>
+										<real>0.0</real>
+										<key>_indexOfCollapsedView</key>
+										<integer>0</integer>
+										<key>_percentageOfCollapsedView</key>
+										<real>0.0</real>
+										<key>isCollapsed</key>
+										<string>yes</string>
+										<key>sizes</key>
+										<array>
+											<string>{{0, 0}, {405, 443}}</string>
+											<string>{{414, 0}, {514, 443}}</string>
+										</array>
+									</dict>
+								</dict>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {460, 159}}</string>
+								<key>RubberWindowFrame</key>
+								<string>316 696 459 200 0 0 1280 1002 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXRunSessionModule</string>
+							<key>Proportion</key>
+							<string>159pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>159pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Run Log</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXRunSessionModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1C0AD2B3069F1EA900FABCE6</string>
+				<string>1C0AD2B4069F1EA900FABCE6</string>
+				<string>1CD0528B0623707200166675</string>
+				<string>1C0AD2B5069F1EA900FABCE6</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.run</string>
+			<key>WindowString</key>
+			<string>316 696 459 200 0 0 1280 1002 </string>
+			<key>WindowToolGUID</key>
+			<string>1C0AD2B3069F1EA900FABCE6</string>
+			<key>WindowToolIsVisible</key>
+			<integer>0</integer>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.scm</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1C78EAB2065D492600B07095</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>&lt;No Editor&gt;</string>
+								<key>PBXSplitModuleInNavigatorKey</key>
+								<dict>
+									<key>Split0</key>
+									<dict>
+										<key>PBXProjectModuleGUID</key>
+										<string>1C78EAB3065D492600B07095</string>
+									</dict>
+									<key>SplitCount</key>
+									<string>1</string>
+								</dict>
+								<key>StatusBarVisibility</key>
+								<integer>1</integer>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {452, 0}}</string>
+								<key>RubberWindowFrame</key>
+								<string>743 379 452 308 0 0 1280 1002 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXNavigatorGroup</string>
+							<key>Proportion</key>
+							<string>0pt</string>
+						</dict>
+						<dict>
+							<key>BecomeActive</key>
+							<integer>1</integer>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CD052920623707200166675</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>SCM</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>ConsoleFrame</key>
+								<string>{{0, 259}, {452, 0}}</string>
+								<key>Frame</key>
+								<string>{{0, 7}, {452, 259}}</string>
+								<key>RubberWindowFrame</key>
+								<string>743 379 452 308 0 0 1280 1002 </string>
+								<key>TableConfiguration</key>
+								<array>
+									<string>Status</string>
+									<real>30</real>
+									<string>FileName</string>
+									<real>199</real>
+									<string>Path</string>
+									<real>197.09500122070312</real>
+								</array>
+								<key>TableFrame</key>
+								<string>{{0, 0}, {452, 250}}</string>
+							</dict>
+							<key>Module</key>
+							<string>PBXCVSModule</string>
+							<key>Proportion</key>
+							<string>262pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>266pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>SCM</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXCVSModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1C78EAB4065D492600B07095</string>
+				<string>1C78EAB5065D492600B07095</string>
+				<string>1C78EAB2065D492600B07095</string>
+				<string>1CD052920623707200166675</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.scm</string>
+			<key>WindowString</key>
+			<string>743 379 452 308 0 0 1280 1002 </string>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.breakpoints</string>
+			<key>IsVertical</key>
+			<integer>0</integer>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>BecomeActive</key>
+							<integer>1</integer>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXBottomSmartGroupGIDs</key>
+								<array>
+									<string>1C77FABC04509CD000000102</string>
+								</array>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CE0B1FE06471DED0097A5F4</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Files</string>
+								<key>PBXProjectStructureProvided</key>
+								<string>no</string>
+								<key>PBXSmartGroupTreeModuleColumnData</key>
+								<dict>
+									<key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+									<array>
+										<real>168</real>
+									</array>
+									<key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+									<array>
+										<string>MainColumn</string>
+									</array>
+								</dict>
+								<key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+								<dict>
+									<key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+									<array>
+										<string>1C77FABC04509CD000000102</string>
+									</array>
+									<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+									<array>
+										<array>
+											<integer>0</integer>
+										</array>
+									</array>
+									<key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+									<string>{{0, 0}, {168, 350}}</string>
+								</dict>
+								<key>PBXTopSmartGroupGIDs</key>
+								<array/>
+								<key>XCIncludePerspectivesSwitch</key>
+								<integer>0</integer>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{0, 0}, {185, 368}}</string>
+								<key>GroupTreeTableConfiguration</key>
+								<array>
+									<string>MainColumn</string>
+									<real>168</real>
+								</array>
+								<key>RubberWindowFrame</key>
+								<string>315 424 744 409 0 0 1440 878 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXSmartGroupTreeModule</string>
+							<key>Proportion</key>
+							<string>185pt</string>
+						</dict>
+						<dict>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CA1AED706398EBD00589147</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Detail</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>Frame</key>
+								<string>{{190, 0}, {554, 368}}</string>
+								<key>RubberWindowFrame</key>
+								<string>315 424 744 409 0 0 1440 878 </string>
+							</dict>
+							<key>Module</key>
+							<string>XCDetailModule</string>
+							<key>Proportion</key>
+							<string>554pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>368pt</string>
+				</dict>
+			</array>
+			<key>MajorVersion</key>
+			<integer>2</integer>
+			<key>MinorVersion</key>
+			<integer>0</integer>
+			<key>Name</key>
+			<string>Breakpoints</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXSmartGroupTreeModule</string>
+				<string>XCDetailModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1CDDB66807F98D9800BB5817</string>
+				<string>1CDDB66907F98D9800BB5817</string>
+				<string>1CE0B1FE06471DED0097A5F4</string>
+				<string>1CA1AED706398EBD00589147</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.breakpoints</string>
+			<key>WindowString</key>
+			<string>315 424 744 409 0 0 1440 878 </string>
+			<key>WindowToolGUID</key>
+			<string>1CDDB66807F98D9800BB5817</string>
+			<key>WindowToolIsVisible</key>
+			<integer>1</integer>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.debugAnimator</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>Module</key>
+							<string>PBXNavigatorGroup</string>
+							<key>Proportion</key>
+							<string>100%</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>100%</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Debug Visualizer</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXNavigatorGroup</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>1</integer>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.debugAnimator</string>
+			<key>WindowString</key>
+			<string>100 100 700 500 0 0 1280 1002 </string>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.bookmarks</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>Module</key>
+							<string>PBXBookmarksModule</string>
+							<key>Proportion</key>
+							<string>100%</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>100%</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Bookmarks</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXBookmarksModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>0</integer>
+			<key>WindowString</key>
+			<string>538 42 401 187 0 0 1280 1002 </string>
+		</dict>
+		<dict>
+			<key>Identifier</key>
+			<string>windowTool.classBrowser</string>
+			<key>Layout</key>
+			<array>
+				<dict>
+					<key>Dock</key>
+					<array>
+						<dict>
+							<key>BecomeActive</key>
+							<integer>1</integer>
+							<key>ContentConfiguration</key>
+							<dict>
+								<key>OptionsSetName</key>
+								<string>Hierarchy, all classes</string>
+								<key>PBXProjectModuleGUID</key>
+								<string>1CA6456E063B45B4001379D8</string>
+								<key>PBXProjectModuleLabel</key>
+								<string>Class Browser - NSObject</string>
+							</dict>
+							<key>GeometryConfiguration</key>
+							<dict>
+								<key>ClassesFrame</key>
+								<string>{{0, 0}, {374, 96}}</string>
+								<key>ClassesTreeTableConfiguration</key>
+								<array>
+									<string>PBXClassNameColumnIdentifier</string>
+									<real>208</real>
+									<string>PBXClassBookColumnIdentifier</string>
+									<real>22</real>
+								</array>
+								<key>Frame</key>
+								<string>{{0, 0}, {630, 331}}</string>
+								<key>MembersFrame</key>
+								<string>{{0, 105}, {374, 395}}</string>
+								<key>MembersTreeTableConfiguration</key>
+								<array>
+									<string>PBXMemberTypeIconColumnIdentifier</string>
+									<real>22</real>
+									<string>PBXMemberNameColumnIdentifier</string>
+									<real>216</real>
+									<string>PBXMemberTypeColumnIdentifier</string>
+									<real>97</real>
+									<string>PBXMemberBookColumnIdentifier</string>
+									<real>22</real>
+								</array>
+								<key>PBXModuleWindowStatusBarHidden2</key>
+								<integer>1</integer>
+								<key>RubberWindowFrame</key>
+								<string>385 179 630 352 0 0 1440 878 </string>
+							</dict>
+							<key>Module</key>
+							<string>PBXClassBrowserModule</string>
+							<key>Proportion</key>
+							<string>332pt</string>
+						</dict>
+					</array>
+					<key>Proportion</key>
+					<string>332pt</string>
+				</dict>
+			</array>
+			<key>Name</key>
+			<string>Class Browser</string>
+			<key>ServiceClasses</key>
+			<array>
+				<string>PBXClassBrowserModule</string>
+			</array>
+			<key>StatusbarIsVisible</key>
+			<integer>0</integer>
+			<key>TableOfContents</key>
+			<array>
+				<string>1C0AD2AF069F1E9B00FABCE6</string>
+				<string>1C0AD2B0069F1E9B00FABCE6</string>
+				<string>1CA6456E063B45B4001379D8</string>
+			</array>
+			<key>ToolbarConfiguration</key>
+			<string>xcode.toolbar.config.classbrowser</string>
+			<key>WindowString</key>
+			<string>385 179 630 352 0 0 1440 878 </string>
+			<key>WindowToolGUID</key>
+			<string>1C0AD2AF069F1E9B00FABCE6</string>
+			<key>WindowToolIsVisible</key>
+			<integer>0</integer>
+		</dict>
+	</array>
+</dict>
+</plist>

Added: tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.pbxuser
===================================================================
--- tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.pbxuser	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/TuxMath.xcodeproj/staff.pbxuser	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,833 @@
+// !$*UTF8*$!
+{
+	002F3A2B09D0888800EBEB88 /* SDLMain.h */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {711, 429}}";
+			sepNavSelRange = "{0, 0}";
+			sepNavVisRect = "{{0, 0}, {711, 429}}";
+			sepNavWindowFrame = "{{84, 120}, {750, 558}}";
+		};
+	};
+	002F3A2C09D0888800EBEB88 /* SDLMain.m */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {818, 5376}}";
+			sepNavSelRange = "{345, 0}";
+			sepNavVisRect = "{{0, 0}, {711, 429}}";
+			sepNavWindowFrame = "{{160, 44}, {750, 558}}";
+		};
+	};
+	089C165DFE840E0CC02AAC07 /* English */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {711, 429}}";
+			sepNavSelRange = "{273, 0}";
+			sepNavVisRect = "{{0, 0}, {711, 429}}";
+			sepNavWindowFrame = "{{176, 36}, {750, 558}}";
+		};
+	};
+	29B97313FDCFA39411CA2CEA /* Project object */ = {
+		activeBuildConfigurationName = Release;
+		activeExecutable = A2AE40D10B32C71000C66A5D /* TuxMath */;
+		activeTarget = 8D1107260486CEB800E47090 /* TuxMath */;
+		addToTargets = (
+			8D1107260486CEB800E47090 /* TuxMath */,
+		);
+		codeSenseManager = A2AE40DB0B32C73000C66A5D /* Code sense */;
+		executables = (
+			A2AE40D10B32C71000C66A5D /* TuxMath */,
+		);
+		perUserDictionary = {
+			PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
+				PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+				PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+				PBXFileTableDataSourceColumnWidthsKey = (
+					20,
+					243,
+					20,
+					48,
+					43,
+					43,
+					20,
+				);
+				PBXFileTableDataSourceColumnsKey = (
+					PBXFileDataSource_FiletypeID,
+					PBXFileDataSource_Filename_ColumnID,
+					PBXFileDataSource_Built_ColumnID,
+					PBXFileDataSource_ObjectSize_ColumnID,
+					PBXFileDataSource_Errors_ColumnID,
+					PBXFileDataSource_Warnings_ColumnID,
+					PBXFileDataSource_Target_ColumnID,
+				);
+			};
+			PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
+				PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+				PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+				PBXFileTableDataSourceColumnWidthsKey = (
+					20,
+					200,
+					63,
+					20,
+					48,
+					43,
+					43,
+				);
+				PBXFileTableDataSourceColumnsKey = (
+					PBXFileDataSource_FiletypeID,
+					PBXFileDataSource_Filename_ColumnID,
+					PBXTargetDataSource_PrimaryAttribute,
+					PBXFileDataSource_Built_ColumnID,
+					PBXFileDataSource_ObjectSize_ColumnID,
+					PBXFileDataSource_Errors_ColumnID,
+					PBXFileDataSource_Warnings_ColumnID,
+				);
+			};
+			PBXPerProjectTemplateStateSaveDate = 195647557;
+			PBXWorkspaceStateSaveDate = 195647557;
+		};
+		perUserProjectItems = {
+			A210C7B80BA6DEF0004EB748 = A210C7B80BA6DEF0004EB748 /* PBXTextBookmark */;
+			A210C7B90BA6DEF0004EB748 = A210C7B90BA6DEF0004EB748 /* PBXTextBookmark */;
+			A210C7BA0BA6DEF0004EB748 = A210C7BA0BA6DEF0004EB748 /* PBXTextBookmark */;
+			A210C7BB0BA6DEF0004EB748 = A210C7BB0BA6DEF0004EB748 /* PBXTextBookmark */;
+			A210C7C50BA6DFAC004EB748 = A210C7C50BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7C60BA6DFAC004EB748 = A210C7C60BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7C70BA6DFAC004EB748 = A210C7C70BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7C80BA6DFAC004EB748 = A210C7C80BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7C90BA6DFAC004EB748 = A210C7C90BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7CA0BA6DFAC004EB748 = A210C7CA0BA6DFAC004EB748 /* PBXTextBookmark */;
+			A210C7CC0BA6E041004EB748 = A210C7CC0BA6E041004EB748 /* PBXTextBookmark */;
+			A210C7CD0BA6E041004EB748 = A210C7CD0BA6E041004EB748 /* PBXTextBookmark */;
+			A210C7CE0BA6E041004EB748 = A210C7CE0BA6E041004EB748 /* PBXTextBookmark */;
+			A210C7CF0BA6E041004EB748 = A210C7CF0BA6E041004EB748 /* PBXTextBookmark */;
+			A210C7D90BA6E3E3004EB748 = A210C7D90BA6E3E3004EB748 /* PBXTextBookmark */;
+			A210C7E40BA81586004EB748 = A210C7E40BA81586004EB748 /* PBXTextBookmark */;
+			A210C7E50BA81586004EB748 = A210C7E50BA81586004EB748 /* PBXTextBookmark */;
+			A210C7E60BA81586004EB748 = A210C7E60BA81586004EB748 /* PBXTextBookmark */;
+			A210C7E70BA81586004EB748 = A210C7E70BA81586004EB748 /* PBXTextBookmark */;
+			A210C7EB0BA81611004EB748 = A210C7EB0BA81611004EB748 /* PBXTextBookmark */;
+			A210C7F20BA81706004EB748 = A210C7F20BA81706004EB748 /* PBXTextBookmark */;
+			A210C7F50BA8172E004EB748 = A210C7F50BA8172E004EB748 /* PBXTextBookmark */;
+			A210C7FA0BA81791004EB748 = A210C7FA0BA81791004EB748 /* PBXTextBookmark */;
+			A210C7FD0BA817CB004EB748 = A210C7FD0BA817CB004EB748 /* PBXTextBookmark */;
+			A210C8000BA81800004EB748 = A210C8000BA81800004EB748 /* PBXTextBookmark */;
+			A210C8070BA8190C004EB748 = A210C8070BA8190C004EB748 /* PBXTextBookmark */;
+			A210C8080BA8190C004EB748 = A210C8080BA8190C004EB748 /* PBXTextBookmark */;
+			A210C8090BA8190C004EB748 = A210C8090BA8190C004EB748 /* PBXTextBookmark */;
+			A210C80A0BA8190C004EB748 = A210C80A0BA8190C004EB748 /* PBXTextBookmark */;
+			A210C80F0BA81A7D004EB748 = A210C80F0BA81A7D004EB748 /* PBXTextBookmark */;
+			A210C8100BA81A7D004EB748 = A210C8100BA81A7D004EB748 /* PBXTextBookmark */;
+			A210C8110BA81A7D004EB748 = A210C8110BA81A7D004EB748 /* PBXTextBookmark */;
+			A210C8120BA81A7D004EB748 = A210C8120BA81A7D004EB748 /* PBXTextBookmark */;
+			A210C8130BA81B4E004EB748 = A210C8130BA81B4E004EB748 /* PBXTextBookmark */;
+			A210C8410BA81BF6004EB748 = A210C8410BA81BF6004EB748 /* PBXTextBookmark */;
+			A210C8430BA81C17004EB748 = A210C8430BA81C17004EB748 /* PBXTextBookmark */;
+			A210C8480BA81C9E004EB748 = A210C8480BA81C9E004EB748 /* PBXTextBookmark */;
+			A210C84C0BA81CBC004EB748 = A210C84C0BA81CBC004EB748 /* PBXTextBookmark */;
+			A210C84D0BA81CBC004EB748 = A210C84D0BA81CBC004EB748 /* PBXTextBookmark */;
+			A210C8500BA83057004EB748 = A210C8500BA83057004EB748 /* PBXTextBookmark */;
+			A210C8540BA830E0004EB748 = A210C8540BA830E0004EB748 /* PBXTextBookmark */;
+			A210C8550BA830E0004EB748 = A210C8550BA830E0004EB748 /* PBXTextBookmark */;
+			A210C8560BA830E0004EB748 = A210C8560BA830E0004EB748 /* PBXTextBookmark */;
+			A210C8570BA830E0004EB748 = A210C8570BA830E0004EB748 /* PBXTextBookmark */;
+			A210C8580BA830E0004EB748 = A210C8580BA830E0004EB748 /* PBXTextBookmark */;
+			A210C8590BA830E0004EB748 = A210C8590BA830E0004EB748 /* PBXTextBookmark */;
+			A210C85C0BA830E4004EB748 = A210C85C0BA830E4004EB748 /* PBXTextBookmark */;
+			A210C85D0BA830E4004EB748 = A210C85D0BA830E4004EB748 /* PBXTextBookmark */;
+			A210C8600BA83220004EB748 = A210C8600BA83220004EB748 /* PBXTextBookmark */;
+			A210C8660BA83270004EB748 = A210C8660BA83270004EB748 /* PBXTextBookmark */;
+			A210C8670BA832C7004EB748 = A210C8670BA832C7004EB748 /* PBXTextBookmark */;
+			A2AE41B60B32CA0C00C66A5D = A2AE41B60B32CA0C00C66A5D /* PBXTextBookmark */;
+			A2AE41B70B32CA0C00C66A5D = A2AE41B70B32CA0C00C66A5D /* PBXTextBookmark */;
+			A2AE451B0B36DDB200C66A5D = A2AE451B0B36DDB200C66A5D /* PBXTextBookmark */;
+			A2AE451C0B36DDB300C66A5D = A2AE451C0B36DDB300C66A5D /* PBXTextBookmark */;
+			A2AE451D0B36DDB300C66A5D = A2AE451D0B36DDB300C66A5D /* PBXTextBookmark */;
+			A2AE451E0B36DDB300C66A5D = A2AE451E0B36DDB300C66A5D /* PBXTextBookmark */;
+			A2AE451F0B36DDB300C66A5D = A2AE451F0B36DDB300C66A5D /* PBXTextBookmark */;
+			A2AE45200B36DDB300C66A5D = A2AE45200B36DDB300C66A5D /* PBXTextBookmark */;
+		};
+		sourceControlManager = A2AE40DA0B32C73000C66A5D /* Source Control */;
+		userBuildSettings = {
+		};
+	};
+	32CA4F630368D1EE00C91783 /* TuxMath_Prefix.pch */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {711, 429}}";
+			sepNavSelRange = "{0, 0}";
+			sepNavVisRect = "{{0, 0}, {711, 429}}";
+			sepNavWindowFrame = "{{84, 120}, {750, 558}}";
+		};
+	};
+	8D1107260486CEB800E47090 /* TuxMath */ = {
+		activeExec = 0;
+		executables = (
+			A2AE40D10B32C71000C66A5D /* TuxMath */,
+		);
+	};
+	8D1107310486CEB800E47090 /* Info.plist */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {711, 429}}";
+			sepNavSelRange = "{715, 0}";
+			sepNavVisRect = "{{0, 0}, {711, 429}}";
+			sepNavWindowFrame = "{{61, 141}, {750, 558}}";
+		};
+	};
+	A210C4980B927F0F004EB748 /* theme.c */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {940, 5348}}";
+			sepNavSelRange = "{1212, 0}";
+			sepNavVisRect = "{{0, 183}, {940, 376}}";
+		};
+	};
+	A210C4990B927F0F004EB748 /* titlescreen.c */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {940, 30380}}";
+			sepNavSelRange = "{3235, 100}";
+			sepNavVisRect = "{{0, 883}, {940, 376}}";
+		};
+	};
+	A210C49A0B927F0F004EB748 /* titlescreen.h */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {692, 4102}}";
+			sepNavSelRange = "{1847, 0}";
+			sepNavVisRect = "{{0, 768}, {459, 186}}";
+			sepNavWindowFrame = "{{61, 141}, {750, 558}}";
+		};
+	};
+	A210C7B80BA6DEF0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "#include <libintl.h>";
+		rLen = 21;
+		rLoc = 465;
+		rType = 0;
+		vrLen = 254;
+		vrLoc = 403;
+	};
+	A210C7B90BA6DEF0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: ../config.h: No such file or directory";
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		rLen = 1;
+		rLoc = 29;
+		rType = 1;
+	};
+	A210C7BA0BA6DEF0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "#include <libintl.h>";
+		rLen = 21;
+		rLoc = 465;
+		rType = 0;
+		vrLen = 254;
+		vrLoc = 403;
+	};
+	A210C7BB0BA6DEF0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		name = "fileops.c: 28";
+		rLen = 0;
+		rLoc = 1068;
+		rType = 0;
+		vrLen = 267;
+		vrLoc = 918;
+	};
+	A210C7C50BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		name = "fileops.c: 28";
+		rLen = 0;
+		rLoc = 1068;
+		rType = 0;
+		vrLen = 267;
+		vrLoc = 918;
+	};
+	A210C7C60BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "#include <libintl.h>";
+		rLen = 21;
+		rLoc = 465;
+		rType = 0;
+		vrLen = 254;
+		vrLoc = 403;
+	};
+	A210C7C70BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: ../config.h: No such file or directory";
+		fRef = A210C49A0B927F0F004EB748 /* titlescreen.h */;
+		rLen = 1;
+		rLoc = 62;
+		rType = 1;
+	};
+	A210C7C80BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		name = "fileops.c: 28";
+		rLen = 0;
+		rLoc = 1068;
+		rType = 0;
+		vrLen = 267;
+		vrLoc = 918;
+	};
+	A210C7C90BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "#include <libintl.h>";
+		rLen = 21;
+		rLoc = 465;
+		rType = 0;
+		vrLen = 254;
+		vrLoc = 403;
+	};
+	A210C7CA0BA6DFAC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C49A0B927F0F004EB748 /* titlescreen.h */;
+		name = "titlescreen.h: 65";
+		rLen = 0;
+		rLoc = 1863;
+		rType = 0;
+		vrLen = 313;
+		vrLoc = 1712;
+	};
+	A210C7CC0BA6E041004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C49A0B927F0F004EB748 /* titlescreen.h */;
+		name = "titlescreen.h: 65";
+		rLen = 0;
+		rLoc = 1863;
+		rType = 0;
+		vrLen = 313;
+		vrLoc = 1712;
+	};
+	A210C7CD0BA6E041004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: 'LOCALEDIR' undeclared (first use in this function)";
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		rLen = 1;
+		rLoc = 35;
+		rType = 1;
+	};
+	A210C7CE0BA6E041004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C49A0B927F0F004EB748 /* titlescreen.h */;
+		name = "titlescreen.h: 65";
+		rLen = 0;
+		rLoc = 1863;
+		rType = 0;
+		vrLen = 313;
+		vrLoc = 1712;
+	};
+	A210C7CF0BA6E041004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "bindtextdomain( \"tuxmath\", LOCALEDIR );";
+		rLen = 40;
+		rLoc = 608;
+		rType = 0;
+		vrLen = 373;
+		vrLoc = 486;
+	};
+	A210C7D90BA6E3E3004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "bindtextdomain( \"tuxmath\", LOCALEDIR );";
+		rLen = 40;
+		rLoc = 608;
+		rType = 0;
+		vrLen = 373;
+		vrLoc = 486;
+	};
+	A210C7E40BA81586004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "bindtextdomain( \"tuxmath\", LOCALEDIR );";
+		rLen = 40;
+		rLoc = 608;
+		rType = 0;
+		vrLen = 373;
+		vrLoc = 486;
+	};
+	A210C7E50BA81586004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "Compiling /Users/staff/src/tux4kids/tuxmath/trunk/macosx/SDLMain.m";
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		rLen = 0;
+		rLoc = 20;
+		rType = 1;
+	};
+	A210C7E60BA81586004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "bindtextdomain( \"tuxmath\", LOCALEDIR );";
+		rLen = 40;
+		rLoc = 608;
+		rType = 0;
+		vrLen = 373;
+		vrLoc = 486;
+	};
+	A210C7E70BA81586004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: SDL_USE_NIB_FILE";
+		rLen = 0;
+		rLoc = 669;
+		rType = 0;
+		vrLen = 866;
+		vrLoc = 0;
+	};
+	A210C7EB0BA81611004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 2";
+		rLen = 0;
+		rLoc = 76;
+		rType = 0;
+		vrLen = 865;
+		vrLoc = 0;
+	};
+	A210C7F20BA81706004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: SDL_USE_CPS";
+		rLen = 0;
+		rLoc = 774;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C7F50BA8172E004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: SDL_USE_CPS";
+		rLen = 0;
+		rLoc = 774;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C7FA0BA81791004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C7FD0BA817CB004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C8000BA81800004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C8070BA8190C004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C8080BA8190C004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: parse error before 'VERSION'";
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		rLen = 1;
+		rLoc = 238;
+		rType = 1;
+	};
+	A210C8090BA8190C004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 864;
+		vrLoc = 0;
+	};
+	A210C80A0BA8190C004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		name = "\"\\n\\\"Tux, of Math Command\\\" version \" VERSION \", Copyright (C) 2001 Bill Kendrick\\n\"";
+		rLen = 86;
+		rLoc = 7477;
+		rType = 0;
+		vrLen = 901;
+		vrLoc = 7188;
+	};
+	A210C80F0BA81A7D004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		name = "\"\\n\\\"Tux, of Math Command\\\" version \" VERSION \", Copyright (C) 2001 Bill Kendrick\\n\"";
+		rLen = 86;
+		rLoc = 7477;
+		rType = 0;
+		vrLen = 901;
+		vrLoc = 7188;
+	};
+	A210C8100BA81A7D004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: parse error before 'PACKAGE'";
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		rLen = 1;
+		rLoc = 33;
+		rType = 1;
+	};
+	A210C8110BA81A7D004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		name = "\"\\n\\\"Tux, of Math Command\\\" version \" VERSION \", Copyright (C) 2001 Bill Kendrick\\n\"";
+		rLen = 86;
+		rLoc = 7477;
+		rType = 0;
+		vrLen = 901;
+		vrLoc = 7188;
+	};
+	A210C8120BA81A7D004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 45";
+		rLen = 0;
+		rLoc = 1715;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 1279;
+	};
+	A210C8130BA81B4E004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 45";
+		rLen = 0;
+		rLoc = 1715;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 1279;
+	};
+	A210C8410BA81BF6004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 45";
+		rLen = 0;
+		rLoc = 1715;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 1279;
+	};
+	A210C8430BA81C17004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 45";
+		rLen = 0;
+		rLoc = 1715;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 1279;
+	};
+	A210C8480BA81C9E004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 45";
+		rLen = 0;
+		rLoc = 1715;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 1279;
+	};
+	A210C84C0BA81CBC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 912;
+		vrLoc = 0;
+	};
+	A210C84D0BA81CBC004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 912;
+		vrLoc = 0;
+	};
+	A210C8500BA83057004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: 'LC_ALL' undeclared (first use in this function)";
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		rLen = 1;
+		rLoc = 34;
+		rType = 1;
+	};
+	A210C8540BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 22";
+		rLen = 0;
+		rLoc = 1212;
+		rType = 0;
+		vrLen = 1048;
+		vrLoc = 595;
+	};
+	A210C8550BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "setlocale( LC_ALL, \"\" );";
+		rLen = 25;
+		rLoc = 583;
+		rType = 0;
+		vrLen = 548;
+		vrLoc = 385;
+	};
+	A210C8560BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: initializer element is not constant";
+		fRef = A210C4990B927F0F004EB748 /* titlescreen.c */;
+		rLen = 1;
+		rLoc = 76;
+		rType = 1;
+	};
+	A210C8570BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4980B927F0F004EB748 /* theme.c */;
+		name = "theme.c: 22";
+		rLen = 0;
+		rLoc = 1212;
+		rType = 0;
+		vrLen = 1048;
+		vrLoc = 595;
+	};
+	A210C8580BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "setlocale( LC_ALL, \"\" );";
+		rLen = 25;
+		rLoc = 583;
+		rType = 0;
+		vrLen = 548;
+		vrLoc = 385;
+	};
+	A210C8590BA830E0004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4990B927F0F004EB748 /* titlescreen.c */;
+		name = "{\"\", N_(\"Math Command Training Academy\"), N_(\"Space Cadet\"), N_(\"Settings\"),     N_(\"Speed\")    },";
+		rLen = 100;
+		rLoc = 3235;
+		rType = 0;
+		vrLen = 1936;
+		vrLoc = 2285;
+	};
+	A210C85C0BA830E4004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41960B32C88100C66A5D /* tuxmath.c */;
+		name = "tuxmath.c: 39";
+		rLen = 0;
+		rLoc = 724;
+		rType = 0;
+		vrLen = 583;
+		vrLoc = 364;
+	};
+	A210C85D0BA830E4004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = 002F3A2C09D0888800EBEB88 /* SDLMain.m */;
+		name = "SDLMain.m: 12";
+		rLen = 0;
+		rLoc = 345;
+		rType = 0;
+		vrLen = 912;
+		vrLoc = 0;
+	};
+	A210C8600BA83220004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4990B927F0F004EB748 /* titlescreen.c */;
+		name = "{\"\", N_(\"Math Command Training Academy\"), N_(\"Space Cadet\"), N_(\"Settings\"),     N_(\"Speed\")    },";
+		rLen = 100;
+		rLoc = 3235;
+		rType = 0;
+		vrLen = 1936;
+		vrLoc = 2285;
+	};
+	A210C8660BA83270004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4990B927F0F004EB748 /* titlescreen.c */;
+		name = "{\"\", N_(\"Math Command Training Academy\"), N_(\"Space Cadet\"), N_(\"Settings\"),     N_(\"Speed\")    },";
+		rLen = 100;
+		rLoc = 3235;
+		rType = 0;
+		vrLen = 1936;
+		vrLoc = 2285;
+	};
+	A210C8670BA832C7004EB748 /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A210C4990B927F0F004EB748 /* titlescreen.c */;
+		name = "{\"\", N_(\"Math Command Training Academy\"), N_(\"Space Cadet\"), N_(\"Settings\"),     N_(\"Speed\")    },";
+		rLen = 100;
+		rLoc = 3235;
+		rType = 0;
+		vrLen = 1936;
+		vrLoc = 2285;
+	};
+	A2AE40D10B32C71000C66A5D /* TuxMath */ = {
+		isa = PBXExecutable;
+		activeArgIndex = 2147483647;
+		activeArgIndices = (
+		);
+		argumentStrings = (
+		);
+		autoAttachOnCrash = 1;
+		configStateDict = {
+		};
+		customDataFormattersEnabled = 1;
+		debuggerPlugin = GDBDebugging;
+		disassemblyDisplayState = 0;
+		dylibVariantSuffix = "";
+		enableDebugStr = 1;
+		environmentEntries = (
+		);
+		executableSystemSymbolLevel = 0;
+		executableUserSymbolLevel = 0;
+		libgmallocEnabled = 0;
+		name = TuxMath;
+		savedGlobals = {
+		};
+		sourceDirectories = (
+		);
+	};
+	A2AE40DA0B32C73000C66A5D /* Source Control */ = {
+		isa = PBXSourceControlManager;
+		fallbackIsa = XCSourceControlManager;
+		isSCMEnabled = 0;
+		scmConfiguration = {
+		};
+		scmType = "";
+	};
+	A2AE40DB0B32C73000C66A5D /* Code sense */ = {
+		isa = PBXCodeSenseManager;
+		indexTemplatePath = "";
+	};
+	A2AE41820B32C88100C66A5D /* fileops.c */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {764, 34888}}";
+			sepNavSelRange = "{1068, 0}";
+			sepNavVisRect = "{{0, 306}, {459, 186}}";
+			sepNavWindowFrame = "{{38, 162}, {750, 558}}";
+		};
+	};
+	A2AE41910B32C88100C66A5D /* setup.c */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {940, 9814}}";
+			sepNavSelRange = "{7477, 86}";
+			sepNavVisRect = "{{0, 3151}, {940, 376}}";
+		};
+	};
+	A2AE41960B32C88100C66A5D /* tuxmath.c */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {711, 728}}";
+			sepNavSelRange = "{724, 0}";
+			sepNavVisRect = "{{0, 270}, {711, 429}}";
+			sepNavWindowFrame = "{{107, 99}, {750, 558}}";
+		};
+	};
+	A2AE41970B32C88100C66A5D /* tuxmath.h */ = {
+		uiCtxt = {
+			sepNavIntBoundsRect = "{{0, 0}, {752, 2226}}";
+			sepNavSelRange = "{465, 21}";
+			sepNavVisRect = "{{0, 264}, {459, 186}}";
+		};
+	};
+	A2AE41B60B32CA0C00C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "warning: data definition has no type or storage class";
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		rLen = 1;
+		rLoc = 107;
+		rType = 1;
+	};
+	A2AE41B70B32CA0C00C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "extern Mix_Chunk* sounds[];    /* declared in setup.c; also used in fileops.c, playsound.c */";
+		rLen = 94;
+		rLoc = 2617;
+		rType = 0;
+		vrLen = 605;
+		vrLoc = 2352;
+	};
+	A2AE451B0B36DDB200C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "extern Mix_Chunk* sounds[];    /* declared in setup.c; also used in fileops.c, playsound.c */";
+		rLen = 94;
+		rLoc = 2617;
+		rType = 0;
+		vrLen = 605;
+		vrLoc = 2352;
+	};
+	A2AE451C0B36DDB300C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		name = "fp = fopen(DATA_PREFIX \"/missions/options\", \"r\");";
+		rLen = 52;
+		rLoc = 4630;
+		rType = 0;
+		vrLen = 313;
+		vrLoc = 4456;
+	};
+	A2AE451D0B36DDB300C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		comments = "error: parse error before 'VERSION'";
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		rLen = 1;
+		rLoc = 208;
+		rType = 1;
+	};
+	A2AE451E0B36DDB300C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41970B32C88100C66A5D /* tuxmath.h */;
+		name = "extern Mix_Chunk* sounds[];    /* declared in setup.c; also used in fileops.c, playsound.c */";
+		rLen = 94;
+		rLoc = 2617;
+		rType = 0;
+		vrLen = 605;
+		vrLoc = 2352;
+	};
+	A2AE451F0B36DDB300C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41820B32C88100C66A5D /* fileops.c */;
+		name = "fp = fopen(DATA_PREFIX \"/missions/options\", \"r\");";
+		rLen = 52;
+		rLoc = 4630;
+		rType = 0;
+		vrLen = 313;
+		vrLoc = 4456;
+	};
+	A2AE45200B36DDB300C66A5D /* PBXTextBookmark */ = {
+		isa = PBXTextBookmark;
+		fRef = A2AE41910B32C88100C66A5D /* setup.c */;
+		name = "\"\\n\\\"Tux, of Math Command\\\" version \" VERSION \", Copyright (C) 2001 Bill Kendrick\\n\"";
+		rLen = 86;
+		rLoc = 6637;
+		rType = 0;
+		vrLen = 661;
+		vrLoc = 6484;
+	};
+}

Added: tuxmath/trunk/macosx/TuxMath_Prefix.pch
===================================================================
--- tuxmath/trunk/macosx/TuxMath_Prefix.pch	2007-03-14 20:10:27 UTC (rev 135)
+++ tuxmath/trunk/macosx/TuxMath_Prefix.pch	2007-03-15 11:58:45 UTC (rev 136)
@@ -0,0 +1,9 @@
+//
+// Prefix header for all source files of the 'TuxMath' target in the 'TuxMath' project
+//
+
+#include "SDL.h"
+
+#ifdef __OBJC__
+    #import <Cocoa/Cocoa.h>
+#endif




More information about the Tux4kids-commits mailing list