Removed Unused Code

This commit is contained in:
TheBrokenRail 2020-05-11 11:19:37 -04:00
parent c9b4a96280
commit 9700bac810
1254 changed files with 122 additions and 276069 deletions

View File

@ -1,20 +0,0 @@
syntax: glob
*.mode1
*.mode1v3
*.pbxuser
*.perspectivev3
*.mode2v3
build
build
.svn
.DS_Store
*.pyc
*.swp
*~.nib
*.orig
xcuserdata
project.xcworkspace
system

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:AppKit.xcodeproj">
</FileRef>
</Workspace>

View File

@ -1,41 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDESourceControlProjectFavoriteDictionaryKey</key>
<false/>
<key>IDESourceControlProjectIdentifier</key>
<string>4F517AC8-2BD1-4488-98B9-C0D3A46F531D</string>
<key>IDESourceControlProjectName</key>
<string>AppKit</string>
<key>IDESourceControlProjectOriginsDictionary</key>
<dict>
<key>D23006023D8263B18CE7E4572DE5FF530EDE0D45</key>
<string>https://github.com/cjwl/cocotron.git</string>
</dict>
<key>IDESourceControlProjectPath</key>
<string>AppKit/AppKit.xcodeproj</string>
<key>IDESourceControlProjectRelativeInstallPathDictionary</key>
<dict>
<key>D23006023D8263B18CE7E4572DE5FF530EDE0D45</key>
<string>../../..</string>
</dict>
<key>IDESourceControlProjectURL</key>
<string>https://github.com/cjwl/cocotron.git</string>
<key>IDESourceControlProjectVersion</key>
<integer>111</integer>
<key>IDESourceControlProjectWCCIdentifier</key>
<string>D23006023D8263B18CE7E4572DE5FF530EDE0D45</string>
<key>IDESourceControlProjectWCConfigurations</key>
<array>
<dict>
<key>IDESourceControlRepositoryExtensionIdentifierKey</key>
<string>public.vcs.git</string>
<key>IDESourceControlWCCIdentifierKey</key>
<string>D23006023D8263B18CE7E4572DE5FF530EDE0D45</string>
<key>IDESourceControlWCCName</key>
<string>cocotron-git</string>
</dict>
</array>
</dict>
</plist>

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0610"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A8070C5D9BCB00AEA51A"
BuildableName = "AppKit.framework"
BlueprintName = "AppKit"
ReferencedContainer = "container:AppKit.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A8070C5D9BCB00AEA51A"
BuildableName = "AppKit.framework"
BlueprintName = "AppKit"
ReferencedContainer = "container:AppKit.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A8070C5D9BCB00AEA51A"
BuildableName = "AppKit.framework"
BlueprintName = "AppKit"
ReferencedContainer = "container:AppKit.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Linux-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -30,7 +30,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <AppKit/NSTypesetter.h>
#import <AppKit/NSWindow.h>
#import "../../Foundation/NSAttributedString/NSRangeEntries.h"
#import <Foundation/NSRangeEntries.h>
#import <AppKit/NSAttributedString.h>
#import <AppKit/NSColor.h>
#import <AppKit/NSGraphics.h>

View File

@ -17,7 +17,7 @@ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import "../../Foundation/NSAttributedString/NSRangeEntries.h"
#import <Foundation/NSRangeEntries.h>
#import <AppKit/NSTextStorage.h>
@interface NSTextStorage_concrete : NSTextStorage {

View File

@ -1 +0,0 @@
Linux.subproj/O2Context_builtin_FT.h

View File

@ -1,36 +0,0 @@
#import <CFNetwork/CFNetworkExport.h>
#import <CoreFoundation/CoreFoundation.h>
typedef struct __CFHost *CFHostRef;
enum CFHostInfoType {
kCFHostAddresses = 0,
kCFHostNames = 1,
kCFHostReachability = 2,
};
typedef enum CFHostInfoType CFHostInfoType;
typedef void (*CFHostClientCallBack)(CFHostRef host, CFHostInfoType infoType, const CFStreamError *streamError, void *info);
typedef struct CFHostClientContext {
CFIndex version;
void *info;
CFAllocatorRetainCallBack retain;
CFAllocatorReleaseCallBack release;
CFAllocatorCopyDescriptionCallBack copyDescription;
} CFHostClientContext;
CFNETWORK_EXPORT CFTypeID CFHostGetTypeID();
CFNETWORK_EXPORT CFHostRef CFHostCreateCopy(CFAllocatorRef alloc, CFHostRef self);
CFNETWORK_EXPORT CFHostRef CFHostCreateWithAddress(CFAllocatorRef allocator, CFDataRef address);
CFNETWORK_EXPORT CFHostRef CFHostCreateWithName(CFAllocatorRef allocator, CFStringRef name);
CFNETWORK_EXPORT CFArrayRef CFHostGetAddressing(CFHostRef self, Boolean *hasBeenResolved);
CFNETWORK_EXPORT CFArrayRef CFHostGetNames(CFHostRef self, Boolean *hasBeenResolved);
CFNETWORK_EXPORT CFDataRef CFHostGetReachability(CFHostRef self, Boolean *hasBeenResolved);
CFNETWORK_EXPORT Boolean CFHostSetClient(CFHostRef self, CFHostClientCallBack callback, CFHostClientContext *context);
CFNETWORK_EXPORT Boolean CFHostStartInfoResolution(CFHostRef self, CFHostInfoType infoType, CFStreamError *streamError);
CFNETWORK_EXPORT void CFHostCancelInfoResolution(CFHostRef theHost, CFHostInfoType infoType);
CFNETWORK_EXPORT void CFHostScheduleWithRunLoop(CFHostRef self, CFRunLoopRef runLoop, CFStringRef mode);
CFNETWORK_EXPORT void CFHostUnscheduleFromRunLoop(CFHostRef self, CFRunLoopRef runLoop, CFStringRef mode);

View File

@ -1,591 +0,0 @@
#import <CFNetwork/CFHost.h>
#import <Foundation/NSDebug.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRunLoop.h>
#ifdef WINDOWS
#import <Foundation/NSHandleMonitor_win32.h>
#undef WINVER
#define WINVER 0x501
#include <process.h>
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#else
#include <sys/param.h>
#endif
#include <pthread.h>
#if defined(WIN32) || defined(LINUX)
#define MAXHOSTNAMELEN 512
#endif
typedef enum {
CFHostRequestInQueue,
CFHostRequestInProgress,
CFHostRequestDone,
CFHostRequestDeallocate,
} CFHostRequestState;
typedef struct {
CFHostRequestState _state;
char *_name;
struct addrinfo *_addressList;
#ifdef WINDOWS
HANDLE _event;
#endif
} CFHostRequest;
@interface __CFHost : NSObject {
CFStringRef _name;
CFHostClientCallBack _callback;
CFHostClientContext _context;
Boolean _hasResolvedAddressing;
CFArrayRef _addressing;
CFHostRequest *_request;
#ifdef WINDOWS
HANDLE _event;
NSHandleMonitor_win32 *_monitor;
#endif
}
@end
#ifdef __clang__
// has to be in sync with the __CFHost interface
struct __CFHost {
CFStringRef _name;
CFHostClientCallBack _callback;
CFHostClientContext _context;
Boolean _hasResolvedAddressing;
CFArrayRef _addressing;
CFHostRequest *_request;
#ifdef WINDOWS
HANDLE _event;
NSHandleMonitor_win32 *_monitor;
#endif
};
#endif
@implementation __CFHost
#ifdef WINDOWS
typedef struct {
CRITICAL_SECTION queueLock;
HANDLE queueEvent;
int queueCapacity, queueCount;
CFHostRequest **queue;
} CFAddressResolverThreadInfo;
static int preXP_getaddrinfo(const char *host, const char *service,
const struct addrinfo *hints,
struct addrinfo **result)
{
struct addrinfo *list = NULL;
struct addrinfo *current = NULL;
struct hostent *hp;
if ((hp = gethostbyname(host)) == NULL)
return EAI_FAIL;
switch (hp->h_addrtype) {
case AF_INET:;
uint32_t **addr_list;
addr_list = (uint32_t **) hp->h_addr_list;
for (; *addr_list != NULL; addr_list++) {
struct addrinfo *node =
NSZoneCalloc(NULL, 1, sizeof(struct addrinfo));
struct sockaddr_in *ipv4 =
NSZoneCalloc(NULL, 1, sizeof(struct sockaddr_in));
node->ai_family = AF_INET;
node->ai_addrlen = sizeof(struct sockaddr_in);
node->ai_addr = (struct sockaddr *) ipv4;
ipv4->sin_family = AF_INET;
ipv4->sin_addr.s_addr = **addr_list;
if (list == NULL)
list = current = node;
else {
current->ai_next = node;
current = node;
}
}
break;
}
*result = list;
return 0;
}
static void preXP_freeaddrinfo(struct addrinfo *info) {
struct addrinfo *next;
for (; info != NULL; info = next) {
next = info->ai_next;
NSZoneFree(NULL, info->ai_addr);
NSZoneFree(NULL, info);
}
}
static int any_getaddrinfo(const char *host, const char *service,
const struct addrinfo *hints,
struct addrinfo **result)
{
HANDLE library = LoadLibrary("WS2_32");
typeof(getaddrinfo) *function =
(typeof(getaddrinfo) *) GetProcAddress(library, "getaddrinfo");
if (function == NULL) {
return preXP_getaddrinfo(host, service, hints, result);
} else {
return function(host, service, hints, result);
}
}
static void any_freeaddrinfo(struct addrinfo *info) {
HANDLE library = LoadLibrary("WS2_32");
typeof(freeaddrinfo) *function =
(typeof(freeaddrinfo) *) GetProcAddress(library, "freeaddrinfo");
if (function == NULL) {
return preXP_freeaddrinfo(info);
} else {
return function(info);
}
}
static struct addrinfo *blockingRequest(CFHostRequest *request) {
struct addrinfo *result;
if (any_getaddrinfo(request->_name, NULL, NULL, &result) != 0)
return NULL;
return result;
}
static __stdcall unsigned addressResolverThread(void *arg) {
CFAddressResolverThreadInfo *info = (CFAddressResolverThreadInfo *) arg;
while (YES) {
Boolean queueEmpty;
EnterCriticalSection(&(info->queueLock));
queueEmpty = (info->queueCount == 0) ? TRUE : FALSE;
LeaveCriticalSection(&(info->queueLock));
if (queueEmpty) {
NSCooperativeThreadBlocking();
WaitForSingleObject(info->queueEvent, INFINITE);
NSCooperativeThreadWaiting();
}
CFHostRequest *request = NULL;
EnterCriticalSection(&(info->queueLock));
while (info->queueCount > 0 && request == NULL) {
request = info->queue[0];
info->queueCount--;
int i;
for (i = 0; i < info->queueCount; i++)
info->queue[i] = info->queue[i + 1];
}
if (request != NULL)
request->_state = CFHostRequestInProgress;
LeaveCriticalSection(&(info->queueLock));
if (request != NULL) {
struct addrinfo *addressList = blockingRequest(request);
HANDLE event = NULL;
EnterCriticalSection(&(info->queueLock));
request->_addressList = addressList;
if (request->_state == CFHostRequestInProgress) {
request->_state = CFHostRequestDone;
event = request->_event;
request = NULL;
}
LeaveCriticalSection(&(info->queueLock));
if (request != NULL) {
if (request->_addressList != NULL)
any_freeaddrinfo(request->_addressList);
NSZoneFree(NULL, request->_name);
NSZoneFree(NULL, request);
}
if (event != NULL) {
SetEvent(event);
}
}
}
return 0;
}
- (void) handleMonitorIndicatesSignaled: (NSHandleMonitor_win32 *) monitor {
if (_request == NULL) {
// cancelled
return;
}
CloseHandle(_request->_event);
_request->_event = NULL;
[_monitor invalidate];
[_monitor setDelegate: nil];
[_monitor autorelease];
_monitor = nil;
if (_addressing != NULL) {
CFRelease(_addressing);
_addressing = NULL;
}
if (_request->_addressList == NULL) {
if (NSDebugEnabled)
NSLog(@"Host %@ did not resolve", _name);
} else {
int i;
_addressing = CFArrayCreateMutable(NULL, 0, &kCFTypeArrayCallBacks);
struct addrinfo *check = _request->_addressList, *next;
for (; check != NULL; check = next) {
next = check->ai_next;
CFDataRef data = CFDataCreate(NULL, (void *) check->ai_addr,
check->ai_addrlen);
CFArrayAppendValue(_addressing, data);
CFRelease(data);
}
}
if (_request->_addressList != NULL)
any_freeaddrinfo(_request->_addressList);
NSZoneFree(NULL, _request->_name);
NSZoneFree(NULL, _request);
_request = NULL;
if (_callback != NULL)
_callback(self, kCFHostAddresses, NULL, _context.info);
}
- (void) handleMonitorIndicatesAbandoned: (NSHandleMonitor_win32 *) monitor {
}
static pthread_mutex_t asyncCreationLock = PTHREAD_MUTEX_INITIALIZER;
static CFAddressResolverThreadInfo *asyncInfo;
static CFAddressResolverThreadInfo *startResolverThreadIfNeeded() {
pthread_mutex_lock(&asyncCreationLock);
if (asyncInfo == NULL) {
asyncInfo = NSZoneMalloc(NULL, sizeof(CFAddressResolverThreadInfo));
InitializeCriticalSection(&(asyncInfo->queueLock));
asyncInfo->queueEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
asyncInfo->queueCapacity = 1;
asyncInfo->queueCount = 0;
asyncInfo->queue = NSZoneMalloc(NULL, sizeof(CFHostRequest *) *
asyncInfo->queueCapacity);
unsigned threadAddr;
_beginthreadex(NULL, 0, addressResolverThread, asyncInfo, 0,
&threadAddr);
}
pthread_mutex_unlock(&asyncCreationLock);
return asyncInfo;
}
#if 1
#define SYNCHRONOUS 0
#else
#warning disable
#define SYNCHRONOUS 1
#endif
static void queueHostToAddressResolver(CFHostRef host) {
if (SYNCHRONOUS) {
int addressCount = 0;
struct addrinfo *addressList = blockingRequest(host->_request);
host->_request->_state = CFHostRequestDone;
host->_request->_addressList = addressList;
SetEvent(host->_request->_event);
} else {
CFAddressResolverThreadInfo *info = startResolverThreadIfNeeded();
EnterCriticalSection(&(info->queueLock));
if (info->queueCount + 1 >= info->queueCapacity) {
info->queueCapacity *= 2;
info->queue = NSZoneRealloc(NULL, info->queue,
sizeof(CFHostRequest *) *
info->queueCapacity);
}
info->queue[info->queueCount++] = host->_request;
LeaveCriticalSection(&(info->queueLock));
SetEvent(info->queueEvent);
}
}
static void cancelHostInAddressResolverIfNeeded(CFHostRef self) {
if (self->_request == NULL)
return;
if (SYNCHRONOUS) {
} else {
CFAddressResolverThreadInfo *info;
if ((info = asyncInfo) == NULL)
return;
EnterCriticalSection(&(info->queueLock));
if (self->_request->_state == CFHostRequestInProgress) {
self->_request->_state = CFHostRequestDeallocate;
self->_request = NULL;
} else {
int i;
for (i = 0; i < info->queueCount; i++)
if (info->queue[i] == self->_request) {
info->queueCount--;
for (; i < info->queueCount; i++)
info->queue[i] = info->queue[i + 1];
break;
}
}
LeaveCriticalSection(&(info->queueLock));
if (self->_request != NULL) {
NSZoneFree(NULL, self->_request->_name);
NSZoneFree(NULL, self->_request);
self->_request = NULL;
}
}
}
#else
static void queueHostToAddressResolver(CFHostRef host) {
}
static void cancelHostInAddressResolverIfNeeded(CFHostRef host) {
}
#endif
CFTypeID CFHostGetTypeID() {
NSUnimplementedFunction();
return 0;
}
CFHostRef CFHostCreateCopy(CFAllocatorRef alloc, CFHostRef self) {
NSUnimplementedFunction();
return 0;
}
CFHostRef CFHostCreateWithAddress(CFAllocatorRef allocator, CFDataRef address) {
NSUnimplementedFunction();
return 0;
}
CFHostRef CFHostCreateWithName(CFAllocatorRef allocator, CFStringRef name) {
CFHostRef result = (CFHostRef) [__CFHost allocWithZone: NULL];
result->_name = CFStringCreateCopy(allocator, name);
return result;
}
- (void) dealloc {
CFRelease(_name);
if (self->_context.info != NULL && self->_context.release != NULL)
self->_context.release(self->_context.info);
CFRelease(_addressing);
#ifdef WINDOWS
if (self->_event != NULL)
CloseHandle(self->_event);
[self->_monitor setDelegate: nil];
[self->_monitor invalidate];
[self->_monitor release];
#endif
[super dealloc];
}
CFArrayRef CFHostGetAddressing(CFHostRef self, Boolean *hasBeenResolved) {
if (hasBeenResolved != NULL)
*hasBeenResolved = self->_hasResolvedAddressing;
return self->_addressing;
}
CFArrayRef CFHostGetNames(CFHostRef self, Boolean *hasBeenResolved) {
NSUnimplementedFunction();
return 0;
}
CFDataRef CFHostGetReachability(CFHostRef self, Boolean *hasBeenResolved) {
NSUnimplementedFunction();
return 0;
}
Boolean CFHostSetClient(CFHostRef self, CFHostClientCallBack callback,
CFHostClientContext *context)
{
if (self->_context.info != NULL && self->_context.release != NULL)
self->_context.release(self->_context.info);
self->_callback = callback;
if (context != NULL)
self->_context = *context;
else {
self->_context.version = 0;
self->_context.info = NULL;
self->_context.retain = NULL;
self->_context.release = NULL;
self->_context.copyDescription = NULL;
}
if (self->_callback != NULL) {
if (self->_context.info != NULL && self->_context.retain != NULL)
self->_context.info =
(void *) self->_context.retain(self->_context.info);
}
return TRUE;
}
static void CFHostCreateEventIfNeeded(CFHostRef self) {
#ifdef WINDOWS
if (self->_event == NULL) {
self->_event = CreateEvent(NULL, FALSE, FALSE, NULL);
self->_monitor = [[NSHandleMonitor_win32
handleMonitorWithHandle: self->_event] retain];
[self->_monitor setDelegate: self];
[self->_monitor setCurrentActivity: Win32HandleSignaled];
}
#endif
}
Boolean CFHostStartInfoResolution(CFHostRef self, CFHostInfoType infoType,
CFStreamError *streamError)
{
switch (infoType) {
case kCFHostAddresses:
if (self->_hasResolvedAddressing) {
NSLog(@"CFHostStartInfoResolution, addressing already resolved");
return TRUE;
}
if (self->_callback != NULL) {
if (self->_request != NULL) {
NSLog(@"CFHostStartInfoResolution already started");
return FALSE;
}
char *cStringName = NSZoneMalloc(NULL, MAXHOSTNAMELEN + 1);
// this encoding is probably wrong but CFStringGetCString can do it
if (!CFStringGetCString(self->_name, cStringName, MAXHOSTNAMELEN,
kCFStringEncodingISOLatin1)) {
NSLog(@"CFStringGetCString failed for CFHostRef name %@",
self->_name);
NSZoneFree(NULL, cStringName);
return FALSE;
}
self->_request = NSZoneMalloc(NULL, sizeof(CFHostRequest));
self->_request->_state = CFHostRequestInQueue;
self->_request->_name = cStringName;
self->_request->_addressList = NULL;
CFHostCreateEventIfNeeded(self);
#ifdef WINDOWS
self->_request->_event = self->_event;
#endif
queueHostToAddressResolver(self);
return TRUE;
} else {
NSUnimplementedFunction();
return FALSE;
}
case kCFHostNames:
NSUnimplementedFunction();
return FALSE;
case kCFHostReachability:
NSUnimplementedFunction();
return FALSE;
default:
[NSException raise: NSInvalidArgumentException
format: @"CFHostStartInfoResolution CFHostInfoType is not "
@"valid (%d)",
infoType];
return FALSE;
}
}
void CFHostCancelInfoResolution(CFHostRef self, CFHostInfoType infoType) {
switch (infoType) {
case kCFHostAddresses:
cancelHostInAddressResolverIfNeeded(self);
break;
case kCFHostNames:
NSUnimplementedFunction();
break;
case kCFHostReachability:
NSUnimplementedFunction();
break;
default:
[NSException raise: NSInvalidArgumentException
format: @"CFHostCancelInfoResolution CFHostInfoType is not "
@"valid (%d)",
infoType];
break;
}
}
void CFHostScheduleWithRunLoop(CFHostRef self, CFRunLoopRef runLoop,
CFStringRef mode)
{
if (runLoop != CFRunLoopGetCurrent())
NSUnimplementedFunction();
CFHostCreateEventIfNeeded(self);
#ifdef WINDOWS
[(NSRunLoop *) runLoop addInputSource: self->_monitor
forMode: (NSString *) mode];
#endif
}
void CFHostUnscheduleFromRunLoop(CFHostRef self, CFRunLoopRef runLoop,
CFStringRef mode)
{
if (runLoop != CFRunLoopGetCurrent())
NSUnimplementedFunction();
#ifdef WINDOWS
[(NSRunLoop *) runLoop removeInputSource: self->_monitor
forMode: (NSString *) mode];
#endif
}
@end

View File

@ -1,3 +0,0 @@
#import <CFNetwork/CFHost.h>
typedef struct __CFNetService *CFNetServiceRef;

View File

@ -1,3 +0,0 @@
#import <CFNetwork/CFHost.h>
#import <CFNetwork/CFNetServices.h>
#import <CFNetwork/CFSocketStream.h>

View File

@ -1,303 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
FE74338610A89A9D004CDF00 /* CFNetwork.h in Headers */ = {isa = PBXBuildFile; fileRef = FE74338510A89A9D004CDF00 /* CFNetwork.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEC121A910EFC6C000FD1B47 /* CFSocketStream.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC121A810EFC6C000FD1B47 /* CFSocketStream.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEC121CD10EFC89500FD1B47 /* CFNetServices.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC121CC10EFC89500FD1B47 /* CFNetServices.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEC121D710EFC92800FD1B47 /* CFHost.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC121D610EFC92800FD1B47 /* CFHost.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEC1221910EFCB9A00FD1B47 /* CFNetworkExport.h in Headers */ = {isa = PBXBuildFile; fileRef = FEC1221810EFCB9A00FD1B47 /* CFNetworkExport.h */; settings = {ATTRIBUTES = (Public, ); }; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CFNetwork.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CFNetwork.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE7084D21431172900B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FE74338510A89A9D004CDF00 /* CFNetwork.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFNetwork.h; sourceTree = "<group>"; };
FEC0A3A117093576002A60B7 /* darwin-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A217093576002A60B7 /* darwin-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A317093576002A60B7 /* darwin-x86_64-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A417093576002A60B7 /* freebsd-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A517093576002A60B7 /* linux-arm-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A617093576002A60B7 /* linux-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A717093576002A60B7 /* linux-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3A817093576002A60B7 /* solaris-sparc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc-framework.xcconfig"; sourceTree = "<group>"; };
FEC121A810EFC6C000FD1B47 /* CFSocketStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFSocketStream.h; sourceTree = "<group>"; };
FEC121CC10EFC89500FD1B47 /* CFNetServices.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFNetServices.h; sourceTree = "<group>"; };
FEC121D610EFC92800FD1B47 /* CFHost.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFHost.h; sourceTree = "<group>"; };
FEC1221810EFCB9A00FD1B47 /* CFNetworkExport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFNetworkExport.h; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
8DC2EF5B0486A6940098B216 /* CFNetwork.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* CFNetwork */ = {
isa = PBXGroup;
children = (
FE1E55BD143030B7000D60A1 /* xcconfig */,
FEC1221810EFCB9A00FD1B47 /* CFNetworkExport.h */,
FEC121D610EFC92800FD1B47 /* CFHost.h */,
FEC121A810EFC6C000FD1B47 /* CFSocketStream.h */,
FE74338510A89A9D004CDF00 /* CFNetwork.h */,
FEC121CC10EFC89500FD1B47 /* CFNetServices.h */,
32C88DFF0371C24200C91783 /* Other Sources */,
089C1665FE841158C02AAC07 /* Resources */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
034768DFFF38A50411DB9C8B /* Products */,
);
indentWidth = 4;
name = CFNetwork;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
089C1666FE841158C02AAC07 /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
);
name = "Other Sources";
sourceTree = "<group>";
};
FE1E55BD143030B7000D60A1 /* xcconfig */ = {
isa = PBXGroup;
children = (
FEC0A3A117093576002A60B7 /* darwin-i386-framework.xcconfig */,
FEC0A3A217093576002A60B7 /* darwin-ppc-framework.xcconfig */,
FEC0A3A317093576002A60B7 /* darwin-x86_64-framework.xcconfig */,
FEC0A3A417093576002A60B7 /* freebsd-i386-framework.xcconfig */,
FEC0A3A517093576002A60B7 /* linux-arm-framework.xcconfig */,
FEC0A3A617093576002A60B7 /* linux-i386-framework.xcconfig */,
FEC0A3A717093576002A60B7 /* linux-ppc-framework.xcconfig */,
FEC0A3A817093576002A60B7 /* solaris-sparc-framework.xcconfig */,
FE7084D21431172900B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8DC2EF500486A6940098B216 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE74338610A89A9D004CDF00 /* CFNetwork.h in Headers */,
FEC121A910EFC6C000FD1B47 /* CFSocketStream.h in Headers */,
FEC121CD10EFC89500FD1B47 /* CFNetServices.h in Headers */,
FEC121D710EFC92800FD1B47 /* CFHost.h in Headers */,
FEC1221910EFCB9A00FD1B47 /* CFNetworkExport.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8DC2EF4F0486A6940098B216 /* CFNetwork */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CFNetwork" */;
buildPhases = (
8DC2EF500486A6940098B216 /* Headers */,
);
buildRules = (
);
dependencies = (
);
name = CFNetwork;
productInstallPath = "$(HOME)/Library/Frameworks";
productName = CFNetwork;
productReference = 8DC2EF5B0486A6940098B216 /* CFNetwork.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CFNetwork" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* CFNetwork */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* CFNetwork */,
);
};
/* End PBXProject section */
/* Begin PBXVariantGroup section */
089C1666FE841158C02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1DEB91AE08733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE7084D21431172900B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CFNetwork;
};
name = "Windows-i386";
};
1DEB91AF08733DA50010E9CD /* Linux-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3A617093576002A60B7 /* linux-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CFNetwork;
};
name = "Linux-i386";
};
1DEB91B208733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Windows-i386";
};
1DEB91B308733DA50010E9CD /* Linux-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Linux-i386";
};
CFC5B4651AF4687600FBB52A /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Darwin-i386";
};
CFC5B4661AF4687600FBB52A /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3A117093576002A60B7 /* darwin-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CFNetwork;
};
name = "Darwin-i386";
};
CFC5B46B1AF4687C00FBB52A /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "FreeBSD-i386";
};
CFC5B46C1AF4687C00FBB52A /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3A417093576002A60B7 /* freebsd-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CFNetwork;
};
name = "FreeBSD-i386";
};
CFC5B4711AF468AB00FBB52A /* Darwin-x86_64 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Darwin-x86_64";
};
CFC5B4721AF468AB00FBB52A /* Darwin-x86_64 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3A317093576002A60B7 /* darwin-x86_64-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CFNetwork;
};
name = "Darwin-x86_64";
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CFNetwork" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91AE08733DA50010E9CD /* Windows-i386 */,
CFC5B46C1AF4687C00FBB52A /* FreeBSD-i386 */,
CFC5B4661AF4687600FBB52A /* Darwin-i386 */,
CFC5B4721AF468AB00FBB52A /* Darwin-x86_64 */,
1DEB91AF08733DA50010E9CD /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Linux-i386";
};
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CFNetwork" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B208733DA50010E9CD /* Windows-i386 */,
CFC5B46B1AF4687C00FBB52A /* FreeBSD-i386 */,
CFC5B4651AF4687600FBB52A /* Darwin-i386 */,
CFC5B4711AF468AB00FBB52A /* Darwin-x86_64 */,
1DEB91B308733DA50010E9CD /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Linux-i386";
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

View File

@ -1,34 +0,0 @@
#ifdef __clang__
#define CFNETWORK_DLLEXPORT
#define CFNETWORK_DLLIMPORT
#else
#define CFNETWORK_DLLEXPORT __declspec(dllexport)
#define CFNETWORK_DLLIMPORT __declspec(dllimport)
#endif
#ifdef __cplusplus
#if defined(__WIN32__)
#if defined(CFNETWORK_INSIDE_BUILD)
#define CFNETWORK_EXPORT extern "C" CFNETWORK_DLLEXPORT
#else
#define CFNETWORK_EXPORT extern "C" CFNETWORK_DLLIMPORT
#endif
#else
#define CFNETWORK_EXPORT extern "C"
#endif
#else
#if defined(__WIN32__)
#if defined(CFNETWORK_INSIDE_BUILD)
#define CFNETWORK_EXPORT CFNETWORK_DLLEXPORT extern
#else
#define CFNETWORK_EXPORT CFNETWORK_DLLIMPORT extern
#endif
#else
#define CFNETWORK_EXPORT extern
#endif
#endif // __cplusplus

View File

@ -1,84 +0,0 @@
#import <CFNetwork/CFNetServices.h>
#import <CFNetwork/CFNetworkExport.h>
#import <CoreFoundation/CoreFoundation.h>
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertyShouldCloseNativeSocket;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySocketSecurityLevel;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSProxy;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySSLPeerCertificates;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySSLPeerTrust;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySSLSettings;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertyProxyLocalByPass;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySocketRemoteHost;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySocketRemoteNetService;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLLevel;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLAllowsExpiredCertificates;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLAllowsExpiredRoots;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLAllowsAnyRoot;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLValidatesCertificateChain;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLPeerName;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLCertificates;
CFNETWORK_EXPORT const CFStringRef kCFStreamSSLIsServer;
typedef enum {
kCFStreamSocketSecurityNone = 0,
kCFStreamSocketSecuritySSLv2,
kCFStreamSocketSecuritySSLv3,
kCFStreamSocketSecuritySSLv23,
kCFStreamSocketSecurityTLSv1
} CFStreamSocketSecurityProtocol;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSecurityLevelNone;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSecurityLevelSSLv2;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSecurityLevelSSLv3;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSecurityLevelTLSv1;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSecurityLevelNegotiatedSSL;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSProxyHost;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSProxyPort;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSVersion;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSOCKSVersion4;
CFNETWORK_EXPORT const CFStringRef kCFStreamSocketSOCKSVersion5;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSUser;
CFNETWORK_EXPORT const CFStringRef kCFStreamPropertySOCKSPassword;
CFNETWORK_EXPORT const CFIndex kCFStreamErrorDomainWinSock;
enum {
kCFStreamErrorSOCKSSubDomainNone = 0,
kCFStreamErrorSOCKSSubDomainVersionCode = 1,
kCFStreamErrorSOCKS4SubDomainResponse = 2,
kCFStreamErrorSOCKS5SubDomainUserPass = 3,
kCFStreamErrorSOCKS5SubDomainMethod = 4,
kCFStreamErrorSOCKS5SubDomainResponse = 5
};
/* kCFStreamErrorSOCKSSubDomainNone*/
enum {
kCFStreamErrorSOCKS5BadResponseAddr = 1,
kCFStreamErrorSOCKS5BadState = 2,
kCFStreamErrorSOCKSUnknownClientVersion = 3
};
/* kCFStreamErrorSOCKS4SubDomainResponse*/
enum {
kCFStreamErrorSOCKS4RequestFailed = 91,
kCFStreamErrorSOCKS4IdentdFailed = 92,
kCFStreamErrorSOCKS4IdConflict = 93
};
/* kCFStreamErrorSOCKS5SubDomainMethod*/
enum {
kSOCKS5NoAcceptableMethod = 0xFF
};
CFNETWORK_EXPORT Boolean CFSocketStreamPairSetSecurityProtocol(CFReadStreamRef socketReadStream, CFWriteStreamRef socketWriteStream, CFStreamSocketSecurityProtocol securityProtocol);
CFNETWORK_EXPORT SInt32 CFSocketStreamSOCKSGetError(CFStreamError *error);
CFNETWORK_EXPORT SInt32 CFSocketStreamSOCKSGetErrorSubdomain(CFStreamError *error);
CFNETWORK_EXPORT void CFStreamCreatePairWithSocketToCFHost(CFAllocatorRef alloc, CFHostRef host, SInt32 port, CFReadStreamRef *readStream, CFWriteStreamRef *writeStream);
CFNETWORK_EXPORT void CFStreamCreatePairWithSocketToNetService(CFAllocatorRef alloc, CFNetServiceRef service, CFReadStreamRef *readStream, CFWriteStreamRef *writeStream);

View File

@ -1,63 +0,0 @@
#import <CFNetwork/CFSocketStream.h>
#import <Foundation/NSString.h>
/************* These values are also in NSStream, keep in sync */
const CFStringRef kCFStreamPropertyShouldCloseNativeSocket =
(CFStringRef) @"kCFStreamPropertyShouldCloseNativeSocket";
const CFStringRef kCFStreamPropertySocketSecurityLevel =
(CFStringRef) @"kCFStreamPropertySocketSecurityLevel";
const CFStringRef kCFStreamPropertySOCKSProxy =
(CFStringRef) @"kCFStreamPropertySOCKSProxy";
const CFStringRef kCFStreamPropertySSLPeerCertificates =
(CFStringRef) @"kCFStreamPropertySSLPeerCertificates";
const CFStringRef kCFStreamPropertySSLPeerTrust =
(CFStringRef) @"kCFStreamPropertySSLPeerTrust";
const CFStringRef kCFStreamPropertySSLSettings =
(CFStringRef) @"kCFStreamPropertySSLSettings";
const CFStringRef kCFStreamPropertyProxyLocalByPass =
(CFStringRef) @"kCFStreamPropertyProxyLocalByPass";
const CFStringRef kCFStreamPropertySocketRemoteHost =
(CFStringRef) @"kCFStreamPropertySocketRemoteHost";
const CFStringRef kCFStreamPropertySocketRemoteNetService =
(CFStringRef) @"kCFStreamPropertySocketRemoteNetService";
const CFStringRef kCFStreamSSLLevel = (CFStringRef) @"kCFStreamSSLLevel";
const CFStringRef kCFStreamSSLAllowsExpiredCertificates =
(CFStringRef) @"kCFStreamSSLAllowsExpiredCertificates";
const CFStringRef kCFStreamSSLAllowsExpiredRoots =
(CFStringRef) @"kCFStreamSSLAllowsExpiredRoots";
const CFStringRef kCFStreamSSLAllowsAnyRoot =
(CFStringRef) @"kCFStreamSSLAllowsAnyRoot";
const CFStringRef kCFStreamSSLValidatesCertificateChain =
(CFStringRef) @"kCFStreamSSLValidatesCertificateChain";
const CFStringRef kCFStreamSSLPeerName = (CFStringRef) @"kCFStreamSSLPeerName";
const CFStringRef kCFStreamSSLCertificates =
(CFStringRef) @"kCFStreamSSLCertificates";
const CFStringRef kCFStreamSSLIsServer = (CFStringRef) @"kCFStreamSSLIsServer";
const CFStringRef kCFStreamSocketSecurityLevelNone =
(CFStringRef) @"kCFStreamSocketSecurityLevelNone";
const CFStringRef kCFStreamSocketSecurityLevelSSLv2 =
(CFStringRef) @"kCFStreamSocketSecurityLevelSSLv2";
const CFStringRef kCFStreamSocketSecurityLevelSSLv3 =
(CFStringRef) @"kCFStreamSocketSecurityLevelSSLv3";
const CFStringRef kCFStreamSocketSecurityLevelTLSv1 =
(CFStringRef) @"kCFStreamSocketSecurityLevelTLSv1";
const CFStringRef kCFStreamSocketSecurityLevelNegotiatedSSL =
(CFStringRef) @"kCFStreamSocketSecurityLevelNegotiatedSSL";
const CFStringRef kCFStreamPropertySOCKSProxyHost =
(CFStringRef) @"kCFStreamPropertySOCKSProxyHost";
const CFStringRef kCFStreamPropertySOCKSProxyPort =
(CFStringRef) @"kCFStreamPropertySOCKSProxyPort";
const CFStringRef kCFStreamPropertySOCKSVersion =
(CFStringRef) @"kCFStreamPropertySOCKSVersion";
const CFStringRef kCFStreamSocketSOCKSVersion4 =
(CFStringRef) @"kCFStreamSocketSOCKSVersion4";
const CFStringRef kCFStreamSocketSOCKSVersion5 =
(CFStringRef) @"kCFStreamSocketSOCKSVersion5";
const CFStringRef kCFStreamPropertySOCKSUser =
(CFStringRef) @"kCFStreamPropertySOCKSUser";
const CFStringRef kCFStreamPropertySOCKSPassword =
(CFStringRef) @"kCFStreamPropertySOCKSPassword";

View File

@ -1,2 +0,0 @@
/* Localized versions of Info.plist keys */

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//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></string>
<key>CFBundleIdentifier</key>
<string>org.cocotron.CFNetwork</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>OBJC</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -1,41 +0,0 @@
#import <CFNetwork/CFSocketStream.h>
#import <CoreFoundation/CFDictionary.h>
#import <Foundation/CFSSLHandler.h>
#import <openssl/ssl.h>
@class NSSocket, NSMutableData;
@interface CFSSLHandler_openssl : CFSSLHandler {
CFDictionaryRef _properties;
SSL_METHOD *_method;
SSL_CTX *_context;
SSL *_connection;
BIO *_incoming;
BIO *_outgoing;
NSInteger _stableBufferCapacity;
uint8_t *_stableBuffer;
NSMutableData *_readBuffer;
}
- initWithProperties: (CFDictionaryRef) properties;
- (BOOL) isHandshaking;
- (NSInteger) writePlaintext: (const uint8_t *) buffer
maxLength: (NSUInteger) length;
- (NSInteger) writeBytesAvailable;
- (BOOL) wantsMoreIncoming;
- (NSInteger) readEncrypted: (uint8_t *) buffer maxLength: (NSUInteger) length;
- (NSInteger) writeEncrypted: (const uint8_t *) buffer
maxLength: (NSUInteger) length;
- (NSInteger) readBytesAvailable;
- (NSInteger) readPlaintext: (uint8_t *) buffer maxLength: (NSUInteger) length;
- (NSInteger) transferOneBufferFromSSLToSocket: (NSSocket *) socket;
- (NSInteger) transferOneBufferFromSocketToSSL: (NSSocket *) socket;
- (void) runWithSocket: (NSSocket *) socket;
@end

View File

@ -1,325 +0,0 @@
#import "CFSSLHandler_openssl.h"
#import <Foundation/NSData.h>
#import <Foundation/NSRaiseException.h>
#import <Foundation/NSSocket.h>
#import <openssl/err.h>
#include <pthread.h>
@implementation CFSSLHandler (openssl)
+ allocWithZone: (NSZone *) zone {
return NSAllocateObject([CFSSLHandler_openssl class], 0, zone);
}
@end
@implementation CFSSLHandler_openssl
static pthread_mutex_t initLock = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t *lockTable;
static void locking_function(int mode, int idx, const char *file, int line) {
if (mode & CRYPTO_LOCK) {
pthread_mutex_lock(&(lockTable[idx]));
} else {
pthread_mutex_unlock(&(lockTable[idx]));
}
}
#if 0
// We don't need this on Windows but it should be implemented generally
static threadid_func(CRYPTO_THREADID *id){
}
#endif
+ (void) initialize {
if (self == [CFSSLHandler_openssl class]) {
pthread_mutex_lock(&initLock);
CRYPTO_malloc_init();
SSL_load_error_strings();
ERR_load_BIO_strings();
SSL_library_init();
int i, numberOfLocks = CRYPTO_num_locks();
lockTable = OPENSSL_malloc(numberOfLocks * sizeof(pthread_mutex_t));
for (i = 0; i < numberOfLocks; i++)
pthread_mutex_init(&(lockTable[i]), NULL);
CRYPTO_set_locking_callback(locking_function);
pthread_mutex_unlock(&initLock);
}
}
- initWithProperties: (CFDictionaryRef) properties {
_properties = CFRetain(properties);
CFStringRef level = CFDictionaryGetValue(_properties, kCFStreamSSLLevel);
if (level == NULL)
_method = SSLv23_client_method();
else if (CFStringCompare(level, kCFStreamSocketSecurityLevelSSLv3, 0) ==
kCFCompareEqualTo)
_method = SSLv3_client_method();
else if (CFStringCompare(level, kCFStreamSocketSecurityLevelSSLv2, 0) ==
kCFCompareEqualTo)
_method = SSLv2_client_method();
else if (CFStringCompare(level, kCFStreamSocketSecurityLevelTLSv1, 0) ==
kCFCompareEqualTo)
_method = TLSv1_client_method();
else
_method = SSLv23_client_method();
CFNumberRef validatesCertChain = CFDictionaryGetValue(
_properties, kCFStreamSSLValidatesCertificateChain);
if (validatesCertChain != NULL) {
}
_context = SSL_CTX_new(_method);
_connection = SSL_new(_context);
_incoming = BIO_new(BIO_s_mem());
_outgoing = BIO_new(BIO_s_mem());
SSL_set_bio(_connection, _incoming, _outgoing);
SSL_set_connect_state(_connection);
/* The SSL_read doc.s say that when SSL_read returns Wants More you should
use the same arguments the next call. It is a little ambiguous whether
the same exact pointer should be used, so we don't chance it and just
maintain a buffer for this purpose. */
_stableBufferCapacity = 8192;
_stableBuffer = NSZoneMalloc(NULL, _stableBufferCapacity);
_readBuffer = [[NSMutableData alloc] init];
return self;
}
- (void) dealloc {
CFRelease(_properties);
SSL_free(_connection);
NSZoneFree(NULL, _stableBuffer);
[super dealloc];
}
- (void) close {
SSL_shutdown(_connection);
}
- (BOOL) isHandshaking {
return SSL_in_init(_connection) ? YES : NO;
}
- (NSInteger) writePlaintext: (const uint8_t *) buffer
maxLength: (NSUInteger) length
{
int result = SSL_write(_connection, buffer, length);
if (result < 0) {
int error = SSL_get_error(_connection, result);
switch (error) {
case SSL_ERROR_ZERO_RETURN:
break;
case SSL_ERROR_NONE:
break;
case SSL_ERROR_WANT_READ:
break;
default:;
char errorCString[256];
while (error != 0) {
ERR_error_string_n(error, errorCString, sizeof(errorCString));
NSCLog("SSL_write(%d) returned error %d - %s", length, error,
errorCString);
error = ERR_get_error();
}
break;
}
}
return result;
}
- (NSInteger) writeBytesAvailable {
return BIO_ctrl_pending(_outgoing);
}
- (BOOL) wantsMoreIncoming {
return SSL_want_read(_connection);
}
- (NSInteger) readEncrypted: (uint8_t *) buffer maxLength: (NSUInteger) length {
int check = BIO_read(_outgoing, buffer, length);
if (check <= 0) {
// This shouldn't happen unless we read when not ready
NSCLog("BIO_read(_outgoing,buffer,%d) returned %d ", length, check);
}
return check;
}
- (NSInteger) writeEncrypted: (const uint8_t *) buffer
maxLength: (NSUInteger) length
{
size_t check = BIO_write(_incoming, buffer, length);
if (check <= 0) {
// This shouldn't happen unless we are out of memory?
NSCLog("BIO_write(_incoming,buffer,%d) returned %d ", length, check);
}
return check;
}
- (NSInteger) _readPostSSL: (uint8_t *) buffer maxLength: (NSUInteger) length {
int check = SSL_read(_connection, buffer, length);
if (check <= 0) {
int error = SSL_get_error(_connection, check);
switch (error) {
case SSL_ERROR_ZERO_RETURN:
return 0;
case SSL_ERROR_NONE:
return 0;
case SSL_ERROR_WANT_READ:
return 0;
default:;
char errorCString[256];
while (error != 0) {
ERR_error_string_n(error, errorCString, sizeof(errorCString));
NSCLog("SSL_read(%d) returned error %d - %s", length, error,
errorCString);
error = ERR_get_error();
}
break;
}
}
return check;
}
- (NSInteger) readBytesAvailable {
/* SSL_pending() is useless here because it doesn't actually process
anything, it will return 0 when there are bytes available
post-processing.
*/
if ([_readBuffer length] > 0)
return [_readBuffer length];
else {
NSInteger result = [self _readPostSSL: _stableBuffer
maxLength: _stableBufferCapacity];
if (result <= 0)
return 0;
[_readBuffer appendBytes: _stableBuffer length: result];
return result;
}
}
- (NSInteger) readPlaintext: (uint8_t *) buffer maxLength: (NSUInteger) length {
if ([_readBuffer length] > 0) {
NSInteger qty = MIN([_readBuffer length], length);
[_readBuffer getBytes: buffer length: qty];
[_readBuffer replaceBytesInRange: NSMakeRange(0, qty)
withBytes: NULL
length: 0];
return qty;
}
return [self _readPostSSL: buffer maxLength: length];
}
- (NSInteger) transferOneBufferFromSSLToSocket: (NSSocket *) socket {
NSInteger available = [self readEncrypted: _stableBuffer
maxLength: _stableBufferCapacity];
if (available <= 0)
return available;
else {
NSInteger check = [socket write: _stableBuffer maxLength: available];
if (check != available)
NSCLog("failure socket write:%d=%d", available, check);
return check;
}
}
- (NSInteger) transferOneBufferFromSocketToSSL: (NSSocket *) socket {
NSInteger result = [socket read: _stableBuffer
maxLength: _stableBufferCapacity];
if (result <= 0)
return result;
NSInteger check;
if ((check = [self writeEncrypted: _stableBuffer
maxLength: result]) != result) {
NSCLog("[sslHandler writeEncrypted:socketBuffer maxLength:%d] failed "
"%d",
result, check);
}
return result;
}
- (void) runHandshakeIfNeeded: (NSSocket *) socket {
while ([self isHandshaking]) {
int check = SSL_do_handshake(_connection);
if (check == 1) {
break;
}
if (check == 0) {
break;
}
if ([self writeBytesAvailable]) {
if ((check = [self transferOneBufferFromSSLToSocket: socket]) <= 0)
break;
}
if ([self wantsMoreIncoming]) {
if ((check = [self transferOneBufferFromSocketToSSL: socket]) <= 0)
break;
}
}
}
- (void) runWithSocket: (NSSocket *) socket {
while ([self writeBytesAvailable] || [self wantsMoreIncoming]) {
NSInteger check;
if ([self writeBytesAvailable]) {
if ((check = [self transferOneBufferFromSSLToSocket: socket]) <= 0)
break;
}
if ([self wantsMoreIncoming]) {
if ((check = [self transferOneBufferFromSocketToSSL: socket]) <= 0)
break;
}
}
}
@end

View File

@ -1,417 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
8D576314048677EA00EA77CD /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0AA1909FFE8422F4C02AAC07 /* Foundation.framework */; };
8D5B49A804867FD3000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8D5B49A704867FD3000E48DA /* InfoPlist.strings */; };
FE1DDDEC1711253B003B3AF8 /* windows-i386-bundle.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = FE1DDDEB1711253B003B3AF8 /* windows-i386-bundle.xcconfig */; };
FE5C8314121D81470063E96F /* CFSSLHandler_openssl.m in Sources */ = {isa = PBXBuildFile; fileRef = FE5C8313121D81470063E96F /* CFSSLHandler_openssl.m */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE0513B6121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01A7EC0C5D9B6900AEA51A;
remoteInfo = "Foundation-Windows-i386";
};
FE0513B8121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 6EA04A7709E57D5F0067589C;
remoteInfo = "Foundation-Linux-i386";
};
FE0513BA121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 6E4D932B0A2642BD003D335C;
remoteInfo = "Foundation-Solaris-sparc";
};
FE0513BC121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FED70A6B0C3B3D2C000CBE5B;
remoteInfo = "Foundation-Darwin-i386";
};
FE0513BE121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FED70FB70C3C09C7000CBE5B;
remoteInfo = "Foundation-Darwin-ppc";
};
FE0513C0121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE651A870FBC844C00464BFD;
remoteInfo = "Foundation-Darwin-x86_64";
};
FE0513C2121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 28D487A90FE04E7100DC03EF;
remoteInfo = "Foundation-Linux-ppc";
};
FE0513C4121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 15D921C0105E918000171406;
remoteInfo = "Foundation-Linux-arm";
};
FE0513C6121E05F70097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE30A2FF10C6ED6F00A1BF7F;
remoteInfo = "Foundation-FreeBSD-i386";
};
FE0513C8121E05FD0097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01A5970C5D9B6900AEA51A;
remoteInfo = "Foundation-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
0AA1909FFE8422F4C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
8D576316048677EA00EA77CD /* CFSSLHandler_openssl.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CFSSLHandler_openssl.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
8D576317048677EA00EA77CD /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Foundation.xcodeproj; path = ../Foundation/Foundation.xcodeproj; sourceTree = SOURCE_ROOT; };
FE1DDDEB1711253B003B3AF8 /* windows-i386-bundle.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = "windows-i386-bundle.xcconfig"; path = "../xcconfig/windows-i386-bundle.xcconfig"; sourceTree = "<group>"; };
FE5C8312121D81470063E96F /* CFSSLHandler_openssl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFSSLHandler_openssl.h; sourceTree = "<group>"; };
FE5C8313121D81470063E96F /* CFSSLHandler_openssl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CFSSLHandler_openssl.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8D576313048677EA00EA77CD /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8D576314048677EA00EA77CD /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
089C166AFE841209C02AAC07 /* CFSSLHandler_openssl */ = {
isa = PBXGroup;
children = (
FE1DDDEB1711253B003B3AF8 /* windows-i386-bundle.xcconfig */,
FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */,
FE5C8312121D81470063E96F /* CFSSLHandler_openssl.h */,
FE5C8313121D81470063E96F /* CFSSLHandler_openssl.m */,
089C167CFE841241C02AAC07 /* Resources */,
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */,
19C28FB6FE9D52B211CA2CBB /* Products */,
);
indentWidth = 4;
name = CFSSLHandler_openssl;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
0AA1909FFE8422F4C02AAC07 /* Foundation.framework */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C167CFE841241C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8D576317048677EA00EA77CD /* Info.plist */,
8D5B49A704867FD3000E48DA /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
19C28FB6FE9D52B211CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
8D576316048677EA00EA77CD /* CFSSLHandler_openssl.bundle */,
);
name = Products;
sourceTree = "<group>";
};
FE0513AA121E05F70097BA92 /* Products */ = {
isa = PBXGroup;
children = (
FE0513B7121E05F70097BA92 /* Foundation.framework */,
FE0513B9121E05F70097BA92 /* Foundation.framework */,
FE0513BB121E05F70097BA92 /* Foundation.framework */,
FE0513BD121E05F70097BA92 /* Foundation.framework */,
FE0513BF121E05F70097BA92 /* Foundation.framework */,
FE0513C1121E05F70097BA92 /* Foundation.framework */,
FE0513C3121E05F70097BA92 /* Foundation.framework */,
FE0513C5121E05F70097BA92 /* Foundation.framework */,
FE0513C7121E05F70097BA92 /* Foundation.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
8D57630D048677EA00EA77CD /* CFSSLHandler_openssl-Windows-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB911A08733D790010E9CD /* Build configuration list for PBXNativeTarget "CFSSLHandler_openssl-Windows-i386" */;
buildPhases = (
8D57630F048677EA00EA77CD /* Resources */,
8D576311048677EA00EA77CD /* Sources */,
8D576313048677EA00EA77CD /* Frameworks */,
);
buildRules = (
);
dependencies = (
FE0513C9121E05FD0097BA92 /* PBXTargetDependency */,
);
name = "CFSSLHandler_openssl-Windows-i386";
productInstallPath = "$(HOME)/Library/Bundles";
productName = CFSSLHandler_openssl;
productReference = 8D576316048677EA00EA77CD /* CFSSLHandler_openssl.bundle */;
productType = "com.apple.product-type.bundle";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
089C1669FE841209C02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = 1DEB911E08733D790010E9CD /* Build configuration list for PBXProject "CFSSLHandler_openssl" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 089C166AFE841209C02AAC07 /* CFSSLHandler_openssl */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE0513AA121E05F70097BA92 /* Products */;
ProjectRef = FE0513A9121E05F70097BA92 /* Foundation.xcodeproj */;
},
);
projectRoot = "";
targets = (
8D57630D048677EA00EA77CD /* CFSSLHandler_openssl-Windows-i386 */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE0513B7121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513B6121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513B9121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513B8121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513BB121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513BA121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513BD121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513BC121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513BF121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513BE121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513C1121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513C0121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513C3121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513C2121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513C5121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513C4121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0513C7121E05F70097BA92 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE0513C6121E05F70097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8D57630F048677EA00EA77CD /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D5B49A804867FD3000E48DA /* InfoPlist.strings in Resources */,
FE1DDDEC1711253B003B3AF8 /* windows-i386-bundle.xcconfig in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D576311048677EA00EA77CD /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE5C8314121D81470063E96F /* CFSSLHandler_openssl.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE0513C9121E05FD0097BA92 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Foundation-Windows-i386";
targetProxy = FE0513C8121E05FD0097BA92 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
8D5B49A704867FD3000E48DA /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C167EFE841241C02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1DEB911B08733D790010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE1DDDEB1711253B003B3AF8 /* windows-i386-bundle.xcconfig */;
buildSettings = {
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .1.0.dll;
GCC_DYNAMIC_NO_PIC = NO;
GCC_OPTIMIZATION_LEVEL = 0;
HEADER_SEARCH_PATHS = "$DSTROOT/openssl-0.9.8h-1/include";
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = /Frameworks/Foundation.framework/Resources;
LIBRARY_SEARCH_PATHS = "$DSTROOT/openssl-0.9.8h-1/lib";
OTHER_LDFLAGS = (
"-shared",
"-lssl",
"-lcrypto",
"-lgdi32",
"-lws2_32",
"-Wl,--enable-auto-import",
);
PRODUCT_NAME = CFSSLHandler_openssl;
};
name = Debug;
};
1DEB911C08733D790010E9CD /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE1DDDEB1711253B003B3AF8 /* windows-i386-bundle.xcconfig */;
buildSettings = {
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .1.0.dll;
HEADER_SEARCH_PATHS = "$DSTROOT/openssl-0.9.8h-1/include";
GCC_MODEL_TUNING = G5;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = /Frameworks/Foundation.framework/Resources;
LIBRARY_SEARCH_PATHS = "$DSTROOT/openssl-0.9.8h-1/lib";
OTHER_LDFLAGS = (
"-shared",
"-lssl",
"-lcrypto",
"-lgdi32",
"-lws2_32",
"-Wl,--enable-auto-import",
);
PRODUCT_NAME = CFSSLHandler_openssl;
};
name = Release;
};
1DEB911F08733D790010E9CD /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Debug;
};
1DEB912008733D790010E9CD /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB911A08733D790010E9CD /* Build configuration list for PBXNativeTarget "CFSSLHandler_openssl-Windows-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB911B08733D790010E9CD /* Debug */,
1DEB911C08733D790010E9CD /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
1DEB911E08733D790010E9CD /* Build configuration list for PBXProject "CFSSLHandler_openssl" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB911F08733D790010E9CD /* Debug */,
1DEB912008733D790010E9CD /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 089C1669FE841209C02AAC07 /* Project object */;
}

View File

@ -1,2 +0,0 @@
/* Localized versions of Info.plist keys */

View File

@ -1,46 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//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></string>
<key>CFBundleIdentifier</key>
<string>com.yourcompany.${PRODUCT_NAME:rfc1034Identifier}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>BNDL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFPlugInDynamicRegisterFunction</key>
<string></string>
<key>CFPlugInDynamicRegistration</key>
<string>NO</string>
<key>CFPlugInFactories</key>
<dict>
<key>00000000-0000-0000-0000-000000000000</key>
<string>MyFactoryFunction</string>
</dict>
<key>CFPlugInTypes</key>
<dict>
<key>00000000-0000-0000-0000-000000000000</key>
<array>
<string>00000000-0000-0000-0000-000000000000</string>
</array>
</dict>
<key>CFPlugInUnloadFunction</key>
<string></string>
<key>NSPrincipalClass</key>
<string>CFSSHandler_openssl</string>
</dict>
</plist>

9
CMakeLists.txt Normal file
View File

@ -0,0 +1,9 @@
project(cocotron)
add_subdirectory(CoreGraphics)
add_subdirectory(Onyx2D)
add_subdirectory(AppKit)
add_subdirectory(CoreText)
add_subdirectory(Cocoa)
add_subdirectory(CoreData)
add_subdirectory(QuartzCore)

View File

@ -1,731 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
C8E0BF9F0F0E6B0E00677729 /* Cocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = FEF3B23A0B35C74700A76FD1 /* Cocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };
C8E0BFA20F0E6B0E00677729 /* Cocoa.m in Sources */ = {isa = PBXBuildFile; fileRef = FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */; };
C8E0BFA40F0E6B0E00677729 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
C8E0BFA50F0E6B0E00677729 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
FE01AB170C5D9C3400AEA51A /* Cocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = FEF3B23A0B35C74700A76FD1 /* Cocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE01AB1A0C5D9C3400AEA51A /* Cocoa.m in Sources */ = {isa = PBXBuildFile; fileRef = FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */; };
FE01AB1C0C5D9C3400AEA51A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
FE01AB1D0C5D9C3400AEA51A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
FE5A873410C6F1E8005E348A /* Cocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = FEF3B23A0B35C74700A76FD1 /* Cocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE5A873710C6F1E8005E348A /* Cocoa.m in Sources */ = {isa = PBXBuildFile; fileRef = FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */; };
FE5A873910C6F1E8005E348A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
FE5A873A10C6F1E8005E348A /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
FECC1DCC108D025D00BD4A91 /* Cocoa.h in Headers */ = {isa = PBXBuildFile; fileRef = FEF3B23A0B35C74700A76FD1 /* Cocoa.h */; settings = {ATTRIBUTES = (Public, ); }; };
FECC1DCF108D025D00BD4A91 /* Cocoa.m in Sources */ = {isa = PBXBuildFile; fileRef = FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */; };
FECC1DD1108D025D00BD4A91 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
FECC1DD2108D025D00BD4A91 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D6A5FE840307C02AAC07 /* AppKit.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE01AB240C5D9C3500AEA51A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE7135460B36427F006C9493 /* AppKit.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AAC10C5D9BCB00AEA51A;
remoteInfo = "AppKit-Windows-i386";
};
FE01AB270C5D9C3500AEA51A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3217D10BB41D16004F000A /* ApplicationServices.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AAED0C5D9BF900AEA51A;
remoteInfo = "ApplicationServices-Windows-i386";
};
FE78D107126F4CF500CC39CF /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE78D0FF126F4CF500CC39CF /* CoreData.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
remoteInfo = "CoreData-Windows-i386";
};
FE78D109126F4D0700CC39CF /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE78D0FF126F4CF500CC39CF /* CoreData.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
remoteInfo = "CoreData-Windows-i386";
};
FEF80ABD0C5D9F3000FF7CA5 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE7135460B36427F006C9493 /* AppKit.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01A8070C5D9BCB00AEA51A;
remoteInfo = "AppKit-Windows-i386";
};
FEF80ABF0C5D9F3400FF7CA5 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3217D10BB41D16004F000A /* ApplicationServices.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01AAE20C5D9BF900AEA51A;
remoteInfo = "ApplicationServices-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
0867D6A5FE840307C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
C8E0BFAA0F0E6B0E00677729 /* Cocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Cocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE01AB210C5D9C3400AEA51A /* Cocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Cocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE06B0371430E6B30071169B /* darwin-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0381430E6B30071169B /* darwin-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B0391430E6B30071169B /* darwin-x86_64.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64.xcconfig"; sourceTree = "<group>"; };
FE06B03A1430E6B30071169B /* darwin.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = darwin.xcconfig; sourceTree = "<group>"; };
FE06B03B1430E6B30071169B /* freebsd-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386.xcconfig"; sourceTree = "<group>"; };
FE06B03C1430E6B30071169B /* freebsd.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = freebsd.xcconfig; sourceTree = "<group>"; };
FE06B03D1430E6B30071169B /* linux-arm.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm.xcconfig"; sourceTree = "<group>"; };
FE06B03E1430E6B30071169B /* linux-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386.xcconfig"; sourceTree = "<group>"; };
FE06B03F1430E6B30071169B /* linux-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B0401430E6B30071169B /* linux.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = linux.xcconfig; sourceTree = "<group>"; };
FE06B0411430E6B30071169B /* platform.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = platform.xcconfig; sourceTree = "<group>"; };
FE06B0421430E6B30071169B /* solaris-sparc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc.xcconfig"; sourceTree = "<group>"; };
FE06B0431430E6B30071169B /* solaris.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = solaris.xcconfig; sourceTree = "<group>"; };
FE06B0441430E6B30071169B /* windows-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0451430E6B30071169B /* windows.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = windows.xcconfig; sourceTree = "<group>"; };
FE3217D10BB41D16004F000A /* ApplicationServices.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ApplicationServices.xcodeproj; path = ../ApplicationServices/ApplicationServices.xcodeproj; sourceTree = SOURCE_ROOT; };
FE5A873F10C6F1E8005E348A /* Cocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Cocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE7085281431174600B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FE7135460B36427F006C9493 /* AppKit.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = AppKit.xcodeproj; path = ../AppKit/AppKit.xcodeproj; sourceTree = SOURCE_ROOT; };
FE78D0FF126F4CF500CC39CF /* CoreData.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CoreData.xcodeproj; path = ../CoreData/CoreData.xcodeproj; sourceTree = SOURCE_ROOT; };
FEAC294B17AE072400EF2B9D /* windows-i386-clang.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-clang.xcconfig"; sourceTree = "<group>"; };
FECC1DD6108D025D00BD4A91 /* Cocoa.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Cocoa.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FED0C496170BCF700033C8E6 /* darwin-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386-framework.xcconfig"; sourceTree = "<group>"; };
FED0C497170BCF700033C8E6 /* darwin-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FED0C498170BCF700033C8E6 /* darwin-x86_64-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64-framework.xcconfig"; sourceTree = "<group>"; };
FED0C499170BCF700033C8E6 /* freebsd-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386-framework.xcconfig"; sourceTree = "<group>"; };
FED0C49A170BCF700033C8E6 /* linux-arm-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm-framework.xcconfig"; sourceTree = "<group>"; };
FED0C49B170BCF700033C8E6 /* linux-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386-framework.xcconfig"; sourceTree = "<group>"; };
FED0C49C170BCF700033C8E6 /* linux-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FED0C49D170BCF700033C8E6 /* solaris-sparc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc-framework.xcconfig"; sourceTree = "<group>"; };
FEF3B23A0B35C74700A76FD1 /* Cocoa.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Cocoa.h; sourceTree = "<group>"; };
FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Cocoa.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
C8E0BFA30F0E6B0E00677729 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
C8E0BFA40F0E6B0E00677729 /* Foundation.framework in Frameworks */,
C8E0BFA50F0E6B0E00677729 /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE01AB1B0C5D9C3400AEA51A /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FE01AB1C0C5D9C3400AEA51A /* Foundation.framework in Frameworks */,
FE01AB1D0C5D9C3400AEA51A /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE5A873810C6F1E8005E348A /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FE5A873910C6F1E8005E348A /* Foundation.framework in Frameworks */,
FE5A873A10C6F1E8005E348A /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FECC1DD0108D025D00BD4A91 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FECC1DD1108D025D00BD4A91 /* Foundation.framework in Frameworks */,
FECC1DD2108D025D00BD4A91 /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
FE01AB210C5D9C3400AEA51A /* Cocoa.framework */,
C8E0BFAA0F0E6B0E00677729 /* Cocoa.framework */,
FECC1DD6108D025D00BD4A91 /* Cocoa.framework */,
FE5A873F10C6F1E8005E348A /* Cocoa.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* Cocoa */ = {
isa = PBXGroup;
children = (
FE06B0361430E6B30071169B /* xcconfig */,
FE78D0FF126F4CF500CC39CF /* CoreData.xcodeproj */,
FE3217D10BB41D16004F000A /* ApplicationServices.xcodeproj */,
FE7135460B36427F006C9493 /* AppKit.xcodeproj */,
08FB77AEFE84172EC02AAC07 /* Classes */,
32C88DFF0371C24200C91783 /* Other Sources */,
089C1665FE841158C02AAC07 /* Resources */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
034768DFFF38A50411DB9C8B /* Products */,
FEF3B23A0B35C74700A76FD1 /* Cocoa.h */,
FEF3B2780B35CB9D00A76FD1 /* Cocoa.m */,
);
indentWidth = 4;
name = Cocoa;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
);
name = Resources;
sourceTree = "<group>";
};
08FB77AEFE84172EC02AAC07 /* Classes */ = {
isa = PBXGroup;
children = (
);
name = Classes;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D6A5FE840307C02AAC07 /* AppKit.framework */,
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
);
name = "Other Sources";
sourceTree = "<group>";
};
FE06B0361430E6B30071169B /* xcconfig */ = {
isa = PBXGroup;
children = (
FEAC294B17AE072400EF2B9D /* windows-i386-clang.xcconfig */,
FED0C496170BCF700033C8E6 /* darwin-i386-framework.xcconfig */,
FED0C497170BCF700033C8E6 /* darwin-ppc-framework.xcconfig */,
FED0C498170BCF700033C8E6 /* darwin-x86_64-framework.xcconfig */,
FED0C499170BCF700033C8E6 /* freebsd-i386-framework.xcconfig */,
FED0C49A170BCF700033C8E6 /* linux-arm-framework.xcconfig */,
FED0C49B170BCF700033C8E6 /* linux-i386-framework.xcconfig */,
FED0C49C170BCF700033C8E6 /* linux-ppc-framework.xcconfig */,
FED0C49D170BCF700033C8E6 /* solaris-sparc-framework.xcconfig */,
FE06B0371430E6B30071169B /* darwin-i386.xcconfig */,
FE06B0381430E6B30071169B /* darwin-ppc.xcconfig */,
FE06B0391430E6B30071169B /* darwin-x86_64.xcconfig */,
FE06B03A1430E6B30071169B /* darwin.xcconfig */,
FE06B03B1430E6B30071169B /* freebsd-i386.xcconfig */,
FE06B03C1430E6B30071169B /* freebsd.xcconfig */,
FE06B03D1430E6B30071169B /* linux-arm.xcconfig */,
FE06B03E1430E6B30071169B /* linux-i386.xcconfig */,
FE06B03F1430E6B30071169B /* linux-ppc.xcconfig */,
FE06B0401430E6B30071169B /* linux.xcconfig */,
FE06B0411430E6B30071169B /* platform.xcconfig */,
FE06B0421430E6B30071169B /* solaris-sparc.xcconfig */,
FE06B0431430E6B30071169B /* solaris.xcconfig */,
FE06B0441430E6B30071169B /* windows-i386.xcconfig */,
FE06B0451430E6B30071169B /* windows.xcconfig */,
FE7085281431174600B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
FE3217D20BB41D16004F000A /* Products */ = {
isa = PBXGroup;
children = (
FE01AB280C5D9C3500AEA51A /* ApplicationServices.framework */,
);
name = Products;
sourceTree = "<group>";
};
FE7135470B36427F006C9493 /* Products */ = {
isa = PBXGroup;
children = (
FE01AB250C5D9C3500AEA51A /* AppKit.framework */,
);
name = Products;
sourceTree = "<group>";
};
FE78D100126F4CF500CC39CF /* Products */ = {
isa = PBXGroup;
children = (
FE78D108126F4CF500CC39CF /* CoreData.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
C8E0BF9E0F0E6B0E00677729 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
C8E0BF9F0F0E6B0E00677729 /* Cocoa.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE01AB160C5D9C3400AEA51A /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE01AB170C5D9C3400AEA51A /* Cocoa.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE5A873310C6F1E8005E348A /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE5A873410C6F1E8005E348A /* Cocoa.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FECC1DCB108D025D00BD4A91 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FECC1DCC108D025D00BD4A91 /* Cocoa.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
C8E0BF990F0E6B0E00677729 /* Cocoa-Darwin-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = C8E0BFA70F0E6B0E00677729 /* Build configuration list for PBXNativeTarget "Cocoa-Darwin-i386" */;
buildPhases = (
C8E0BF9E0F0E6B0E00677729 /* Headers */,
C8E0BFA00F0E6B0E00677729 /* Resources */,
C8E0BFA10F0E6B0E00677729 /* Sources */,
C8E0BFA30F0E6B0E00677729 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "Cocoa-Darwin-i386";
productInstallPath = "$(HOME)/Library/Frameworks";
productName = Cocoa;
productReference = C8E0BFAA0F0E6B0E00677729 /* Cocoa.framework */;
productType = "com.apple.product-type.framework";
};
FE01AB110C5D9C3400AEA51A /* Cocoa-Windows-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = FE01AB1F0C5D9C3400AEA51A /* Build configuration list for PBXNativeTarget "Cocoa-Windows-i386" */;
buildPhases = (
FE01AB160C5D9C3400AEA51A /* Headers */,
FE01AB180C5D9C3400AEA51A /* Resources */,
FE01AB190C5D9C3400AEA51A /* Sources */,
FE01AB1B0C5D9C3400AEA51A /* Frameworks */,
);
buildRules = (
);
dependencies = (
FEF80ABE0C5D9F3000FF7CA5 /* PBXTargetDependency */,
FEF80AC00C5D9F3400FF7CA5 /* PBXTargetDependency */,
FE78D10A126F4D0700CC39CF /* PBXTargetDependency */,
);
name = "Cocoa-Windows-i386";
productInstallPath = "$(HOME)/Library/Frameworks";
productName = Cocoa;
productReference = FE01AB210C5D9C3400AEA51A /* Cocoa.framework */;
productType = "com.apple.product-type.framework";
};
FE5A873010C6F1E8005E348A /* Cocoa-FreeBSD-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = FE5A873C10C6F1E8005E348A /* Build configuration list for PBXNativeTarget "Cocoa-FreeBSD-i386" */;
buildPhases = (
FE5A873310C6F1E8005E348A /* Headers */,
FE5A873510C6F1E8005E348A /* Resources */,
FE5A873610C6F1E8005E348A /* Sources */,
FE5A873810C6F1E8005E348A /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "Cocoa-FreeBSD-i386";
productInstallPath = "$(HOME)/Library/Frameworks";
productName = Cocoa;
productReference = FE5A873F10C6F1E8005E348A /* Cocoa.framework */;
productType = "com.apple.product-type.framework";
};
FECC1DC6108D025D00BD4A91 /* Cocoa-Linux-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = FECC1DD3108D025D00BD4A91 /* Build configuration list for PBXNativeTarget "Cocoa-Linux-i386" */;
buildPhases = (
FECC1DCB108D025D00BD4A91 /* Headers */,
FECC1DCD108D025D00BD4A91 /* Resources */,
FECC1DCE108D025D00BD4A91 /* Sources */,
FECC1DD0108D025D00BD4A91 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "Cocoa-Linux-i386";
productInstallPath = "$(HOME)/Library/Frameworks";
productName = Cocoa;
productReference = FECC1DD6108D025D00BD4A91 /* Cocoa.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0420;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Cocoa" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* Cocoa */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE7135470B36427F006C9493 /* Products */;
ProjectRef = FE7135460B36427F006C9493 /* AppKit.xcodeproj */;
},
{
ProductGroup = FE3217D20BB41D16004F000A /* Products */;
ProjectRef = FE3217D10BB41D16004F000A /* ApplicationServices.xcodeproj */;
},
{
ProductGroup = FE78D100126F4CF500CC39CF /* Products */;
ProjectRef = FE78D0FF126F4CF500CC39CF /* CoreData.xcodeproj */;
},
);
projectRoot = "";
targets = (
FE01AB110C5D9C3400AEA51A /* Cocoa-Windows-i386 */,
C8E0BF990F0E6B0E00677729 /* Cocoa-Darwin-i386 */,
FECC1DC6108D025D00BD4A91 /* Cocoa-Linux-i386 */,
FE5A873010C6F1E8005E348A /* Cocoa-FreeBSD-i386 */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE01AB250C5D9C3500AEA51A /* AppKit.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = AppKit.framework;
remoteRef = FE01AB240C5D9C3500AEA51A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE01AB280C5D9C3500AEA51A /* ApplicationServices.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = ApplicationServices.framework;
remoteRef = FE01AB270C5D9C3500AEA51A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE78D108126F4CF500CC39CF /* CoreData.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CoreData.framework;
remoteRef = FE78D107126F4CF500CC39CF /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
C8E0BFA00F0E6B0E00677729 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
FE01AB180C5D9C3400AEA51A /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
FE5A873510C6F1E8005E348A /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
FECC1DCD108D025D00BD4A91 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
C8E0BFA10F0E6B0E00677729 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
C8E0BFA20F0E6B0E00677729 /* Cocoa.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE01AB190C5D9C3400AEA51A /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE01AB1A0C5D9C3400AEA51A /* Cocoa.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE5A873610C6F1E8005E348A /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE5A873710C6F1E8005E348A /* Cocoa.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FECC1DCE108D025D00BD4A91 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FECC1DCF108D025D00BD4A91 /* Cocoa.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE78D10A126F4D0700CC39CF /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "CoreData-Windows-i386";
targetProxy = FE78D109126F4D0700CC39CF /* PBXContainerItemProxy */;
};
FEF80ABE0C5D9F3000FF7CA5 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "AppKit-Windows-i386";
targetProxy = FEF80ABD0C5D9F3000FF7CA5 /* PBXContainerItemProxy */;
};
FEF80AC00C5D9F3400FF7CA5 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "ApplicationServices-Windows-i386";
targetProxy = FEF80ABF0C5D9F3400FF7CA5 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
1DEB91B208733DA50010E9CD /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
7E2EFA4E0DF995A500A40193 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Debug;
};
7E2EFA4F0DF995A500A40193 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE7085281431174600B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"$(OTHER_CFLAGS)",
);
PRODUCT_NAME = Cocoa;
};
name = Debug;
};
C8E0BFA80F0E6B0E00677729 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C496170BCF700033C8E6 /* darwin-i386-framework.xcconfig */;
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Release;
};
C8E0BFA90F0E6B0E00677729 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C496170BCF700033C8E6 /* darwin-i386-framework.xcconfig */;
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Debug;
};
FE01AB200C5D9C3400AEA51A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE7085281431174600B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"$(OTHER_CFLAGS)",
);
PRODUCT_NAME = Cocoa;
};
name = Release;
};
FE5A873D10C6F1E8005E348A /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C499170BCF700033C8E6 /* freebsd-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Release;
};
FE5A873E10C6F1E8005E348A /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C499170BCF700033C8E6 /* freebsd-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Debug;
};
FECC1DD4108D025D00BD4A91 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C49B170BCF700033C8E6 /* linux-i386-framework.xcconfig */;
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Release;
};
FECC1DD5108D025D00BD4A91 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FED0C49B170BCF700033C8E6 /* linux-i386-framework.xcconfig */;
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOCOA_INSIDE_BUILD",
"-D__LITTLE_ENDIAN__",
);
PRODUCT_NAME = Cocoa;
};
name = Debug;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "Cocoa" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B208733DA50010E9CD /* Release */,
7E2EFA4E0DF995A500A40193 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
C8E0BFA70F0E6B0E00677729 /* Build configuration list for PBXNativeTarget "Cocoa-Darwin-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C8E0BFA80F0E6B0E00677729 /* Release */,
C8E0BFA90F0E6B0E00677729 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FE01AB1F0C5D9C3400AEA51A /* Build configuration list for PBXNativeTarget "Cocoa-Windows-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FE01AB200C5D9C3400AEA51A /* Release */,
7E2EFA4F0DF995A500A40193 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FE5A873C10C6F1E8005E348A /* Build configuration list for PBXNativeTarget "Cocoa-FreeBSD-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FE5A873D10C6F1E8005E348A /* Release */,
FE5A873E10C6F1E8005E348A /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FECC1DD3108D025D00BD4A91 /* Build configuration list for PBXNativeTarget "Cocoa-Linux-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FECC1DD4108D025D00BD4A91 /* Release */,
FECC1DD5108D025D00BD4A91 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

View File

@ -1,359 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXAggregateTarget section */
FE1FC01211E7807100A9A87A /* Cocotron-Windows-i386 */ = {
isa = PBXAggregateTarget;
buildConfigurationList = FE1FC01711E7808000A9A87A /* Build configuration list for PBXAggregateTarget "Cocotron-Windows-i386" */;
buildPhases = (
);
dependencies = (
FE1FC01611E7807A00A9A87A /* PBXTargetDependency */,
FE5C83A0121D89CD0063E96F /* PBXTargetDependency */,
FE081AA214107EF900A3DE85 /* PBXTargetDependency */,
FE0513EF121E06DF0097BA92 /* PBXTargetDependency */,
FE0819131386F95800C06956 /* PBXTargetDependency */,
);
name = "Cocotron-Windows-i386";
productName = "Cocotron-Windows-i386";
};
/* End PBXAggregateTarget section */
/* Begin PBXContainerItemProxy section */
FE0513EC121E06DA0097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513E4121E06D90097BA92 /* Security.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
remoteInfo = "Security-Windows-i386";
};
FE0513EE121E06DF0097BA92 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0513E4121E06D90097BA92 /* Security.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
remoteInfo = "Security-Windows-i386";
};
FE0818F91386F93F00C06956 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0818F11386F93F00C06956 /* O2Context_AntiGrain.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8D576316048677EA00EA77CD;
remoteInfo = "O2Context_AntiGrain-Windows-i386";
};
FE0819121386F95800C06956 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE0818F11386F93F00C06956 /* O2Context_AntiGrain.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8D57630D048677EA00EA77CD;
remoteInfo = "O2Context_AntiGrain-Windows-i386";
};
FE081A9F14107EF000A3DE85 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE081A9B14107EF000A3DE85 /* NSSpellEngine_hunspell.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8D5B49B6048680CD000E48DA;
remoteInfo = NSSpellEngine_hunspell;
};
FE081AA114107EF900A3DE85 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE081A9B14107EF000A3DE85 /* NSSpellEngine_hunspell.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8D5B49AC048680CD000E48DA;
remoteInfo = NSSpellEngine_hunspell;
};
FE1FC00911E7806100A9A87A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AB210C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
FE1FC00B11E7806100A9A87A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = C8E0BFAA0F0E6B0E00677729;
remoteInfo = "Cocoa-Darwin-i386";
};
FE1FC00D11E7806100A9A87A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FECC1DD6108D025D00BD4A91;
remoteInfo = "Cocoa-Linux-i386";
};
FE1FC00F11E7806100A9A87A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE5A873F10C6F1E8005E348A;
remoteInfo = "Cocoa-FreeBSD-i386";
};
FE1FC01511E7807A00A9A87A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01AB110C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
FE5C839D121D89BF0063E96F /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE5C8396121D89BF0063E96F /* CFSSLHandler_openssl.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8D576316048677EA00EA77CD;
remoteInfo = "CFSSLHandler_openssl-Windows-i386";
};
FE5C839F121D89CD0063E96F /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE5C8396121D89BF0063E96F /* CFSSLHandler_openssl.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8D57630D048677EA00EA77CD;
remoteInfo = "CFSSLHandler_openssl-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
FE0513E4121E06D90097BA92 /* Security.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Security.xcodeproj; path = ../Security/Security.xcodeproj; sourceTree = SOURCE_ROOT; };
FE0818F11386F93F00C06956 /* O2Context_AntiGrain.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = O2Context_AntiGrain.xcodeproj; path = ../O2Context_AntiGrain/O2Context_AntiGrain.xcodeproj; sourceTree = SOURCE_ROOT; };
FE081A9B14107EF000A3DE85 /* NSSpellEngine_hunspell.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = NSSpellEngine_hunspell.xcodeproj; path = ../NSSpellEngine_hunspell/NSSpellEngine_hunspell.xcodeproj; sourceTree = SOURCE_ROOT; };
FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Cocoa.xcodeproj; path = ../Cocoa/Cocoa.xcodeproj; sourceTree = SOURCE_ROOT; };
FE5C8396121D89BF0063E96F /* CFSSLHandler_openssl.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CFSSLHandler_openssl.xcodeproj; path = ../CFSSLHandler_openssl/CFSSLHandler_openssl.xcodeproj; sourceTree = SOURCE_ROOT; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
FE0513E5121E06D90097BA92 /* Products */ = {
isa = PBXGroup;
children = (
FE0513ED121E06DA0097BA92 /* Security.framework */,
);
name = Products;
sourceTree = "<group>";
};
FE0818F21386F93F00C06956 /* Products */ = {
isa = PBXGroup;
children = (
FE0818FA1386F93F00C06956 /* O2Context_AntiGrain.cgContext */,
);
name = Products;
sourceTree = "<group>";
};
FE081A9C14107EF000A3DE85 /* Products */ = {
isa = PBXGroup;
children = (
FE081AA014107EF000A3DE85 /* NSSpellEngine_hunspell.spellEngine */,
);
name = Products;
sourceTree = "<group>";
};
FE1FBFF011E7804C00A9A87A = {
isa = PBXGroup;
children = (
FE081A9B14107EF000A3DE85 /* NSSpellEngine_hunspell.xcodeproj */,
FE0818F11386F93F00C06956 /* O2Context_AntiGrain.xcodeproj */,
FE0513E4121E06D90097BA92 /* Security.xcodeproj */,
FE5C8396121D89BF0063E96F /* CFSSLHandler_openssl.xcodeproj */,
FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */,
);
indentWidth = 4;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
FE1FBFFD11E7806100A9A87A /* Products */ = {
isa = PBXGroup;
children = (
FE1FC00A11E7806100A9A87A /* Cocoa.framework */,
FE1FC00C11E7806100A9A87A /* Cocoa.framework */,
FE1FC00E11E7806100A9A87A /* Cocoa.framework */,
FE1FC01011E7806100A9A87A /* Cocoa.framework */,
);
name = Products;
sourceTree = "<group>";
};
FE5C8397121D89BF0063E96F /* Products */ = {
isa = PBXGroup;
children = (
FE5C839E121D89BF0063E96F /* CFSSLHandler_openssl.bundle */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXProject section */
FE1FBFF211E7804C00A9A87A /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = FE1FBFF511E7804C00A9A87A /* Build configuration list for PBXProject "Cocotron" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 0;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = FE1FBFF011E7804C00A9A87A;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE5C8397121D89BF0063E96F /* Products */;
ProjectRef = FE5C8396121D89BF0063E96F /* CFSSLHandler_openssl.xcodeproj */;
},
{
ProductGroup = FE1FBFFD11E7806100A9A87A /* Products */;
ProjectRef = FE1FBFFC11E7806100A9A87A /* Cocoa.xcodeproj */;
},
{
ProductGroup = FE081A9C14107EF000A3DE85 /* Products */;
ProjectRef = FE081A9B14107EF000A3DE85 /* NSSpellEngine_hunspell.xcodeproj */;
},
{
ProductGroup = FE0818F21386F93F00C06956 /* Products */;
ProjectRef = FE0818F11386F93F00C06956 /* O2Context_AntiGrain.xcodeproj */;
},
{
ProductGroup = FE0513E5121E06D90097BA92 /* Products */;
ProjectRef = FE0513E4121E06D90097BA92 /* Security.xcodeproj */;
},
);
projectRoot = "";
targets = (
FE1FC01211E7807100A9A87A /* Cocotron-Windows-i386 */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE0513ED121E06DA0097BA92 /* Security.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Security.framework;
remoteRef = FE0513EC121E06DA0097BA92 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE0818FA1386F93F00C06956 /* O2Context_AntiGrain.cgContext */ = {
isa = PBXReferenceProxy;
fileType = wrapper.cfbundle;
path = O2Context_AntiGrain.cgContext;
remoteRef = FE0818F91386F93F00C06956 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE081AA014107EF000A3DE85 /* NSSpellEngine_hunspell.spellEngine */ = {
isa = PBXReferenceProxy;
fileType = wrapper.cfbundle;
path = NSSpellEngine_hunspell.spellEngine;
remoteRef = FE081A9F14107EF000A3DE85 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE1FC00A11E7806100A9A87A /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE1FC00911E7806100A9A87A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE1FC00C11E7806100A9A87A /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE1FC00B11E7806100A9A87A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE1FC00E11E7806100A9A87A /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE1FC00D11E7806100A9A87A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE1FC01011E7806100A9A87A /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE1FC00F11E7806100A9A87A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE5C839E121D89BF0063E96F /* CFSSLHandler_openssl.bundle */ = {
isa = PBXReferenceProxy;
fileType = wrapper.cfbundle;
path = CFSSLHandler_openssl.bundle;
remoteRef = FE5C839D121D89BF0063E96F /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXTargetDependency section */
FE0513EF121E06DF0097BA92 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Security-Windows-i386";
targetProxy = FE0513EE121E06DF0097BA92 /* PBXContainerItemProxy */;
};
FE0819131386F95800C06956 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "O2Context_AntiGrain-Windows-i386";
targetProxy = FE0819121386F95800C06956 /* PBXContainerItemProxy */;
};
FE081AA214107EF900A3DE85 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = NSSpellEngine_hunspell;
targetProxy = FE081AA114107EF900A3DE85 /* PBXContainerItemProxy */;
};
FE1FC01611E7807A00A9A87A /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Cocoa-Windows-i386";
targetProxy = FE1FC01511E7807A00A9A87A /* PBXContainerItemProxy */;
};
FE5C83A0121D89CD0063E96F /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "CFSSLHandler_openssl-Windows-i386";
targetProxy = FE5C839F121D89CD0063E96F /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
FE1FBFF411E7804C00A9A87A /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
FE1FC01411E7807200A9A87A /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
PRODUCT_NAME = "Cocotron-Windows-i386";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
FE1FBFF511E7804C00A9A87A /* Build configuration list for PBXProject "Cocotron" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FE1FBFF411E7804C00A9A87A /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FE1FC01711E7808000A9A87A /* Build configuration list for PBXAggregateTarget "Cocotron-Windows-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FE1FC01411E7807200A9A87A /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = FE1FBFF211E7804C00A9A87A /* Project object */;
}

View File

@ -1,305 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 45;
objects = {
/* Begin PBXBuildFile section */
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; };
FE4301E611E2580E00EBDD56 /* CommonCryptor.h in Headers */ = {isa = PBXBuildFile; fileRef = FE4301E011E2580E00EBDD56 /* CommonCryptor.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE4301E811E2580E00EBDD56 /* CommonDigest.h in Headers */ = {isa = PBXBuildFile; fileRef = FE4301E211E2580E00EBDD56 /* CommonDigest.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE4301EA11E2580E00EBDD56 /* CommonHMAC.h in Headers */ = {isa = PBXBuildFile; fileRef = FE4301E411E2580E00EBDD56 /* CommonHMAC.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEF5A81D11E4F37E009B0041 /* CommonCryptoExport.h in Headers */ = {isa = PBXBuildFile; fileRef = FEF5A81C11E4F37E009B0041 /* CommonCryptoExport.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEFD323A1434B0FB00C14B08 /* CommonCryptor.m in Sources */ = {isa = PBXBuildFile; fileRef = FE4301E111E2580E00EBDD56 /* CommonCryptor.m */; };
FEFD323B1434B10000C14B08 /* CommonDigest.m in Sources */ = {isa = PBXBuildFile; fileRef = FE4301E311E2580E00EBDD56 /* CommonDigest.m */; };
FEFD323C1434B10200C14B08 /* CommonHMAC.m in Sources */ = {isa = PBXBuildFile; fileRef = FE4301E511E2580E00EBDD56 /* CommonHMAC.m */; };
FEFD32531434B1F000C14B08 /* dllmain.m in Sources */ = {isa = PBXBuildFile; fileRef = FEFD32521434B1F000C14B08 /* dllmain.m */; };
FEFD325B1434B22F00C14B08 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CommonCrypto.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CommonCrypto.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE06B0D51430E70B0071169B /* darwin-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0D61430E70B0071169B /* darwin-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B0D71430E70B0071169B /* darwin-x86_64.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64.xcconfig"; sourceTree = "<group>"; };
FE06B0D81430E70B0071169B /* darwin.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = darwin.xcconfig; sourceTree = "<group>"; };
FE06B0D91430E70B0071169B /* freebsd-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0DA1430E70B0071169B /* freebsd.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = freebsd.xcconfig; sourceTree = "<group>"; };
FE06B0DB1430E70B0071169B /* linux-arm.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm.xcconfig"; sourceTree = "<group>"; };
FE06B0DC1430E70B0071169B /* linux-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0DD1430E70B0071169B /* linux-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B0DE1430E70B0071169B /* linux.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = linux.xcconfig; sourceTree = "<group>"; };
FE06B0DF1430E70B0071169B /* platform.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = platform.xcconfig; sourceTree = "<group>"; };
FE06B0E01430E70B0071169B /* solaris-sparc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc.xcconfig"; sourceTree = "<group>"; };
FE06B0E11430E70B0071169B /* solaris.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = solaris.xcconfig; sourceTree = "<group>"; };
FE06B0E21430E70B0071169B /* windows-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386.xcconfig"; sourceTree = "<group>"; };
FE06B0E31430E70B0071169B /* windows.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = windows.xcconfig; sourceTree = "<group>"; };
FE4301E011E2580E00EBDD56 /* CommonCryptor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommonCryptor.h; sourceTree = "<group>"; };
FE4301E111E2580E00EBDD56 /* CommonCryptor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CommonCryptor.m; sourceTree = "<group>"; };
FE4301E211E2580E00EBDD56 /* CommonDigest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommonDigest.h; sourceTree = "<group>"; };
FE4301E311E2580E00EBDD56 /* CommonDigest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CommonDigest.m; sourceTree = "<group>"; };
FE4301E411E2580E00EBDD56 /* CommonHMAC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommonHMAC.h; sourceTree = "<group>"; };
FE4301E511E2580E00EBDD56 /* CommonHMAC.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CommonHMAC.m; sourceTree = "<group>"; };
FE7085A21431175E00B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEF5A81C11E4F37E009B0041 /* CommonCryptoExport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CommonCryptoExport.h; sourceTree = "<group>"; };
FEFD32521434B1F000C14B08 /* dllmain.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = dllmain.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8DC2EF560486A6940098B216 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FEFD325B1434B22F00C14B08 /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
8DC2EF5B0486A6940098B216 /* CommonCrypto.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* CommonCrypto */ = {
isa = PBXGroup;
children = (
FEFD32521434B1F000C14B08 /* dllmain.m */,
FE06B0D41430E70B0071169B /* xcconfig */,
FEF5A81C11E4F37E009B0041 /* CommonCryptoExport.h */,
FE4301E011E2580E00EBDD56 /* CommonCryptor.h */,
FE4301E111E2580E00EBDD56 /* CommonCryptor.m */,
FE4301E211E2580E00EBDD56 /* CommonDigest.h */,
FE4301E311E2580E00EBDD56 /* CommonDigest.m */,
FE4301E411E2580E00EBDD56 /* CommonHMAC.h */,
FE4301E511E2580E00EBDD56 /* CommonHMAC.m */,
32C88DFF0371C24200C91783 /* Other Sources */,
089C1665FE841158C02AAC07 /* Resources */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
034768DFFF38A50411DB9C8B /* Products */,
);
indentWidth = 4;
name = CommonCrypto;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
089C1666FE841158C02AAC07 /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
);
name = "Other Sources";
sourceTree = "<group>";
};
FE06B0D41430E70B0071169B /* xcconfig */ = {
isa = PBXGroup;
children = (
FE06B0D51430E70B0071169B /* darwin-i386.xcconfig */,
FE06B0D61430E70B0071169B /* darwin-ppc.xcconfig */,
FE06B0D71430E70B0071169B /* darwin-x86_64.xcconfig */,
FE06B0D81430E70B0071169B /* darwin.xcconfig */,
FE06B0D91430E70B0071169B /* freebsd-i386.xcconfig */,
FE06B0DA1430E70B0071169B /* freebsd.xcconfig */,
FE06B0DB1430E70B0071169B /* linux-arm.xcconfig */,
FE06B0DC1430E70B0071169B /* linux-i386.xcconfig */,
FE06B0DD1430E70B0071169B /* linux-ppc.xcconfig */,
FE06B0DE1430E70B0071169B /* linux.xcconfig */,
FE06B0DF1430E70B0071169B /* platform.xcconfig */,
FE06B0E01430E70B0071169B /* solaris-sparc.xcconfig */,
FE06B0E11430E70B0071169B /* solaris.xcconfig */,
FE06B0E21430E70B0071169B /* windows-i386.xcconfig */,
FE06B0E31430E70B0071169B /* windows.xcconfig */,
FE7085A21431175E00B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8DC2EF500486A6940098B216 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE4301E611E2580E00EBDD56 /* CommonCryptor.h in Headers */,
FE4301E811E2580E00EBDD56 /* CommonDigest.h in Headers */,
FE4301EA11E2580E00EBDD56 /* CommonHMAC.h in Headers */,
FEF5A81D11E4F37E009B0041 /* CommonCryptoExport.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8DC2EF4F0486A6940098B216 /* CommonCrypto-Windows-i386 */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CommonCrypto-Windows-i386" */;
buildPhases = (
8DC2EF500486A6940098B216 /* Headers */,
8DC2EF520486A6940098B216 /* Resources */,
8DC2EF540486A6940098B216 /* Sources */,
8DC2EF560486A6940098B216 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "CommonCrypto-Windows-i386";
productInstallPath = "$(HOME)/Library/Frameworks";
productName = CommonCrypto;
productReference = 8DC2EF5B0486A6940098B216 /* CommonCrypto.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CommonCrypto" */;
compatibilityVersion = "Xcode 3.1";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* CommonCrypto */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* CommonCrypto-Windows-i386 */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
8DC2EF520486A6940098B216 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8DC2EF540486A6940098B216 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FEFD323A1434B0FB00C14B08 /* CommonCryptor.m in Sources */,
FEFD323B1434B10000C14B08 /* CommonDigest.m in Sources */,
FEFD323C1434B10200C14B08 /* CommonHMAC.m in Sources */,
FEFD32531434B1F000C14B08 /* dllmain.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXVariantGroup section */
089C1666FE841158C02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1DEB91AF08733DA50010E9CD /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE7085A21431175E00B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOMMONCRYPTO_INSIDE_BUILD=1",
"$(OTHER_CFLAGS)",
);
OTHER_LDFLAGS = (
"$(OTHER_LDFLAGS)",
"-lssl",
"-lcrypto",
"-lgdi32",
);
PRODUCT_NAME = CommonCrypto;
};
name = Release;
};
1DEB91B308733DA50010E9CD /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CommonCrypto-Windows-i386" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91AF08733DA50010E9CD /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CommonCrypto" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B308733DA50010E9CD /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

View File

@ -1,33 +0,0 @@
/* Copyright (c) 2010 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#ifdef __cplusplus
#if defined(__WIN32__)
#if defined(COMMONCRYPTO_INSIDE_BUILD)
#define COMMONCRYPTO_EXPORT extern "C" __declspec(dllexport)
#else
#define COMMONCRYPTO_EXPORT extern "C" __declspec(dllimport)
#endif
#else
#define COMMONCRYPTO_EXPORT extern "C"
#endif
#else
#if defined(__WIN32__)
#if defined(COMMONCRYPTO_INSIDE_BUILD)
#define COMMONCRYPTO_EXPORT __declspec(dllexport) extern
#else
#define COMMONCRYPTO_EXPORT __declspec(dllimport) extern
#endif
#else
#define COMMONCRYPTO_EXPORT extern
#endif
#endif // __cplusplus

View File

@ -1,55 +0,0 @@
#import <CommonCrypto/CommonCryptoExport.h>
#import <stdbool.h>
#import <stdint.h>
#import <stdlib.h>
enum {
kCCKeySizeAES128 = 16,
kCCKeySizeAES256 = 32,
};
enum {
kCCBlockSizeAES128 = 16,
};
enum {
kCCSuccess = 0,
kCCParamError = -4300,
kCCBufferTooSmall = -4301,
kCCMemoryFailure = -4302,
kCCAlignmentError = -4303,
kCCDecodeError = -4304,
kCCUnimplemented = -4305,
};
typedef int32_t CCCryptorStatus;
enum {
kCCEncrypt = 0,
kCCDecrypt,
};
typedef uint32_t CCOperation;
enum {
kCCAlgorithmAES128 = 0,
};
typedef uint32_t CCAlgorithm;
enum {
kCCOptionPKCS7Padding = 0x0001,
kCCOptionECBMode = 0x0002,
};
typedef uint32_t CCOptions;
typedef struct CCCryptor *CCCryptorRef;
COMMONCRYPTO_EXPORT CCCryptorStatus CCCryptorCreate(CCOperation operation, CCAlgorithm algorithm, CCOptions options, const void *key, size_t keyLength, const void *initVector, CCCryptorRef *result);
COMMONCRYPTO_EXPORT CCCryptorStatus CCCryptorRelease(CCCryptorRef cryptor);
COMMONCRYPTO_EXPORT size_t CCCryptorGetOutputLength(CCCryptorRef cryptor, size_t inputLength, bool final);
COMMONCRYPTO_EXPORT CCCryptorStatus CCCryptorUpdate(CCCryptorRef cryptor, const void *dataIn, size_t dataInLength, void *dataOut, size_t dataOutAvailable, size_t *dataOutMoved);
COMMONCRYPTO_EXPORT CCCryptorStatus CCCryptorFinal(CCCryptorRef cryptor, void *dataOut, size_t dataOutAvailable, size_t *dataOutMoved);
COMMONCRYPTO_EXPORT CCCryptorStatus CCCrypt(CCOperation operation, CCAlgorithm algorithm, CCOptions options, const void *key, size_t keyLength, const void *initVector, const void *dataIn, size_t dataInLength, void *dataOut, size_t dataOutAvailable, size_t *dataOutMoved);

View File

@ -1,128 +0,0 @@
#import <CommonCrypto/CommonCryptor.h>
#import <Foundation/NSRaise.h>
#import <openssl/evp.h>
struct CCCryptor {
CCOperation operation;
EVP_CIPHER_CTX *context;
const EVP_CIPHER *cipher;
};
CCCryptorStatus CCCryptorCreate(CCOperation operation, CCAlgorithm algorithm,
CCOptions options, const void *key,
size_t keyLength, const void *initVector,
CCCryptorRef *result)
{
CCCryptorRef self = malloc(sizeof(struct CCCryptor));
self->operation = operation;
self->context = malloc(sizeof(EVP_CIPHER_CTX));
EVP_CIPHER_CTX_init(self->context);
self->cipher = NULL;
switch (algorithm) {
case kCCAlgorithmAES128:
if (options & kCCOptionECBMode) {
if (keyLength == kCCKeySizeAES128)
self->cipher = EVP_aes_128_ecb();
else if (keyLength == kCCKeySizeAES256)
self->cipher = EVP_aes_256_ecb();
} else {
if (keyLength == kCCKeySizeAES128)
self->cipher = EVP_aes_128_cbc();
else if (keyLength == kCCKeySizeAES256)
self->cipher = EVP_aes_256_cbc();
}
break;
}
if (self->cipher == NULL) {
NSLog(@"%s %d cipher==NULL", __FILE__, __LINE__);
return kCCUnimplemented;
}
if (operation == kCCEncrypt) {
EVP_EncryptInit_ex(self->context, self->cipher, NULL, key, initVector);
} else {
EVP_DecryptInit_ex(self->context, self->cipher, NULL, key, initVector);
}
*result = self;
return kCCSuccess;
}
CCCryptorStatus CCCryptorRelease(CCCryptorRef self) {
EVP_CIPHER_CTX_cleanup(self->context);
free(self->context);
free(self);
return kCCSuccess;
}
size_t CCCryptorGetOutputLength(CCCryptorRef self, size_t inputLength,
bool final)
{
int blockSize = EVP_CIPHER_block_size(self->cipher);
return inputLength + blockSize - 1;
}
CCCryptorStatus CCCryptorUpdate(CCCryptorRef self, const void *dataIn,
size_t dataInLength, void *dataOut,
size_t dataOutAvailable, size_t *dataOutMoved)
{
if (self->operation == kCCEncrypt) {
int outSize;
EVP_EncryptUpdate(self->context, dataOut, &outSize, dataIn,
dataInLength);
*dataOutMoved = outSize;
} else {
int outSize;
EVP_DecryptUpdate(self->context, dataOut, &outSize, dataIn,
dataInLength);
*dataOutMoved = outSize;
}
return kCCSuccess;
}
CCCryptorStatus CCCryptorFinal(CCCryptorRef self, void *dataOut,
size_t dataOutAvailable, size_t *dataOutMoved)
{
if (self->operation == kCCEncrypt) {
int outSize;
EVP_EncryptFinal_ex(self->context, dataOut, &outSize);
*dataOutMoved = outSize;
} else {
int outSize;
EVP_DecryptFinal_ex(self->context, dataOut, &outSize);
*dataOutMoved = outSize;
}
return kCCSuccess;
}
CCCryptorStatus CCCrypt(CCOperation operation, CCAlgorithm algorithm,
CCOptions options, const void *key, size_t keyLength,
const void *initVector, const void *dataIn,
size_t dataInLength, void *dataOut,
size_t dataOutAvailable, size_t *dataOutMoved)
{
CCCryptorRef cryptor;
CCCryptorCreate(operation, algorithm, options, key, keyLength, initVector,
&cryptor);
CCCryptorUpdate(cryptor, dataIn, dataInLength, dataOut, dataOutAvailable,
dataOutMoved);
size_t dataOutChunk = 0;
if (options & kCCOptionPKCS7Padding) {
CCCryptorFinal(cryptor, dataOut + *dataOutMoved,
dataOutAvailable - *dataOutMoved, &dataOutChunk);
*dataOutMoved += dataOutChunk;
}
return kCCSuccess;
}

View File

@ -1 +0,0 @@
#import <CommonCrypto/CommonCryptoExport.h>

View File

@ -1,20 +0,0 @@
#import <CommonCrypto/CommonCryptoExport.h>
#import <stdlib.h>
#define CC_SHA1_DIGEST_LENGTH 20
typedef enum {
kCCHmacAlgSHA1,
} CCHmacAlgorithm;
typedef struct {
void *sslContext;
} CCHmacContext;
COMMONCRYPTO_EXPORT void CCHmacInit(CCHmacContext *context, CCHmacAlgorithm algorithm, const void *key, size_t keyLength);
COMMONCRYPTO_EXPORT void CCHmacUpdate(CCHmacContext *context, const void *data, size_t dataLength);
COMMONCRYPTO_EXPORT void CCHmacFinal(CCHmacContext *context, void *macOut);
COMMONCRYPTO_EXPORT void CCHmac(CCHmacAlgorithm algorithm, const void *key, size_t keyLength, const void *data, size_t dataLength, void *macOut);

View File

@ -1,34 +0,0 @@
#import <CommonCrypto/CommonHMAC.h>
#import <Foundation/NSRaise.h>
#import <openssl/hmac.h>
#import <string.h>
void CCHmacInit(CCHmacContext *context, CCHmacAlgorithm algorithm,
const void *key, size_t keyLength)
{
context->sslContext = malloc(sizeof(HMAC_CTX));
HMAC_CTX_init(context->sslContext);
HMAC_Init(context->sslContext, key, keyLength, EVP_sha1());
}
void CCHmacUpdate(CCHmacContext *context, const void *bytes, size_t len) {
HMAC_Update(context->sslContext, bytes, len);
}
void CCHmacFinal(CCHmacContext *context, void *macOut) {
unsigned len = 0;
HMAC_Final(context->sslContext, macOut, &len);
HMAC_CTX_cleanup(context->sslContext);
free(context->sslContext);
}
void CCHmac(CCHmacAlgorithm algorithm, const void *key, size_t keyLength,
const void *data, size_t dataLength, void *macOut)
{
CCHmacContext context;
CCHmacInit(&context, algorithm, key, keyLength);
CCHmacUpdate(&context, data, dataLength);
CCHmacFinal(&context, macOut);
}

View File

@ -1,2 +0,0 @@
/* Localized versions of Info.plist keys */

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//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>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>com.yourcompany.${PRODUCT_NAME:rfc1034Identifier}</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -1,34 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <stdio.h>
#import <windows.h>
int OBJCRegisterDLL(HINSTANCE handle);
int APIENTRY DllMain(HINSTANCE handle, DWORD reason, LPVOID _reserved) {
if (reason == DLL_PROCESS_ATTACH)
return OBJCRegisterDLL(handle);
if (reason == DLL_THREAD_DETACH) {
return TRUE;
}
return TRUE;
}

View File

@ -1,536 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
FE06432B121AD56400373F23 /* NSManagedObjectSet.h in Headers */ = {isa = PBXBuildFile; fileRef = FE064327121AD56400373F23 /* NSManagedObjectSet.h */; };
FE06432C121AD56400373F23 /* NSManagedObjectSet.m in Sources */ = {isa = PBXBuildFile; fileRef = FE064328121AD56400373F23 /* NSManagedObjectSet.m */; };
FE06432D121AD56400373F23 /* NSManagedObjectSetEnumerator.h in Headers */ = {isa = PBXBuildFile; fileRef = FE064329121AD56400373F23 /* NSManagedObjectSetEnumerator.h */; };
FE06432E121AD56400373F23 /* NSManagedObjectSetEnumerator.m in Sources */ = {isa = PBXBuildFile; fileRef = FE06432A121AD56400373F23 /* NSManagedObjectSetEnumerator.m */; };
FE06433F121AD7C200373F23 /* NSManagedObjectMutableSet.h in Headers */ = {isa = PBXBuildFile; fileRef = FE06433D121AD7C200373F23 /* NSManagedObjectMutableSet.h */; };
FE064340121AD7C200373F23 /* NSManagedObjectMutableSet.m in Sources */ = {isa = PBXBuildFile; fileRef = FE06433E121AD7C200373F23 /* NSManagedObjectMutableSet.m */; };
FE1FBEF311E6692400A9A87A /* NSAtomicStore.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1FBEED11E6692400A9A87A /* NSAtomicStore.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE1FBEF411E6692400A9A87A /* NSAtomicStore.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1FBEEE11E6692400A9A87A /* NSAtomicStore.m */; };
FE1FBEF511E6692400A9A87A /* NSAtomicStoreCacheNode.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1FBEEF11E6692400A9A87A /* NSAtomicStoreCacheNode.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE1FBEF611E6692400A9A87A /* NSAtomicStoreCacheNode.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1FBEF011E6692400A9A87A /* NSAtomicStoreCacheNode.m */; };
FE1FBEF711E6692400A9A87A /* NSPersistentStore.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1FBEF111E6692400A9A87A /* NSPersistentStore.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE1FBEF811E6692400A9A87A /* NSPersistentStore.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1FBEF211E6692400A9A87A /* NSPersistentStore.m */; };
FE1FC22911E8116200A9A87A /* NSInMemoryPersistentStore.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1FC22511E8116200A9A87A /* NSInMemoryPersistentStore.h */; };
FE1FC22A11E8116200A9A87A /* NSInMemoryPersistentStore.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1FC22611E8116200A9A87A /* NSInMemoryPersistentStore.m */; };
FE1FC22B11E8116200A9A87A /* NSXMLPersistentStore.h in Headers */ = {isa = PBXBuildFile; fileRef = FE1FC22711E8116200A9A87A /* NSXMLPersistentStore.h */; };
FE1FC22C11E8116200A9A87A /* NSXMLPersistentStore.m in Sources */ = {isa = PBXBuildFile; fileRef = FE1FC22811E8116200A9A87A /* NSXMLPersistentStore.m */; };
FE21313A0DBFC72700CEDC65 /* dllmain.m in Sources */ = {isa = PBXBuildFile; fileRef = FE2131390DBFC72700CEDC65 /* dllmain.m */; };
FE2131420DBFC74200CEDC65 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0867D69BFE84028FC02AAC07 /* Foundation.framework */; };
FE2132900DBFD21900CEDC65 /* CoreDataExports.h in Headers */ = {isa = PBXBuildFile; fileRef = FE21328F0DBFD21900CEDC65 /* CoreDataExports.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE2132920DBFD22000CEDC65 /* CoreData.h in Headers */ = {isa = PBXBuildFile; fileRef = FE2132910DBFD22000CEDC65 /* CoreData.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3D40BF1042F00B18B54 /* NSAttributeDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3BE0BF1042F00B18B54 /* NSAttributeDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3D50BF1042F00B18B54 /* NSAttributeDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3BF0BF1042F00B18B54 /* NSAttributeDescription.m */; };
FE82F3D60BF1042F00B18B54 /* NSEntityDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3C00BF1042F00B18B54 /* NSEntityDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3D70BF1042F00B18B54 /* NSEntityDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3C10BF1042F00B18B54 /* NSEntityDescription.m */; };
FE82F3D80BF1042F00B18B54 /* NSFetchedPropertyDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3C20BF1042F00B18B54 /* NSFetchedPropertyDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3D90BF1042F00B18B54 /* NSFetchedPropertyDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3C30BF1042F00B18B54 /* NSFetchedPropertyDescription.m */; };
FE82F3DA0BF1042F00B18B54 /* NSFetchRequest.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3C40BF1042F00B18B54 /* NSFetchRequest.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3DB0BF1042F00B18B54 /* NSFetchRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3C50BF1042F00B18B54 /* NSFetchRequest.m */; };
FE82F3DC0BF1042F00B18B54 /* NSManagedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3C60BF1042F00B18B54 /* NSManagedObject.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3DD0BF1042F00B18B54 /* NSManagedObject.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3C70BF1042F00B18B54 /* NSManagedObject.m */; };
FE82F3DE0BF1042F00B18B54 /* NSManagedObjectContext.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3C80BF1042F00B18B54 /* NSManagedObjectContext.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3DF0BF1042F00B18B54 /* NSManagedObjectContext.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3C90BF1042F00B18B54 /* NSManagedObjectContext.m */; };
FE82F3E00BF1042F00B18B54 /* NSManagedObjectID.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3CA0BF1042F00B18B54 /* NSManagedObjectID.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3E10BF1042F00B18B54 /* NSManagedObjectID.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3CB0BF1042F00B18B54 /* NSManagedObjectID.m */; };
FE82F3E20BF1042F00B18B54 /* NSManagedObjectModel.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3CC0BF1042F00B18B54 /* NSManagedObjectModel.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3E30BF1042F00B18B54 /* NSManagedObjectModel.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3CD0BF1042F00B18B54 /* NSManagedObjectModel.m */; };
FE82F3E40BF1042F00B18B54 /* NSPersistentStoreCoordinator.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3CE0BF1042F00B18B54 /* NSPersistentStoreCoordinator.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3E50BF1042F00B18B54 /* NSPersistentStoreCoordinator.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3CF0BF1042F00B18B54 /* NSPersistentStoreCoordinator.m */; };
FE82F3E60BF1042F00B18B54 /* NSPropertyDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3D00BF1042F00B18B54 /* NSPropertyDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3E70BF1042F00B18B54 /* NSPropertyDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3D10BF1042F00B18B54 /* NSPropertyDescription.m */; };
FE82F3E80BF1042F00B18B54 /* NSRelationshipDescription.h in Headers */ = {isa = PBXBuildFile; fileRef = FE82F3D20BF1042F00B18B54 /* NSRelationshipDescription.h */; settings = {ATTRIBUTES = (Public, ); }; };
FE82F3E90BF1042F00B18B54 /* NSRelationshipDescription.m in Sources */ = {isa = PBXBuildFile; fileRef = FE82F3D30BF1042F00B18B54 /* NSRelationshipDescription.m */; };
FEA2C93012077436003B1BB9 /* NSManagedObject-Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FEA2C92E12077436003B1BB9 /* NSManagedObject-Private.h */; };
FEA2C93112077436003B1BB9 /* NSManagedObjectID-Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FEA2C92F12077436003B1BB9 /* NSManagedObjectID-Private.h */; };
FEDE4B951208545A003D3EF1 /* NSPersistentStoreCoordinator-Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FEDE4B941208545A003D3EF1 /* NSPersistentStoreCoordinator-Private.h */; };
FEDE4E5112089EDC003D3EF1 /* CoreDataErrors.h in Headers */ = {isa = PBXBuildFile; fileRef = FEDE4E4F12089EDC003D3EF1 /* CoreDataErrors.h */; settings = {ATTRIBUTES = (Public, ); }; };
FEDE4E5212089EDC003D3EF1 /* CoreDataErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = FEDE4E5012089EDC003D3EF1 /* CoreDataErrors.m */; };
FEDE51FE1209B1A0003D3EF1 /* NSManagedObjectContext-Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FEDE51FD1209B1A0003D3EF1 /* NSManagedObjectContext-Private.h */; };
FEDE52F61209C3AE003D3EF1 /* NSEntityDescription-Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FEDE52F51209C3AE003D3EF1 /* NSEntityDescription-Private.h */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE39C6841203D5F800A80A71 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE59F2FF0D54301C00D54A25 /* Foundation.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01A5970C5D9B6900AEA51A;
remoteInfo = "Foundation-Windows-i386";
};
FE59F30F0D54301D00D54A25 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE59F2FF0D54301C00D54A25 /* Foundation.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01A7EC0C5D9B6900AEA51A;
remoteInfo = "Foundation-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CoreData.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CoreData.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE064327121AD56400373F23 /* NSManagedObjectSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectSet.h; sourceTree = "<group>"; };
FE064328121AD56400373F23 /* NSManagedObjectSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectSet.m; sourceTree = "<group>"; };
FE064329121AD56400373F23 /* NSManagedObjectSetEnumerator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectSetEnumerator.h; sourceTree = "<group>"; };
FE06432A121AD56400373F23 /* NSManagedObjectSetEnumerator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectSetEnumerator.m; sourceTree = "<group>"; };
FE06433D121AD7C200373F23 /* NSManagedObjectMutableSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectMutableSet.h; sourceTree = "<group>"; };
FE06433E121AD7C200373F23 /* NSManagedObjectMutableSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectMutableSet.m; sourceTree = "<group>"; };
FE06B1221430E7390071169B /* darwin-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386.xcconfig"; sourceTree = "<group>"; };
FE06B1231430E7390071169B /* darwin-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B1241430E7390071169B /* darwin-x86_64.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64.xcconfig"; sourceTree = "<group>"; };
FE06B1251430E7390071169B /* darwin.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = darwin.xcconfig; sourceTree = "<group>"; };
FE06B1261430E7390071169B /* freebsd-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386.xcconfig"; sourceTree = "<group>"; };
FE06B1271430E7390071169B /* freebsd.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = freebsd.xcconfig; sourceTree = "<group>"; };
FE06B1281430E7390071169B /* linux-arm.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm.xcconfig"; sourceTree = "<group>"; };
FE06B1291430E7390071169B /* linux-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386.xcconfig"; sourceTree = "<group>"; };
FE06B12A1430E7390071169B /* linux-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B12B1430E7390071169B /* linux.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = linux.xcconfig; sourceTree = "<group>"; };
FE06B12C1430E7390071169B /* platform.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = platform.xcconfig; sourceTree = "<group>"; };
FE06B12D1430E7390071169B /* solaris-sparc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc.xcconfig"; sourceTree = "<group>"; };
FE06B12E1430E7390071169B /* solaris.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = solaris.xcconfig; sourceTree = "<group>"; };
FE06B12F1430E7390071169B /* windows-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386.xcconfig"; sourceTree = "<group>"; };
FE06B1301430E7390071169B /* windows.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = windows.xcconfig; sourceTree = "<group>"; };
FE1FBEED11E6692400A9A87A /* NSAtomicStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSAtomicStore.h; sourceTree = "<group>"; };
FE1FBEEE11E6692400A9A87A /* NSAtomicStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSAtomicStore.m; sourceTree = "<group>"; };
FE1FBEEF11E6692400A9A87A /* NSAtomicStoreCacheNode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSAtomicStoreCacheNode.h; sourceTree = "<group>"; };
FE1FBEF011E6692400A9A87A /* NSAtomicStoreCacheNode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSAtomicStoreCacheNode.m; sourceTree = "<group>"; };
FE1FBEF111E6692400A9A87A /* NSPersistentStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSPersistentStore.h; sourceTree = "<group>"; };
FE1FBEF211E6692400A9A87A /* NSPersistentStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSPersistentStore.m; sourceTree = "<group>"; };
FE1FC22511E8116200A9A87A /* NSInMemoryPersistentStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSInMemoryPersistentStore.h; sourceTree = "<group>"; };
FE1FC22611E8116200A9A87A /* NSInMemoryPersistentStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSInMemoryPersistentStore.m; sourceTree = "<group>"; };
FE1FC22711E8116200A9A87A /* NSXMLPersistentStore.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSXMLPersistentStore.h; sourceTree = "<group>"; };
FE1FC22811E8116200A9A87A /* NSXMLPersistentStore.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSXMLPersistentStore.m; sourceTree = "<group>"; };
FE2131390DBFC72700CEDC65 /* dllmain.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = dllmain.m; sourceTree = "<group>"; };
FE21328F0DBFD21900CEDC65 /* CoreDataExports.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreDataExports.h; sourceTree = "<group>"; };
FE2132910DBFD22000CEDC65 /* CoreData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreData.h; sourceTree = "<group>"; };
FE59F2FF0D54301C00D54A25 /* Foundation.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Foundation.xcodeproj; path = ../Foundation/Foundation.xcodeproj; sourceTree = SOURCE_ROOT; };
FE7085CF1431178000B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FE82F3BE0BF1042F00B18B54 /* NSAttributeDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSAttributeDescription.h; sourceTree = "<group>"; };
FE82F3BF0BF1042F00B18B54 /* NSAttributeDescription.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSAttributeDescription.m; sourceTree = "<group>"; };
FE82F3C00BF1042F00B18B54 /* NSEntityDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSEntityDescription.h; sourceTree = "<group>"; };
FE82F3C10BF1042F00B18B54 /* NSEntityDescription.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSEntityDescription.m; sourceTree = "<group>"; };
FE82F3C20BF1042F00B18B54 /* NSFetchedPropertyDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSFetchedPropertyDescription.h; sourceTree = "<group>"; };
FE82F3C30BF1042F00B18B54 /* NSFetchedPropertyDescription.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSFetchedPropertyDescription.m; sourceTree = "<group>"; };
FE82F3C40BF1042F00B18B54 /* NSFetchRequest.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSFetchRequest.h; sourceTree = "<group>"; };
FE82F3C50BF1042F00B18B54 /* NSFetchRequest.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSFetchRequest.m; sourceTree = "<group>"; };
FE82F3C60BF1042F00B18B54 /* NSManagedObject.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSManagedObject.h; sourceTree = "<group>"; };
FE82F3C70BF1042F00B18B54 /* NSManagedObject.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSManagedObject.m; sourceTree = "<group>"; };
FE82F3C80BF1042F00B18B54 /* NSManagedObjectContext.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectContext.h; sourceTree = "<group>"; };
FE82F3C90BF1042F00B18B54 /* NSManagedObjectContext.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectContext.m; sourceTree = "<group>"; };
FE82F3CA0BF1042F00B18B54 /* NSManagedObjectID.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectID.h; sourceTree = "<group>"; };
FE82F3CB0BF1042F00B18B54 /* NSManagedObjectID.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectID.m; sourceTree = "<group>"; };
FE82F3CC0BF1042F00B18B54 /* NSManagedObjectModel.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSManagedObjectModel.h; sourceTree = "<group>"; };
FE82F3CD0BF1042F00B18B54 /* NSManagedObjectModel.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSManagedObjectModel.m; sourceTree = "<group>"; };
FE82F3CE0BF1042F00B18B54 /* NSPersistentStoreCoordinator.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSPersistentStoreCoordinator.h; sourceTree = "<group>"; };
FE82F3CF0BF1042F00B18B54 /* NSPersistentStoreCoordinator.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSPersistentStoreCoordinator.m; sourceTree = "<group>"; };
FE82F3D00BF1042F00B18B54 /* NSPropertyDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSPropertyDescription.h; sourceTree = "<group>"; };
FE82F3D10BF1042F00B18B54 /* NSPropertyDescription.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSPropertyDescription.m; sourceTree = "<group>"; };
FE82F3D20BF1042F00B18B54 /* NSRelationshipDescription.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = NSRelationshipDescription.h; sourceTree = "<group>"; };
FE82F3D30BF1042F00B18B54 /* NSRelationshipDescription.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = NSRelationshipDescription.m; sourceTree = "<group>"; };
FEA2C92E12077436003B1BB9 /* NSManagedObject-Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSManagedObject-Private.h"; sourceTree = "<group>"; };
FEA2C92F12077436003B1BB9 /* NSManagedObjectID-Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSManagedObjectID-Private.h"; sourceTree = "<group>"; };
FEC0A3681709354A002A60B7 /* darwin-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3691709354A002A60B7 /* darwin-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36A1709354A002A60B7 /* darwin-x86_64-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36B1709354A002A60B7 /* freebsd-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36C1709354A002A60B7 /* linux-arm-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36D1709354A002A60B7 /* linux-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36E1709354A002A60B7 /* linux-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A36F1709354A002A60B7 /* solaris-sparc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc-framework.xcconfig"; sourceTree = "<group>"; };
FEDE4B941208545A003D3EF1 /* NSPersistentStoreCoordinator-Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSPersistentStoreCoordinator-Private.h"; sourceTree = "<group>"; };
FEDE4E4F12089EDC003D3EF1 /* CoreDataErrors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreDataErrors.h; sourceTree = "<group>"; };
FEDE4E5012089EDC003D3EF1 /* CoreDataErrors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CoreDataErrors.m; sourceTree = "<group>"; };
FEDE51FD1209B1A0003D3EF1 /* NSManagedObjectContext-Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSManagedObjectContext-Private.h"; sourceTree = "<group>"; };
FEDE52F51209C3AE003D3EF1 /* NSEntityDescription-Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSEntityDescription-Private.h"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8DC2EF560486A6940098B216 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FE2131420DBFC74200CEDC65 /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
8DC2EF5B0486A6940098B216 /* CoreData.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* CoreData */ = {
isa = PBXGroup;
children = (
FE06B1211430E7390071169B /* xcconfig */,
FE06433D121AD7C200373F23 /* NSManagedObjectMutableSet.h */,
FE06433E121AD7C200373F23 /* NSManagedObjectMutableSet.m */,
FE064327121AD56400373F23 /* NSManagedObjectSet.h */,
FE064328121AD56400373F23 /* NSManagedObjectSet.m */,
FE064329121AD56400373F23 /* NSManagedObjectSetEnumerator.h */,
FE06432A121AD56400373F23 /* NSManagedObjectSetEnumerator.m */,
FEDE52F51209C3AE003D3EF1 /* NSEntityDescription-Private.h */,
FEDE51FD1209B1A0003D3EF1 /* NSManagedObjectContext-Private.h */,
FEDE4E4F12089EDC003D3EF1 /* CoreDataErrors.h */,
FEDE4E5012089EDC003D3EF1 /* CoreDataErrors.m */,
FEDE4B941208545A003D3EF1 /* NSPersistentStoreCoordinator-Private.h */,
FEA2C92E12077436003B1BB9 /* NSManagedObject-Private.h */,
FEA2C92F12077436003B1BB9 /* NSManagedObjectID-Private.h */,
08FB77AEFE84172EC02AAC07 /* Classes */,
FE2132910DBFD22000CEDC65 /* CoreData.h */,
FE21328F0DBFD21900CEDC65 /* CoreDataExports.h */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
FE59F2FF0D54301C00D54A25 /* Foundation.xcodeproj */,
FE1FBEED11E6692400A9A87A /* NSAtomicStore.h */,
FE1FBEEE11E6692400A9A87A /* NSAtomicStore.m */,
FE1FBEEF11E6692400A9A87A /* NSAtomicStoreCacheNode.h */,
FE1FBEF011E6692400A9A87A /* NSAtomicStoreCacheNode.m */,
FE82F3BE0BF1042F00B18B54 /* NSAttributeDescription.h */,
FE82F3BF0BF1042F00B18B54 /* NSAttributeDescription.m */,
FE82F3C00BF1042F00B18B54 /* NSEntityDescription.h */,
FE82F3C10BF1042F00B18B54 /* NSEntityDescription.m */,
FE82F3C20BF1042F00B18B54 /* NSFetchedPropertyDescription.h */,
FE82F3C30BF1042F00B18B54 /* NSFetchedPropertyDescription.m */,
FE82F3C40BF1042F00B18B54 /* NSFetchRequest.h */,
FE82F3C50BF1042F00B18B54 /* NSFetchRequest.m */,
FE1FC22511E8116200A9A87A /* NSInMemoryPersistentStore.h */,
FE1FC22611E8116200A9A87A /* NSInMemoryPersistentStore.m */,
FE82F3C60BF1042F00B18B54 /* NSManagedObject.h */,
FE82F3C70BF1042F00B18B54 /* NSManagedObject.m */,
FE82F3C80BF1042F00B18B54 /* NSManagedObjectContext.h */,
FE82F3C90BF1042F00B18B54 /* NSManagedObjectContext.m */,
FE82F3CA0BF1042F00B18B54 /* NSManagedObjectID.h */,
FE82F3CB0BF1042F00B18B54 /* NSManagedObjectID.m */,
FE82F3CC0BF1042F00B18B54 /* NSManagedObjectModel.h */,
FE82F3CD0BF1042F00B18B54 /* NSManagedObjectModel.m */,
FE1FBEF111E6692400A9A87A /* NSPersistentStore.h */,
FE1FBEF211E6692400A9A87A /* NSPersistentStore.m */,
FE82F3CE0BF1042F00B18B54 /* NSPersistentStoreCoordinator.h */,
FE82F3CF0BF1042F00B18B54 /* NSPersistentStoreCoordinator.m */,
FE82F3D00BF1042F00B18B54 /* NSPropertyDescription.h */,
FE82F3D10BF1042F00B18B54 /* NSPropertyDescription.m */,
FE82F3D20BF1042F00B18B54 /* NSRelationshipDescription.h */,
FE82F3D30BF1042F00B18B54 /* NSRelationshipDescription.m */,
FE1FC22711E8116200A9A87A /* NSXMLPersistentStore.h */,
FE1FC22811E8116200A9A87A /* NSXMLPersistentStore.m */,
32C88DFF0371C24200C91783 /* Other Sources */,
034768DFFF38A50411DB9C8B /* Products */,
089C1665FE841158C02AAC07 /* Resources */,
);
indentWidth = 4;
name = CoreData;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
089C1666FE841158C02AAC07 /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
08FB77AEFE84172EC02AAC07 /* Classes */ = {
isa = PBXGroup;
children = (
);
name = Classes;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
FE2131390DBFC72700CEDC65 /* dllmain.m */,
);
name = "Other Sources";
sourceTree = "<group>";
};
FE06B1211430E7390071169B /* xcconfig */ = {
isa = PBXGroup;
children = (
FEC0A3681709354A002A60B7 /* darwin-i386-framework.xcconfig */,
FEC0A3691709354A002A60B7 /* darwin-ppc-framework.xcconfig */,
FEC0A36A1709354A002A60B7 /* darwin-x86_64-framework.xcconfig */,
FEC0A36B1709354A002A60B7 /* freebsd-i386-framework.xcconfig */,
FEC0A36C1709354A002A60B7 /* linux-arm-framework.xcconfig */,
FEC0A36D1709354A002A60B7 /* linux-i386-framework.xcconfig */,
FEC0A36E1709354A002A60B7 /* linux-ppc-framework.xcconfig */,
FEC0A36F1709354A002A60B7 /* solaris-sparc-framework.xcconfig */,
FE06B1221430E7390071169B /* darwin-i386.xcconfig */,
FE06B1231430E7390071169B /* darwin-ppc.xcconfig */,
FE06B1241430E7390071169B /* darwin-x86_64.xcconfig */,
FE06B1251430E7390071169B /* darwin.xcconfig */,
FE06B1261430E7390071169B /* freebsd-i386.xcconfig */,
FE06B1271430E7390071169B /* freebsd.xcconfig */,
FE06B1281430E7390071169B /* linux-arm.xcconfig */,
FE06B1291430E7390071169B /* linux-i386.xcconfig */,
FE06B12A1430E7390071169B /* linux-ppc.xcconfig */,
FE06B12B1430E7390071169B /* linux.xcconfig */,
FE06B12C1430E7390071169B /* platform.xcconfig */,
FE06B12D1430E7390071169B /* solaris-sparc.xcconfig */,
FE06B12E1430E7390071169B /* solaris.xcconfig */,
FE06B12F1430E7390071169B /* windows-i386.xcconfig */,
FE06B1301430E7390071169B /* windows.xcconfig */,
FE7085CF1431178000B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
FE59F3000D54301C00D54A25 /* Products */ = {
isa = PBXGroup;
children = (
FE59F3100D54301D00D54A25 /* Foundation.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8DC2EF500486A6940098B216 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE82F3D40BF1042F00B18B54 /* NSAttributeDescription.h in Headers */,
FE82F3D60BF1042F00B18B54 /* NSEntityDescription.h in Headers */,
FE82F3D80BF1042F00B18B54 /* NSFetchedPropertyDescription.h in Headers */,
FE82F3DA0BF1042F00B18B54 /* NSFetchRequest.h in Headers */,
FE82F3DC0BF1042F00B18B54 /* NSManagedObject.h in Headers */,
FE82F3DE0BF1042F00B18B54 /* NSManagedObjectContext.h in Headers */,
FE82F3E00BF1042F00B18B54 /* NSManagedObjectID.h in Headers */,
FE82F3E20BF1042F00B18B54 /* NSManagedObjectModel.h in Headers */,
FE82F3E40BF1042F00B18B54 /* NSPersistentStoreCoordinator.h in Headers */,
FE82F3E60BF1042F00B18B54 /* NSPropertyDescription.h in Headers */,
FE82F3E80BF1042F00B18B54 /* NSRelationshipDescription.h in Headers */,
FE2132900DBFD21900CEDC65 /* CoreDataExports.h in Headers */,
FE2132920DBFD22000CEDC65 /* CoreData.h in Headers */,
FE1FBEF311E6692400A9A87A /* NSAtomicStore.h in Headers */,
FE1FBEF511E6692400A9A87A /* NSAtomicStoreCacheNode.h in Headers */,
FE1FBEF711E6692400A9A87A /* NSPersistentStore.h in Headers */,
FE1FC22911E8116200A9A87A /* NSInMemoryPersistentStore.h in Headers */,
FE1FC22B11E8116200A9A87A /* NSXMLPersistentStore.h in Headers */,
FEA2C93012077436003B1BB9 /* NSManagedObject-Private.h in Headers */,
FEA2C93112077436003B1BB9 /* NSManagedObjectID-Private.h in Headers */,
FEDE4B951208545A003D3EF1 /* NSPersistentStoreCoordinator-Private.h in Headers */,
FEDE4E5112089EDC003D3EF1 /* CoreDataErrors.h in Headers */,
FEDE51FE1209B1A0003D3EF1 /* NSManagedObjectContext-Private.h in Headers */,
FEDE52F61209C3AE003D3EF1 /* NSEntityDescription-Private.h in Headers */,
FE06432B121AD56400373F23 /* NSManagedObjectSet.h in Headers */,
FE06432D121AD56400373F23 /* NSManagedObjectSetEnumerator.h in Headers */,
FE06433F121AD7C200373F23 /* NSManagedObjectMutableSet.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8DC2EF4F0486A6940098B216 /* CoreData */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreData" */;
buildPhases = (
8DC2EF500486A6940098B216 /* Headers */,
8DC2EF520486A6940098B216 /* Resources */,
8DC2EF540486A6940098B216 /* Sources */,
8DC2EF560486A6940098B216 /* Frameworks */,
);
buildRules = (
);
dependencies = (
FE39C6851203D5F800A80A71 /* PBXTargetDependency */,
);
name = CoreData;
productInstallPath = "$(HOME)/Library/Frameworks";
productName = CoreData;
productReference = 8DC2EF5B0486A6940098B216 /* CoreData.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreData" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* CoreData */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE59F3000D54301C00D54A25 /* Products */;
ProjectRef = FE59F2FF0D54301C00D54A25 /* Foundation.xcodeproj */;
},
);
projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* CoreData */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE59F3100D54301D00D54A25 /* Foundation.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Foundation.framework;
remoteRef = FE59F30F0D54301D00D54A25 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8DC2EF520486A6940098B216 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8DC2EF540486A6940098B216 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE82F3D50BF1042F00B18B54 /* NSAttributeDescription.m in Sources */,
FE82F3D70BF1042F00B18B54 /* NSEntityDescription.m in Sources */,
FE82F3D90BF1042F00B18B54 /* NSFetchedPropertyDescription.m in Sources */,
FE82F3DB0BF1042F00B18B54 /* NSFetchRequest.m in Sources */,
FE82F3DD0BF1042F00B18B54 /* NSManagedObject.m in Sources */,
FE82F3DF0BF1042F00B18B54 /* NSManagedObjectContext.m in Sources */,
FE82F3E10BF1042F00B18B54 /* NSManagedObjectID.m in Sources */,
FE82F3E30BF1042F00B18B54 /* NSManagedObjectModel.m in Sources */,
FE82F3E50BF1042F00B18B54 /* NSPersistentStoreCoordinator.m in Sources */,
FE82F3E70BF1042F00B18B54 /* NSPropertyDescription.m in Sources */,
FE82F3E90BF1042F00B18B54 /* NSRelationshipDescription.m in Sources */,
FE21313A0DBFC72700CEDC65 /* dllmain.m in Sources */,
FE1FBEF411E6692400A9A87A /* NSAtomicStore.m in Sources */,
FE1FBEF611E6692400A9A87A /* NSAtomicStoreCacheNode.m in Sources */,
FE1FBEF811E6692400A9A87A /* NSPersistentStore.m in Sources */,
FE1FC22A11E8116200A9A87A /* NSInMemoryPersistentStore.m in Sources */,
FE1FC22C11E8116200A9A87A /* NSXMLPersistentStore.m in Sources */,
FEDE4E5212089EDC003D3EF1 /* CoreDataErrors.m in Sources */,
FE06432C121AD56400373F23 /* NSManagedObjectSet.m in Sources */,
FE06432E121AD56400373F23 /* NSManagedObjectSetEnumerator.m in Sources */,
FE064340121AD7C200373F23 /* NSManagedObjectMutableSet.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE39C6851203D5F800A80A71 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Foundation-Windows-i386";
targetProxy = FE39C6841203D5F800A80A71 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
089C1666FE841158C02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1DEB91AE08733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE7085CF1431178000B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"-DCOREDATA_INSIDE_BUILD",
"$(OTHER_CFLAGS)",
);
PRODUCT_NAME = CoreData;
};
name = "Windows-i386";
};
1DEB91B208733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Windows-i386";
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreData" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91AE08733DA50010E9CD /* Windows-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Windows-i386";
};
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreData" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B208733DA50010E9CD /* Windows-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Windows-i386";
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

File diff suppressed because it is too large Load Diff

View File

@ -1 +0,0 @@
#import <CFNetwork/CFNetwork.h>

View File

@ -1,352 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C1666FE841158C02AAC07 /* InfoPlist.strings */; };
FE7433A910A89ED7004CDF00 /* CoreServices.h in Headers */ = {isa = PBXBuildFile; fileRef = FE7433A810A89ED7004CDF00 /* CoreServices.h */; settings = {ATTRIBUTES = (Public, ); }; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE7433B210A89F5D004CDF00 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE7433AE10A89F5D004CDF00 /* CFNetwork.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
remoteInfo = "CFNetwork-Windows-i386";
};
FE7433B410A89F63004CDF00 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE7433AE10A89F5D004CDF00 /* CFNetwork.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
remoteInfo = "CFNetwork-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
089C1667FE841158C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CoreServices.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CoreServices.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE708626143117B300B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FE7433A810A89ED7004CDF00 /* CoreServices.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreServices.h; sourceTree = "<group>"; };
FE7433AE10A89F5D004CDF00 /* CFNetwork.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CFNetwork.xcodeproj; path = ../CFNetwork/CFNetwork.xcodeproj; sourceTree = SOURCE_ROOT; };
FEC0A3911709356B002A60B7 /* darwin-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3921709356B002A60B7 /* darwin-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3931709356B002A60B7 /* darwin-x86_64-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3941709356B002A60B7 /* freebsd-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3951709356B002A60B7 /* linux-arm-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3961709356B002A60B7 /* linux-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3971709356B002A60B7 /* linux-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3981709356B002A60B7 /* solaris-sparc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc-framework.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
8DC2EF5B0486A6940098B216 /* CoreServices.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* CoreServices */ = {
isa = PBXGroup;
children = (
FE06B1BD1430E7AF0071169B /* xcconfig */,
FE7433AE10A89F5D004CDF00 /* CFNetwork.xcodeproj */,
FE7433A810A89ED7004CDF00 /* CoreServices.h */,
32C88DFF0371C24200C91783 /* Other Sources */,
089C1665FE841158C02AAC07 /* Resources */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
034768DFFF38A50411DB9C8B /* Products */,
);
indentWidth = 4;
name = CoreServices;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
089C1666FE841158C02AAC07 /* InfoPlist.strings */,
);
name = Resources;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
);
name = "Other Sources";
sourceTree = "<group>";
};
FE06B1BD1430E7AF0071169B /* xcconfig */ = {
isa = PBXGroup;
children = (
FEC0A3911709356B002A60B7 /* darwin-i386-framework.xcconfig */,
FEC0A3921709356B002A60B7 /* darwin-ppc-framework.xcconfig */,
FEC0A3931709356B002A60B7 /* darwin-x86_64-framework.xcconfig */,
FEC0A3941709356B002A60B7 /* freebsd-i386-framework.xcconfig */,
FEC0A3951709356B002A60B7 /* linux-arm-framework.xcconfig */,
FEC0A3961709356B002A60B7 /* linux-i386-framework.xcconfig */,
FEC0A3971709356B002A60B7 /* linux-ppc-framework.xcconfig */,
FEC0A3981709356B002A60B7 /* solaris-sparc-framework.xcconfig */,
FE708626143117B300B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
FE7433AF10A89F5D004CDF00 /* Products */ = {
isa = PBXGroup;
children = (
FE7433B310A89F5D004CDF00 /* CFNetwork.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8DC2EF500486A6940098B216 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FE7433A910A89ED7004CDF00 /* CoreServices.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8DC2EF4F0486A6940098B216 /* CoreServices */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreServices" */;
buildPhases = (
8DC2EF500486A6940098B216 /* Headers */,
8DC2EF520486A6940098B216 /* Resources */,
);
buildRules = (
);
dependencies = (
FE7433B510A89F63004CDF00 /* PBXTargetDependency */,
);
name = CoreServices;
productInstallPath = "$(HOME)/Library/Frameworks";
productName = CoreServices;
productReference = 8DC2EF5B0486A6940098B216 /* CoreServices.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreServices" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* CoreServices */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE7433AF10A89F5D004CDF00 /* Products */;
ProjectRef = FE7433AE10A89F5D004CDF00 /* CFNetwork.xcodeproj */;
},
);
projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* CoreServices */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE7433B310A89F5D004CDF00 /* CFNetwork.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CFNetwork.framework;
remoteRef = FE7433B210A89F5D004CDF00 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8DC2EF520486A6940098B216 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8DC2EF530486A6940098B216 /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE7433B510A89F63004CDF00 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "CFNetwork-Windows-i386";
targetProxy = FE7433B410A89F63004CDF00 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
089C1666FE841158C02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C1667FE841158C02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
1DEB91AE08733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE708626143117B300B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreServices;
};
name = "Windows-i386";
};
1DEB91AF08733DA50010E9CD /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3911709356B002A60B7 /* darwin-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreServices;
};
name = "Darwin-i386";
};
1DEB91B208733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Windows-i386";
};
1DEB91B308733DA50010E9CD /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Darwin-i386";
};
CFC5B4771AF468F100FBB52A /* Linux-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Linux-i386";
};
CFC5B4781AF468F100FBB52A /* Linux-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3961709356B002A60B7 /* linux-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreServices;
};
name = "Linux-i386";
};
CFC5B47D1AF468F800FBB52A /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "FreeBSD-i386";
};
CFC5B47E1AF468F800FBB52A /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3941709356B002A60B7 /* freebsd-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreServices;
};
name = "FreeBSD-i386";
};
CFC5B4831AF4690000FBB52A /* Darwin-x86_64 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Darwin-x86_64";
};
CFC5B4841AF4690000FBB52A /* Darwin-x86_64 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3931709356B002A60B7 /* darwin-x86_64-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreServices;
};
name = "Darwin-x86_64";
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreServices" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91AE08733DA50010E9CD /* Windows-i386 */,
CFC5B4841AF4690000FBB52A /* Darwin-x86_64 */,
CFC5B47E1AF468F800FBB52A /* FreeBSD-i386 */,
1DEB91AF08733DA50010E9CD /* Darwin-i386 */,
CFC5B4781AF468F100FBB52A /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Darwin-i386";
};
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreServices" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B208733DA50010E9CD /* Windows-i386 */,
CFC5B4831AF4690000FBB52A /* Darwin-x86_64 */,
CFC5B47D1AF468F800FBB52A /* FreeBSD-i386 */,
1DEB91B308733DA50010E9CD /* Darwin-i386 */,
CFC5B4771AF468F100FBB52A /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Darwin-i386";
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

View File

@ -1,2 +0,0 @@
/* Localized versions of Info.plist keys */

View File

@ -1,28 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//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></string>
<key>CFBundleIdentifier</key>
<string>org.cocotron.CoreServices</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>${PRODUCT_NAME}</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>OBJC</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -1,421 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
FECF92110FFB217F007AECF1 /* CoreText.h in Headers */ = {isa = PBXBuildFile; fileRef = FECF920B0FFB217F007AECF1 /* CoreText.h */; settings = {ATTRIBUTES = (Public, ); }; };
FECF92120FFB217F007AECF1 /* CoreTextExport.h in Headers */ = {isa = PBXBuildFile; fileRef = FECF920C0FFB217F007AECF1 /* CoreTextExport.h */; settings = {ATTRIBUTES = (Public, ); }; };
FECF92130FFB217F007AECF1 /* CTFont.h in Headers */ = {isa = PBXBuildFile; fileRef = FECF920D0FFB217F007AECF1 /* CTFont.h */; settings = {ATTRIBUTES = (Public, ); }; };
FECF92150FFB217F007AECF1 /* KTFont.h in Headers */ = {isa = PBXBuildFile; fileRef = FECF920F0FFB217F007AECF1 /* KTFont.h */; settings = {ATTRIBUTES = (Private, ); }; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE5A884810C6F286005E348A /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE5A884510C6F286005E348A;
remoteInfo = "CoreGraphics-Darwin-i386 copy";
};
FECF92710FFB2BA7007AECF1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = 8DC2EF5B0486A6940098B216;
remoteInfo = "CoreGraphics-Windows-i386";
};
FECF92730FFB2BA7007AECF1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE6F7BB30FD554A800C3244F;
remoteInfo = "CoreGraphics-Linux-i386";
};
FECF92750FFB2BA7007AECF1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE6F7C980FD55FA300C3244F;
remoteInfo = "CoreGraphics-Darwin-i386";
};
FECF92770FFB2BB0007AECF1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = 8DC2EF4F0486A6940098B216;
remoteInfo = "CoreGraphics-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
0867D69BFE84028FC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
8DC2EF5A0486A6940098B216 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
8DC2EF5B0486A6940098B216 /* CoreText.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CoreText.framework; sourceTree = BUILT_PRODUCTS_DIR; };
FE06B2161430E7D90071169B /* darwin-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386.xcconfig"; sourceTree = "<group>"; };
FE06B2171430E7D90071169B /* darwin-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B2181430E7D90071169B /* darwin-x86_64.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64.xcconfig"; sourceTree = "<group>"; };
FE06B2191430E7D90071169B /* darwin.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = darwin.xcconfig; sourceTree = "<group>"; };
FE06B21A1430E7D90071169B /* freebsd-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386.xcconfig"; sourceTree = "<group>"; };
FE06B21B1430E7D90071169B /* freebsd.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = freebsd.xcconfig; sourceTree = "<group>"; };
FE06B21C1430E7D90071169B /* linux-arm.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm.xcconfig"; sourceTree = "<group>"; };
FE06B21D1430E7D90071169B /* linux-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386.xcconfig"; sourceTree = "<group>"; };
FE06B21E1430E7D90071169B /* linux-ppc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc.xcconfig"; sourceTree = "<group>"; };
FE06B21F1430E7D90071169B /* linux.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = linux.xcconfig; sourceTree = "<group>"; };
FE06B2201430E7D90071169B /* platform.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = platform.xcconfig; sourceTree = "<group>"; };
FE06B2211430E7D90071169B /* solaris-sparc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc.xcconfig"; sourceTree = "<group>"; };
FE06B2221430E7D90071169B /* solaris.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = solaris.xcconfig; sourceTree = "<group>"; };
FE06B2231430E7D90071169B /* windows-i386.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386.xcconfig"; sourceTree = "<group>"; };
FE06B2241430E7D90071169B /* windows.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = windows.xcconfig; sourceTree = "<group>"; };
FE708651143117C400B99A95 /* windows-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "windows-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3FE170935CA002A60B7 /* darwin-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A3FF170935CA002A60B7 /* darwin-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A400170935CA002A60B7 /* darwin-x86_64-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "darwin-x86_64-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A401170935CA002A60B7 /* freebsd-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "freebsd-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A402170935CA002A60B7 /* linux-arm-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-arm-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A403170935CA002A60B7 /* linux-i386-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-i386-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A404170935CA002A60B7 /* linux-ppc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "linux-ppc-framework.xcconfig"; sourceTree = "<group>"; };
FEC0A405170935CA002A60B7 /* solaris-sparc-framework.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "solaris-sparc-framework.xcconfig"; sourceTree = "<group>"; };
FECF920B0FFB217F007AECF1 /* CoreText.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreText.h; sourceTree = "<group>"; };
FECF920C0FFB217F007AECF1 /* CoreTextExport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CoreTextExport.h; sourceTree = "<group>"; };
FECF920D0FFB217F007AECF1 /* CTFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CTFont.h; sourceTree = "<group>"; };
FECF920E0FFB217F007AECF1 /* CTFont.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CTFont.m; sourceTree = "<group>"; };
FECF920F0FFB217F007AECF1 /* KTFont.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KTFont.h; sourceTree = "<group>"; };
FECF92100FFB217F007AECF1 /* KTFont.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KTFont.m; sourceTree = "<group>"; };
FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = CoreGraphics.xcodeproj; path = ../CoreGraphics/CoreGraphics.xcodeproj; sourceTree = SOURCE_ROOT; };
FECF928B0FFB2C5C007AECF1 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Cocotron/1.0/Windows/i386/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; };
/* End PBXFileReference section */
/* Begin PBXGroup section */
034768DFFF38A50411DB9C8B /* Products */ = {
isa = PBXGroup;
children = (
8DC2EF5B0486A6940098B216 /* CoreText.framework */,
);
name = Products;
sourceTree = "<group>";
};
0867D691FE84028FC02AAC07 /* CoreText */ = {
isa = PBXGroup;
children = (
FE06B2151430E7D90071169B /* xcconfig */,
FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */,
08FB77AEFE84172EC02AAC07 /* Classes */,
32C88DFF0371C24200C91783 /* Other Sources */,
089C1665FE841158C02AAC07 /* Resources */,
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */,
034768DFFF38A50411DB9C8B /* Products */,
);
indentWidth = 4;
name = CoreText;
sourceTree = "<group>";
tabWidth = 4;
usesTabs = 0;
};
0867D69AFE84028FC02AAC07 /* External Frameworks and Libraries */ = {
isa = PBXGroup;
children = (
FECF928B0FFB2C5C007AECF1 /* CoreGraphics.framework */,
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */,
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */,
);
name = "External Frameworks and Libraries";
sourceTree = "<group>";
};
089C1665FE841158C02AAC07 /* Resources */ = {
isa = PBXGroup;
children = (
8DC2EF5A0486A6940098B216 /* Info.plist */,
);
name = Resources;
sourceTree = "<group>";
};
08FB77AEFE84172EC02AAC07 /* Classes */ = {
isa = PBXGroup;
children = (
FECF920B0FFB217F007AECF1 /* CoreText.h */,
FECF920C0FFB217F007AECF1 /* CoreTextExport.h */,
FECF920D0FFB217F007AECF1 /* CTFont.h */,
FECF920E0FFB217F007AECF1 /* CTFont.m */,
FECF920F0FFB217F007AECF1 /* KTFont.h */,
FECF92100FFB217F007AECF1 /* KTFont.m */,
);
name = Classes;
sourceTree = "<group>";
};
1058C7B0FEA5585E11CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7B2FEA5585E11CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
0867D69BFE84028FC02AAC07 /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
32C88DFF0371C24200C91783 /* Other Sources */ = {
isa = PBXGroup;
children = (
);
name = "Other Sources";
sourceTree = "<group>";
};
FE06B2151430E7D90071169B /* xcconfig */ = {
isa = PBXGroup;
children = (
FEC0A3FE170935CA002A60B7 /* darwin-i386-framework.xcconfig */,
FEC0A3FF170935CA002A60B7 /* darwin-ppc-framework.xcconfig */,
FEC0A400170935CA002A60B7 /* darwin-x86_64-framework.xcconfig */,
FEC0A401170935CA002A60B7 /* freebsd-i386-framework.xcconfig */,
FEC0A402170935CA002A60B7 /* linux-arm-framework.xcconfig */,
FEC0A403170935CA002A60B7 /* linux-i386-framework.xcconfig */,
FEC0A404170935CA002A60B7 /* linux-ppc-framework.xcconfig */,
FEC0A405170935CA002A60B7 /* solaris-sparc-framework.xcconfig */,
FE06B2161430E7D90071169B /* darwin-i386.xcconfig */,
FE06B2171430E7D90071169B /* darwin-ppc.xcconfig */,
FE06B2181430E7D90071169B /* darwin-x86_64.xcconfig */,
FE06B2191430E7D90071169B /* darwin.xcconfig */,
FE06B21A1430E7D90071169B /* freebsd-i386.xcconfig */,
FE06B21B1430E7D90071169B /* freebsd.xcconfig */,
FE06B21C1430E7D90071169B /* linux-arm.xcconfig */,
FE06B21D1430E7D90071169B /* linux-i386.xcconfig */,
FE06B21E1430E7D90071169B /* linux-ppc.xcconfig */,
FE06B21F1430E7D90071169B /* linux.xcconfig */,
FE06B2201430E7D90071169B /* platform.xcconfig */,
FE06B2211430E7D90071169B /* solaris-sparc.xcconfig */,
FE06B2221430E7D90071169B /* solaris.xcconfig */,
FE06B2231430E7D90071169B /* windows-i386.xcconfig */,
FE06B2241430E7D90071169B /* windows.xcconfig */,
FE708651143117C400B99A95 /* windows-i386-framework.xcconfig */,
);
name = xcconfig;
path = ../xcconfig;
sourceTree = SOURCE_ROOT;
};
FECF926C0FFB2BA7007AECF1 /* Products */ = {
isa = PBXGroup;
children = (
FECF92720FFB2BA7007AECF1 /* CoreGraphics.framework */,
FECF92740FFB2BA7007AECF1 /* CoreGraphics.framework */,
FECF92760FFB2BA7007AECF1 /* CoreGraphics.framework */,
FE5A884910C6F286005E348A /* CoreGraphics.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
8DC2EF500486A6940098B216 /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
FECF92110FFB217F007AECF1 /* CoreText.h in Headers */,
FECF92120FFB217F007AECF1 /* CoreTextExport.h in Headers */,
FECF92130FFB217F007AECF1 /* CTFont.h in Headers */,
FECF92150FFB217F007AECF1 /* KTFont.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
8DC2EF4F0486A6940098B216 /* CoreText */ = {
isa = PBXNativeTarget;
buildConfigurationList = 1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreText" */;
buildPhases = (
8DC2EF500486A6940098B216 /* Headers */,
8DC2EF520486A6940098B216 /* Resources */,
);
buildRules = (
);
dependencies = (
FECF92780FFB2BB0007AECF1 /* PBXTargetDependency */,
);
name = CoreText;
productInstallPath = "$(HOME)/Library/Frameworks";
productName = CoreText;
productReference = 8DC2EF5B0486A6940098B216 /* CoreText.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
0867D690FE84028FC02AAC07 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0460;
};
buildConfigurationList = 1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreText" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
English,
Japanese,
French,
German,
);
mainGroup = 0867D691FE84028FC02AAC07 /* CoreText */;
productRefGroup = 034768DFFF38A50411DB9C8B /* Products */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FECF926C0FFB2BA7007AECF1 /* Products */;
ProjectRef = FECF926B0FFB2BA7007AECF1 /* CoreGraphics.xcodeproj */;
},
);
projectRoot = "";
targets = (
8DC2EF4F0486A6940098B216 /* CoreText */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE5A884910C6F286005E348A /* CoreGraphics.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CoreGraphics.framework;
remoteRef = FE5A884810C6F286005E348A /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FECF92720FFB2BA7007AECF1 /* CoreGraphics.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CoreGraphics.framework;
remoteRef = FECF92710FFB2BA7007AECF1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FECF92740FFB2BA7007AECF1 /* CoreGraphics.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CoreGraphics.framework;
remoteRef = FECF92730FFB2BA7007AECF1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FECF92760FFB2BA7007AECF1 /* CoreGraphics.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = CoreGraphics.framework;
remoteRef = FECF92750FFB2BA7007AECF1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8DC2EF520486A6940098B216 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FECF92780FFB2BB0007AECF1 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "CoreGraphics-Windows-i386";
targetProxy = FECF92770FFB2BB0007AECF1 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin XCBuildConfiguration section */
1DEB91AF08733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FE708651143117C400B99A95 /* windows-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreText;
};
name = "Windows-i386";
};
1DEB91B308733DA50010E9CD /* Windows-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Windows-i386";
};
CFF0A1521AF472C000160EAA /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Darwin-i386";
};
CFF0A1531AF472C000160EAA /* Darwin-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A3FE170935CA002A60B7 /* darwin-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreText;
};
name = "Darwin-i386";
};
CFF0A1571AF472C600160EAA /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "FreeBSD-i386";
};
CFF0A1581AF472C600160EAA /* FreeBSD-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A401170935CA002A60B7 /* freebsd-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreText;
};
name = "FreeBSD-i386";
};
FEDE64B8118A7266009C3494 /* Linux-i386 */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = "Linux-i386";
};
FEDE64B9118A7266009C3494 /* Linux-i386 */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FEC0A403170935CA002A60B7 /* linux-i386-framework.xcconfig */;
buildSettings = {
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CoreText;
};
name = "Linux-i386";
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
1DEB91AD08733DA50010E9CD /* Build configuration list for PBXNativeTarget "CoreText" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91AF08733DA50010E9CD /* Windows-i386 */,
CFF0A1581AF472C600160EAA /* FreeBSD-i386 */,
CFF0A1531AF472C000160EAA /* Darwin-i386 */,
FEDE64B9118A7266009C3494 /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Windows-i386";
};
1DEB91B108733DA50010E9CD /* Build configuration list for PBXProject "CoreText" */ = {
isa = XCConfigurationList;
buildConfigurations = (
1DEB91B308733DA50010E9CD /* Windows-i386 */,
CFF0A1571AF472C600160EAA /* FreeBSD-i386 */,
CFF0A1521AF472C000160EAA /* Darwin-i386 */,
FEDE64B8118A7266009C3494 /* Linux-i386 */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = "Windows-i386";
};
/* End XCConfigurationList section */
};
rootObject = 0867D690FE84028FC02AAC07 /* Project object */;
}

View File

@ -1,445 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 42;
objects = {
/* Begin PBXBuildFile section */
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
FEFC48F00BB21906006628BF /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
FEFC48F10BB21906006628BF /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
FEFC48F30BB21906006628BF /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
FEFC48F50BB21906006628BF /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
FEFC49240BB21A07006628BF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97325FDCFA39411CA2CEA /* Foundation.framework */; };
FEFC49250BB21A08006628BF /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97324FDCFA39411CA2CEA /* AppKit.framework */; };
FEFC492A0BB21B1D006628BF /* GradientView.m in Sources */ = {isa = PBXBuildFile; fileRef = FEFC49290BB21B1D006628BF /* GradientView.m */; };
FEFC492B0BB21B1D006628BF /* GradientView.m in Sources */ = {isa = PBXBuildFile; fileRef = FEFC49290BB21B1D006628BF /* GradientView.m */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE386AF615268155007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AB210C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
FE386AF815268155007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = C8E0BFAA0F0E6B0E00677729;
remoteInfo = "Cocoa-Darwin-i386";
};
FE386AFA15268155007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FECC1DD6108D025D00BD4A91;
remoteInfo = "Cocoa-Linux-i386";
};
FE386AFC15268155007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE5A873F10C6F1E8005E348A;
remoteInfo = "Cocoa-FreeBSD-i386";
};
FE386B0315268162007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01AB110C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
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>"; };
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
29B97319FDCFA39411CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MainMenu.nib; sourceTree = "<group>"; };
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>"; };
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D1107320486CEB800E47090 /* CGShadingCreate.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CGShadingCreate.app; sourceTree = BUILT_PRODUCTS_DIR; };
FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Cocoa.xcodeproj; path = ../../Cocoa/Cocoa.xcodeproj; sourceTree = "<group>"; };
FEFC48F90BB21906006628BF /* CGShadingCreate.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CGShadingCreate.app; sourceTree = BUILT_PRODUCTS_DIR; };
FEFC49280BB21B1D006628BF /* GradientView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = GradientView.h; sourceTree = "<group>"; };
FEFC49290BB21B1D006628BF /* GradientView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = GradientView.m; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8D11072E0486CEB800E47090 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEFC48F40BB21906006628BF /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FEFC48F50BB21906006628BF /* Cocoa.framework in Frameworks */,
FEFC49240BB21A07006628BF /* Foundation.framework in Frameworks */,
FEFC49250BB21A08006628BF /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
080E96DDFE201D6D7F000001 /* Classes */ = {
isa = PBXGroup;
children = (
);
name = Classes;
sourceTree = "<group>";
};
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
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 /* CGShadingCreate.app */,
FEFC48F90BB21906006628BF /* CGShadingCreate.app */,
);
name = Products;
sourceTree = "<group>";
};
29B97314FDCFA39411CA2CEA /* CGShadingCreate */ = {
isa = PBXGroup;
children = (
FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */,
080E96DDFE201D6D7F000001 /* Classes */,
29B97315FDCFA39411CA2CEA /* Other Sources */,
29B97317FDCFA39411CA2CEA /* Resources */,
29B97323FDCFA39411CA2CEA /* Frameworks */,
19C28FACFE9D520D11CA2CBB /* Products */,
);
name = CGShadingCreate;
sourceTree = "<group>";
};
29B97315FDCFA39411CA2CEA /* Other Sources */ = {
isa = PBXGroup;
children = (
29B97316FDCFA39411CA2CEA /* main.m */,
FEFC49280BB21B1D006628BF /* GradientView.h */,
FEFC49290BB21B1D006628BF /* GradientView.m */,
);
name = "Other Sources";
sourceTree = "<group>";
};
29B97317FDCFA39411CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
8D1107310486CEB800E47090 /* Info.plist */,
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
29B97318FDCFA39411CA2CEA /* MainMenu.nib */,
);
name = Resources;
sourceTree = "<group>";
};
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
);
name = Frameworks;
sourceTree = "<group>";
};
FE386AA515268151007CC8C7 /* Products */ = {
isa = PBXGroup;
children = (
FE386AF715268155007CC8C7 /* Cocoa.framework */,
FE386AF915268155007CC8C7 /* Cocoa.framework */,
FE386AFB15268155007CC8C7 /* Cocoa.framework */,
FE386AFD15268155007CC8C7 /* Cocoa.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
8D1107260486CEB800E47090 /* CGShadingCreate-Mac */ = {
isa = PBXNativeTarget;
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "CGShadingCreate-Mac" */;
buildPhases = (
8D1107290486CEB800E47090 /* Resources */,
8D11072C0486CEB800E47090 /* Sources */,
8D11072E0486CEB800E47090 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "CGShadingCreate-Mac";
productInstallPath = "$(HOME)/Applications";
productName = CGShadingCreate;
productReference = 8D1107320486CEB800E47090 /* CGShadingCreate.app */;
productType = "com.apple.product-type.application";
};
FEFC48EE0BB21906006628BF /* CGShadingCreate-Windows */ = {
isa = PBXNativeTarget;
buildConfigurationList = FEFC48F60BB21906006628BF /* Build configuration list for PBXNativeTarget "CGShadingCreate-Windows" */;
buildPhases = (
FEFC48EF0BB21906006628BF /* Resources */,
FEFC48F20BB21906006628BF /* Sources */,
FEFC48F40BB21906006628BF /* Frameworks */,
FEB8F1150D3DB75D00754380 /* ShellScript */,
);
buildRules = (
);
dependencies = (
FE386B0415268162007CC8C7 /* PBXTargetDependency */,
);
name = "CGShadingCreate-Windows";
productInstallPath = "$(HOME)/Applications";
productName = CGShadingCreate;
productReference = FEFC48F90BB21906006628BF /* CGShadingCreate.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 "CGShadingCreate" */;
compatibilityVersion = "Xcode 2.4";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
en,
);
mainGroup = 29B97314FDCFA39411CA2CEA /* CGShadingCreate */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE386AA515268151007CC8C7 /* Products */;
ProjectRef = FE386AA415268151007CC8C7 /* Cocoa.xcodeproj */;
},
);
projectRoot = "";
targets = (
8D1107260486CEB800E47090 /* CGShadingCreate-Mac */,
FEFC48EE0BB21906006628BF /* CGShadingCreate-Windows */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE386AF715268155007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386AF615268155007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386AF915268155007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386AF815268155007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386AFB15268155007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386AFA15268155007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386AFD15268155007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386AFC15268155007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8D1107290486CEB800E47090 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */,
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEFC48EF0BB21906006628BF /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FEFC48F00BB21906006628BF /* MainMenu.nib in Resources */,
FEFC48F10BB21906006628BF /* InfoPlist.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
FEB8F1150D3DB75D00754380 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "/Developer/Cocotron/1.0/bin/retargetBundle -framework Foundation -framework AppKit -destination $TARGET_BUILD_DIR\"/\"$EXECUTABLE_FOLDER_PATH\n\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D11072C0486CEB800E47090 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072D0486CEB800E47090 /* main.m in Sources */,
FEFC492A0BB21B1D006628BF /* GradientView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEFC48F20BB21906006628BF /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FEFC48F30BB21906006628BF /* main.m in Sources */,
FEFC492B0BB21B1D006628BF /* GradientView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE386B0415268162007CC8C7 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Cocoa-Windows-i386";
targetProxy = FE386B0315268162007CC8C7 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C165DFE840E0CC02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
29B97318FDCFA39411CA2CEA /* MainMenu.nib */ = {
isa = PBXVariantGroup;
children = (
29B97319FDCFA39411CA2CEA /* English */,
);
name = MainMenu.nib;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
C01FCF4C08A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = i386;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = CGShadingCreate;
WRAPPER_EXTENSION = app;
};
name = Release;
};
C01FCF5008A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
PREBINDING = NO;
};
name = Release;
};
FEFC48F80BB21906006628BF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = i386;
COPY_PHASE_STRIP = YES;
EFFECTIVE_PLATFORM_NAME = "-windows";
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .exe;
FRAMEWORK_SEARCH_PATHS = /Developer/Cocotron/1.0/Windows/i386/Frameworks;
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_VERSION = org.cocotron.1.0.windows.i386.gcc.4.3.1;
INFOPLIST_FILE = Info.plist;
OTHER_LDFLAGS = (
"-Wl,--enable-auto-import",
"-mwindows",
);
PRODUCT_NAME = CGShadingCreate;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "CGShadingCreate-Mac" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C01FCF4C08A954540054247B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "CGShadingCreate" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C01FCF5008A954540054247B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FEFC48F60BB21906006628BF /* Build configuration list for PBXNativeTarget "CGShadingCreate-Windows" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FEFC48F80BB21906006628BF /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
}

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Mac"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Release">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Mac"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Mac"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Mac"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Release">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEFC48EE0BB21906006628BF"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Windows"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Release">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEFC48EE0BB21906006628BF"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Windows"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEFC48EE0BB21906006628BF"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Windows"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEFC48EE0BB21906006628BF"
BuildableName = "CGShadingCreate.app"
BlueprintName = "CGShadingCreate-Windows"
ReferencedContainer = "container:CGShadingCreate.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Release">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,24 +0,0 @@
<?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>IBDocumentLocation</key>
<string>76 78 356 240 0 0 1680 1028 </string>
<key>IBEditorPositions</key>
<dict>
<key>29</key>
<string>80 352 350 44 0 0 1680 1028 </string>
</dict>
<key>IBFramework Version</key>
<string>446.1</string>
<key>IBOpenObjects</key>
<array>
<integer>29</integer>
<integer>21</integer>
</array>
<key>IBSystem Version</key>
<string>8L2127</string>
<key>IBUsesTextArchiving</key>
<true/>
</dict>
</plist>

File diff suppressed because it is too large Load Diff

View File

@ -1,28 +0,0 @@
<?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></string>
<key>CFBundleIdentifier</key>
<string>org.cocotron.CGShadingCreateAxial</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>OBJC</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>NSMainNibFile</key>
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
</dict>
</plist>

View File

@ -1,100 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<Group
location = "group:CGShadingCreate"
name = "CGShadingCreate">
<FileRef
location = "group:CGShadingCreate.xcodeproj">
</FileRef>
<Group
location = "group:English.lproj"
name = "English.lproj">
<FileRef
location = "group:InfoPlist.strings">
</FileRef>
<FileRef
location = "group:MainMenu.nib">
</FileRef>
</Group>
<FileRef
location = "group:GradientView.h">
</FileRef>
<FileRef
location = "group:GradientView.m">
</FileRef>
<FileRef
location = "group:Info.plist">
</FileRef>
<FileRef
location = "group:main.m">
</FileRef>
</Group>
<Group
location = "group:NSOpenGLView"
name = "NSOpenGLView">
<Group
location = "group:English.lproj"
name = "English.lproj">
<FileRef
location = "group:InfoPlist.strings">
</FileRef>
<FileRef
location = "group:Localizable-windows.strings">
</FileRef>
<FileRef
location = "group:Localizable.strings">
</FileRef>
<FileRef
location = "group:MainMenu.nib">
</FileRef>
</Group>
<FileRef
location = "group:Info.plist">
</FileRef>
<FileRef
location = "group:main.m">
</FileRef>
<FileRef
location = "group:MyOpenGLView.h">
</FileRef>
<FileRef
location = "group:MyOpenGLView.m">
</FileRef>
<FileRef
location = "group:NSOpenGLView.xcodeproj">
</FileRef>
</Group>
<Group
location = "group:TextEditor"
name = "TextEditor">
<Group
location = "group:English.lproj"
name = "English.lproj">
<FileRef
location = "group:Credits.rtf">
</FileRef>
<FileRef
location = "group:MainMenu.nib">
</FileRef>
<FileRef
location = "group:MyDocument.nib">
</FileRef>
</Group>
<FileRef
location = "group:Info.plist">
</FileRef>
<FileRef
location = "group:main.m">
</FileRef>
<FileRef
location = "group:MyDocument.h">
</FileRef>
<FileRef
location = "group:MyDocument.m">
</FileRef>
<FileRef
location = "group:TextEditor.xcodeproj">
</FileRef>
</Group>
</Workspace>

View File

@ -1,484 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 42;
objects = {
/* Begin PBXBuildFile section */
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
FE472DAE0C85A959002B72EF /* MyOpenGLView.m in Sources */ = {isa = PBXBuildFile; fileRef = FE472DAD0C85A959002B72EF /* MyOpenGLView.m */; };
FE472DC90C85AAA1002B72EF /* OpenGL.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE472DC80C85AAA1002B72EF /* OpenGL.framework */; };
FE4733530C876FA1002B72EF /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 29B97318FDCFA39411CA2CEA /* MainMenu.nib */; };
FE4733540C876FA1002B72EF /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
FE4733560C876FA1002B72EF /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
FE4733570C876FA1002B72EF /* MyOpenGLView.m in Sources */ = {isa = PBXBuildFile; fileRef = FE472DAD0C85A959002B72EF /* MyOpenGLView.m */; };
FEBEB04E0C96D3EE002C9F50 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = FEBEB04D0C96D3EE002C9F50 /* Localizable.strings */; };
FEBEB04F0C96D3EE002C9F50 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = FEBEB04D0C96D3EE002C9F50 /* Localizable.strings */; };
FEBEB0520C96D3FD002C9F50 /* Localizable-windows.strings in Resources */ = {isa = PBXBuildFile; fileRef = FEBEB0510C96D3FD002C9F50 /* Localizable-windows.strings */; };
FEBEB0530C96D3FD002C9F50 /* Localizable-windows.strings in Resources */ = {isa = PBXBuildFile; fileRef = FEBEB0510C96D3FD002C9F50 /* Localizable-windows.strings */; };
FEF2EB7D0C87B952001FC5A8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97325FDCFA39411CA2CEA /* Foundation.framework */; };
FEF2EB7E0C87B959001FC5A8 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 29B97324FDCFA39411CA2CEA /* AppKit.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FE386A3C15267FB1007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AB210C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
FE386A3E15267FB1007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = C8E0BFAA0F0E6B0E00677729;
remoteInfo = "Cocoa-Darwin-i386";
};
FE386A4015267FB1007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FECC1DD6108D025D00BD4A91;
remoteInfo = "Cocoa-Linux-i386";
};
FE386A4215267FB1007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE5A873F10C6F1E8005E348A;
remoteInfo = "Cocoa-FreeBSD-i386";
};
FE386A4815267FC9007CC8C7 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01AB110C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
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>"; };
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
29B97319FDCFA39411CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MainMenu.nib; sourceTree = "<group>"; };
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>"; };
8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D1107320486CEB800E47090 /* NSOpenGLView.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = NSOpenGLView.app; sourceTree = BUILT_PRODUCTS_DIR; };
FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Cocoa.xcodeproj; path = ../../Cocoa/Cocoa.xcodeproj; sourceTree = "<group>"; };
FE472DAC0C85A959002B72EF /* MyOpenGLView.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = MyOpenGLView.h; sourceTree = "<group>"; };
FE472DAD0C85A959002B72EF /* MyOpenGLView.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; path = MyOpenGLView.m; sourceTree = "<group>"; };
FE472DC80C85AAA1002B72EF /* OpenGL.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenGL.framework; path = /System/Library/Frameworks/OpenGL.framework; sourceTree = "<absolute>"; };
FE47335D0C876FA1002B72EF /* NSOpenGLView.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = NSOpenGLView.app; sourceTree = BUILT_PRODUCTS_DIR; };
FEBEB00E0C96D208002C9F50 /* English */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/Localizable.strings; sourceTree = "<group>"; };
FEBEB0160C96D228002C9F50 /* English */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = text.plist.strings; name = English; path = "English.lproj/Localizable-windows.strings"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8D11072E0486CEB800E47090 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
FE472DC90C85AAA1002B72EF /* OpenGL.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE4733580C876FA1002B72EF /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FEF2EB7D0C87B952001FC5A8 /* Foundation.framework in Frameworks */,
FEF2EB7E0C87B959001FC5A8 /* AppKit.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
080E96DDFE201D6D7F000001 /* Classes */ = {
isa = PBXGroup;
children = (
);
name = Classes;
sourceTree = "<group>";
};
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
29B97324FDCFA39411CA2CEA /* AppKit.framework */,
13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,
29B97325FDCFA39411CA2CEA /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
19C28FACFE9D520D11CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
8D1107320486CEB800E47090 /* NSOpenGLView.app */,
FE47335D0C876FA1002B72EF /* NSOpenGLView.app */,
);
name = Products;
sourceTree = "<group>";
};
29B97314FDCFA39411CA2CEA /* NSOpenGLView */ = {
isa = PBXGroup;
children = (
FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */,
080E96DDFE201D6D7F000001 /* Classes */,
29B97315FDCFA39411CA2CEA /* Other Sources */,
29B97317FDCFA39411CA2CEA /* Resources */,
29B97323FDCFA39411CA2CEA /* Frameworks */,
19C28FACFE9D520D11CA2CBB /* Products */,
FEBEB04D0C96D3EE002C9F50 /* Localizable.strings */,
FEBEB0510C96D3FD002C9F50 /* Localizable-windows.strings */,
);
name = NSOpenGLView;
sourceTree = "<group>";
};
29B97315FDCFA39411CA2CEA /* Other Sources */ = {
isa = PBXGroup;
children = (
29B97316FDCFA39411CA2CEA /* main.m */,
FE472DAC0C85A959002B72EF /* MyOpenGLView.h */,
FE472DAD0C85A959002B72EF /* MyOpenGLView.m */,
);
name = "Other Sources";
sourceTree = "<group>";
};
29B97317FDCFA39411CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
8D1107310486CEB800E47090 /* Info.plist */,
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
29B97318FDCFA39411CA2CEA /* MainMenu.nib */,
);
name = Resources;
sourceTree = "<group>";
};
29B97323FDCFA39411CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
FE472DC80C85AAA1002B72EF /* OpenGL.framework */,
1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
);
name = Frameworks;
sourceTree = "<group>";
};
FE3869EB15267FAD007CC8C7 /* Products */ = {
isa = PBXGroup;
children = (
FE386A3D15267FB1007CC8C7 /* Cocoa.framework */,
FE386A3F15267FB1007CC8C7 /* Cocoa.framework */,
FE386A4115267FB1007CC8C7 /* Cocoa.framework */,
FE386A4315267FB1007CC8C7 /* Cocoa.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
8D1107260486CEB800E47090 /* NSOpenGLView-MacOS */ = {
isa = PBXNativeTarget;
buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "NSOpenGLView-MacOS" */;
buildPhases = (
8D1107290486CEB800E47090 /* Resources */,
8D11072C0486CEB800E47090 /* Sources */,
8D11072E0486CEB800E47090 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "NSOpenGLView-MacOS";
productInstallPath = "$(HOME)/Applications";
productName = NSOpenGLView;
productReference = 8D1107320486CEB800E47090 /* NSOpenGLView.app */;
productType = "com.apple.product-type.application";
};
FE4733510C876FA1002B72EF /* NSOpenGLView-Windows */ = {
isa = PBXNativeTarget;
buildConfigurationList = FE47335B0C876FA1002B72EF /* Build configuration list for PBXNativeTarget "NSOpenGLView-Windows" */;
buildPhases = (
FE4733520C876FA1002B72EF /* Resources */,
FE4733550C876FA1002B72EF /* Sources */,
FE4733580C876FA1002B72EF /* Frameworks */,
FE2D932D0D491258005B7813 /* ShellScript */,
);
buildRules = (
);
dependencies = (
FE386A4915267FC9007CC8C7 /* PBXTargetDependency */,
);
name = "NSOpenGLView-Windows";
productInstallPath = "$(HOME)/Applications";
productName = NSOpenGLView;
productReference = FE47335D0C876FA1002B72EF /* NSOpenGLView.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 "NSOpenGLView" */;
compatibilityVersion = "Xcode 2.4";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
en,
);
mainGroup = 29B97314FDCFA39411CA2CEA /* NSOpenGLView */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FE3869EB15267FAD007CC8C7 /* Products */;
ProjectRef = FE3869EA15267FAD007CC8C7 /* Cocoa.xcodeproj */;
},
);
projectRoot = "";
targets = (
8D1107260486CEB800E47090 /* NSOpenGLView-MacOS */,
FE4733510C876FA1002B72EF /* NSOpenGLView-Windows */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FE386A3D15267FB1007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386A3C15267FB1007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386A3F15267FB1007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386A3E15267FB1007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386A4115267FB1007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386A4015267FB1007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FE386A4315267FB1007CC8C7 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FE386A4215267FB1007CC8C7 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8D1107290486CEB800E47090 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072A0486CEB800E47090 /* MainMenu.nib in Resources */,
8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
FEBEB04E0C96D3EE002C9F50 /* Localizable.strings in Resources */,
FEBEB0520C96D3FD002C9F50 /* Localizable-windows.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE4733520C876FA1002B72EF /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE4733530C876FA1002B72EF /* MainMenu.nib in Resources */,
FE4733540C876FA1002B72EF /* InfoPlist.strings in Resources */,
FEBEB04F0C96D3EE002C9F50 /* Localizable.strings in Resources */,
FEBEB0530C96D3FD002C9F50 /* Localizable-windows.strings in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
FE2D932D0D491258005B7813 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "/Developer/Cocotron/1.0/bin/retargetBundle -framework Foundation -framework AppKit -destination $TARGET_BUILD_DIR\"/\"$EXECUTABLE_FOLDER_PATH\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D11072C0486CEB800E47090 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D11072D0486CEB800E47090 /* main.m in Sources */,
FE472DAE0C85A959002B72EF /* MyOpenGLView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FE4733550C876FA1002B72EF /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FE4733560C876FA1002B72EF /* main.m in Sources */,
FE4733570C876FA1002B72EF /* MyOpenGLView.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FE386A4915267FC9007CC8C7 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Cocoa-Windows-i386";
targetProxy = FE386A4815267FC9007CC8C7 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
089C165DFE840E0CC02AAC07 /* English */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
29B97318FDCFA39411CA2CEA /* MainMenu.nib */ = {
isa = PBXVariantGroup;
children = (
29B97319FDCFA39411CA2CEA /* English */,
);
name = MainMenu.nib;
sourceTree = "<group>";
};
FEBEB04D0C96D3EE002C9F50 /* Localizable.strings */ = {
isa = PBXVariantGroup;
children = (
FEBEB00E0C96D208002C9F50 /* English */,
);
name = Localizable.strings;
sourceTree = "<group>";
};
FEBEB0510C96D3FD002C9F50 /* Localizable-windows.strings */ = {
isa = PBXVariantGroup;
children = (
FEBEB0160C96D228002C9F50 /* English */,
);
name = "Localizable-windows.strings";
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
C01FCF4C08A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_OPTIMIZATION_LEVEL = 1;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
PRODUCT_NAME = NSOpenGLView;
SDKROOT = "";
WRAPPER_EXTENSION = app;
};
name = Release;
};
C01FCF5008A954540054247B /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
PREBINDING = NO;
SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
};
name = Release;
};
FE47335C0C876FA1002B72EF /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = i386;
COPY_PHASE_STRIP = YES;
EFFECTIVE_PLATFORM_NAME = "-windows";
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .exe;
FRAMEWORK_SEARCH_PATHS = /Developer/Cocotron/1.0/Windows/i386/Frameworks;
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_VERSION = org.cocotron.1.0.windows.i386.gcc.4.3.1;
INFOPLIST_FILE = Info.plist;
INSTALL_PATH = "$(HOME)/Applications";
OTHER_LDFLAGS = (
"-Wl,--enable-auto-import",
"-mwindows",
"-lopengl32",
);
PREBINDING = NO;
PRODUCT_NAME = NSOpenGLView;
SDKROOT = "";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "NSOpenGLView-MacOS" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C01FCF4C08A954540054247B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
C01FCF4E08A954540054247B /* Build configuration list for PBXProject "NSOpenGLView" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C01FCF5008A954540054247B /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FE47335B0C876FA1002B72EF /* Build configuration list for PBXNativeTarget "NSOpenGLView-Windows" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FE47335C0C876FA1002B72EF /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
}

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-MacOS"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Release">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-MacOS"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-MacOS"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D1107260486CEB800E47090"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-MacOS"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Release">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE4733510C876FA1002B72EF"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-Windows"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Deployment">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE4733510C876FA1002B72EF"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-Windows"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE4733510C876FA1002B72EF"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-Windows"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Deployment"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE4733510C876FA1002B72EF"
BuildableName = "NSOpenGLView.app"
BlueprintName = "NSOpenGLView-Windows"
ReferencedContainer = "container:NSOpenGLView.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Deployment">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Deployment"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,533 +0,0 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objects = {
/* Begin PBXBuildFile section */
8D15AC2C0486D014006FF6A4 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */; };
8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */; };
8D15AC2E0486D014006FF6A4 /* MyDocument.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */; };
8D15AC310486D014006FF6A4 /* MyDocument.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */; settings = {ATTRIBUTES = (); }; };
8D15AC320486D014006FF6A4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */; };
FE2021971751B01F002A9EDC /* MyDocument.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */; };
FEBCB9391750326300056F54 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FEBCB9381750326300056F54 /* AppKit.framework */; };
FEBCB93B1750326E00056F54 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FEBCB93A1750326E00056F54 /* Foundation.framework */; };
FEF2CA110B35153A005449C7 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */; };
FEF2CA120B35153A005449C7 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */; };
FEF2CA130B35153A005449C7 /* MyDocument.nib in Resources */ = {isa = PBXBuildFile; fileRef = 2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */; };
FEF2CA170B35153A005449C7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 2A37F4B0FDCFA73011CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
FEB4EF3A15267D2100EC3CA1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE01AB210C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
FEB4EF3C15267D2100EC3CA1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = C8E0BFAA0F0E6B0E00677729;
remoteInfo = "Cocoa-Darwin-i386";
};
FEB4EF3E15267D2100EC3CA1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FECC1DD6108D025D00BD4A91;
remoteInfo = "Cocoa-Linux-i386";
};
FEB4EF4015267D2100EC3CA1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
proxyType = 2;
remoteGlobalIDString = FE5A873F10C6F1E8005E348A;
remoteInfo = "Cocoa-FreeBSD-i386";
};
FEB4EF4215267D3400EC3CA1 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
proxyType = 1;
remoteGlobalIDString = FE01AB110C5D9C3400AEA51A;
remoteInfo = "Cocoa-Windows-i386";
};
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MyDocument.m; sourceTree = "<group>"; };
2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MyDocument.h; sourceTree = "<group>"; };
2A37F4B0FDCFA73011CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
2A37F4B5FDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MyDocument.nib; sourceTree = "<group>"; };
2A37F4B7FDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MainMenu.nib; sourceTree = "<group>"; };
2A37F4BAFDCFA73011CA2CEA /* English */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; name = English; path = English.lproj/Credits.rtf; sourceTree = "<group>"; };
2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
8D15AC360486D014006FF6A4 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
8D15AC370486D014006FF6A4 /* TextEditor.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TextEditor.app; sourceTree = BUILT_PRODUCTS_DIR; };
FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Cocoa.xcodeproj; path = ../../Cocoa/Cocoa.xcodeproj; sourceTree = "<group>"; };
FEBCB9381750326300056F54 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = "../../AppKit/build/sym/Release-i386-mingw32msvc/AppKit.framework"; sourceTree = "<group>"; };
FEBCB93A1750326E00056F54 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = "../../Foundation/build/sym/Release-i386-pc-linux/Foundation.framework"; sourceTree = "<group>"; };
FEF2CA1C0B35153A005449C7 /* TextEditor.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TextEditor.app; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
8D15AC330486D014006FF6A4 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
8D15AC340486D014006FF6A4 /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEF2CA180B35153A005449C7 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
FEBCB9391750326300056F54 /* AppKit.framework in Frameworks */,
FEBCB93B1750326E00056F54 /* Foundation.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */ = {
isa = PBXGroup;
children = (
1058C7A7FEA54F5311CA2CBB /* Cocoa.framework */,
);
name = "Linked Frameworks";
sourceTree = "<group>";
};
1058C7A8FEA54F5311CA2CBB /* Other Frameworks */ = {
isa = PBXGroup;
children = (
2A37F4C4FDCFA73011CA2CEA /* AppKit.framework */,
2A37F4C5FDCFA73011CA2CEA /* Foundation.framework */,
);
name = "Other Frameworks";
sourceTree = "<group>";
};
19C28FB0FE9D524F11CA2CBB /* Products */ = {
isa = PBXGroup;
children = (
8D15AC370486D014006FF6A4 /* TextEditor.app */,
FEF2CA1C0B35153A005449C7 /* TextEditor.app */,
);
name = Products;
sourceTree = "<group>";
};
2A37F4AAFDCFA73011CA2CEA /* TextEditor */ = {
isa = PBXGroup;
children = (
FEBCB93A1750326E00056F54 /* Foundation.framework */,
FEBCB9381750326300056F54 /* AppKit.framework */,
FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */,
2A37F4ABFDCFA73011CA2CEA /* Classes */,
2A37F4C3FDCFA73011CA2CEA /* Frameworks */,
2A37F4AFFDCFA73011CA2CEA /* Other Sources */,
19C28FB0FE9D524F11CA2CBB /* Products */,
2A37F4B8FDCFA73011CA2CEA /* Resources */,
);
name = TextEditor;
sourceTree = "<group>";
};
2A37F4ABFDCFA73011CA2CEA /* Classes */ = {
isa = PBXGroup;
children = (
2A37F4AEFDCFA73011CA2CEA /* MyDocument.h */,
2A37F4ACFDCFA73011CA2CEA /* MyDocument.m */,
);
name = Classes;
sourceTree = "<group>";
};
2A37F4AFFDCFA73011CA2CEA /* Other Sources */ = {
isa = PBXGroup;
children = (
2A37F4B0FDCFA73011CA2CEA /* main.m */,
);
name = "Other Sources";
sourceTree = "<group>";
};
2A37F4B8FDCFA73011CA2CEA /* Resources */ = {
isa = PBXGroup;
children = (
2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */,
2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */,
2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */,
8D15AC360486D014006FF6A4 /* Info.plist */,
);
name = Resources;
sourceTree = "<group>";
};
2A37F4C3FDCFA73011CA2CEA /* Frameworks */ = {
isa = PBXGroup;
children = (
1058C7A6FEA54F5311CA2CBB /* Linked Frameworks */,
1058C7A8FEA54F5311CA2CBB /* Other Frameworks */,
);
name = Frameworks;
sourceTree = "<group>";
};
FEB4EF2E15267D2000EC3CA1 /* Products */ = {
isa = PBXGroup;
children = (
FEB4EF3B15267D2100EC3CA1 /* Cocoa.framework */,
FEB4EF3D15267D2100EC3CA1 /* Cocoa.framework */,
FEB4EF3F15267D2100EC3CA1 /* Cocoa.framework */,
FEB4EF4115267D2100EC3CA1 /* Cocoa.framework */,
);
name = Products;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
8D15AC270486D014006FF6A4 /* TextEditor-Mac */ = {
isa = PBXNativeTarget;
buildConfigurationList = C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "TextEditor-Mac" */;
buildPhases = (
8D15AC2B0486D014006FF6A4 /* Resources */,
8D15AC300486D014006FF6A4 /* Sources */,
8D15AC330486D014006FF6A4 /* Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = "TextEditor-Mac";
productInstallPath = "$(HOME)/Applications";
productName = TextEditor;
productReference = 8D15AC370486D014006FF6A4 /* TextEditor.app */;
productType = "com.apple.product-type.application";
};
FEF2CA0F0B35153A005449C7 /* TextEditor-Windows */ = {
isa = PBXNativeTarget;
buildConfigurationList = FEF2CA1A0B35153A005449C7 /* Build configuration list for PBXNativeTarget "TextEditor-Windows" */;
buildPhases = (
FEF2CA100B35153A005449C7 /* Resources */,
FEF2CA150B35153A005449C7 /* Sources */,
FEF2CA180B35153A005449C7 /* Frameworks */,
FEB6746C0D2F2909006EE835 /* ShellScript */,
);
buildRules = (
);
dependencies = (
FEB4EF4315267D3400EC3CA1 /* PBXTargetDependency */,
);
name = "TextEditor-Windows";
productInstallPath = "$(HOME)/Applications";
productName = TextEditor;
productReference = FEF2CA1C0B35153A005449C7 /* TextEditor.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
2A37F4A9FDCFA73011CA2CEA /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 0420;
};
buildConfigurationList = C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "TextEditor" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = English;
hasScannedForEncodings = 1;
knownRegions = (
en,
);
mainGroup = 2A37F4AAFDCFA73011CA2CEA /* TextEditor */;
projectDirPath = "";
projectReferences = (
{
ProductGroup = FEB4EF2E15267D2000EC3CA1 /* Products */;
ProjectRef = FEB4EF2D15267D2000EC3CA1 /* Cocoa.xcodeproj */;
},
);
projectRoot = "";
targets = (
8D15AC270486D014006FF6A4 /* TextEditor-Mac */,
FEF2CA0F0B35153A005449C7 /* TextEditor-Windows */,
);
};
/* End PBXProject section */
/* Begin PBXReferenceProxy section */
FEB4EF3B15267D2100EC3CA1 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FEB4EF3A15267D2100EC3CA1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FEB4EF3D15267D2100EC3CA1 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FEB4EF3C15267D2100EC3CA1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FEB4EF3F15267D2100EC3CA1 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FEB4EF3E15267D2100EC3CA1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
FEB4EF4115267D2100EC3CA1 /* Cocoa.framework */ = {
isa = PBXReferenceProxy;
fileType = wrapper.framework;
path = Cocoa.framework;
remoteRef = FEB4EF4015267D2100EC3CA1 /* PBXContainerItemProxy */;
sourceTree = BUILT_PRODUCTS_DIR;
};
/* End PBXReferenceProxy section */
/* Begin PBXResourcesBuildPhase section */
8D15AC2B0486D014006FF6A4 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D15AC2C0486D014006FF6A4 /* Credits.rtf in Resources */,
8D15AC2D0486D014006FF6A4 /* MainMenu.nib in Resources */,
8D15AC2E0486D014006FF6A4 /* MyDocument.nib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEF2CA100B35153A005449C7 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FEF2CA110B35153A005449C7 /* Credits.rtf in Resources */,
FEF2CA120B35153A005449C7 /* MainMenu.nib in Resources */,
FEF2CA130B35153A005449C7 /* MyDocument.nib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
FEB6746C0D2F2909006EE835 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "/Developer/Cocotron/1.0/bin/retargetBundle -framework Foundation -framework AppKit -destination $TARGET_BUILD_DIR\"/\"$EXECUTABLE_FOLDER_PATH\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
8D15AC300486D014006FF6A4 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
8D15AC310486D014006FF6A4 /* MyDocument.m in Sources */,
8D15AC320486D014006FF6A4 /* main.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
FEF2CA150B35153A005449C7 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
FEF2CA170B35153A005449C7 /* main.m in Sources */,
FE2021971751B01F002A9EDC /* MyDocument.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
FEB4EF4315267D3400EC3CA1 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = "Cocoa-Windows-i386";
targetProxy = FEB4EF4215267D3400EC3CA1 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
2A37F4B4FDCFA73011CA2CEA /* MyDocument.nib */ = {
isa = PBXVariantGroup;
children = (
2A37F4B5FDCFA73011CA2CEA /* English */,
);
name = MyDocument.nib;
sourceTree = "<group>";
};
2A37F4B6FDCFA73011CA2CEA /* MainMenu.nib */ = {
isa = PBXVariantGroup;
children = (
2A37F4B7FDCFA73011CA2CEA /* English */,
);
name = MainMenu.nib;
sourceTree = "<group>";
};
2A37F4B9FDCFA73011CA2CEA /* Credits.rtf */ = {
isa = PBXVariantGroup;
children = (
2A37F4BAFDCFA73011CA2CEA /* English */,
);
name = Credits.rtf;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
C05733C808A9546B00998B17 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_MODEL_TUNING = "";
GCC_OPTIMIZATION_LEVEL = 0;
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = TextEditor;
WRAPPER_EXTENSION = app;
ZERO_LINK = NO;
};
name = Release;
};
C05733CC08A9546B00998B17 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Release;
};
FEBCB9291750249800056F54 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
};
name = Debug;
};
FEBCB92A1750249800056F54 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_MODEL_TUNING = "";
GCC_OPTIMIZATION_LEVEL = 0;
INFOPLIST_FILE = Info.plist;
PRODUCT_NAME = TextEditor;
WRAPPER_EXTENSION = app;
ZERO_LINK = NO;
};
name = Debug;
};
FEBCB92B1750249800056F54 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = i386;
COPY_PHASE_STRIP = YES;
DEPLOYMENT_LOCATION = YES;
DSTROOT = build;
EFFECTIVE_PLATFORM_NAME = "-windows";
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .exe;
FRAMEWORK_SEARCH_PATHS = "../../system/i386-mingw32msvc/Frameworks";
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_VERSION = org.cocotron.1.0.windows.i386.gcc.4.3.1;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"$(WINDOWS_i386_COMPILER_CFLAGS)",
"-isystem",
/Developer/Cocotron/1.0/Windows/i386/sysroot/mingw/include/,
"-mwindows",
"-mconsole",
);
OTHER_LDFLAGS = (
"-mwindows",
"-mconsole",
"$(WINDOWS_i386_COMPILER_LDFLAGS)",
);
PRODUCT_NAME = TextEditor;
XWINDOWS_i386_COMPILER_CFLAGS = "-ccc-host-triple i386-pc-mingw32msvc -ccc-gcc-name i386-mingw32msvc-gcc";
XWINDOWS_i386_COMPILER_LDFLAGS = "-ccc-host-triple i386-pc-mingw32msvc -ccc-gcc-name i386-mingw32msvc-gcc";
};
name = Debug;
};
FEF2CA1B0B35153A005449C7 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ARCHS = i386;
COPY_PHASE_STRIP = YES;
DEPLOYMENT_LOCATION = YES;
DSTROOT = build;
EFFECTIVE_PLATFORM_NAME = "-windows";
EXECUTABLE_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Windows";
EXECUTABLE_SUFFIX = .exe;
FRAMEWORK_SEARCH_PATHS = "../../system/i386-mingw32msvc/Frameworks";
GCC_DYNAMIC_NO_PIC = NO;
GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
GCC_MODEL_TUNING = "";
GCC_PRECOMPILE_PREFIX_HEADER = NO;
GCC_VERSION = org.cocotron.1.0.windows.i386.gcc.4.3.1;
INFOPLIST_FILE = Info.plist;
OTHER_CFLAGS = (
"$(WINDOWS_i386_COMPILER_CFLAGS)",
"-isystem",
/Developer/Cocotron/1.0/Windows/i386/sysroot/mingw/include/,
"-mwindows",
"-mconsole",
);
OTHER_LDFLAGS = (
"-mwindows",
"-mconsole",
"$(WINDOWS_i386_COMPILER_LDFLAGS)",
);
PRODUCT_NAME = TextEditor;
XWINDOWS_i386_COMPILER_CFLAGS = "-ccc-host-triple i386-pc-mingw32msvc -ccc-gcc-name i386-mingw32msvc-gcc";
XWINDOWS_i386_COMPILER_LDFLAGS = "-ccc-host-triple i386-pc-mingw32msvc -ccc-gcc-name i386-mingw32msvc-gcc";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
C05733C708A9546B00998B17 /* Build configuration list for PBXNativeTarget "TextEditor-Mac" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C05733C808A9546B00998B17 /* Release */,
FEBCB92A1750249800056F54 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
C05733CB08A9546B00998B17 /* Build configuration list for PBXProject "TextEditor" */ = {
isa = XCConfigurationList;
buildConfigurations = (
C05733CC08A9546B00998B17 /* Release */,
FEBCB9291750249800056F54 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
FEF2CA1A0B35153A005449C7 /* Build configuration list for PBXNativeTarget "TextEditor-Windows" */ = {
isa = XCConfigurationList;
buildConfigurations = (
FEF2CA1B0B35153A005449C7 /* Release */,
FEBCB92B1750249800056F54 /* Debug */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 2A37F4A9FDCFA73011CA2CEA /* Project object */;
}

View File

@ -1,84 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D15AC270486D014006FF6A4"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Mac"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Release">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D15AC270486D014006FF6A4"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Mac"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D15AC270486D014006FF6A4"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Mac"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Release"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "8D15AC270486D014006FF6A4"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Mac"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Release">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,85 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEF2CA0F0B35153A005449C7"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Windows"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Deployment">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEF2CA0F0B35153A005449C7"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Windows"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.GDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.GDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Debug"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEF2CA0F0B35153A005449C7"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Windows"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Deployment"
debugDocumentVersioning = "YES">
<BuildableProductRunnable>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FEF2CA0F0B35153A005449C7"
BuildableName = "TextEditor.app"
BlueprintName = "TextEditor-Windows"
ReferencedContainer = "container:TextEditor.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Deployment">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Deployment"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,24 +0,0 @@
/* Copyright (c) 2006 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Cocoa/Cocoa.h>
int main(int argc, char *argv[]) {
return NSApplicationMain(argc, (const char **) argv);
}

View File

@ -1,12 +0,0 @@
{
NSAMPMDesignation = (AM, PM);
NSDateFormatString = "%A, %B %d, %Y";
NSMonthNameArray = ( January, February, March, April, May, June, July, August, September, October, November, December );
NSShortMonthNameArray = (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec);
NSShortWeekDayNameArray = (Sun, Mon, Tue, Wed, Thu, Fri, Sat);
NSTimeDateFormatString = "%A, %B %d, %Y %H:%M:%S %Z";
NSTimeFormatString = "%H:%M:%S";
NSWeekDayNameArray = (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);
NSUserDefaultsUserDirectory = "~/Library/NSUserDefaults";
}

View File

@ -1,158 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#if !defined(__STDC_VERSION__)
#define __STDC_VERSION__ 198900L
#elif (__STDC_VERSION__ < 199400L)
#define __STDC_VERSION__ 199000L
#endif
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <time.h>
#if (__STDC_VERSION__ >= 199901L)
#include <inttypes.h>
#include <stdbool.h>
#include <stdint.h>
#endif
#import <CoreFoundation/CoreFoundation.h>
#import <CoreServices/CoreServices.h> // This is actually imported by NSURLError.h
#import <Foundation/FoundationErrors.h>
#import <Foundation/NSAffineTransform.h>
#import <Foundation/NSArchiver.h>
#import <Foundation/NSArray.h>
#import <Foundation/NSAssertionHandler.h>
#import <Foundation/NSAttributedString.h>
#import <Foundation/NSAutoreleasePool.h>
#import <Foundation/NSBundle.h>
#import <Foundation/NSByteOrder.h>
#import <Foundation/NSCachedURLResponse.h>
#import <Foundation/NSCalendar.h>
#import <Foundation/NSCalendarDate.h>
#import <Foundation/NSCharacterSet.h>
#import <Foundation/NSClassDescription.h>
#import <Foundation/NSCoder.h>
#import <Foundation/NSCountedSet.h>
#import <Foundation/NSData.h>
#import <Foundation/NSDate.h>
#import <Foundation/NSDateComponents.h>
#import <Foundation/NSDateFormatter.h>
#import <Foundation/NSDebug.h>
#import <Foundation/NSDecimalNumber.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSDirectoryEnumerator.h>
#import <Foundation/NSDistributedNotificationCenter.h>
#import <Foundation/NSEnumerator.h>
#import <Foundation/NSError.h>
#import <Foundation/NSException.h>
#import <Foundation/NSFileHandle.h>
#import <Foundation/NSFileManager.h>
#import <Foundation/NSFormatter.h>
#import <Foundation/NSGeometry.h>
#import <Foundation/NSHTTPCookie.h>
#import <Foundation/NSHTTPCookieStorage.h>
#import <Foundation/NSHTTPURLResponse.h>
#import <Foundation/NSHashTable.h>
#import <Foundation/NSHost.h>
#import <Foundation/NSIndexPath.h>
#import <Foundation/NSIndexSet.h>
#import <Foundation/NSInvocation.h>
#import <Foundation/NSKeyValueCoding.h>
#import <Foundation/NSKeyValueObserving.h>
#import <Foundation/NSKeyedArchiver.h>
#import <Foundation/NSKeyedUnarchiver.h>
#import <Foundation/NSLocale.h>
#import <Foundation/NSLock.h>
#import <Foundation/NSMapTable.h>
#import <Foundation/NSMetadataItem.h>
#import <Foundation/NSMetadataQuery.h>
#import <Foundation/NSMetadataQueryAttributeValueTuple.h>
#import <Foundation/NSMetadataQueryResultGroup.h>
#import <Foundation/NSMethodSignature.h>
#import <Foundation/NSMutableArray.h>
#import <Foundation/NSMutableAttributedString.h>
#import <Foundation/NSMutableCharacterSet.h>
#import <Foundation/NSMutableData.h>
#import <Foundation/NSMutableDictionary.h>
#import <Foundation/NSMutableIndexSet.h>
#import <Foundation/NSMutableSet.h>
#import <Foundation/NSMutableString.h>
#import <Foundation/NSMutableURLRequest.h>
#import <Foundation/NSNetServices.h>
#import <Foundation/NSNotification.h>
#import <Foundation/NSNotificationCenter.h>
#import <Foundation/NSNotificationQueue.h>
#import <Foundation/NSNull.h>
#import <Foundation/NSNumber.h>
#import <Foundation/NSNumberFormatter.h>
#import <Foundation/NSObjCRuntime.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSOperation.h>
#import <Foundation/NSOperationQueue.h>
#import <Foundation/NSPathUtilities.h>
#import <Foundation/NSPipe.h>
#import <Foundation/NSPort.h>
#import <Foundation/NSPortCoder.h>
#import <Foundation/NSPredicate.h>
#import <Foundation/NSProcessInfo.h>
#import <Foundation/NSProxy.h>
#import <Foundation/NSRange.h>
#import <Foundation/NSRunLoop.h>
#import <Foundation/NSScanner.h>
#import <Foundation/NSSet.h>
#import <Foundation/NSSortDescriptor.h>
#import <Foundation/NSStream.h>
#import <Foundation/NSString.h>
#import <Foundation/NSTask.h>
#import <Foundation/NSThread.h>
#import <Foundation/NSTimeZone.h>
#import <Foundation/NSTimer.h>
#import <Foundation/NSURL.h>
#import <Foundation/NSURLConnection.h>
#import <Foundation/NSURLDownload.h>
#import <Foundation/NSURLResponse.h>
#import <Foundation/NSUnarchiver.h>
#import <Foundation/NSUndoManager.h>
#import <Foundation/NSUserDefaults.h>
#import <Foundation/NSValue.h>
#import <Foundation/NSValueTransformer.h>
#import <Foundation/NSXMLDTD.h>
#import <Foundation/NSXMLDTDNode.h>
#import <Foundation/NSXMLDocument.h>
#import <Foundation/NSXMLElement.h>
#import <Foundation/NSXMLNode.h>
#import <Foundation/NSXMLParser.h>
#import <Foundation/NSZone.h>
#import <Foundation/NSScriptWhoseTests.h>

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Workspace
version = "1.0">
<FileRef
location = "self:Foundation.xcodeproj">
</FileRef>
</Workspace>

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0630"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Darwin-i386"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Windows-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0630"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Darwin-x86_64"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Windows-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0630"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "FreeBSD-i386"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Windows-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,68 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0630"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A8070C5D9BCB00AEA51A"
BuildableName = "AppKit.framework"
BlueprintName = "AppKit"
ReferencedContainer = "container:../AppKit/AppKit.xcodeproj">
</BuildableReference>
</MacroExpansion>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Linux-i386"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Windows-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "0630"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "NO">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
buildConfiguration = "Windows-i386">
<Testables>
</Testables>
</TestAction>
<LaunchAction
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
allowLocationSimulation = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
<AdditionalOptions>
</AdditionalOptions>
</LaunchAction>
<ProfileAction
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
buildConfiguration = "Windows-i386"
debugDocumentVersioning = "YES">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "FE01A5970C5D9B6900AEA51A"
BuildableName = "Foundation.framework"
BlueprintName = "Foundation"
ReferencedContainer = "container:Foundation.xcodeproj">
</BuildableReference>
</MacroExpansion>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Windows-i386">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Windows-i386"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

View File

@ -1,14 +0,0 @@
/* Copyright (c) 2009 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
enum {
NSFileReadCorruptFileError = 259,
NSFileReadNoSuchFileError = 260,
NSFileWriteUnknownError = 512,
};

View File

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//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>Foundation</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>org.cocotron.Foundation</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>FMWK</string>
<key>CFBundleSignature</key>
<string>OBJC</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<key>NSPrincipalClass</key>
<string></string>
</dict>
</plist>

View File

@ -1,58 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSGeometry.h>
typedef struct {
CGFloat m11;
CGFloat m12;
CGFloat m21;
CGFloat m22;
CGFloat tX;
CGFloat tY;
} NSAffineTransformStruct;
@interface NSAffineTransform : NSObject <NSCopying, NSCoding> {
NSAffineTransformStruct _matrix;
}
- initWithTransform: (NSAffineTransform *) other;
+ (NSAffineTransform *) transform;
- (NSAffineTransformStruct) transformStruct;
- (void) setTransformStruct: (NSAffineTransformStruct) matrix;
- (void) invert;
- (void) appendTransform: (NSAffineTransform *) other;
- (void) prependTransform: (NSAffineTransform *) other;
- (void) translateXBy: (CGFloat) xby yBy: (CGFloat) yby;
- (NSPoint) transformPoint: (NSPoint) point;
- (NSSize) transformSize: (NSSize) value;
- (void) rotateByDegrees: (CGFloat) angle;
- (void) rotateByRadians: (CGFloat) radians;
- (void) scaleBy: (CGFloat) value;
- (void) scaleXBy: (CGFloat) xvalue yBy: (CGFloat) yvalue;
@end

View File

@ -1,200 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <CoreFoundation/CFByteOrder.h>
#import <Foundation/NSAffineTransform.h>
#import <Foundation/NSKeyedArchiver.h>
#import <Foundation/NSKeyedUnarchiver.h>
#import <Foundation/NSRaise.h>
#include <math.h>
@implementation NSAffineTransform
static NSAffineTransformStruct identity = {1, 0, 0, 1, 0, 0};
// Instead of doing start * append - this imp is doing append * start - which is
// quite different in matrix multiplication
static inline NSAffineTransformStruct
multiplyStruct(NSAffineTransformStruct start, NSAffineTransformStruct append)
{
NSAffineTransformStruct result;
result.m11 = append.m11 * start.m11 + append.m12 * start.m21;
result.m12 = append.m11 * start.m12 + append.m12 * start.m22;
result.m21 = append.m21 * start.m11 + append.m22 * start.m21;
result.m22 = append.m21 * start.m12 + append.m22 * start.m22;
result.tX = append.tX * start.m11 + append.tY * start.m21 + start.tX;
result.tY = append.tX * start.m12 + append.tY * start.m22 + start.tY;
return result;
}
static inline NSAffineTransformStruct
invertStruct(NSAffineTransformStruct matrix)
{
NSAffineTransformStruct result;
CGFloat determinant;
determinant = matrix.m11 * matrix.m22 - matrix.m21 * matrix.m12;
if (determinant == 0.)
[NSException raise: NSGenericException
format: @"NSAffineTransform: Transform has no inverse"];
result.m11 = matrix.m22 / determinant;
result.m12 = -matrix.m12 / determinant;
result.m21 = -matrix.m21 / determinant;
result.m22 = matrix.m11 / determinant;
result.tX =
(-matrix.m22 * matrix.tX + matrix.m21 * matrix.tY) / determinant;
result.tY = (matrix.m12 * matrix.tX - matrix.m11 * matrix.tY) / determinant;
return result;
}
- init {
_matrix = identity;
return self;
}
- (void) encodeWithCoder: (NSCoder *) coder {
if ([coder allowsKeyedCoding]) {
NSKeyedArchiver *keyed = (NSKeyedArchiver *) coder;
CFSwappedFloat32 *words = alloca(sizeof(CFSwappedFloat32) * 6);
words[0] = CFConvertFloat32HostToSwapped(_matrix.m11);
words[1] = CFConvertFloat32HostToSwapped(_matrix.m12);
words[2] = CFConvertFloat32HostToSwapped(_matrix.m21);
words[3] = CFConvertFloat32HostToSwapped(_matrix.m22);
words[4] = CFConvertFloat32HostToSwapped(_matrix.tX);
words[5] = CFConvertFloat32HostToSwapped(_matrix.tY);
[keyed encodeBytes: (void *) words
length: (sizeof(CFSwappedFloat32) * 6)
forKey: @"NSTransformStruct"];
}
}
- initWithCoder: (NSCoder *) coder {
if ([coder allowsKeyedCoding]) {
NSKeyedUnarchiver *keyed = (NSKeyedUnarchiver *) coder;
NSUInteger length;
const uint8_t *bytes = [keyed decodeBytesForKey: @"NSTransformStruct"
returnedLength: &length];
if (length != 24)
_matrix = identity;
else {
CFSwappedFloat32 *words = (CFSwappedFloat32 *) bytes;
_matrix.m11 = CFConvertFloat32SwappedToHost(words[0]);
_matrix.m12 = CFConvertFloat32SwappedToHost(words[1]);
_matrix.m21 = CFConvertFloat32SwappedToHost(words[2]);
_matrix.m22 = CFConvertFloat32SwappedToHost(words[3]);
_matrix.tX = CFConvertFloat32SwappedToHost(words[4]);
_matrix.tY = CFConvertFloat32SwappedToHost(words[5]);
}
}
return self;
}
- initWithTransform: (NSAffineTransform *) other {
// Cocoa doesn't raise when 'other' is nil
_matrix = [other transformStruct];
return self;
}
- copyWithZone: (NSZone *) zone {
return [[[self class] allocWithZone: zone] initWithTransform: self];
}
+ (NSAffineTransform *) transform {
return [[self new] autorelease];
}
- (NSAffineTransformStruct) transformStruct {
return _matrix;
}
- (void) setTransformStruct: (NSAffineTransformStruct) matrix {
_matrix = matrix;
}
- (void) invert {
_matrix = invertStruct(_matrix);
}
- (void) appendTransform: (NSAffineTransform *) other {
// Cocoa doesn't raise when 'other' is nil
_matrix = multiplyStruct([other transformStruct], _matrix);
}
- (void) prependTransform: (NSAffineTransform *) other {
// Cocoa doesn't raise when 'other' is nil
_matrix = multiplyStruct(_matrix, [other transformStruct]);
}
- (void) translateXBy: (CGFloat) xby yBy: (CGFloat) yby {
NSAffineTransformStruct translate = {1, 0, 0, 1, xby, yby};
_matrix = multiplyStruct(_matrix, translate);
}
- (NSPoint) transformPoint: (NSPoint) point {
NSPoint result;
result.x = _matrix.m11 * point.x + _matrix.m21 * point.y + _matrix.tX;
result.y = _matrix.m12 * point.x + _matrix.m22 * point.y + _matrix.tY;
return result;
}
- (NSSize) transformSize: (NSSize) value {
NSSize result;
result.width = _matrix.m11 * value.width + _matrix.m21 * value.height;
result.height = _matrix.m12 * value.width + _matrix.m22 * value.height;
return result;
}
- (void) rotateByDegrees: (CGFloat) angle {
[self rotateByRadians: M_PI * angle / 180.0];
}
- (void) rotateByRadians: (CGFloat) radians {
NSAffineTransformStruct rotate = {
cos(radians), sin(radians), -sin(radians), cos(radians), 0, 0};
_matrix = multiplyStruct(_matrix, rotate);
}
- (void) scaleBy: (CGFloat) value {
NSAffineTransformStruct scale = {value, 0, 0, value, 0, 0};
_matrix = multiplyStruct(_matrix, scale);
}
- (void) scaleXBy: (CGFloat) xvalue yBy: (CGFloat) yvalue {
NSAffineTransformStruct scale = {xvalue, 0, 0, yvalue, 0, 0};
_matrix = multiplyStruct(_matrix, scale);
}
- (NSString *) description {
return [NSString stringWithFormat: @"<%@ 0x%p> {%g, %g, %g, %g, %g, %g}",
NSStringFromClass([self class]), self,
_matrix.m11, _matrix.m12, _matrix.m21,
_matrix.m22, _matrix.tX, _matrix.tY];
}
@end

View File

@ -1,61 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSCoder.h>
#import <Foundation/NSHashTable.h>
@class NSMutableData, NSMutableDictionary;
@interface NSArchiver : NSCoder {
NSMutableData *_data;
uint8_t *_bytes;
NSUInteger _position;
NSUInteger _pass;
NSHashTable *_conditionals;
NSHashTable *_objects;
NSHashTable *_classes;
NSHashTable *_cStrings;
}
- init;
+ (NSData *) archivedDataWithRootObject: rootObject;
+ (BOOL) archiveRootObject: rootObject toFile: (NSString *) path;
- (NSMutableData *) archiverData;
- (void) encodeValueOfObjCType: (const char *) type at: (const void *) addr;
- (void) encodeDataObject: (NSData *) data;
- (void) encodeRootObject: rootObject;
- (void) encodeConditionalObject: object;
- (void) encodeClassName: (NSString *) runtime
intoClassName: (NSString *) archive;
- (void) replaceObject: original withObject: replacement;
@end
@interface NSObject (NSArchiver)
- replacementObjectForArchiver: (NSArchiver *) archiver;
@end
#import <Foundation/NSUnarchiver.h>

View File

@ -1,437 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArchiver.h>
#import <Foundation/NSByteOrder.h>
#import <Foundation/NSMutableData.h>
#import <Foundation/NSMutableDictionary.h>
#import <Foundation/NSRaise.h>
#include <string.h>
@implementation NSArchiver
- init {
_data = [NSMutableData new];
_bytes = [_data mutableBytes];
_position = 0;
_pass = 0;
_conditionals = NSCreateHashTable(NSNonOwnedPointerHashCallBacks, 0);
_objects = NSCreateHashTable(NSNonOwnedPointerHashCallBacks, 0);
_classes = NSCreateHashTable(NSNonOwnedPointerHashCallBacks, 0);
_cStrings = NSCreateHashTable(NSObjectHashCallBacks, 0);
return self;
}
- (void) dealloc {
[_data release];
NSFreeHashTable(_conditionals);
NSFreeHashTable(_objects);
NSFreeHashTable(_classes);
NSFreeHashTable(_cStrings);
[super dealloc];
}
- (NSData *) data {
return [[_data copy] autorelease];
}
+ (NSData *) archivedDataWithRootObject: (id) rootObject {
NSArchiver *archiver = [[[self allocWithZone: NULL] init] autorelease];
[archiver encodeRootObject: rootObject];
return [archiver data];
}
+ (BOOL) archiveRootObject: rootObject toFile: (NSString *) path {
NSData *data = [self archivedDataWithRootObject: rootObject];
return [data writeToFile: path atomically: YES];
}
- (NSMutableData *) archiverData {
return _data;
}
- (void) cannotEncodeType: (const char *) type {
[NSException raise: @"NSArchiverCannotEncodeException"
format: @"NSArchiver cannot encode type=%s", type];
}
- (void) _ensureLength: (NSUInteger) length {
[_data setLength: [_data length] + length];
_bytes = [_data mutableBytes];
}
- (void) _appendData: (NSData *) data {
if (_pass == 0)
return;
[_data appendData: data];
_bytes = [_data mutableBytes];
_position = [_data length];
}
- (void) _appendWordOne: (uint8_t) value {
if (_pass == 0)
return;
[self _ensureLength: 1];
_bytes[_position++] = value;
}
- (void) _appendWordTwo: (uint16_t) value {
if (_pass == 0)
return;
[self _ensureLength: 2];
_bytes[_position++] = (value >> 8) & 0xFF;
_bytes[_position++] = value & 0xFF;
}
- (void) _appendWordFour: (uint32_t) value {
if (_pass == 0)
return;
[self _ensureLength: 4];
_bytes[_position++] = (value >> 24) & 0xFF;
_bytes[_position++] = (value >> 16) & 0xFF;
_bytes[_position++] = (value >> 8) & 0xFF;
_bytes[_position++] = value & 0xFF;
}
- (void) _appendFloat: (float) value {
[self _appendWordFour: NSConvertHostFloatToSwapped(value).floatWord];
}
- (void) _appendWordEight: (uint64_t) value {
if (_pass == 0)
return;
[self _ensureLength: 8];
_bytes[_position++] = (value >> 56) & 0xFF;
_bytes[_position++] = (value >> 48) & 0xFF;
_bytes[_position++] = (value >> 40) & 0xFF;
_bytes[_position++] = (value >> 32) & 0xFF;
_bytes[_position++] = (value >> 24) & 0xFF;
_bytes[_position++] = (value >> 16) & 0xFF;
_bytes[_position++] = (value >> 8) & 0xFF;
_bytes[_position++] = value & 0xFF;
}
- (void) _appendReference: (void *) value {
#ifdef __LP64__
[self _appendWordEight: (uint64_t) value];
#else
[self _appendWordFour: (uint32_t) value];
#endif
}
- (void) _appendBytes: (const uint8_t *) bytes length: (NSUInteger) length {
int i;
if (_pass == 0)
return;
[self _ensureLength: length];
for (i = 0; i < length; i++)
_bytes[_position++] = bytes[i];
}
- (void) _appendCStringBytes: (const char *) cString {
[self _ensureLength: strlen(cString) + 1];
for (; *cString != '\0'; cString++)
_bytes[_position++] = *cString;
_bytes[_position++] = '\0';
}
- (void) _appendCString: (const char *) cString {
NSString *string, *lookup;
if (_pass == 0) {
return;
}
// NSLog(@"cString=%s", cString);
string = [NSString stringWithCString: cString];
// NSLog(@"string=%@", string);
if ((lookup = NSHashGet(_cStrings, string)) != nil) {
[self _appendReference: lookup];
} else {
NSHashInsert(_cStrings, string);
[self _appendReference: string];
[self _appendCStringBytes: [string cString]];
}
}
- (void) _appendClassVersion: (Class) class {
if (class == [NSObject class]) {
[self _appendWordFour: 0];
return;
}
[self _appendReference: class];
if (NSHashGet(_classes, class) == NULL) {
NSHashInsert(_classes, class);
[self _appendCString: [NSStringFromClass(class) cString]];
[self _appendWordFour: [class version]];
[self _appendClassVersion: [class superclass]];
}
}
- (void) _appendObject: (id) object conditional: (BOOL) conditional {
if (_pass == 0) {
if (object != nil) {
// NSLog(@"%@ conditional=%s", NSStringFromClass([object class]),
// conditional ? "YES" : "NO");
if (!conditional) {
if (NSHashGet(_conditionals, object) == NULL) {
NSHashInsert(_conditionals, object);
[object encodeWithCoder: self];
}
}
}
} else {
if (conditional && (NSHashGet(_conditionals, object) == NULL)) {
object = nil;
}
if (object == nil) {
[self _appendWordFour: 0];
} else if (NSHashGet(_objects, object) != NULL) {
[self _appendReference: object];
} else { // FIX do replacementForCoder ?
Class class = [object classForArchiver];
NSHashInsert(_objects, object);
[self _appendReference: object];
[self _appendClassVersion: class];
[object encodeWithCoder: self];
}
}
}
- (void) _appendArrayOfObjCType: (const char *) type
length: (NSUInteger) length
at: (const void *) addr
{
if (_pass == 0)
return;
switch (*type) {
case 'c':
case 'C': {
const unsigned char *values = addr;
NSInteger i;
for (i = 0; i < length; i++)
[self _appendWordOne: values[i]];
} break;
case 's':
case 'S': {
const unsigned short *values = addr;
NSInteger i;
for (i = 0; i < length; i++)
[self _appendWordTwo: values[i]];
} break;
default:
[self cannotEncodeType: type];
break;
}
}
- (void) encodeValueOfObjCType: (const char *) type at: (const void *) addr {
// NSLog(@"type=%s",type);
[self _appendCString: type];
switch (*type) {
case 'c':
case 'C': {
unsigned char value = *(const unsigned char *) addr;
[self _appendWordOne: value];
} break;
case 's':
case 'S': {
unsigned short value = *(const unsigned short *) addr;
[self _appendWordTwo: value];
} break;
case 'i':
case 'I': {
unsigned int value = *(const unsigned int *) addr;
[self _appendWordFour: value];
} break;
case 'l':
case 'L': {
unsigned long value = *(const unsigned long *) addr;
[self _appendWordFour: value];
} break;
case 'q':
case 'Q': {
unsigned long long value = *(const unsigned long long *) addr;
[self _appendWordEight: value];
} break;
case 'f': {
float value = *(const float *) addr;
[self _appendFloat: value];
} break;
case 'd': {
double value = *(const double *) addr;
[self _appendWordEight: NSConvertHostDoubleToSwapped(value).doubleWord];
} break;
case '*': {
const char *const *cString = addr;
[self _appendCString: *cString];
} break;
case '@': {
id object = *(const id *) addr;
[self _appendObject: object conditional: NO];
} break;
case '#':
[self cannotEncodeType: type];
break;
case ':': {
SEL selector = *(const SEL *) addr;
[self _appendCString: sel_getName(selector)];
} break;
case '[': {
const char *tmp = type;
unsigned length = 0;
tmp++; // skip [
for (; *tmp >= '0' && *tmp <= '9'; tmp++)
length = (length * 10) + (*tmp - '0');
[self _appendArrayOfObjCType: tmp length: length at: addr];
} break;
case '{': // this is extremely lame
if (strcmp(type, @encode(NSRange)) == 0) {
NSRange value = *(const NSRange *) addr;
[self _appendWordFour: value.location];
[self _appendWordFour: value.length];
break;
}
if (strcmp(type, @encode(NSPoint)) == 0) {
NSPoint value = *(const NSPoint *) addr;
[self _appendFloat: value.x];
[self _appendFloat: value.y];
break;
}
if (strcmp(type, @encode(NSSize)) == 0) {
NSSize value = *(const NSSize *) addr;
[self _appendFloat: value.width];
[self _appendFloat: value.height];
break;
}
if (strcmp(type, @encode(NSRect)) == 0) {
NSRect value = *(const NSRect *) addr;
[self _appendFloat: value.origin.x];
[self _appendFloat: value.origin.y];
[self _appendFloat: value.size.width];
[self _appendFloat: value.size.height];
break;
}
[self cannotEncodeType: type];
break;
case '(':
case 'b':
case '^':
case '?':
default:
[self cannotEncodeType: type];
break;
}
}
- (void) encodeBytes: (const void *) byteaddr length: (NSUInteger) length {
[self _appendWordFour: length];
[self _appendBytes: byteaddr length: length];
}
- (void) encodeDataObject: (NSData *) data {
[self cannotEncodeType: "encodeDataObject"];
}
- (void) encodeRootObject: (id) rootObject {
_position = 0;
_pass = 0;
[self _appendObject: rootObject conditional: NO];
if (_position != 0)
NSLog(@"_position=%d", _position);
if (NSHashGet(_conditionals, rootObject) == NULL)
NSLog(@"rootObject not in conditionals");
_position = 0;
_pass = 1;
[self _appendCStringBytes: "~V1~"];
[self _appendWordFour: 0]; // archive version
[self _appendCString: "@"];
[self _appendObject: rootObject conditional: NO];
}
- (void) encodeConditionalObject: (id) object {
[self _appendCString: "@"];
[self _appendObject: object conditional: YES];
}
- (void) encodeClassName: (NSString *) runtime
intoClassName: (NSString *) archive
{
NSUnimplementedMethod();
}
- (void) replaceObject: original withObject: replacement {
NSUnimplementedMethod();
}
@end

View File

@ -1,95 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSEnumerator.h>
#import <Foundation/NSObject.h>
#import <Foundation/NSRange.h>
@class NSString, NSDictionary, NSPredicate, NSIndexSet, NSURL;
@interface NSArray
: NSObject <NSCopying, NSMutableCopying, NSCoding, NSFastEnumeration>
- initWithArray: (NSArray *) array;
- initWithArray: (NSArray *) array copyItems: (BOOL) copyItems;
- initWithContentsOfFile: (NSString *) path;
- initWithContentsOfURL: (NSURL *) url;
- initWithObjects: (id *) objects count: (NSUInteger) count;
- initWithObjects: object, ...;
+ array;
+ arrayWithContentsOfFile: (NSString *) path;
+ arrayWithContentsOfURL: (NSURL *) url;
+ arrayWithObject: object;
+ arrayWithObjects: object, ...;
+ arrayWithArray: (NSArray *) array;
+ arrayWithObjects: (id *) objects count: (NSUInteger) count;
- (NSUInteger) count;
- objectAtIndex: (NSUInteger) index;
- (void) getObjects: (id *) objects;
- (void) getObjects: (id *) objects range: (NSRange) range;
- (NSArray *) objectsAtIndexes: (NSIndexSet *) indexes;
- (NSArray *) subarrayWithRange: (NSRange) range;
- (BOOL) isEqualToArray: (NSArray *) array;
- (NSUInteger) indexOfObject: object;
- (NSUInteger) indexOfObject: object inRange: (NSRange) range;
- (NSUInteger) indexOfObjectIdenticalTo: object;
- (NSUInteger) indexOfObjectIdenticalTo: object inRange: (NSRange) range;
- (NSEnumerator *) objectEnumerator;
- (NSEnumerator *) reverseObjectEnumerator;
- (NSArray *) arrayByAddingObject: object;
- (NSArray *) arrayByAddingObjectsFromArray: (NSArray *) array;
- (NSString *) componentsJoinedByString: (NSString *) string;
- (BOOL) containsObject: object;
- firstObjectCommonWithArray: (NSArray *) array;
- firstObject;
- lastObject;
- (NSArray *) sortedArrayUsingSelector: (SEL) selector;
- (NSArray *) sortedArrayUsingFunction: (NSInteger (*)(id, id, void *)) function
context: (void *) context;
- (BOOL) writeToFile: (NSString *) path atomically: (BOOL) atomically;
- (BOOL) writeToURL: (NSURL *) aURL atomically: (BOOL) atomically;
- (void) makeObjectsPerformSelector: (SEL) selector;
- (void) makeObjectsPerformSelector: (SEL) selector withObject: object;
- (NSString *) descriptionWithLocale: (NSDictionary *) locale;
- (NSString *) descriptionWithLocale: (NSDictionary *) locale
indent: (NSUInteger) indent;
- (NSArray *) sortedArrayUsingDescriptors: (NSArray *) descriptors;
- (NSArray *) filteredArrayUsingPredicate: (NSPredicate *) predicate;
@end
#import <Foundation/NSMutableArray.h>

View File

@ -1,563 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd <cjwl@objc.net>
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
#import <Foundation/NSArray_concrete.h>
#import <Foundation/NSArray_placeholder.h>
#import <Foundation/NSAutoreleasePool-private.h>
#import <Foundation/NSCoder.h>
#import <Foundation/NSData.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSEnumerator_array.h>
#import <Foundation/NSEnumerator_arrayReverse.h>
#import <Foundation/NSIndexSet.h>
#import <Foundation/NSKeyedArchiver.h>
#import <Foundation/NSKeyedUnarchiver.h>
#import <Foundation/NSPredicate.h>
#import <Foundation/NSPropertyListReader.h>
#import <Foundation/NSPropertyListWriter_vintage.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
#import <Foundation/NSString.h>
#import <Foundation/NSURL.h>
@interface NSKeyedArchiver (PrivateToContainers)
- (void) encodeArray: (NSArray *) array forKey: (NSString *) key;
@end
@implementation NSArray
+ allocWithZone: (NSZone *) zone {
if (self == objc_lookUpClass("NSArray"))
return NSAllocateObject([NSArray_placeholder class], 0, NULL);
return NSAllocateObject(self, 0, zone);
}
- initWithArray: (NSArray *) array {
NSUInteger count = [array count];
id *objects = __builtin_alloca(sizeof(id) * count);
[array getObjects: objects];
return [self initWithObjects: objects count: count];
}
- initWithArray: (NSArray *) array copyItems: (BOOL) copyItems {
if (copyItems == NO) {
return [self initWithArray: array];
}
const NSUInteger count = [array count];
id *oldObjects = __builtin_alloca(sizeof(id) * count);
id *newObjects = __builtin_alloca(sizeof(id) * count);
[array getObjects: oldObjects];
NSUInteger i;
for (i = 0; i < count; i++) {
newObjects[i] = [oldObjects[i] copyWithZone: NULL];
}
self = [self initWithObjects: newObjects count: count];
for (i = 0; i < count; i++) {
[newObjects[i] release];
}
return self;
}
- initWithContentsOfFile: (NSString *) path {
id contents = [NSPropertyListReader arrayWithContentsOfFile: path];
if (contents == nil) {
[self dealloc];
return nil;
}
return [self initWithArray: contents];
}
- initWithContentsOfURL: (NSURL *) url {
if (![url isFileURL]) {
[self dealloc];
return nil;
}
return [self initWithContentsOfFile: [url path]];
}
- initWithObjects: (id *) objects count: (NSUInteger) count {
NSInvalidAbstractInvocation();
return nil;
}
- initWithObjects: object, ... {
va_list arguments;
NSUInteger i, count;
id *objects;
va_start(arguments, object);
count = 1;
while (va_arg(arguments, id) != nil)
count++;
va_end(arguments);
objects = __builtin_alloca(sizeof(id) * count);
va_start(arguments, object);
objects[0] = object;
for (i = 1; i < count; i++)
objects[i] = va_arg(arguments, id);
va_end(arguments);
return [self initWithObjects: objects count: count];
}
- copyWithZone: (NSZone *) zone {
return [self retain];
}
- mutableCopyWithZone: (NSZone *) zone {
return [[NSMutableArray allocWithZone: zone] initWithArray: self];
}
- (Class) classForCoder {
return objc_lookUpClass("NSArray");
}
- initWithCoder: (NSCoder *) coder {
if ([coder allowsKeyedCoding]) {
NSKeyedUnarchiver *keyed = (NSKeyedUnarchiver *) coder;
NSArray *array = [keyed decodeObjectForKey: @"NS.objects"];
return [self initWithArray: array];
} else {
unsigned i, count;
id *objects;
[coder decodeValueOfObjCType: @encode(int) at: &count];
objects = __builtin_alloca(count * sizeof(id));
for (i = 0; i < count; i++)
objects[i] = [coder decodeObject];
return [self initWithObjects: objects count: count];
}
}
- (void) encodeWithCoder: (NSCoder *) coder {
if ([coder isKindOfClass: [NSKeyedArchiver class]]) {
NSKeyedArchiver *keyed = (NSKeyedArchiver *) coder;
[keyed encodeArray: self forKey: @"NS.objects"];
} else {
int i, count = [self count];
[coder encodeValueOfObjCType: @encode(int) at: &count];
for (i = 0; i < count; i++)
[coder encodeObject: [self objectAtIndex: i]];
}
}
+ array {
return [[[self allocWithZone: NULL] init] autorelease];
}
+ arrayWithContentsOfFile: (NSString *) path {
return [[[self allocWithZone: NULL] initWithContentsOfFile: path]
autorelease];
}
+ arrayWithContentsOfURL: (NSURL *) url {
return [[[self allocWithZone: NULL] initWithContentsOfURL: url]
autorelease];
}
+ arrayWithObject: object {
return [[[self allocWithZone: NULL] initWithObjects: &object
count: 1] autorelease];
}
+ arrayWithObjects: object, ... {
NSUInteger i, count = 0;
id *objects = NULL;
if (object != nil) {
va_list arguments;
va_start(arguments, object);
count = 1; // include object
while (va_arg(arguments, id) != nil)
count++;
va_end(arguments);
objects = __builtin_alloca(sizeof(id) * count);
va_start(arguments, object);
objects[0] = object;
for (i = 1; i < count; i++)
objects[i] = va_arg(arguments, id);
va_end(arguments);
}
return [[[self allocWithZone: NULL] initWithObjects: objects
count: count] autorelease];
}
+ arrayWithArray: (NSArray *) array {
return [[[self allocWithZone: NULL] initWithArray: array] autorelease];
}
+ arrayWithObjects: (id *) objects count: (NSUInteger) count {
return [[[self allocWithZone: NULL] initWithObjects: objects
count: count] autorelease];
}
- (NSUInteger) count {
NSInvalidAbstractInvocation();
return 0;
}
- objectAtIndex: (NSUInteger) index {
NSInvalidAbstractInvocation();
return nil;
}
- (void) getObjects: (id *) objects {
NSUInteger i, count = [self count];
for (i = 0; i < count; i++)
objects[i] = [self objectAtIndex: i];
}
- (void) getObjects: (id *) objects range: (NSRange) range {
NSUInteger i, count = [self count], loc = range.location;
if (NSMaxRange(range) > count)
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
for (i = 0; i < range.length; i++)
objects[i] = [self objectAtIndex: loc + i];
}
- (NSArray *) subarrayWithRange: (NSRange) range {
if (NSMaxRange(range) > [self count])
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
return NSAutorelease(NSArray_concreteWithArrayRange(self, range));
}
- (NSUInteger) hash {
return [self count];
}
- (BOOL) isEqual: array {
if (self == array)
return YES;
if (![array isKindOfClass: objc_lookUpClass("NSArray")])
return NO;
return [self isEqualToArray: array];
}
- (BOOL) isEqualToArray: (NSArray *) array {
NSInteger i, count;
if (self == array)
return YES;
count = [self count];
if (count != [array count])
return NO;
for (i = 0; i < count; i++)
if (![[self objectAtIndex: i] isEqual: [array objectAtIndex: i]])
return NO;
return YES;
}
- (NSUInteger) indexOfObject: object {
NSInteger i, count = [self count];
for (i = 0; i < count; i++)
if ([[self objectAtIndex: i] isEqual: object])
return i;
return NSNotFound;
}
- (NSUInteger) indexOfObject: object inRange: (NSRange) range {
NSInteger i, count = [self count], loc = range.location;
if (NSMaxRange(range) > count)
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
for (i = 0; i < range.length; i++)
if ([[self objectAtIndex: loc + i] isEqual: object])
return loc + i;
return NSNotFound;
}
- (NSUInteger) indexOfObjectIdenticalTo: object {
NSInteger i, count = [self count];
for (i = 0; i < count; i++)
if ([self objectAtIndex: i] == object)
return i;
return NSNotFound;
}
- (NSUInteger) indexOfObjectIdenticalTo: object inRange: (NSRange) range {
NSInteger i, count = [self count], loc = range.location;
if (NSMaxRange(range) > count)
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
for (i = 0; i < range.length; i++)
if ([self objectAtIndex: loc + i] == object)
return loc + i;
return NSNotFound;
}
- (NSEnumerator *) objectEnumerator {
return NSAutorelease(NSEnumerator_arrayNew(self));
}
- (NSEnumerator *) reverseObjectEnumerator {
return NSAutorelease(NSEnumerator_arrayReverseNew(self));
}
- (NSArray *) arrayByAddingObject: object {
return NSAutorelease(NSArray_concreteWithArrayAndObject(self, object));
}
- (NSArray *) arrayByAddingObjectsFromArray: (NSArray *) array {
return NSAutorelease(NSArray_concreteWithArrayAndArray(self, array));
}
- (NSString *) componentsJoinedByString: (NSString *) separator {
NSMutableString *string = [NSMutableString stringWithCapacity: 256];
NSInteger i, count = [self count];
for (i = 0; i < count; i++) {
[string appendString: [[self objectAtIndex: i] description]];
if (i + 1 < count)
[string appendString: separator];
}
return string;
}
- (BOOL) containsObject: object {
return ([self indexOfObject: object] != NSNotFound) ? YES : NO;
}
- firstObjectCommonWithArray: (NSArray *) array {
if ([array count]) {
NSInteger i, count = [self count];
for (i = 0; i < count; i++) {
id object = [self objectAtIndex: i];
if ([array indexOfObject: object] != NSNotFound)
return object;
}
}
return nil;
}
- lastObject {
NSInteger count = [self count];
if (count == 0)
return nil;
return [self objectAtIndex: count - 1];
}
- firstObject {
NSInteger count = [self count];
if (count == 0)
return nil;
return [self objectAtIndex: 0];
}
- (NSArray *) sortedArrayUsingSelector: (SEL) selector {
NSMutableArray *array = [NSMutableArray arrayWithArray: self];
[array sortUsingSelector: selector];
return array;
}
- (NSArray *) sortedArrayUsingFunction: (NSInteger (*)(id, id, void *)) function
context: (void *) context
{
NSMutableArray *array = [NSMutableArray arrayWithArray: self];
[array sortUsingFunction: function context: context];
return array;
}
- (BOOL) writeToFile: (NSString *) path atomically: (BOOL) atomically {
return [NSPropertyListWriter_vintage writePropertyList: self
toFile: path
atomically: atomically];
}
- (BOOL) writeToURL: (NSURL *) aURL atomically: (BOOL) atomically {
if ([aURL isFileURL]) {
return [self writeToFile: [aURL path] atomically: atomically];
} else {
return NO;
}
}
- (void) makeObjectsPerformSelector: (SEL) selector {
NSInteger i, count = [self count];
for (i = 0; i < count; i++)
[[self objectAtIndex: i] performSelector: selector];
}
- (void) makeObjectsPerformSelector: (SEL) selector withObject: object {
NSInteger i, count = [self count];
for (i = 0; i < count; i++)
[[self objectAtIndex: i] performSelector: selector withObject: object];
}
- (NSString *) description {
return [NSPropertyListWriter_vintage stringWithPropertyList: self];
}
- (NSString *) descriptionWithLocale: (NSDictionary *) locale {
NSUnimplementedMethod();
return nil;
}
- (NSString *) descriptionWithLocale: (NSDictionary *) locale
indent: (NSUInteger) indent
{
NSUnimplementedMethod();
return nil;
}
- (NSArray *) filteredArrayUsingPredicate: (NSPredicate *) predicate {
NSInteger i, count = [self count];
NSMutableArray *result = [NSMutableArray arrayWithCapacity: count];
for (i = 0; i < count; i++) {
id check = [self objectAtIndex: i];
if ([predicate evaluateWithObject: check])
[result addObject: check];
}
return result;
}
- (NSArray *) sortedArrayUsingDescriptors: (NSArray *) descriptors {
NSMutableArray *result = [NSMutableArray arrayWithArray: self];
[result sortUsingDescriptors: descriptors];
return result;
}
#if 0
// untested
-(NSArray *)objectsAtIndexes:(NSIndexSet *)indexes {
NSUInteger i,count=[indexes count];
NSUInteger buffer[count];
id objects[count];
count=[indexes getIndexes:buffer maxCount:count inIndexRange:NULL];
// getObjects:range: would make more sense
for(i=0;i<count;i++)
objects[i]=[self objectAtIndex:buffer[i]];
return [NSArray arrayWithObjects:objects count:count];
}
#endif
- (NSArray *) objectsAtIndexes: (NSIndexSet *) indexes {
NSUInteger idx = [indexes firstIndex];
id ret = [NSMutableArray array];
while (idx != NSNotFound) {
[ret addObject: [self objectAtIndex: idx]];
idx = [indexes indexGreaterThanIndex: idx];
}
return ret;
}
- (NSUInteger) countByEnumeratingWithState: (NSFastEnumerationState *) state
objects: (id *) stackbuf
count: (NSUInteger) length;
{
NSInteger numObjects = MIN([self count] - state->extra[0], length);
NSInteger i = state->extra[0];
NSInteger j = 0;
state->itemsPtr = stackbuf;
for (j = 0; j < numObjects; j++, i++) {
state->itemsPtr[j] = [self objectAtIndex: i];
}
state->extra[0] += numObjects;
state->mutationsPtr = (unsigned long *) self;
return numObjects;
}
@end
void objc_enumerationMutation(id collection) {
[NSException raise: NSInternalInconsistencyException
format: @"Collection %p of class %@ was mutated during "
@"enumeration. "
@"Break on objc_enumerationMutation to debug.",
collection, [collection className]];
}
#import <Foundation/NSCFTypeID.h>
@implementation NSArray (CFTypeID)
- (unsigned) _cfTypeID {
return kNSCFTypeArray;
}
@end

View File

@ -1,33 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
@interface NSArray_concrete : NSArray {
NSUInteger _count;
id _objects[0];
}
@end
NSArray *NSArray_concreteNew(NSZone *zone, id *objects, NSUInteger count);
NSArray *NSArray_concreteNewWithCount(NSZone *zone, id **objects,
NSUInteger count);
NSArray *NSArray_concreteWithArrayAndObject(NSArray *array, id object);
NSArray *NSArray_concreteWithArrayAndArray(NSArray *array1, NSArray *array2);
NSArray *NSArray_concreteWithArrayRange(NSArray *array1, NSRange range);

View File

@ -1,141 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import "NSArray_concrete.h"
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
@implementation NSArray_concrete
static inline NSArray_concrete *newWithCount(NSZone *zone, NSUInteger count) {
return NSAllocateObject([NSArray_concrete class], sizeof(id) * count, zone);
}
NSArray *NSArray_concreteNewWithCount(NSZone *zone, id **objects,
NSUInteger count)
{
NSArray_concrete *self = newWithCount(zone, count);
self->_count = count;
*objects = self->_objects;
return self;
}
NSArray *NSArray_concreteNew(NSZone *zone, id *objects, NSUInteger count) {
NSArray_concrete *self = newWithCount(zone, count);
NSUInteger i;
self->_count = count;
for (i = 0; i < count; i++)
self->_objects[i] = [objects[i] retain];
return self;
}
NSArray *NSArray_concreteWithArrayAndObject(NSArray *array, id object) {
NSUInteger i, count = [array count];
NSArray_concrete *self = newWithCount(NULL, count + 1);
self->_count = count + 1;
[array getObjects: self->_objects];
for (i = 0; i < count; i++)
[self->_objects[i] retain];
self->_objects[count] = [object retain];
return self;
}
NSArray *NSArray_concreteWithArrayAndArray(NSArray *array1, NSArray *array2) {
NSUInteger i, count1 = [array1 count], total = count1 + [array2 count];
NSArray_concrete *self = newWithCount(NULL, total);
self->_count = total;
[array1 getObjects: self->_objects];
[array2 getObjects: self->_objects + count1];
for (i = 0; i < total; i++)
[self->_objects[i] retain];
return self;
}
NSArray *NSArray_concreteWithArrayRange(NSArray *array, NSRange range) {
NSArray_concrete *self = newWithCount(NULL, range.length);
NSUInteger i;
self->_count = range.length;
[array getObjects: self->_objects range: range];
for (i = 0; i < range.length; i++)
[self->_objects[i] retain];
return self;
}
- (void) dealloc {
NSInteger count = _count;
while (--count >= 0)
[_objects[count] release];
NSDeallocateObject(self);
return;
[super dealloc];
}
- (NSUInteger) count {
return _count;
}
- objectAtIndex: (NSUInteger) index {
if (index >= _count) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", index, _count);
return nil;
}
return _objects[index];
}
- lastObject {
if (_count == 0)
return nil;
return _objects[_count - 1];
}
- (NSUInteger) countByEnumeratingWithState: (NSFastEnumerationState *) state
objects: (id *) stackbuf
count: (NSUInteger) length;
{
if (state->state >= _count)
return 0;
state->itemsPtr = _objects;
state->state = _count;
state->mutationsPtr = (unsigned long *) self;
return _count;
}
@end

View File

@ -1,24 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
@interface NSArray_placeholder : NSArray
@end

View File

@ -1,35 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import "NSArray_placeholder.h"
#import "NSArray_concrete.h"
#import <Foundation/NSRaise.h>
@implementation NSArray_placeholder
- initWithObjects: (id *) objects count: (NSUInteger) count {
NSDeallocateObject(self);
return (NSArray_placeholder *) NSArray_concreteNew(NULL, objects, count);
}
- init {
return [self initWithObjects: NULL count: 0];
}
@end

View File

@ -1,31 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSEnumerator.h>
@class NSArray;
@interface NSEnumerator_array : NSEnumerator {
NSUInteger _index;
NSArray *_array;
}
@end
NSEnumerator *NSEnumerator_arrayNew(NSArray *array);

View File

@ -1,50 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
// Original - Christopher Lloyd <cjwl@objc.net>
#import <Foundation/NSArray.h>
#import <Foundation/NSEnumerator_array.h>
@implementation NSEnumerator_array
NSEnumerator *NSEnumerator_arrayNew(NSArray *array) {
NSEnumerator_array *self =
NSAllocateObject([NSEnumerator_array class], 0, NULL);
if (self) {
self->_index = 0;
self->_array = [array retain];
}
return self;
}
- (void) dealloc {
[_array release];
NSDeallocateObject(self);
return;
[super dealloc];
}
- nextObject {
if (_index >= [_array count])
return nil;
return [_array objectAtIndex: _index++];
}
@end

View File

@ -1,31 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSEnumerator.h>
@class NSArray;
@interface NSEnumerator_arrayReverse : NSEnumerator {
NSInteger _index;
NSArray *_array;
}
@end
NSEnumerator *NSEnumerator_arrayReverseNew(NSArray *array);

View File

@ -1,51 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
#import <Foundation/NSEnumerator_arrayReverse.h>
@implementation NSEnumerator_arrayReverse
NSEnumerator *NSEnumerator_arrayReverseNew(NSArray *array) {
NSEnumerator_arrayReverse *self =
NSAllocateObject([NSEnumerator_arrayReverse class], 0, NULL);
if (self) {
self->_index = [array count];
self->_array = [array retain];
}
return self;
}
- (void) dealloc {
[_array release];
NSDeallocateObject(self);
return;
[super dealloc];
}
- nextObject {
_index--;
if (_index < 0)
return nil;
return [_array objectAtIndex: _index];
}
@end

View File

@ -1,65 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
@interface NSMutableArray : NSArray
- initWithCapacity: (NSUInteger) capacity;
+ arrayWithCapacity: (NSUInteger) capacity;
- (void) addObject: object;
- (void) addObjectsFromArray: (NSArray *) array;
- (void) removeObjectAtIndex: (NSUInteger) index;
- (void) removeAllObjects;
- (void) removeLastObject;
- (void) removeObject: object;
- (void) removeObject: object inRange: (NSRange) range;
- (void) removeObjectIdenticalTo: object;
- (void) removeObjectIdenticalTo: object inRange: (NSRange) range;
- (void) removeObjectsInRange: (NSRange) range;
- (void) removeObjectsFromIndices: (NSUInteger *) indices
numIndices: (NSUInteger) count;
- (void) removeObjectsInArray: (NSArray *) array;
- (void) removeObjectsAtIndexes: (NSIndexSet *) indexes;
- (void) insertObject: object atIndex: (NSUInteger) index;
- (void) insertObjects: (NSArray *) objects atIndexes: (NSIndexSet *) indexes;
- (void) setArray: (NSArray *) array;
- (void) replaceObjectAtIndex: (NSUInteger) index withObject: object;
- (void) replaceObjectsInRange: (NSRange) range
withObjectsFromArray: (NSArray *) array;
- (void) replaceObjectsInRange: (NSRange) range
withObjectsFromArray: (NSArray *) array
range: (NSRange) otherRange;
- (void) replaceObjectsAtIndexes: (NSIndexSet *) indexes
withObjects: (NSArray *) objects;
- (void) exchangeObjectAtIndex: (NSUInteger) index
withObjectAtIndex: (NSUInteger) other;
- (void) sortUsingSelector: (SEL) selector;
- (void) sortUsingFunction: (NSInteger (*)(id, id, void *)) compare
context: (void *) context;
- (void) sortUsingDescriptors: (NSArray *) descriptors;
- (void) filterUsingPredicate: (NSPredicate *) predicate;
@end

View File

@ -1,547 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
#import <Foundation/NSAutoreleasePool-private.h>
#import <Foundation/NSIndexSet.h>
#import <Foundation/NSMutableArray_concrete.h>
#import <Foundation/NSObjCRuntime.h>
#import <Foundation/NSPredicate.h>
#import <Foundation/NSPropertyListReader.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
#import <Foundation/NSSortDescriptor.h>
#include <stdlib.h>
#include <string.h>
@implementation NSMutableArray
+ allocWithZone: (NSZone *) zone {
if (self == [NSMutableArray class])
return NSAllocateObject([NSMutableArray_concrete class], 0, zone);
return NSAllocateObject(self, 0, zone);
}
- initWithObjects: (id *) objects count: (NSUInteger) count {
NSUInteger i;
if ((self = [self initWithCapacity: count]) == nil)
return nil;
for (i = 0; i < count; i++)
[self addObject: objects[i]];
return self;
}
- initWithCapacity: (NSUInteger) capacity {
NSInvalidAbstractInvocation();
return nil;
}
- copy {
return [[NSArray allocWithZone: NULL] initWithArray: self];
}
- copyWithZone: (NSZone *) zone {
return [[NSArray allocWithZone: zone] initWithArray: self];
}
- (Class) classForCoder {
return [NSMutableArray class];
}
+ array {
if (self == [NSMutableArray class])
return NSAutorelease(NSMutableArray_concreteNewWithCapacity(NULL, 0));
return [[[self allocWithZone: NULL] init] autorelease];
}
+ arrayWithContentsOfFile: (NSString *) path {
return [NSPropertyListReader arrayWithContentsOfFile: path];
}
+ arrayWithObject: object {
if (self == [NSMutableArray class])
return NSAutorelease(NSMutableArray_concreteNew(NULL, &object, 1));
return [[[self allocWithZone: NULL] initWithObjects: &object
count: 1] autorelease];
}
+ arrayWithCapacity: (NSUInteger) capacity {
if (self == [NSMutableArray class])
return NSAutorelease(
NSMutableArray_concreteNewWithCapacity(NULL, capacity));
return [[[self allocWithZone: NULL] initWithCapacity: capacity]
autorelease];
}
+ arrayWithObjects: first, ... {
NSUInteger i, count = 0;
id *objects = NULL;
if (first != nil) {
va_list arguments;
va_start(arguments, first);
count = 1;
while (va_arg(arguments, id) != nil)
count++;
va_end(arguments);
objects = __builtin_alloca(sizeof(id) * count);
va_start(arguments, first);
objects[0] = first;
for (i = 1; i < count; i++)
objects[i] = va_arg(arguments, id);
va_end(arguments);
}
if (self == [NSMutableArray class])
return NSAutorelease(NSMutableArray_concreteNew(NULL, objects, count));
return [[[self allocWithZone: NULL] initWithObjects: objects
count: count] autorelease];
}
- (void) addObject: object {
NSInvalidAbstractInvocation();
}
- (void) addObjectsFromArray: (NSArray *) other {
NSUInteger i, count = [other count];
for (i = 0; i < count; i++)
[self addObject: [other objectAtIndex: i]];
}
- (void) removeObjectAtIndex: (NSUInteger) index {
NSInvalidAbstractInvocation();
}
- (void) removeAllObjects {
NSInteger count = [self count];
while (--count >= 0)
[self removeObjectAtIndex: count];
}
- (void) removeLastObject {
[self removeObjectAtIndex: [self count] - 1];
}
- (void) removeObject: object {
NSInteger count = [self count];
// Make sure it doesn't disappear on us during this operation
[object retain];
while (--count >= 0) {
id check = [self objectAtIndex: count];
if ([check isEqual: object]) {
if (check == object && [object retainCount] == 1) {
[[object retain] autorelease];
}
[self removeObjectAtIndex: count];
}
}
[object release];
}
- (void) removeObject: object inRange: (NSRange) range {
NSInteger pos = NSMaxRange(range);
if (pos > [self count])
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
// Make sure it doesn't disappear on us during this operation
[object retain];
while (--pos >= range.location) {
id check = [self objectAtIndex: pos];
if ([check isEqual: object]) {
if (check == object && [object retainCount] == 1) {
[[object retain] autorelease];
}
[self removeObjectAtIndex: pos];
}
}
[object release];
}
- (void) removeObjectIdenticalTo: object {
NSInteger count = [self count];
while (--count >= 0) {
id check = [self objectAtIndex: count];
if (check == object) {
if ([object retainCount] == 1) {
[[object retain] autorelease];
}
[self removeObjectAtIndex: count];
}
}
}
- (void) removeObjectIdenticalTo: object inRange: (NSRange) range {
NSInteger pos = NSMaxRange(range);
if (pos > [self count])
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
while (--pos >= range.location) {
id check = [self objectAtIndex: pos];
if (check == object) {
if ([object retainCount] == 1) {
[[object retain] autorelease];
}
[self removeObjectAtIndex: pos];
}
}
}
- (void) removeObjectsInRange: (NSRange) range {
NSInteger pos = NSMaxRange(range);
if (range.length == 0)
return;
if (pos > [self count])
NSRaiseException(NSRangeException, self, _cmd,
@"range %@ beyond count %d", NSStringFromRange(range),
[self count]);
while (--pos >= range.location && pos >= 0)
[self removeObjectAtIndex: pos];
}
static inline void memswp(void *a, void *b, size_t width) {
if (width == sizeof(void *)) {
// Optimization for pointer sized swap:
void *tmp;
tmp = *(void **) a;
*(void **) a = *(void **) b;
*(void **) b = tmp;
return;
}
// default uses memcpy:
char tmp[width];
memcpy(tmp, a, width);
memcpy(a, b, width);
memcpy(b, tmp, width);
}
// iterative mergesort based on
// http://www.inf.fh-flensburg.de/lang/algorithmen/sortieren/merge/mergiter.htm
static int mergesortL(void *base, size_t nel, size_t width,
int (*compar)(const void *, const void *))
{
NSInteger h, i, j, k, l, m, n = nel;
void *A; // points to an element
void *B = NSZoneMalloc(NULL, (n / 2 + 1) * width); // points to a temp array
for (h = 1; h < n; h += h) {
for (m = n - 1 - h; m >= 0; m -= h + h) {
l = m - h + 1;
if (l < 0)
l = 0;
// Copy first half of the array into helper B:
j = m + 1;
memcpy(B, base + (l * width), (j - l) * width);
for (i = 0, k = l; k < j && j <= m + h; k++) {
A = base + (width * j); // A = [self objectAtIndex:j];
if (compar(A, B + (i * width)) > 0) {
memswp(base + (k * width), B + (i * width), width);
i += 1;
} else {
memswp(base + (k * width), A, width);
j += 1;
}
}
while (k < j) // This loop could be optimized
memswp(base + (k++ * width), B + (i++ * width), width);
}
}
free(B);
return 0;
}
static int _nsmutablearraycompareindices(const void *v1, const void *v2) {
int i1 = (*(int *) v1);
int i2 = (*(int *) v2);
int result = i1 == i2 ? 0 : (i1 < i2 ? -1 : 1);
return result;
}
- (void) removeObjectsFromIndices: (NSUInteger *) indices
numIndices: (NSUInteger) count
{
if (count) {
NSUInteger lastIndex = NSNotFound;
NSUInteger sortedIndices[count];
NSInteger i;
memcpy(sortedIndices, indices, sizeof(NSUInteger) * count);
mergesortL(sortedIndices, sizeof(NSUInteger), count,
&_nsmutablearraycompareindices);
for (i = count - 1; i >= 0; i--) {
NSUInteger index = sortedIndices[i];
if (index != lastIndex) {
[self removeObjectAtIndex: index];
}
lastIndex = index;
}
}
}
- (void) removeObjectsInArray: (NSArray *) other {
NSInteger count = [other count];
while (--count >= 0) {
id object = [other objectAtIndex: count];
[self removeObject: object];
}
}
- (void) removeObjectsAtIndexes: (NSIndexSet *) indexes {
NSUInteger index = [indexes lastIndex];
while (index != NSNotFound) {
[self removeObjectAtIndex: index];
index = [indexes indexLessThanIndex: index];
}
}
- (void) insertObject: object atIndex: (NSUInteger) index {
NSInvalidAbstractInvocation();
}
- (void) insertObjects: (NSArray *) objects atIndexes: (NSIndexSet *) indexes {
NSInteger i;
NSInteger index = [indexes firstIndex];
for (i = 0; i < [objects count]; i++) {
[self insertObject: [objects objectAtIndex: i] atIndex: index];
index = [indexes indexGreaterThanIndex: index];
}
}
- (void) setArray: (NSArray *) other {
[self removeAllObjects];
[self addObjectsFromArray: other];
}
- (void) replaceObjectAtIndex: (NSUInteger) index withObject: object {
NSInvalidAbstractInvocation();
}
- (void) replaceObjectsInRange: (NSRange) range
withObjectsFromArray: (NSArray *) array
{
[self replaceObjectsInRange: range
withObjectsFromArray: array
range: NSMakeRange(0, [array count])];
}
- (void) replaceObjectsInRange: (NSRange) range
withObjectsFromArray: (NSArray *) array
range: (NSRange) arrayRange
{
NSInteger i;
for (i = 0; i < range.length && i < arrayRange.length; i++)
[self replaceObjectAtIndex: range.location + i
withObject: [array objectAtIndex: arrayRange.location +
i]];
if (i < range.length)
[self removeObjectsInRange: NSMakeRange(range.location + i,
range.length - i)];
if (i < arrayRange.length) {
for (; i < arrayRange.length; i++)
[self insertObject: [array objectAtIndex: arrayRange.location + i]
atIndex: range.location + i];
}
}
- (void) replaceObjectsAtIndexes: (NSIndexSet *) indexes
withObjects: (NSArray *) objects
{
NSUInteger index = [indexes firstIndex];
for (id object in objects) {
[self replaceObjectAtIndex: index withObject: object];
index = [indexes indexGreaterThanIndex: index];
}
}
- (void) exchangeObjectAtIndex: (NSUInteger) index
withObjectAtIndex: (NSUInteger) other
{
id object = [[self objectAtIndex: index] retain];
id otherObject = [self objectAtIndex: other];
[self replaceObjectAtIndex: index withObject: otherObject];
[self replaceObjectAtIndex: other withObject: object];
[object release];
}
static NSInteger selectorCompare(id object1, id object2, void *userData) {
SEL selector = userData;
return (NSComparisonResult) [object1 performSelector: selector
withObject: object2];
}
- (void) sortUsingSelector: (SEL) selector {
[self sortUsingFunction: selectorCompare context: (void *) selector];
}
// iterative mergesort based on
// http://www.inf.fh-flensburg.de/lang/algorithmen/sortieren/merge/mergiter.htm
// ...
// ... using a comparison function
- (void) sortUsingFunction: (NSInteger (*)(id, id, void *)) compare
context: (void *) context
{
NSInteger h, i, j, k, l, m, n = [self count];
id A, *B = NSZoneMalloc(NULL, (n / 2 + 1) * sizeof(id));
// to prevent retain counts from temporarily hitting zero.
for (i = 0; i < n; i++)
[[self objectAtIndex: i] retain];
for (h = 1; h < n; h += h) {
for (m = n - 1 - h; m >= 0; m -= h + h) {
l = m - h + 1;
if (l < 0)
l = 0;
for (i = 0, j = l; j <= m; i++, j++)
B[i] = [self objectAtIndex: j];
for (i = 0, k = l; k < j && j <= m + h; k++) {
A = [self objectAtIndex: j];
if (compare(A, B[i], context) == NSOrderedDescending)
[self replaceObjectAtIndex: k withObject: B[i++]];
else {
[self replaceObjectAtIndex: k withObject: A];
j++;
}
}
while (k < j)
[self replaceObjectAtIndex: k++ withObject: B[i++]];
}
}
for (i = 0; i < n; i++)
[[self objectAtIndex: i] release];
free(B);
}
static NSComparisonResult compareObjectsUsingDescriptors(id A, id B,
void *descriptorsX)
{
NSArray *descriptors = (id) descriptorsX;
NSComparisonResult result = NSOrderedSame;
NSInteger i, count = [descriptors count];
for (i = 0; i < count; i++) {
if ((result = [[descriptors objectAtIndex: i] compareObject: A
toObject: B]) !=
NSOrderedSame)
break;
}
return result;
}
- (void) sortUsingDescriptors: (NSArray *) descriptors {
[self sortUsingFunction: compareObjectsUsingDescriptors
context: descriptors];
}
- (NSUInteger) _insertObject: (id) obj
inArraySortedByDescriptors: (NSArray *) descriptors
{
NSUInteger start = 0;
NSUInteger end = [self count];
NSUInteger mid = 0;
// do a binary search to find an object NSOrderedSame
while (mid = (start + end) / 2, start < end) {
id other = [self objectAtIndex: mid];
NSComparisonResult res =
compareObjectsUsingDescriptors(obj, other, descriptors);
if (res == NSOrderedAscending) {
end = mid;
} else if (res == NSOrderedDescending) {
start = mid + 1;
} else {
[self insertObject: obj atIndex: mid];
return mid;
}
}
// none found; current position must be where we should be at
[self insertObject: obj atIndex: mid];
return mid;
}
- (void) filterUsingPredicate: (NSPredicate *) predicate {
if (predicate == nil) {
[NSException raise: NSInvalidArgumentException
format: @"-[%@ %s] predicate is nil", [self class], _cmd];
return;
}
NSInteger count = [self count];
while (--count >= 0) {
id check = [self objectAtIndex: count];
if (![predicate evaluateWithObject: check])
[self removeObjectAtIndex: count];
}
}
@end

View File

@ -1,33 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSArray.h>
@interface NSMutableArray_concrete : NSMutableArray {
NSUInteger _count;
NSUInteger _capacity;
id *_objects;
}
@end
NSArray *NSMutableArray_concreteNew(NSZone *zone, id *objects,
NSUInteger count);
NSArray *NSMutableArray_concreteNewWithCapacity(NSZone *zone,
NSUInteger capacity);

View File

@ -1,405 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSCoder.h>
#import <Foundation/NSMutableArray_concrete.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
@implementation NSMutableArray_concrete
static inline NSUInteger roundCapacityUp(NSUInteger capacity) {
return (capacity < 1) ? 1 : capacity;
}
NSMutableArray_concrete *
NSMutableArray_concreteInit(NSMutableArray_concrete *self, id *objects,
NSUInteger count, NSZone *zone)
{
NSUInteger i;
self->_count = count;
self->_capacity = roundCapacityUp(count);
self->_objects = NSZoneMalloc(zone, sizeof(id) * self->_capacity);
for (i = 0; i < count; i++) {
self->_objects[i] = [objects[i] retain];
}
return self;
}
NSMutableArray_concrete *
NSMutableArray_concreteInitWithCapacity(NSMutableArray_concrete *self,
NSUInteger capacity, NSZone *zone)
{
self->_count = 0;
self->_capacity = roundCapacityUp(capacity);
self->_objects = NSZoneMalloc(zone, sizeof(id) * self->_capacity);
return self;
}
NSArray *NSMutableArray_concreteNew(NSZone *zone, id *objects, NSUInteger count)
{
NSMutableArray_concrete *self =
NSAllocateObject([NSMutableArray_concrete class], 0, zone);
if (self) {
self = NSMutableArray_concreteInit(self, objects, count, zone);
}
return self;
}
NSArray *NSMutableArray_concreteNewWithCapacity(NSZone *zone,
NSUInteger capacity)
{
NSMutableArray_concrete *self =
NSAllocateObject([NSMutableArray_concrete class], 0, zone);
if (self) {
self = NSMutableArray_concreteInitWithCapacity(self, capacity, zone);
}
return self;
}
- init {
return NSMutableArray_concreteInitWithCapacity(self, 0,
NSZoneFromPointer(self));
}
- initWithArray: (NSArray *) array {
NSUInteger i, count = [array count];
NSMutableArray_concreteInitWithCapacity(self, count,
NSZoneFromPointer(self));
self->_count = count;
[array getObjects: _objects];
for (i = 0; i < count; i++)
[_objects[i] retain];
return self;
}
- initWithContentsOfFile: (NSString *) path {
NSUnimplementedMethod();
return self;
}
- initWithObjects: (id *) objects count: (NSUInteger) count {
return NSMutableArray_concreteInit(self, objects, count,
NSZoneFromPointer(self));
}
- initWithObjects: object, ... {
va_list arguments;
NSUInteger i, count;
id *objects;
va_start(arguments, object);
count = 1;
while (va_arg(arguments, id) != nil)
count++;
va_end(arguments);
objects = __builtin_alloca(sizeof(id) * count);
va_start(arguments, object);
objects[0] = object;
for (i = 1; i < count; i++)
objects[i] = va_arg(arguments, id);
va_end(arguments);
return NSMutableArray_concreteInit(self, objects, count,
NSZoneFromPointer(self));
}
- initWithCapacity: (NSUInteger) capacity {
return NSMutableArray_concreteInitWithCapacity(self, capacity,
NSZoneFromPointer(self));
}
- (void) dealloc {
NSInteger count = _count;
while (--count >= 0)
[_objects[count] release];
NSZoneFree(NSZoneFromPointer(_objects), _objects);
NSDeallocateObject(self);
return;
[super dealloc];
}
- (NSUInteger) count {
return _count;
}
- objectAtIndex: (NSUInteger) index {
if (index >= _count) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", index, [self count]);
return nil;
}
return _objects[index];
}
- (void) addObject: object {
if (object == nil) {
NSRaiseException(NSInvalidArgumentException, self, _cmd, @"nil object");
return;
}
[object retain];
_count++;
if (_count > _capacity) {
_capacity = _count * 2;
_objects = NSZoneRealloc(NSZoneFromPointer(_objects), _objects,
sizeof(id) * _capacity);
}
_objects[_count - 1] = object;
}
- (void) replaceObjectAtIndex: (NSUInteger) index withObject: object {
if (object == nil) {
NSRaiseException(NSInvalidArgumentException, self, _cmd, @"nil object");
return;
}
if (index >= _count) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", index, [self count]);
return;
}
[object retain];
[_objects[index] release];
_objects[index] = object;
}
- lastObject {
if (_count == 0)
return nil;
return _objects[_count - 1];
}
- (void) insertObject: object atIndex: (NSUInteger) index {
NSInteger c;
if (object == nil) {
NSRaiseException(NSInvalidArgumentException, self, _cmd, @"nil object");
return;
}
if (index > _count) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", index, [self count]);
return;
}
_count++;
if (_count > _capacity) {
_capacity = _count * 2;
_objects = NSZoneRealloc(NSZoneFromPointer(_objects), _objects,
sizeof(id) * _capacity);
}
if (_count > 1)
for (c = _count - 1; c > index && c > 0; c--)
_objects[c] = _objects[c - 1];
_objects[index] = [object retain];
}
static void removeObjectAtIndex(NSMutableArray_concrete *self, NSUInteger index)
{
NSUInteger i;
id object;
object = self->_objects[index];
self->_count--;
for (i = index; i < self->_count; i++)
self->_objects[i] = self->_objects[i + 1];
[object release];
if (self->_capacity > self->_count * 2) {
self->_capacity = self->_count;
self->_objects =
NSZoneRealloc(NSZoneFromPointer(self->_objects), self->_objects,
sizeof(id) * self->_capacity);
}
}
- (void) removeObjectAtIndex: (NSUInteger) index {
if (index >= _count) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", index, [self count]);
}
removeObjectAtIndex(self, index);
}
- (void) removeLastObject {
if (_count == 0) {
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond count %d", 1, [self count]);
return;
}
removeObjectAtIndex(self, _count - 1);
}
- (void) removeAllObjects {
NSUInteger i;
for (i = 0; i < _count; i++)
[_objects[i] release];
_count = 0;
if (self->_capacity > 8) {
self->_capacity = 8;
self->_objects =
NSZoneRealloc(NSZoneFromPointer(self->_objects), self->_objects,
sizeof(id) * self->_capacity);
}
}
- (void) getObjects: (id *) objects {
NSUInteger i;
for (i = 0; i < _count; i++)
objects[i] = _objects[i];
}
- (NSUInteger) indexOfObjectIdenticalTo: object {
NSInteger i;
for (i = 0; i < self->_count; i++)
if (self->_objects[i] == object)
return i;
return NSNotFound;
}
static inline NSUInteger indexOfObject(NSMutableArray_concrete *self, id object)
{
NSUInteger i;
for (i = 0; i < self->_count; i++)
if ([self->_objects[i] isEqual: object])
return i;
return NSNotFound;
}
- (NSUInteger) indexOfObject: object {
return indexOfObject(self, object);
}
- (BOOL) containsObject: object {
return (indexOfObject(self, object) != NSNotFound) ? YES : NO;
}
- (void) makeObjectsPerformSelector: (SEL) selector {
NSInteger i, count = [self count];
for (i = 0; i < count; i++)
[_objects[i] performSelector: selector];
}
// Bottom up merge
- (void) mergeUsingFunction: (NSInteger (*)(id, id, void *)) compare
context: (void *) context
A: (id *) A
left: (NSInteger) iLeft
right: (NSInteger) iRight
end: (NSInteger) iEnd
B: (id *) B
{
NSInteger i0 = iLeft;
NSInteger i1 = iRight;
NSInteger j;
/* While there are elements in the left or right lists */
for (j = iLeft; j < iEnd; j++) {
/* If left list head exists and is <= existing right list head */
if (i0 < iRight && (i1 >= iEnd || compare(A[i0], A[i1], context) !=
NSOrderedDescending)) {
B[j] = A[i0++];
} else {
B[j] = A[i1++];
}
}
}
// iterative bottom up mergesort based on
// http://en.wikipedia.org/wiki/Merge_sort
- (void) sortUsingFunction: (NSInteger (*)(id, id, void *)) compare
context: (void *) context
{
NSInteger n = _count;
/* array A[] has the items to sort; array B[] is a work array */
id *A = _objects;
id *B = NSZoneMalloc(NULL, (n + 1) * sizeof(id));
/* Each 1-element run in A is already "sorted". */
/* Make successively longer sorted runs of length 2, 4, 8, 16... until whole
* array is sorted. */
for (int width = 1; width < n; width = 2 * width) {
/* Array A is full of runs of length width. */
for (int i = 0; i < n; i = i + 2 * width) {
/* Merge two runs: A[i:i+width-1] and A[i+width:i+2*width-1] to B[]
*/
/* or copy A[i:n-1] to B[] ( if(i+width >= n) ) */
[self mergeUsingFunction: compare
context: context
A: A
left: i
right: MIN(i + width, n)
end: MIN(i + 2 * width, n)
B: B];
}
/* Now work array B is full of runs of length 2*width. */
/* Copy array B to array A for next iteration. */
memcpy(A, B, n * sizeof(id));
}
free(B);
}
- (NSUInteger) countByEnumeratingWithState: (NSFastEnumerationState *) state
objects: (id *) stackbuf
count: (NSUInteger) length;
{
if (state->state >= _count)
return 0;
state->itemsPtr = _objects;
state->state = _count;
state->mutationsPtr = (unsigned long *) self;
return _count;
}
@end

View File

@ -1,106 +0,0 @@
/* Copyright (c) 2008 John Engelhart
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSObject.h>
#ifdef NS_BLOCK_ASSERTIONS
#define _NSAssertBody(condition, desc, ...)
#define _NSCAssertBody(condition, desc, ...)
#else // NS_BLOCK_ASSERTIONS not defined
#define _NSAssertBody(condition, desc, ...) \
do { \
if (!(condition)) { \
[[NSAssertionHandler currentHandler] \
handleFailureInMethod: _cmd \
object: self \
file: [NSString stringWithUTF8String: \
__FILE__] \
lineNumber: __LINE__ \
description: (desc), ##__VA_ARGS__]; \
} \
} while (0)
#define _NSCAssertBody(condition, desc, ...) \
do { \
if (!(condition)) { \
[[NSAssertionHandler currentHandler] \
handleFailureInFunction: \
[NSString \
stringWithUTF8String: __PRETTY_FUNCTION__] \
file: [NSString stringWithUTF8String: \
__FILE__] \
lineNumber: __LINE__ \
description: (desc), ##__VA_ARGS__]; \
} \
} while (0)
#endif // NS_BLOCK_ASSERTIONS
/*
* Asserts to use in Objective-C methods:
*/
#define NSAssert(condition, desc, ...) \
_NSAssertBody((condition), (desc), ##__VA_ARGS__)
#define NSAssert1(condition, desc, val1) NSAssert(condition, desc, val1)
#define NSAssert2(condition, desc, val1, val2) \
NSAssert(condition, desc, val1, val2)
#define NSAssert3(condition, desc, val1, val2, val3) \
NSAssert(condition, desc, val1, val2, val3)
#define NSAssert4(condition, desc, val1, val2, val3, val4) \
NSAssert(condition, desc, val1, val2, val3, val4)
#define NSAssert5(condition, desc, val1, val2, val3, val4, val5) \
NSAssert(condition, desc, val1, val2, val3, val4, val5)
#define NSParameterAssert(condition) \
_NSAssertBody((condition), @"Invalid parameter not satisfying: %s", \
#condition)
/*
* Asserts to use in C function calls:
*/
#define NSCAssert(condition, desc, ...) \
_NSCAssertBody((condition), (desc), ##__VA_ARGS__)
#define NSCAssert1(condition, desc, val1) NSCAssert(condition, desc, val1)
#define NSCAssert2(condition, desc, val1, val2) \
NSCAssert(condition, desc, val1, val2)
#define NSCAssert3(condition, desc, val1, val2, val3) \
NSCAssert(condition, desc, val1, val2, val3)
#define NSCAssert4(condition, desc, val1, val2, val3, val4) \
NSCAssert(condition, desc, val1, val2, val3, val4)
#define NSCAssert5(condition, desc, val1, val2, val3, val4, val5) \
NSCAssert(condition, desc, val1, val2, val3, val4, val5)
#define NSCParameterAssert(condition) \
_NSCAssertBody((condition), @"Invalid parameter not satisfying: %s", \
#condition)
@interface NSAssertionHandler : NSObject
+ (NSAssertionHandler *) currentHandler;
- (void) handleFailureInMethod: (SEL) selector
object: (id) object
file: (NSString *) fileName
lineNumber: (NSInteger) line
description: (NSString *) format, ...;
- (void) handleFailureInFunction: (NSString *) functionName
file: (NSString *) fileName
lineNumber: (NSInteger) line
description: (NSString *) format, ...;
@end

View File

@ -1,76 +0,0 @@
/* Copyright (c) 2008 John Engelhart
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSAssertionHandler.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSException.h>
#import <Foundation/NSString.h>
#import <Foundation/NSThread.h>
@implementation NSAssertionHandler
+ (NSAssertionHandler *) currentHandler {
id currentHandlerForThread = [[[NSThread currentThread] threadDictionary]
objectForKey: [self className]];
if ((currentHandlerForThread == NULL) &&
((currentHandlerForThread = [[self alloc] init]) != NULL)) {
[[[NSThread currentThread] threadDictionary]
setObject: currentHandlerForThread
forKey: [self className]];
}
return (currentHandlerForThread);
}
- (void) handleFailureInMethod: (SEL) selector
object: (id) object
file: (NSString *) fileName
lineNumber: (NSInteger) line
description: (NSString *) format, ...
{
NSLog(@"*** Assertion failure in %c[%@ %@], %@:%ld",
(object == [object class]) ? '+' : '-', [object className],
NSStringFromSelector(selector), fileName, (long) line);
va_list arguments;
va_start(arguments, format);
[NSException raise: NSInternalInconsistencyException
format: format
arguments: arguments];
va_end(arguments);
}
- (void) handleFailureInFunction: (NSString *) functionName
file: (NSString *) fileName
lineNumber: (NSInteger) line
description: (NSString *) format, ...
{
NSLog(@"*** Assertion failure in %@, %@:%ld", functionName, fileName,
(long) line);
va_list arguments;
va_start(arguments, format);
[NSException raise: NSInternalInconsistencyException
format: format
arguments: arguments];
va_end(arguments);
}
@end

View File

@ -1,6 +0,0 @@
#if COCOTRON_USE_NONATOMIC_COMPARE_AND_SWAP
#warning __sync_bool_compare_and_swap is nonatomic. Do not use more than one thread!
#define __sync_bool_compare_and_swap(pointer, a, b, ...) \
((*pointer == a) ? (*pointer = b), 1 : 0)
#endif

View File

@ -1,51 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSRange.h>
@class NSDictionary;
@interface NSAttributedString : NSObject <NSCopying, NSCoding, NSMutableCopying>
- initWithString: (NSString *) string;
- initWithString: (NSString *) string attributes: (NSDictionary *) attributes;
- initWithAttributedString: (NSAttributedString *) other;
- (BOOL) isEqualToAttributedString: (NSAttributedString *) other;
- (NSUInteger) length;
- (NSString *) string;
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
effectiveRange: (NSRange *) range;
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
longestEffectiveRange: (NSRange *) range
inRange: (NSRange) inRange;
- attribute: (NSString *) name
atIndex: (NSUInteger) location
effectiveRange: (NSRange *) range;
- attribute: (NSString *) name
atIndex: (NSUInteger) location
longestEffectiveRange: (NSRange *) range
inRange: (NSRange) inRange;
- (NSAttributedString *) attributedSubstringFromRange: (NSRange) range;
@end

View File

@ -1,215 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
// Original - Christopher Lloyd <cjwl@objc.net>
#import <Foundation/NSAttributedString.h>
#import <Foundation/NSAttributedString_placeholder.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSMutableAttributedString.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSString.h>
@implementation NSAttributedString
+ allocWithZone: (NSZone *) zone {
if (self == [NSAttributedString class])
return NSAllocateObject([NSAttributedString_placeholder class], 0,
NULL);
return NSAllocateObject(self, 0, zone);
}
- init {
return [self initWithString: @""];
}
- initWithString: (NSString *) string {
NSInvalidAbstractInvocation();
return nil;
}
- initWithString: (NSString *) string attributes: (NSDictionary *) attributes {
NSInvalidAbstractInvocation();
return nil;
}
- initWithAttributedString: (NSAttributedString *) other {
NSInvalidAbstractInvocation();
return nil;
}
- (void) encodeWithCoder: (NSCoder *) coder {
NSUnimplementedMethod();
}
- initWithCoder: (NSCoder *) coder {
NSUnimplementedMethod();
return self;
}
- copy {
return [self retain];
}
- copyWithZone: (NSZone *) zone {
return [self retain];
}
- mutableCopy {
return [[NSMutableAttributedString allocWithZone: NULL]
initWithAttributedString: self];
}
- mutableCopyWithZone: (NSZone *) zone {
return [[NSMutableAttributedString allocWithZone: zone]
initWithAttributedString: self];
}
- (BOOL) isEqualToAttributedString: (NSAttributedString *) other {
if ([self length] != [other length]) {
return NO;
}
unsigned i = 0;
NSString *string = [self string];
NSString *otherString = [other string];
if (![string isEqualToString: otherString]) {
return NO;
}
unsigned length = [self length];
NSRange range;
while (i < length) {
NSDictionary *attributes = [self attributesAtIndex: i
effectiveRange: &range];
NSRange otherRange;
NSDictionary *otherAttributes = [other attributesAtIndex: i
effectiveRange: &otherRange];
if (![attributes isEqualToDictionary: otherAttributes]) {
return NO;
}
i = MIN(NSMaxRange(range), NSMaxRange(otherRange));
}
return YES;
}
- (NSUInteger) hash {
return [[self string] hash];
}
- (BOOL) isEqual: (id) other {
if (self == other) {
return YES;
}
if ([other isKindOfClass: [NSAttributedString class]]) {
return [self isEqualToAttributedString: other];
}
return NO;
}
- (NSUInteger) length {
return [[self string] length];
}
- (NSString *) string {
NSInvalidAbstractInvocation();
return nil;
}
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
effectiveRange: (NSRange *) range
{
NSInvalidAbstractInvocation();
return nil;
}
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
longestEffectiveRange: (NSRange *) range
inRange: (NSRange) inRange
{
NSUnimplementedMethod();
return nil;
}
- attribute: (NSString *) name
atIndex: (NSUInteger) location
effectiveRange: (NSRange *) range
{
return [[self attributesAtIndex: location
effectiveRange: range] objectForKey: name];
}
- attribute: (NSString *) name
atIndex: (NSUInteger) location
longestEffectiveRange: (NSRange *) range
inRange: (NSRange) inRange
{
NSUnimplementedMethod();
return nil;
}
- (NSAttributedString *) attributedSubstringFromRange: (NSRange) range {
NSMutableAttributedString *result =
[[[NSMutableAttributedString allocWithZone: NULL] init]
autorelease];
NSUInteger location = range.location;
NSUInteger limit = MIN(NSMaxRange(range), [self length]);
while (location < limit) {
NSRange effectiveRange, appendedRange;
NSDictionary *attributes = [self attributesAtIndex: location
effectiveRange: &effectiveRange];
if (effectiveRange.location < location) {
effectiveRange.length = NSMaxRange(effectiveRange) - location;
effectiveRange.location = location;
}
if (NSMaxRange(effectiveRange) > limit)
effectiveRange.length = limit - effectiveRange.location;
appendedRange.location = [result length];
appendedRange.length = effectiveRange.length;
[[result mutableString]
appendString: [[self string]
substringWithRange: effectiveRange]];
[result setAttributes: attributes range: appendedRange];
location = NSMaxRange(effectiveRange);
}
return result;
}
- (NSString *) description {
if ([self length] > 0) {
NSMutableString *result = [NSMutableString string];
unsigned length = [self length];
int i = 0;
while (i < length) {
NSRange range;
NSDictionary *attributes = [self attributesAtIndex: i
effectiveRange: &range];
NSString *string = [[self string] substringWithRange: range];
[result appendFormat: @"%@ {\n%@\n}\n", string, attributes];
i = NSMaxRange(range);
}
return result;
} else {
return [NSString stringWithFormat: @"%@ {}", [self string]];
}
}
@end

View File

@ -1,28 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSAttributedString.h>
#import <Foundation/NSRangeEntries.h>
@interface NSAttributedString_manyAttributes : NSAttributedString {
NSString *_string;
NSRangeEntries *_rangeToAttributes;
}
@end

View File

@ -1,77 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import "NSAttributedString_manyAttributes.h"
#import <Foundation/NSArray.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
@implementation NSAttributedString_manyAttributes
- initWithAttributedString: (NSAttributedString *) other {
NSUInteger location = 0;
NSUInteger limit = [other length];
_string = [[other string] copy];
_rangeToAttributes = NSCreateRangeToCopiedObjectEntries(0);
while (location < limit) {
NSRange effectiveRange;
NSDictionary *attributes = [other attributesAtIndex: location
effectiveRange: &effectiveRange];
NSRangeEntryInsert(_rangeToAttributes, effectiveRange, attributes);
location = NSMaxRange(effectiveRange);
}
return self;
}
- (void) dealloc {
[_string release];
NSFreeRangeEntries(_rangeToAttributes);
[super dealloc];
}
- (NSString *) string {
return _string;
}
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
effectiveRange: (NSRange *) effectiveRangep
{
NSDictionary *result;
if (location >= [self length])
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond length %d", location, [self length]);
if ((result = NSRangeEntryAtIndex(_rangeToAttributes, location,
effectiveRangep)) == nil)
result = [NSDictionary dictionary];
if (effectiveRangep != NULL && effectiveRangep->length == NSNotFound)
effectiveRangep->length = [self length] - effectiveRangep->location;
return [[result retain] autorelease];
}
@end

View File

@ -1,26 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSAttributedString.h>
@interface NSAttributedString_nilAttributes : NSAttributedString {
NSString *_string;
}
@end

View File

@ -1,55 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
// Original - Christopher Lloyd <cjwl@objc.net>
#import <Foundation/NSAttributedString_nilAttributes.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
@implementation NSAttributedString_nilAttributes
- (NSString *) string {
return _string;
}
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
effectiveRange: (NSRange *) effectiveRangep
{
if (location >= [self length])
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond length %d", location, [self length]);
if (effectiveRangep != NULL)
*effectiveRangep = NSMakeRange(0, [_string length]);
return [NSDictionary dictionary];
}
- initWithString: (NSString *) string {
_string = [string copy];
return self;
}
- (void) dealloc {
[_string release];
[super dealloc];
}
@end

View File

@ -1,27 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSAttributedString.h>
@interface NSAttributedString_oneAttribute : NSAttributedString {
NSString *_string;
NSDictionary *_attributes;
}
@end

View File

@ -1,58 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
// Original - Christopher Lloyd <cjwl@objc.net>
#import <Foundation/NSAttributedString_oneAttribute.h>
#import <Foundation/NSDictionary.h>
#import <Foundation/NSRaise.h>
#import <Foundation/NSRaiseException.h>
#import <Foundation/NSString.h>
@implementation NSAttributedString_oneAttribute
- (NSString *) string {
return _string;
}
- (NSDictionary *) attributesAtIndex: (NSUInteger) location
effectiveRange: (NSRange *) range
{
if (location >= [self length])
NSRaiseException(NSRangeException, self, _cmd,
@"index %d beyond length %d", location, [self length]);
if (range != NULL)
*range = NSMakeRange(0, [_string length]);
return [[_attributes retain] autorelease];
}
- initWithString: (NSString *) string attributes: (NSDictionary *) attributes {
_string = [string copy];
_attributes = [attributes copy];
return self;
}
- (void) dealloc {
[_string release];
[_attributes release];
[super dealloc];
}
@end

View File

@ -1,24 +0,0 @@
/* Copyright (c) 2006-2007 Christopher J. W. Lloyd
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
the Software, and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */
#import <Foundation/NSAttributedString.h>
@interface NSAttributedString_placeholder : NSAttributedString
@end

Some files were not shown because too many files have changed in this diff Show More