Added Xcode project files for compiling Tux Paint on Mac OS X

This commit is contained in:
Martin Fuhrer 2004-11-22 22:16:18 +00:00
parent 618400bba9
commit 87cc774f6b
14 changed files with 3339 additions and 0 deletions

Binary file not shown.

12
macosx/English.lproj/SDLMain.nib/classes.nib generated Executable file
View file

@ -0,0 +1,12 @@
{
IBClasses = (
{CLASS = FirstResponder; LANGUAGE = ObjC; SUPERCLASS = NSObject; },
{
ACTIONS = {makeFullscreen = id; quit = id; };
CLASS = SDLMain;
LANGUAGE = ObjC;
SUPERCLASS = NSObject;
}
);
IBVersion = 1;
}

12
macosx/English.lproj/SDLMain.nib/info.nib generated Executable file
View file

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>IBDocumentLocation</key>
<string>49 97 356 240 0 0 987 746 </string>
<key>IBMainMenuLocation</key>
<string>20 515 195 44 0 46 800 532 </string>
<key>IBUserGuides</key>
<dict/>
</dict>
</plist>

BIN
macosx/English.lproj/SDLMain.nib/objects.nib generated Executable file

Binary file not shown.

26
macosx/Info.plist Normal file
View file

@ -0,0 +1,26 @@
<?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>TuxPaint</string>
<key>CFBundleIconFile</key>
<string>tuxpaint.icns</string>
<key>CFBundleIdentifier</key>
<string>com.newbreedsoftware.tuxpaint</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>0.9.14</string>
<key>NSMainNibFile</key>
<string>SDLMain</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>

36
macosx/Read Me.txt Normal file
View file

@ -0,0 +1,36 @@
TuxPaint Xcode Project
notes by Martin Fuhrer <mfuhrer@alumni.ucalgary.ca>
This TuxPaint project file is located in a folder titled "macosx", which should in turn be placed in the root folder of the TuxPaint source code distribution. The project will then be able to access all the source code files.
This XCode project assumes that you have certain libraries and files installed in particular locations under Mac OS X. This file indicates what you must install, and where these items go. Some of the libraries are installed via the Fink package manager, which can be downloaded from <fink.sourceforge.net>
-- SDL --
You must have the following frameworks installed in /Library/Frameworks:
SDL.framework
SDL_image.framework
SDL_mixer.framework
SDL_ttf.framework
These frameworks should ideally be the non-development versions (without the header files), as they will be copied into the Tux Paint bundle. You can obtain the frameworks from the SDL website <www.libsdl.org>
So where does the project reference the SDL header files, if they are not in the frameworks? Via the Fink installation of SDL. So be sure to install all SDL-related packages in Fink.
-- PNG and Internationalization Libraries --
Install PNG (libpng.a) and the GNU internationalization library (libintl.a) via Fink. These libraries will be statically linked into the TuxPaint binary.
-- Translation Files --
These are generated by the Makefile in the TuxPaint source distribution as follows:
make translations
make install-gettext
This will generate translation files in /usr/local/share/locale. Move the locale folder into the root folder of the TuxPaint source distribution, and the TuxPaint XCode project will be able to bundle the files into the TuxPaint application.

14
macosx/SDLMain.h Executable file
View file

@ -0,0 +1,14 @@
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
Non-NIB-Code & other changes: Max Horn <max@quendi.de>
Feel free to customize this file to suit your needs
*/
//#define MAC_OS_X_VERSION_MAX_ALLOWED MAC_OS_X_VERSION_10_2
//#define MAC_OS_X_VERSION_MIN_REQUIRED MAC_OS_X_VERSION_10_2
#import <Cocoa/Cocoa.h>
@interface SDLMain : NSObject
@end

365
macosx/SDLMain.m Normal file
View file

@ -0,0 +1,365 @@
/* SDLMain.m - main entry point for our Cocoa-ized SDL app
Initial Version: Darrell Walisser <dwaliss1@purdue.edu>
Non-NIB-Code & other changes: Max Horn <max@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>
#include "wrapperdata.h"
/* 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;
WrapperData macosx;
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 */
@interface NSString (ReplaceSubString)
- (NSString *)stringByReplacingRange:(NSRange)aRange with:(NSString *)aString;
@end
#endif
@interface SDLApplication : NSApplication
@end
@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);
}
- (void)sendEvent:(NSEvent *)anEvent {
if( NSKeyDown == [anEvent type] || NSKeyUp ==
[anEvent type] ) {
if( [anEvent modifierFlags] & NSCommandKeyMask )
[super sendEvent: anEvent];
} else
[super sendEvent: anEvent];
}
@end
/* Class to pass information from Cocoa to SDL application */
@interface CocoaToSDLBridge : NSObject {}
- (void)dataPath:(NSString *)directory;
- (void)preferencesPath;
@end
@implementation CocoaToSDLBridge
-(void) dataPath:(NSString *)directory;
{
NSBundle *mainBundle;
NSString *path;
mainBundle = [NSBundle mainBundle];
path = [mainBundle pathForResource:@"data" ofType:nil];
[path getCString:(macosx.dataPath)];
}
-(void) preferencesPath;
{
NSString *path;
path = [@"~/Library/Application Support" stringByExpandingTildeInPath];
[path getCString:(macosx.preferencesPath)];
}
@end
/* The main class of the application, the application's delegate */
@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, 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 (argc, 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
/* Called when the internal event loop has just started running */
- (void) applicationDidFinishLaunching: (NSNotification *) note
{
setenv ("SDL_ENABLEAPPEVENTS", "1", 1);
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 */
status = SDL_main (gArgc, gArgv);
/* We're done, thank you for playing */
exit(status);
}
@end
@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;
}
@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 */
gArgv = argv;
/* This is passed if we are launched by double-clicking */
if ( argc >= 2 && strncmp (argv[1], "-psn", 4) == 0 ) {
gArgc = 1;
gFinderLaunch = YES;
} else {
gArgc = argc;
gFinderLaunch = NO;
}
#if SDL_USE_NIB_FILE
[SDLApplication poseAsClass:[NSApplication class]];
NSApplicationMain (argc, argv);
#else
CustomApplicationMain (argc, argv);
#endif
return 0;
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,895 @@
// !$*UTF8*$!
{
089C165DFE840E0CC02AAC07 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 443}}";
sepNavSelRange = "{123, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
220452DE0737175E005CCC84 = {
fRef = 089C165DFE840E0CC02AAC07;
isa = PBXTextBookmark;
name = "English: 5";
rLen = 0;
rLoc = 141;
rType = 0;
vrLen = 252;
vrLoc = 0;
};
221C2ACD075299F700EB431B = {
fRef = 22C005D30736650D008555A2;
isa = PBXBookmark;
};
221C2ACE075299F700EB431B = {
fRef = 22C005D30736650D008555A2;
isa = PBXBookmark;
};
221C344407529B0400EB431B = {
fRef = 22581666074EE1A5005F774F;
isa = PBXTextBookmark;
name = "Read Me.txt: 1";
rLen = 0;
rLoc = 11;
rType = 0;
vrLen = 1743;
vrLoc = 23;
};
221C344507529B0400EB431B = {
fRef = 22C0EA9A0735B76F008555A2;
isa = PBXTextBookmark;
name = "SDLMain.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 431;
vrLoc = 0;
};
221C344607529B0400EB431B = {
fRef = 22581666074EE1A5005F774F;
isa = PBXTextBookmark;
name = "Read Me.txt: 1";
rLen = 0;
rLoc = 11;
rType = 0;
vrLen = 1743;
vrLoc = 23;
};
221C344707529B0400EB431B = {
fRef = 22C0EA9A0735B76F008555A2;
isa = PBXTextBookmark;
name = "SDLMain.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 431;
vrLoc = 0;
};
221C344807529B0400EB431B = {
fRef = 22C0EA9B0735B76F008555A2;
isa = PBXTextBookmark;
name = macosx;
rLen = 6;
rLoc = 2702;
rType = 0;
vrLen = 770;
vrLoc = 2124;
};
22581625074EB0FC005F774F = {
fRef = 22C0EA9B0735B76F008555A2;
isa = PBXTextBookmark;
name = CocoaToSDLBridge;
rLen = 16;
rLoc = 2198;
rType = 0;
vrLen = 925;
vrLoc = 2421;
};
22581648074EC8C7005F774F = {
fRef = 22C0EA9C0735B76F008555A2;
isa = PBXTextBookmark;
name = "wrapperdata.h: 7";
rLen = 0;
rLoc = 151;
rType = 0;
vrLen = 607;
vrLoc = 0;
};
22581666074EE1A5005F774F = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {1862, 517}}";
sepNavSelRange = "{11, 0}";
sepNavVisRect = "{{0, 38}, {828, 479}}";
};
};
2258218D07509422005F774F = {
fRef = 22581666074EE1A5005F774F;
isa = PBXTextBookmark;
name = "Read Me: 8";
rLen = 0;
rLoc = 619;
rType = 0;
vrLen = 1546;
vrLoc = 75;
};
22582E2107513FA5005F774F = {
fRef = 22C0EAB30735B851008555A2;
isa = PBXTextBookmark;
name = "tuxpaint.c: 10812";
rLen = 0;
rLoc = 238983;
rType = 0;
vrLen = 848;
vrLoc = 238452;
};
2286F3600740B518001164FE = {
fRef = 2286F34E0740B3FC001164FE;
isa = PBXBookmark;
name = "SDLMain.nib (English)";
};
22C005DE073665E1008555A2 = {
fRef = 089C165DFE840E0CC02AAC07;
isa = PBXTextBookmark;
name = "English: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 127;
vrLoc = 0;
};
22C005DF073665E1008555A2 = {
fRef = 8D1107310486CEB800E47090;
isa = PBXTextBookmark;
name = "Info.plist: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 773;
vrLoc = 0;
};
22C005FC073667AB008555A2 = {
fRef = 8D1107310486CEB800E47090;
isa = PBXTextBookmark;
name = "Info.plist: 10";
rLen = 0;
rLoc = 362;
rType = 0;
vrLen = 798;
vrLoc = 0;
};
22C0E75A0735B6C0008555A2 = {
activeArgIndex = 2147483647;
activeArgIndices = (
);
argumentStrings = (
);
configStateDict = {
};
cppStopOnCatchEnabled = 0;
cppStopOnThrowEnabled = 0;
customDataFormattersEnabled = 1;
debuggerPlugin = GDBDebugging;
disassemblyDisplayState = 0;
dylibVariantSuffix = "";
enableDebugStr = 1;
environmentEntries = (
);
isa = PBXExecutable;
libgmallocEnabled = 0;
name = TuxPaint;
savedGlobals = {
};
shlibInfoDictList = (
);
sourceDirectories = (
);
};
22C0E7640735B6C5008555A2 = {
fallbackIsa = XCSourceControlManager;
isSCMEnabled = 0;
isa = PBXSourceControlManager;
scmConfiguration = {
};
scmType = "";
};
22C0E7650735B6C5008555A2 = {
indexTemplatePath = "";
isa = PBXCodeSenseManager;
usesDefaults = 1;
wantsCodeCompletion = 1;
wantsCodeCompletionAutoSuggestions = 0;
wantsCodeCompletionCaseSensitivity = 1;
wantsCodeCompletionListAlways = 1;
wantsCodeCompletionOnlyMatchingItems = 1;
wantsCodeCompletionParametersIncluded = 1;
wantsCodeCompletionPlaceholdersInserted = 1;
wantsCodeCompletionTabCompletes = 1;
wantsIndex = 1;
};
22C0EA9A0735B76F008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {828, 479}}";
sepNavSelRange = "{0, 0}";
sepNavVisRect = "{{0, 0}, {828, 479}}";
};
};
22C0EA9B0735B76F008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {828, 5123}}";
sepNavSelRange = "{2702, 6}";
sepNavVisRect = "{{0, 1182}, {828, 479}}";
};
};
22C0EA9C0735B76F008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {828, 479}}";
sepNavSelRange = "{151, 0}";
sepNavVisRect = "{{0, 0}, {828, 479}}";
};
};
22C0EAA30735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 1091}}";
sepNavSelRange = "{0, 0}";
sepNavVisRect = "{{0, 640}, {826, 443}}";
};
};
22C0EAA40735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 443}}";
sepNavSelRange = "{0, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
22C0EAAB0735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 443}}";
sepNavSelRange = "{0, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
22C0EAAC0735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 3219}}";
sepNavSelRange = "{156, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
22C0EAAD0735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {879, 2155}}";
sepNavSelRange = "{2316, 39}";
sepNavVisRect = "{{0, 1421}, {879, 252}}";
};
};
22C0EAAE0735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 2757}}";
sepNavSelRange = "{3663, 42}";
sepNavVisRect = "{{0, 2287}, {826, 443}}";
};
};
22C0EAAF0735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 1315}}";
sepNavSelRange = "{1592, 33}";
sepNavVisRect = "{{0, 411}, {826, 443}}";
};
};
22C0EAB00735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {879, 601}}";
sepNavSelRange = "{446, 40}";
sepNavVisRect = "{{0, 269}, {879, 332}}";
};
};
22C0EAB10735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 671}}";
sepNavSelRange = "{58, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
22C0EAB20735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {944, 1721}}";
sepNavSelRange = "{2281, 11}";
sepNavVisRect = "{{0, 971}, {826, 443}}";
};
};
22C0EAB30735B851008555A2 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {842, 183385}}";
sepNavSelRange = "{238998, 0}";
sepNavVisRect = "{{0, 151108}, {828, 479}}";
};
};
22C0EAD30735B99F008555A2 = {
fRef = 22C0EA9A0735B76F008555A2;
isa = PBXTextBookmark;
name = "SDLMain.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 431;
vrLoc = 0;
};
22C0EAD50735B99F008555A2 = {
fRef = 22C0EA9C0735B76F008555A2;
isa = PBXTextBookmark;
name = "wrapperdata.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 607;
vrLoc = 0;
};
22C0F65F0735C7BE008555A2 = {
fRef = 22C0EAB30735B851008555A2;
isa = PBXTextBookmark;
name = Library/Preferences/tuxpaint;
rLen = 0;
rLoc = 2933;
rType = 0;
vrLen = 608;
vrLoc = 192121;
};
22C0F9140735F511008555A2 = {
fRef = 22C0EAB20735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/tools/brush.png\",\n";
rLen = 40;
rLoc = 2239;
rType = 0;
vrLen = 996;
vrLoc = 1796;
};
22C0F9C1073614E8008555A2 = {
fRef = 22C0EAA40735B851008555A2;
isa = PBXTextBookmark;
name = "great.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 438;
vrLoc = 0;
};
22C0F9F907361A42008555A2 = {
fRef = 22C0EAAC0735B851008555A2;
isa = PBXTextBookmark;
name = "macosx_print.m: 7";
rLen = 0;
rLoc = 156;
rType = 0;
vrLen = 578;
vrLoc = 0;
};
22C0FA0407361A42008555A2 = {
fRef = 22C0EAAC0735B851008555A2;
isa = PBXTextBookmark;
name = "macosx_print.m: 7";
rLen = 0;
rLoc = 156;
rType = 0;
vrLen = 578;
vrLoc = 0;
};
22C0FA0507361A42008555A2 = {
fRef = 22C0EAAB0735B851008555A2;
isa = PBXTextBookmark;
name = "macosx_print.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 243;
vrLoc = 0;
};
22C0FA0707361A42008555A2 = {
fRef = 22C0EAA30735B851008555A2;
isa = PBXTextBookmark;
name = "colors.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 460;
vrLoc = 0;
};
22C0FA0907361A42008555A2 = {
fRef = 22C0EAB10735B851008555A2;
isa = PBXTextBookmark;
name = "titles.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 433;
vrLoc = 0;
};
22C0FA0A07361A42008555A2 = {
fRef = 22C0EAB00735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/tux/default.png\",\n";
rLen = 40;
rLoc = 446;
rType = 0;
vrLen = 492;
vrLoc = 207;
};
22C0FA0B07361A42008555A2 = {
fRef = 22C0EAAF0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"sounds/harp.wav\",\n";
rLen = 33;
rLoc = 1592;
rType = 0;
vrLen = 1028;
vrLoc = 1192;
};
22C0FA0C07361A42008555A2 = {
fRef = 22C0EAAE0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/shapes/square.png\",\n";
rLen = 42;
rLoc = 3663;
rType = 0;
vrLen = 1102;
vrLoc = 3178;
};
22C0FA1807361CA8008555A2 = {
fRef = 22C0EAAD0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/magic/rainbow.png\",\n";
rLen = 42;
rLoc = 1937;
rType = 0;
vrLen = 1076;
vrLoc = 1361;
};
22C0FB9407365679008555A2 = {
fRef = 22C0EAB20735B851008555A2;
isa = PBXTextBookmark;
name = DATA_PREFIX;
rLen = 11;
rLoc = 2281;
rType = 0;
vrLen = 1245;
vrLoc = 1550;
};
22C0FB9507365679008555A2 = {
fRef = 22C0EAB10735B851008555A2;
isa = PBXTextBookmark;
name = "titles.h: 6";
rLen = 0;
rLoc = 58;
rType = 0;
vrLen = 433;
vrLoc = 0;
};
22C0FB9607365679008555A2 = {
fRef = 22C0EAB00735B851008555A2;
isa = PBXTextBookmark;
name = DATA_PREFIX;
rLen = 11;
rLoc = 563;
rType = 0;
vrLen = 492;
vrLoc = 207;
};
22C0FB9907365679008555A2 = {
fRef = 22C0EAAB0735B851008555A2;
isa = PBXTextBookmark;
name = "macosx_print.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 243;
vrLoc = 0;
};
22C0FB9A07365679008555A2 = {
fRef = 22C0EAA40735B851008555A2;
isa = PBXTextBookmark;
name = "great.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 438;
vrLoc = 0;
};
22C0FB9B07365679008555A2 = {
fRef = 22C0EAA30735B851008555A2;
isa = PBXTextBookmark;
name = "colors.h: 1";
rLen = 0;
rLoc = 0;
rType = 0;
vrLen = 762;
vrLoc = 711;
};
22C0FBAF073657BA008555A2 = {
fRef = 22C0EAAD0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/magic/rainbow.png\",\n";
rLen = 42;
rLoc = 1937;
rType = 0;
vrLen = 1076;
vrLoc = 1361;
};
22C0FBB0073657BA008555A2 = {
fRef = 22C0EAAE0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"images/shapes/square.png\",\n";
rLen = 42;
rLoc = 3663;
rType = 0;
vrLen = 1194;
vrLoc = 3085;
};
22CD74E8073709D200BAB60B = {
fRef = 22C0EAAF0735B851008555A2;
isa = PBXTextBookmark;
name = " DATA_PREFIX \"sounds/harp.wav\",\n";
rLen = 33;
rLoc = 1592;
rType = 0;
vrLen = 1050;
vrLoc = 643;
};
22D01F1907434E9B00494AE0 = {
fRef = 22C0EA9B0735B76F008555A2;
isa = PBXTextBookmark;
name = "SDLMain.m: 12";
rLen = 0;
rLoc = 369;
rType = 0;
vrLen = 943;
vrLoc = 124;
};
29B97313FDCFA39411CA2CEA = {
activeBuildStyle = 4A9504CCFFE6A4B311CA0CBA;
activeExecutable = 22C0E75A0735B6C0008555A2;
activeTarget = 8D1107260486CEB800E47090;
addToTargets = (
8D1107260486CEB800E47090,
);
breakpoints = (
);
codeSenseManager = 22C0E7650735B6C5008555A2;
executables = (
22C0E75A0735B6C0008555A2,
);
perUserDictionary = {
PBXConfiguration.PBXFileTableDataSource3.PBXErrorsWarningsDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXErrorsWarningsDataSource_LocationID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
530.8799,
287.2085,
);
PBXFileTableDataSourceColumnsKey = (
PBXErrorsWarningsDataSource_TypeID,
PBXErrorsWarningsDataSource_MessageID,
PBXErrorsWarningsDataSource_LocationID,
);
};
PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID;
PBXFileTableDataSourceColumnWidthsKey = (
22,
536.7974,
279.5835,
);
PBXFileTableDataSourceColumnsKey = (
PBXExecutablesDataSource_ActiveFlagID,
PBXExecutablesDataSource_NameID,
PBXExecutablesDataSource_CommentsID,
);
};
PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
574,
20,
104,
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.PBXFileTableDataSource3.XCSCMDataSource = {
PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
PBXFileTableDataSourceColumnWidthsKey = (
20,
20,
565,
20,
89,
43,
43,
20,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_SCM_ColumnID,
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,
488,
105,
20,
105,
43,
43,
);
PBXFileTableDataSourceColumnsKey = (
PBXFileDataSource_FiletypeID,
PBXFileDataSource_Filename_ColumnID,
PBXTargetDataSource_PrimaryAttribute,
PBXFileDataSource_Built_ColumnID,
PBXFileDataSource_ObjectSize_ColumnID,
PBXFileDataSource_Errors_ColumnID,
PBXFileDataSource_Warnings_ColumnID,
);
};
PBXPerProjectTemplateStateSaveDate = 122854097;
PBXPrepackagedSmartGroups_v2 = (
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
activationKey = OldTargetSmartGroup;
clz = PBXTargetSmartGroup;
description = "Displays all targets of the project.";
globalID = 1C37FABC04509CD000000102;
name = Targets;
preferences = {
image = Targets;
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXTargetSmartGroup2;
description = "Displays all targets of the project as well as nested build phases.";
globalID = 1C37FBAC04509CD000000102;
name = Targets;
preferences = {
image = Targets;
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXExecutablesSmartGroup;
description = "Displays all executables of the project.";
globalID = 1C37FAAC04509CD000000102;
name = Executables;
preferences = {
image = Executable;
};
},
{
" PBXTransientLocationAtTop " = bottom;
absolutePathToBundle = "";
clz = PBXErrorsWarningsSmartGroup;
description = "Displays files with errors or warnings.";
globalID = 1C08E77C0454961000C914BD;
name = "Errors and Warnings";
preferences = {
fnmatch = "";
image = WarningsErrors;
recursive = 1;
regex = "";
root = "<PROJECT>";
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXFilenameSmartGroup;
description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
globalID = 1CC0EA4004350EF90044410B;
name = "Implementation Files";
preferences = {
canSave = 1;
fnmatch = "";
image = SmartFolder;
isLeaf = 0;
recursive = 1;
regex = "?*\\.[mcMC]";
root = "<PROJECT>";
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXFilenameSmartGroup;
description = "This group displays Interface Builder NIB Files.";
globalID = 1CC0EA4004350EF90041110B;
name = "NIB Files";
preferences = {
canSave = 1;
fnmatch = "*.nib";
image = SmartFolder;
isLeaf = 0;
recursive = 1;
regex = "";
root = "<PROJECT>";
};
},
{
PBXTransientLocationAtTop = no;
absolutePathToBundle = "";
clz = PBXFindSmartGroup;
description = "Displays Find Results.";
globalID = 1C37FABC05509CD000000102;
name = "Find Results";
preferences = {
image = spyglass;
};
},
{
PBXTransientLocationAtTop = no;
absolutePathToBundle = "";
clz = PBXBookmarksSmartGroup;
description = "Displays Project Bookmarks.";
globalID = 1C37FABC05539CD112110102;
name = Bookmarks;
preferences = {
image = Bookmarks;
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = XCSCMSmartGroup;
description = "Displays files with interesting SCM status.";
globalID = E2644B35053B69B200211256;
name = SCM;
preferences = {
image = PBXRepository;
isLeaf = 0;
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXSymbolsSmartGroup;
description = "Displays all symbols for the project.";
globalID = 1C37FABC04509CD000100104;
name = "Project Symbols";
preferences = {
image = ProjectSymbols;
isLeaf = 1;
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXFilenameSmartGroup;
description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
globalID = PBXTemplateMarker;
name = "Simple Filter SmartGroup";
preferences = {
canSave = 1;
fnmatch = "*.nib";
image = SmartFolder;
isLeaf = 0;
recursive = 1;
regex = "";
root = "<PROJECT>";
};
},
{
PBXTransientLocationAtTop = bottom;
absolutePathToBundle = "";
clz = PBXFilenameSmartGroup;
description = "Filters items in a given group (potentially recursively) based on matching the name with the regular expression of the filter.";
globalID = PBXTemplateMarker;
name = "Simple Regular Expression SmartGroup";
preferences = {
canSave = 1;
fnmatch = "";
image = SmartFolder;
isLeaf = 0;
recursive = 1;
regex = "?*\\.[mcMC]";
root = "<PROJECT>";
};
},
{
PBXTransientLocationAtTop = bottom;
clz = XDDesignSmartGroup;
description = "Displays Xdesign models";
globalID = 2E4A936305E6979E00701470;
name = Design;
preferences = {
image = Design;
isLeaf = 0;
};
},
);
PBXWorkspaceStateSaveDate = 122854097;
};
perUserProjectItems = {
220452DE0737175E005CCC84 = 220452DE0737175E005CCC84;
221C2ACD075299F700EB431B = 221C2ACD075299F700EB431B;
221C2ACE075299F700EB431B = 221C2ACE075299F700EB431B;
221C344407529B0400EB431B = 221C344407529B0400EB431B;
221C344507529B0400EB431B = 221C344507529B0400EB431B;
221C344607529B0400EB431B = 221C344607529B0400EB431B;
221C344707529B0400EB431B = 221C344707529B0400EB431B;
221C344807529B0400EB431B = 221C344807529B0400EB431B;
22581625074EB0FC005F774F = 22581625074EB0FC005F774F;
22581648074EC8C7005F774F = 22581648074EC8C7005F774F;
2258218D07509422005F774F = 2258218D07509422005F774F;
22582E2107513FA5005F774F = 22582E2107513FA5005F774F;
2286F3600740B518001164FE = 2286F3600740B518001164FE;
22C005DE073665E1008555A2 = 22C005DE073665E1008555A2;
22C005DF073665E1008555A2 = 22C005DF073665E1008555A2;
22C005FC073667AB008555A2 = 22C005FC073667AB008555A2;
22C0EAD30735B99F008555A2 = 22C0EAD30735B99F008555A2;
22C0EAD50735B99F008555A2 = 22C0EAD50735B99F008555A2;
22C0F65F0735C7BE008555A2 = 22C0F65F0735C7BE008555A2;
22C0F9140735F511008555A2 = 22C0F9140735F511008555A2;
22C0F9C1073614E8008555A2 = 22C0F9C1073614E8008555A2;
22C0F9F907361A42008555A2 = 22C0F9F907361A42008555A2;
22C0FA0407361A42008555A2 = 22C0FA0407361A42008555A2;
22C0FA0507361A42008555A2 = 22C0FA0507361A42008555A2;
22C0FA0707361A42008555A2 = 22C0FA0707361A42008555A2;
22C0FA0907361A42008555A2 = 22C0FA0907361A42008555A2;
22C0FA0A07361A42008555A2 = 22C0FA0A07361A42008555A2;
22C0FA0B07361A42008555A2 = 22C0FA0B07361A42008555A2;
22C0FA0C07361A42008555A2 = 22C0FA0C07361A42008555A2;
22C0FA1807361CA8008555A2 = 22C0FA1807361CA8008555A2;
22C0FB9407365679008555A2 = 22C0FB9407365679008555A2;
22C0FB9507365679008555A2 = 22C0FB9507365679008555A2;
22C0FB9607365679008555A2 = 22C0FB9607365679008555A2;
22C0FB9907365679008555A2 = 22C0FB9907365679008555A2;
22C0FB9A07365679008555A2 = 22C0FB9A07365679008555A2;
22C0FB9B07365679008555A2 = 22C0FB9B07365679008555A2;
22C0FBAF073657BA008555A2 = 22C0FBAF073657BA008555A2;
22C0FBB0073657BA008555A2 = 22C0FBB0073657BA008555A2;
22CD74E8073709D200BAB60B = 22CD74E8073709D200BAB60B;
22D01F1907434E9B00494AE0 = 22D01F1907434E9B00494AE0;
};
sourceControlManager = 22C0E7640735B6C5008555A2;
userBuildSettings = {
};
};
8D1107260486CEB800E47090 = {
activeExec = 0;
executables = (
22C0E75A0735B6C0008555A2,
);
};
8D1107310486CEB800E47090 = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {826, 443}}";
sepNavSelRange = "{362, 0}";
sepNavVisRect = "{{0, 0}, {826, 443}}";
};
};
}

View file

@ -0,0 +1,725 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 39;
objects = {
080E96DDFE201D6D7F000001 = {
children = (
22C0EA9A0735B76F008555A2,
22C0EA9B0735B76F008555A2,
22C0EA9C0735B76F008555A2,
);
isa = PBXGroup;
name = Classes;
refType = 4;
sourceTree = "<group>";
};
089C165CFE840E0CC02AAC07 = {
children = (
089C165DFE840E0CC02AAC07,
);
isa = PBXVariantGroup;
name = InfoPlist.strings;
refType = 4;
sourceTree = "<group>";
};
089C165DFE840E0CC02AAC07 = {
fileEncoding = 10;
isa = PBXFileReference;
lastKnownFileType = text.plist.strings;
name = English;
path = English.lproj/InfoPlist.strings;
refType = 4;
sourceTree = "<group>";
};
//080
//081
//082
//083
//084
//100
//101
//102
//103
//104
1058C7A0FEA54F0111CA2CBB = {
children = (
1058C7A1FEA54F0111CA2CBB,
);
isa = PBXGroup;
name = "Linked Frameworks";
refType = 4;
sourceTree = "<group>";
};
1058C7A1FEA54F0111CA2CBB = {
isa = PBXFileReference;
lastKnownFileType = wrapper.framework;
name = Cocoa.framework;
path = /System/Library/Frameworks/Cocoa.framework;
refType = 0;
sourceTree = "<absolute>";
};
1058C7A2FEA54F0111CA2CBB = {
children = (
2258162D074EB1A6005F774F,
2258162E074EB1A6005F774F,
2258162F074EB1A6005F774F,
22581630074EB1A6005F774F,
);
isa = PBXGroup;
name = "Local Frameworks";
refType = 4;
sourceTree = "<group>";
};
//100
//101
//102
//103
//104
//190
//191
//192
//193
//194
19C28FACFE9D520D11CA2CBB = {
children = (
8D1107320486CEB800E47090,
);
isa = PBXGroup;
name = Products;
refType = 4;
sourceTree = "<group>";
};
//190
//191
//192
//193
//194
//220
//221
//222
//223
//224
2258162D074EB1A6005F774F = {
isa = PBXFileReference;
lastKnownFileType = wrapper.framework;
name = SDL_image.framework;
path = /Library/Frameworks/SDL_image.framework;
refType = 0;
sourceTree = "<absolute>";
};
2258162E074EB1A6005F774F = {
isa = PBXFileReference;
lastKnownFileType = wrapper.framework;
name = SDL_mixer.framework;
path = /Library/Frameworks/SDL_mixer.framework;
refType = 0;
sourceTree = "<absolute>";
};
2258162F074EB1A6005F774F = {
isa = PBXFileReference;
lastKnownFileType = wrapper.framework;
name = SDL_ttf.framework;
path = /Library/Frameworks/SDL_ttf.framework;
refType = 0;
sourceTree = "<absolute>";
};
22581630074EB1A6005F774F = {
isa = PBXFileReference;
lastKnownFileType = wrapper.framework;
name = SDL.framework;
path = /Library/Frameworks/SDL.framework;
refType = 0;
sourceTree = "<absolute>";
};
22581631074EB1A6005F774F = {
fileRef = 2258162D074EB1A6005F774F;
isa = PBXBuildFile;
settings = {
};
};
22581632074EB1A6005F774F = {
fileRef = 2258162E074EB1A6005F774F;
isa = PBXBuildFile;
settings = {
};
};
22581633074EB1A6005F774F = {
fileRef = 2258162F074EB1A6005F774F;
isa = PBXBuildFile;
settings = {
};
};
22581634074EB1A6005F774F = {
fileRef = 22581630074EB1A6005F774F;
isa = PBXBuildFile;
settings = {
};
};
22581666074EE1A5005F774F = {
fileEncoding = 4;
isa = PBXFileReference;
lastKnownFileType = text;
path = "Read Me.txt";
refType = 4;
sourceTree = "<group>";
};
22581667074EE1A5005F774F = {
fileRef = 22581666074EE1A5005F774F;
isa = PBXBuildFile;
settings = {
};
};
2286F34D0740B3FC001164FE = {
children = (
2286F34E0740B3FC001164FE,
);
isa = PBXVariantGroup;
name = SDLMain.nib;
path = "";
refType = 4;
sourceTree = "<group>";
};
2286F34E0740B3FC001164FE = {
isa = PBXFileReference;
lastKnownFileType = wrapper.nib;
name = English;
path = English.lproj/SDLMain.nib;
refType = 4;
sourceTree = "<group>";
};
2286F34F0740B3FC001164FE = {
fileRef = 2286F34D0740B3FC001164FE;
isa = PBXBuildFile;
settings = {
};
};
22C005D30736650D008555A2 = {
isa = PBXFileReference;
lastKnownFileType = image.icns;
path = tuxpaint.icns;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C005D40736650D008555A2 = {
fileRef = 22C005D30736650D008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EA9A0735B76F008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = SDLMain.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EA9B0735B76F008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.objc;
path = SDLMain.m;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EA9C0735B76F008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
path = wrapperdata.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EA9E0735B76F008555A2 = {
fileRef = 22C0EA9B0735B76F008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EAA30735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = colors.h;
path = ../src/colors.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAA40735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = great.h;
path = ../src/great.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAAB0735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = macosx_print.h;
path = ../src/macosx_print.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAAC0735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.objc;
name = macosx_print.m;
path = ../src/macosx_print.m;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAAD0735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = magic.h;
path = ../src/magic.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAAE0735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = shapes.h;
path = ../src/shapes.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAAF0735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = sounds.h;
path = ../src/sounds.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAB00735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = tip_tux.h;
path = ../src/tip_tux.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAB10735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = titles.h;
path = ../src/titles.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAB20735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.h;
name = tools.h;
path = ../src/tools.h;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EAB30735B851008555A2 = {
fileEncoding = 30;
isa = PBXFileReference;
lastKnownFileType = sourcecode.c.c;
name = tuxpaint.c;
path = ../src/tuxpaint.c;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EABD0735B851008555A2 = {
fileRef = 22C0EAAC0735B851008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EAC40735B851008555A2 = {
fileRef = 22C0EAB30735B851008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EBB50735BED0008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = docs;
path = ../docs;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0ED760735BED1008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = fonts;
path = ../fonts;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0ED9A0735BED1008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = stamps;
path = ../stamps;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EDAF0735BED1008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = starters;
path = ../starters;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0EDBB0735BED1008555A2 = {
fileRef = 22C0EBB50735BED0008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EDBC0735BED1008555A2 = {
fileRef = 22C0ED760735BED1008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EDBD0735BED1008555A2 = {
fileRef = 22C0ED9A0735BED1008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0EDBE0735BED1008555A2 = {
fileRef = 22C0EDAF0735BED1008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0F5350735BFA8008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = brushes;
path = ../data/brushes;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0F5500735BFA8008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = fonts;
path = ../data/fonts;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0F5600735BFA8008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = images;
path = ../data/images;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0F5CE0735BFA8008555A2 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = sounds;
path = ../data/sounds;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22C0F5F60735BFA8008555A2 = {
fileRef = 22C0F5350735BFA8008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0F5F70735BFA8008555A2 = {
fileRef = 22C0F5500735BFA8008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0F5F80735BFA8008555A2 = {
fileRef = 22C0F5600735BFA8008555A2;
isa = PBXBuildFile;
settings = {
};
};
22C0F5F90735BFA8008555A2 = {
fileRef = 22C0F5CE0735BFA8008555A2;
isa = PBXBuildFile;
settings = {
};
};
22D01F2F07434FD100494AE0 = {
isa = PBXFileReference;
lastKnownFileType = folder;
name = locale;
path = ../locale;
refType = 2;
sourceTree = SOURCE_ROOT;
};
22D0201207434FD200494AE0 = {
fileRef = 22D01F2F07434FD100494AE0;
isa = PBXBuildFile;
settings = {
};
};
22D5D2A80738498300B67229 = {
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 10;
files = (
);
isa = PBXCopyFilesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
};
//220
//221
//222
//223
//224
//290
//291
//292
//293
//294
29B97313FDCFA39411CA2CEA = {
buildSettings = {
};
buildStyles = (
4A9504CCFFE6A4B311CA0CBA,
4A9504CDFFE6A4B311CA0CBA,
);
hasScannedForEncodings = 1;
isa = PBXProject;
mainGroup = 29B97314FDCFA39411CA2CEA;
projectDirPath = "";
targets = (
8D1107260486CEB800E47090,
);
};
29B97314FDCFA39411CA2CEA = {
children = (
22581666074EE1A5005F774F,
080E96DDFE201D6D7F000001,
29B97315FDCFA39411CA2CEA,
29B97317FDCFA39411CA2CEA,
29B97323FDCFA39411CA2CEA,
19C28FACFE9D520D11CA2CBB,
);
isa = PBXGroup;
name = TuxPaint;
path = "";
refType = 4;
sourceTree = "<group>";
};
29B97315FDCFA39411CA2CEA = {
children = (
22C0EAA30735B851008555A2,
22C0EAA40735B851008555A2,
22C0EAAB0735B851008555A2,
22C0EAAC0735B851008555A2,
22C0EAAD0735B851008555A2,
22C0EAAE0735B851008555A2,
22C0EAAF0735B851008555A2,
22C0EAB00735B851008555A2,
22C0EAB10735B851008555A2,
22C0EAB20735B851008555A2,
22C0EAB30735B851008555A2,
);
isa = PBXGroup;
name = "TuxPaint Sources";
path = "";
refType = 4;
sourceTree = "<group>";
};
29B97317FDCFA39411CA2CEA = {
children = (
22D01F2F07434FD100494AE0,
2286F34D0740B3FC001164FE,
22C005D30736650D008555A2,
22C0F5350735BFA8008555A2,
22C0F5500735BFA8008555A2,
22C0F5600735BFA8008555A2,
22C0F5CE0735BFA8008555A2,
22C0EBB50735BED0008555A2,
22C0ED760735BED1008555A2,
22C0ED9A0735BED1008555A2,
22C0EDAF0735BED1008555A2,
8D1107310486CEB800E47090,
089C165CFE840E0CC02AAC07,
);
isa = PBXGroup;
name = Resources;
path = "";
refType = 4;
sourceTree = "<group>";
};
29B97323FDCFA39411CA2CEA = {
children = (
1058C7A0FEA54F0111CA2CBB,
1058C7A2FEA54F0111CA2CBB,
);
isa = PBXGroup;
name = Frameworks;
path = "";
refType = 4;
sourceTree = "<group>";
};
//290
//291
//292
//293
//294
//4A0
//4A1
//4A2
//4A3
//4A4
4A9504CCFFE6A4B311CA0CBA = {
buildSettings = {
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_FIX_AND_CONTINUE = YES;
};
isa = PBXBuildStyle;
name = Development;
};
4A9504CDFFE6A4B311CA0CBA = {
buildSettings = {
COPY_PHASE_STRIP = YES;
GCC_ENABLE_FIX_AND_CONTINUE = NO;
ZERO_LINK = NO;
};
isa = PBXBuildStyle;
name = Deployment;
};
//4A0
//4A1
//4A2
//4A3
//4A4
//8D0
//8D1
//8D2
//8D3
//8D4
8D1107260486CEB800E47090 = {
buildPhases = (
8D1107290486CEB800E47090,
8D11072C0486CEB800E47090,
8D11072E0486CEB800E47090,
22D5D2A80738498300B67229,
);
buildRules = (
);
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "";
GCC_PREPROCESSOR_DEFINITIONS = "DATA_PREFIX=\\\"TuxPaint.app/Contents/Resources/\\\" DOC_PREFIX=\\\"./share/doc/tuxpaint/\\\" CONFDIR=\\\"$(HOME)/Library/Application\\ Support/TuxPaint/\\\" LOCALEDIR=\\\"TuxPaint.app/Contents/Resources/locale/\\\" CURSOR_SHAPES=SMALL __APPLE__";
HEADER_SEARCH_PATHS = "/sw/include/SDL /sw/include ../src/mouse/16x16/";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
LIBRARY_STYLE = STATIC;
MACOSX_DEPLOYMENT_TARGET = 10.1;
OTHER_CFLAGS = "";
OTHER_CPLUSPLUSFLAGS = "";
OTHER_LDFLAGS = "/sw/lib/libpng.a /sw/lib/libintl.a -lz -liconv";
PRODUCT_NAME = TuxPaint;
WRAPPER_EXTENSION = app;
};
dependencies = (
);
isa = PBXNativeTarget;
name = TuxPaint;
productInstallPath = "$(HOME)/Applications";
productName = TuxPaint;
productReference = 8D1107320486CEB800E47090;
productType = "com.apple.product-type.application";
};
8D1107290486CEB800E47090 = {
buildActionMask = 2147483647;
files = (
8D11072B0486CEB800E47090,
22C0EDBB0735BED1008555A2,
22C0EDBC0735BED1008555A2,
22C0EDBD0735BED1008555A2,
22C0EDBE0735BED1008555A2,
22C0F5F60735BFA8008555A2,
22C0F5F70735BFA8008555A2,
22C0F5F80735BFA8008555A2,
22C0F5F90735BFA8008555A2,
22C005D40736650D008555A2,
2286F34F0740B3FC001164FE,
22D0201207434FD200494AE0,
22581667074EE1A5005F774F,
);
isa = PBXResourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
};
8D11072B0486CEB800E47090 = {
fileRef = 089C165CFE840E0CC02AAC07;
isa = PBXBuildFile;
settings = {
};
};
8D11072C0486CEB800E47090 = {
buildActionMask = 2147483647;
files = (
22C0EA9E0735B76F008555A2,
22C0EABD0735B851008555A2,
22C0EAC40735B851008555A2,
);
isa = PBXSourcesBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
};
8D11072E0486CEB800E47090 = {
buildActionMask = 2147483647;
files = (
8D11072F0486CEB800E47090,
22581631074EB1A6005F774F,
22581632074EB1A6005F774F,
22581633074EB1A6005F774F,
22581634074EB1A6005F774F,
);
isa = PBXFrameworksBuildPhase;
runOnlyForDeploymentPostprocessing = 0;
};
8D11072F0486CEB800E47090 = {
fileRef = 1058C7A1FEA54F0111CA2CBB;
isa = PBXBuildFile;
settings = {
};
};
8D1107310486CEB800E47090 = {
fileEncoding = 4;
isa = PBXFileReference;
lastKnownFileType = text.plist;
path = Info.plist;
refType = 4;
sourceTree = "<group>";
};
8D1107320486CEB800E47090 = {
explicitFileType = wrapper.application;
includeInIndex = 0;
isa = PBXFileReference;
path = TuxPaint.app;
refType = 3;
sourceTree = BUILT_PRODUCTS_DIR;
};
};
rootObject = 29B97313FDCFA39411CA2CEA;
}

BIN
macosx/tuxpaint.icns Executable file

Binary file not shown.

16
macosx/version.plist Normal file
View file

@ -0,0 +1,16 @@
<?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>BuildVersion</key>
<string>92</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>ProductBuildVersion</key>
<string>7K571</string>
<key>ProjectName</key>
<string>NibPBTemplates</string>
<key>SourceVersion</key>
<string>1200000</string>
</dict>
</plist>

24
macosx/wrapperdata.h Normal file
View file

@ -0,0 +1,24 @@
/*
* wrapperdata.h
* SuperTux
*
* Created by Martin Fuhrer on Wed May 12 2004.
* Copyright (c) 2004 __MyCompanyName__. All rights reserved.
*
*/
#ifndef WRAPPER_DATA
#define WRAPPER_DATA
struct WrapperDataStruct
{
char dataPath[2048]; // path to data folder inside application bundle
char preferencesPath[2048]; // path to the user's preferences folder
int foundSDL; // was SDL.framework found?
int foundSDL_image; // was SDL_image.framework found?
int foundSDL_mixer; // was SDL_mixer.framework found?
};
typedef struct WrapperDataStruct WrapperData;
#endif