Pattern editor + other cleanup.

This commit is contained in:
Nate Weaver 2012-07-08 00:06:45 -05:00
parent 220c74fc47
commit 404a9e6acc
13 changed files with 662 additions and 6 deletions

View File

@ -3,6 +3,8 @@
@class CreateResourceSheetController, ResourceWindowController, ResourceDataSource, Resource;
@protocol ResKnifePluginProtocol;
@interface ResourceDocument : NSDocument <NSToolbarDelegate>
{
IBOutlet ResourceDataSource *dataSource;

View File

@ -11,6 +11,7 @@
#import "../Categories/NGSCategories.h"
#import "../Categories/NSString-FSSpec.h"
#import "../Categories/NSOutlineView-SelectedItems.h"
#import <Carbon/Carbon.h>
#import "../Plug-Ins/ResKnifePluginProtocol.h"
#import "RKEditorRegistry.h"
@ -1015,6 +1016,11 @@ static NSString *RKExportItemIdentifier = @"com.nickshanks.resknife.toolbar.exp
return plugController;
}
- (void)saveSoundAsMovie:(NSData *)sndData {
}
/*!
@method playSound:
@abstract Plays the selected carbon 'snd ' resource.
@ -1031,7 +1037,7 @@ static NSString *RKExportItemIdentifier = @"com.nickshanks.resknife.toolbar.exp
// bug: can only cope with one selected item
NSData *data = [(Resource *)[outlineView itemAtRow:[outlineView selectedRow]] data];
if(data && [data length] != 0)
{
{
[NSThread detachNewThreadSelector:@selector(playSoundThreadController:) toTarget:self withObject:data];
}
else NSBeep();
@ -1053,9 +1059,10 @@ static NSString *RKExportItemIdentifier = @"com.nickshanks.resknife.toolbar.exp
if(data && [data length] != 0)
{
// plays sound synchronously, thread exits when sound is done playing
//SndListPtr sndPtr = (SndListPtr) [data bytes];
//SndPlay(nil, &sndPtr, false);
[[[[NSSound alloc] initWithData:data] autorelease] play];
#if !__LP64__
SndListPtr sndPtr = (SndListPtr) [data bytes];
SndPlay(nil, &sndPtr, false);
#endif
}
else NSBeep();
[pool release];

View File

@ -88,6 +88,11 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
[self showWindow:self];
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
{
return [resource defaultWindowTitle];
}
- (void)windowDidResize:(NSNotification *)notification
{
int width = [(NSWindow *)[notification object] frame].size.width;

View File

@ -53,6 +53,11 @@
[self showWindow:self];
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
{
return [resource defaultWindowTitle];
}
- (void)resourceDataDidChange:(NSNotification *)notification
{
// ensure it's our resource which got changed (should always be true, we don't register for notifications on other resource objects)

View File

@ -43,6 +43,11 @@
[self showWindow:self];
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
{
return [resource defaultWindowTitle];
}
- (void)dealloc {
[image release];
[resource release];

View File

@ -0,0 +1,23 @@
//
// PatternWindowController.h
// ResKnife
//
// Created by Nate Weaver on 2012-7-7.
// Copyright (c) 2012 Derailer. All rights reserved.
//
#import <Cocoa/Cocoa.h>
#import "ResKnifePluginProtocol.h"
@class Resource;
@protocol ResKnifeResourceProtocol;
@interface PatternWindowController : NSWindowController <ResKnifePluginProtocol> {
NSImageView *imageView;
id <ResKnifeResourceProtocol> resource;
NSImage *image;
}
@property (assign) IBOutlet NSImageView *imageView;
@end

View File

@ -0,0 +1,71 @@
//
// PatternWindowController.m
// ResKnife
//
// Created by Nate Weaver on 2012-7-7.
// Copyright (c) 2012 Derailer. All rights reserved.
//
#import "PatternWindowController.h"
#import "ResKnifeResourceProtocol.h"
@interface PatternWindowController ()
@end
@implementation PatternWindowController
@synthesize imageView;
- (id)initWithWindow:(NSWindow *)window
{
self = [super initWithWindow:window];
if (self) {
// Initialization code here.
}
return self;
}
- (void)windowDidLoad
{
[super windowDidLoad];
// set the window's title
[[self window] setTitle:[resource defaultWindowTitle]];
NSData *data = [resource data];
unsigned char *planes[1] = { 0 };
planes[0] = (unsigned char *)[data bytes];
NSBitmapImageRep *rep = [[NSBitmapImageRep alloc] initWithBitmapDataPlanes:planes pixelsWide:8 pixelsHigh:8 bitsPerSample:1 samplesPerPixel:1 hasAlpha:NO isPlanar:NO colorSpaceName:NSCalibratedWhiteColorSpace bytesPerRow:1 bitsPerPixel:1];
for (NSUInteger i = 0; i < 8; ++i)
[rep bitmapData][i] ^= 0xff;
image = [[NSImage alloc] initWithSize:(NSSize){ .width = 8.0, .height = 8.0 }];
[image addRepresentation:rep];
[imageView setImage:image];
// we don't want this notification until we have a window! (Only register for notifications on the resource we're editing)
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resourceDataDidChange:) name:ResourceDataDidChangeNotification object:resource];
// finally, show the window
[self showWindow:self];
}
- (id)initWithResource:(id <ResKnifeResourceProtocol>)inResource {
if (self = [self initWithWindowNibName:@"PatternWindowController"]) {
resource = [inResource retain];
[self window];
}
return self;
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
{
return [resource defaultWindowTitle];
}
@end

View File

@ -0,0 +1,321 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
<data>
<int key="IBDocument.SystemTarget">1070</int>
<string key="IBDocument.SystemVersion">11E53</string>
<string key="IBDocument.InterfaceBuilderVersion">2182</string>
<string key="IBDocument.AppKitVersion">1138.47</string>
<string key="IBDocument.HIToolboxVersion">569.00</string>
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="NS.object.0">2182</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSImageView</string>
<string>NSWindowTemplate</string>
<string>NSView</string>
<string>NSImageCell</string>
<string>NSCustomObject</string>
<string>IBNSLayoutConstraint</string>
</array>
<array key="IBDocument.PluginDependencies">
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
</array>
<object class="NSMutableDictionary" key="IBDocument.Metadata">
<string key="NS.key.0">PluginDependencyRecalculationVersion</string>
<integer value="1" key="NS.object.0"/>
</object>
<array class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
<object class="NSCustomObject" id="1001">
<string key="NSClassName">PatternWindowController</string>
</object>
<object class="NSCustomObject" id="1003">
<string key="NSClassName">FirstResponder</string>
</object>
<object class="NSCustomObject" id="1004">
<string key="NSClassName">NSApplication</string>
</object>
<object class="NSWindowTemplate" id="1005">
<int key="NSWindowStyleMask">15</int>
<int key="NSWindowBacking">2</int>
<string key="NSWindowRect">{{196, 240}, {478, 309}}</string>
<int key="NSWTFlags">544735232</int>
<string key="NSWindowTitle">Window</string>
<string key="NSWindowClass">NSWindow</string>
<nil key="NSViewClass"/>
<nil key="NSUserInterfaceItemIdentifier"/>
<object class="NSView" key="NSWindowView" id="1006">
<reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSImageView" id="852818349">
<reference key="NSNextResponder" ref="1006"/>
<int key="NSvFlags">268</int>
<set class="NSMutableSet" key="NSDragTypes">
<string>Apple PDF pasteboard type</string>
<string>Apple PICT pasteboard type</string>
<string>Apple PNG pasteboard type</string>
<string>NSFilenamesPboardType</string>
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
<string key="NSFrame">{{17, 17}, {444, 275}}</string>
<reference key="NSSuperview" ref="1006"/>
<reference key="NSWindow"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<bool key="NSEnabled">YES</bool>
<object class="NSImageCell" key="NSCell" id="898742785">
<int key="NSCellFlags">130560</int>
<int key="NSCellFlags2">33554432</int>
<string key="NSCellIdentifier">_NS:9</string>
<int key="NSAlign">0</int>
<int key="NSScale">0</int>
<int key="NSStyle">2</int>
<bool key="NSAnimates">NO</bool>
</object>
<bool key="NSEditable">YES</bool>
</object>
</array>
<string key="NSFrameSize">{478, 309}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<bool key="NSWindowIsRestorable">YES</bool>
</object>
</array>
<object class="IBObjectContainer" key="IBDocument.Objects">
<array class="NSMutableArray" key="connectionRecords">
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">window</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="1005"/>
</object>
<int key="connectionID">3</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">imageView</string>
<reference key="source" ref="1001"/>
<reference key="destination" ref="852818349"/>
</object>
<int key="connectionID">17</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="1005"/>
<reference key="destination" ref="1001"/>
</object>
<int key="connectionID">4</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
<object class="IBObjectRecord">
<int key="objectID">0</int>
<array key="object" id="0"/>
<reference key="children" ref="1000"/>
<nil key="parent"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">-2</int>
<reference key="object" ref="1001"/>
<reference key="parent" ref="0"/>
<string key="objectName">File's Owner</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-1</int>
<reference key="object" ref="1003"/>
<reference key="parent" ref="0"/>
<string key="objectName">First Responder</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-3</int>
<reference key="object" ref="1004"/>
<reference key="parent" ref="0"/>
<string key="objectName">Application</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">1</int>
<reference key="object" ref="1005"/>
<array class="NSMutableArray" key="children">
<reference ref="1006"/>
</array>
<reference key="parent" ref="0"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">2</int>
<reference key="object" ref="1006"/>
<array class="NSMutableArray" key="children">
<reference ref="852818349"/>
<object class="IBNSLayoutConstraint" id="855301011">
<reference key="firstItem" ref="1006"/>
<int key="firstAttribute">6</int>
<int key="relation">0</int>
<reference key="secondItem" ref="852818349"/>
<int key="secondAttribute">6</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">20</double>
</object>
<float key="priority">1000</float>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
<reference key="containingView" ref="1006"/>
</object>
<object class="IBNSLayoutConstraint" id="882842756">
<reference key="firstItem" ref="1006"/>
<int key="firstAttribute">4</int>
<int key="relation">0</int>
<reference key="secondItem" ref="852818349"/>
<int key="secondAttribute">4</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">20</double>
</object>
<float key="priority">1000</float>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
<reference key="containingView" ref="1006"/>
</object>
<object class="IBNSLayoutConstraint" id="830932169">
<reference key="firstItem" ref="852818349"/>
<int key="firstAttribute">5</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1006"/>
<int key="secondAttribute">5</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">20</double>
</object>
<float key="priority">1000</float>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
<reference key="containingView" ref="1006"/>
</object>
<object class="IBNSLayoutConstraint" id="8826240">
<reference key="firstItem" ref="852818349"/>
<int key="firstAttribute">3</int>
<int key="relation">0</int>
<reference key="secondItem" ref="1006"/>
<int key="secondAttribute">3</int>
<float key="multiplier">1</float>
<object class="IBNSLayoutSymbolicConstant" key="constant">
<double key="value">20</double>
</object>
<float key="priority">1000</float>
<int key="scoringType">8</int>
<float key="scoringTypeFloat">29</float>
<int key="contentType">3</int>
<reference key="containingView" ref="1006"/>
</object>
</array>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">7</int>
<reference key="object" ref="852818349"/>
<array class="NSMutableArray" key="children">
<reference ref="898742785"/>
</array>
<reference key="parent" ref="1006"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">8</int>
<reference key="object" ref="898742785"/>
<reference key="parent" ref="852818349"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">13</int>
<reference key="object" ref="855301011"/>
<reference key="parent" ref="1006"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">14</int>
<reference key="object" ref="882842756"/>
<reference key="parent" ref="1006"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">15</int>
<reference key="object" ref="830932169"/>
<reference key="parent" ref="1006"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">16</int>
<reference key="object" ref="8826240"/>
<reference key="parent" ref="1006"/>
</object>
</array>
</object>
<dictionary class="NSMutableDictionary" key="flattenedProperties">
<string key="-1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="-2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="-3.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="1.IBWindowTemplateEditedContentRect">{{357, 418}, {480, 270}}</string>
<integer value="1" key="1.NSWindowTemplate.visibleAtLaunch"/>
<string key="13.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="14.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="15.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="16.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<array class="NSMutableArray" key="2.IBNSViewMetadataConstraints">
<reference ref="855301011"/>
<reference ref="882842756"/>
<reference ref="830932169"/>
<reference ref="8826240"/>
</array>
<string key="2.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<boolean value="NO" key="7.IBNSViewMetadataTranslatesAutoresizingMaskIntoConstraints"/>
<string key="7.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="unlocalizedProperties"/>
<nil key="activeLocalization"/>
<dictionary class="NSMutableDictionary" key="localizations"/>
<nil key="sourceID"/>
<int key="maxID">17</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
<object class="IBPartialClassDescription">
<string key="className">NSLayoutConstraint</string>
<string key="superclassName">NSObject</string>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/NSLayoutConstraint.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">PatternWindowController</string>
<string key="superclassName">NSWindowController</string>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">imageView</string>
<string key="NS.object.0">NSImageView</string>
</object>
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
<string key="NS.key.0">imageView</string>
<object class="IBToOneOutletInfo" key="NS.object.0">
<string key="name">imageView</string>
<string key="candidateClassName">NSImageView</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/PatternWindowController.h</string>
</object>
</object>
</array>
</object>
<int key="IBDocument.localizationMode">0</int>
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<bool key="IBDocument.UseAutolayout">YES</bool>
</data>
</archive>

View File

@ -370,6 +370,11 @@
[createItem setAction:@selector(createListEntry:)];
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
{
return [resource defaultWindowTitle];
}
- (void)windowDidResignKey:(NSNotification *)notification
{
NSMenu *resourceMenu = [[[NSApp mainMenu] itemAtIndex:3] submenu];

View File

@ -0,0 +1,34 @@
<?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.derailer.resknife.patterneditor</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>ResK</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright © 2012 Derailer. All rights reserved.</string>
<key>NSPrincipalClass</key>
<string>PatternWindowController</string>
<key>RKEditedTypes</key>
<array>
<string>PAT </string>
</array>
</dict>
</plist>

View File

@ -0,0 +1,7 @@
//
// Prefix header for all source files of the 'Pattern Editor' target in the 'Pattern Editor' project
//
#ifdef __OBJC__
#import <Cocoa/Cocoa.h>
#endif

View File

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

View File

@ -29,6 +29,12 @@
B27A65D015A677F00029141B /* TemplateWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = B27A65CE15A677F00029141B /* TemplateWindow.xib */; };
B27A65D615A678260029141B /* FindSheet.xib in Resources */ = {isa = PBXBuildFile; fileRef = B27A65D215A678260029141B /* FindSheet.xib */; };
B27A65D715A678260029141B /* HexWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = B27A65D415A678260029141B /* HexWindow.xib */; };
B2B2C40815A9464400D6F61C /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F5B5884B0156D40B01000001 /* Cocoa.framework */; };
B2B2C40E15A9464400D6F61C /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = B2B2C40C15A9464400D6F61C /* InfoPlist.strings */; };
B2B2C41515A9468300D6F61C /* Pattern Editor.plugin in Copy Plugins */ = {isa = PBXBuildFile; fileRef = B2B2C40715A9464400D6F61C /* Pattern Editor.plugin */; };
B2B2C41615A946FB00D6F61C /* PatternWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = B2B2C3FE15A9453300D6F61C /* PatternWindowController.m */; };
B2B2C41715A9470500D6F61C /* PatternWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = B2B2C3FF15A9453300D6F61C /* PatternWindowController.xib */; };
B2B2C41815A9473C00D6F61C /* Notifications.m in Sources */ = {isa = PBXBuildFile; fileRef = F5C9ECCE027F474A01A8010C /* Notifications.m */; };
B2FCA78B15A66ACE00696598 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F5B5884B0156D40B01000001 /* Cocoa.framework */; };
B2FCA79115A66ACF00696598 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = B2FCA78F15A66ACF00696598 /* InfoPlist.strings */; };
B2FCA79715A66B2A00696598 /* PictWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = B2FCA78015A669C800696598 /* PictWindowController.m */; };
@ -269,6 +275,13 @@
remoteGlobalIDString = B229EEC915A4B8720032C12C;
remoteInfo = "PNG Editor";
};
B2B2C41315A9467100D6F61C /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = F5B5880F0156D2A601000001 /* Project object */;
proxyType = 1;
remoteGlobalIDString = B2B2C40615A9464400D6F61C;
remoteInfo = "Pattern Editor";
};
B2FCA79A15A66B4A00696598 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = F5B5880F0156D2A601000001 /* Project object */;
@ -338,6 +351,7 @@
dstPath = "";
dstSubfolderSpec = 13;
files = (
B2B2C41515A9468300D6F61C /* Pattern Editor.plugin in Copy Plugins */,
B2FCA79C15A66B5500696598 /* PICT Editor.plugin in Copy Plugins */,
B229EEDD15A4BA900032C12C /* PNG Editor.plugin in Copy Plugins */,
E1EAB19A06A20F1A0041EE35 /* Hexadecimal Editor.plugin in Copy Plugins */,
@ -409,6 +423,13 @@
B27A65CF15A677F00029141B /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/TemplateWindow.xib; sourceTree = "<group>"; };
B27A65D315A678260029141B /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/FindSheet.xib; sourceTree = "<group>"; };
B27A65D515A678260029141B /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/HexWindow.xib; sourceTree = "<group>"; };
B2B2C3FD15A9453300D6F61C /* PatternWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PatternWindowController.h; path = "Pattern Editor/PatternWindowController.h"; sourceTree = "<group>"; };
B2B2C3FE15A9453300D6F61C /* PatternWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PatternWindowController.m; path = "Pattern Editor/PatternWindowController.m"; sourceTree = "<group>"; };
B2B2C3FF15A9453300D6F61C /* PatternWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = PatternWindowController.xib; path = "Pattern Editor/PatternWindowController.xib"; sourceTree = "<group>"; };
B2B2C40715A9464400D6F61C /* Pattern Editor.plugin */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Pattern Editor.plugin"; sourceTree = BUILT_PRODUCTS_DIR; };
B2B2C40B15A9464400D6F61C /* Pattern Editor-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Pattern Editor-Info.plist"; sourceTree = "<group>"; };
B2B2C40D15A9464400D6F61C /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
B2B2C40F15A9464400D6F61C /* Pattern Editor-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Pattern Editor-Prefix.pch"; sourceTree = "<group>"; };
B2FCA77F15A669C800696598 /* PictWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PictWindowController.h; sourceTree = "<group>"; };
B2FCA78015A669C800696598 /* PictWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PictWindowController.m; sourceTree = "<group>"; };
B2FCA78115A669C800696598 /* SupportedTypes.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = SupportedTypes.plist; sourceTree = "<group>"; };
@ -600,6 +621,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
B2B2C40415A9464400D6F61C /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
B2B2C40815A9464400D6F61C /* Cocoa.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
B2FCA78715A66ACE00696598 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@ -775,6 +804,34 @@
name = "Other Frameworks";
sourceTree = "<group>";
};
B2B2C3FC15A9451800D6F61C /* Pattern Editor */ = {
isa = PBXGroup;
children = (
B2B2C3FD15A9453300D6F61C /* PatternWindowController.h */,
B2B2C3FE15A9453300D6F61C /* PatternWindowController.m */,
B2B2C3FF15A9453300D6F61C /* PatternWindowController.xib */,
);
name = "Pattern Editor";
sourceTree = "<group>";
};
B2B2C40915A9464400D6F61C /* Pattern Editor */ = {
isa = PBXGroup;
children = (
B2B2C40A15A9464400D6F61C /* Supporting Files */,
);
path = "Pattern Editor";
sourceTree = "<group>";
};
B2B2C40A15A9464400D6F61C /* Supporting Files */ = {
isa = PBXGroup;
children = (
B2B2C40B15A9464400D6F61C /* Pattern Editor-Info.plist */,
B2B2C40C15A9464400D6F61C /* InfoPlist.strings */,
B2B2C40F15A9464400D6F61C /* Pattern Editor-Prefix.pch */,
);
name = "Supporting Files";
sourceTree = "<group>";
};
B2FCA77C15A669C800696598 /* PICT Editor */ = {
isa = PBXGroup;
children = (
@ -905,6 +962,7 @@
F57CEE0B0189C95101A8010B /* Plug-Ins */ = {
isa = PBXGroup;
children = (
B2B2C3FC15A9451800D6F61C /* Pattern Editor */,
F5C9ECCE027F474A01A8010C /* Notifications.m */,
F5502C4001C579FF01C57124 /* ResKnifePluginProtocol.h */,
F5CDEBAB01FC893201A80001 /* ResKnifeResourceProtocol.h */,
@ -938,6 +996,7 @@
F5B5887C0156D6D901000001 /* Prefix Files */,
F5B5881A0156D40B01000001 /* Cocoa */,
F5EA10690254A7B401A80001 /* External */,
B2B2C40915A9464400D6F61C /* Pattern Editor */,
F5B588490156D40B01000001 /* Frameworks */,
F5B588110156D30301000001 /* Products */,
);
@ -956,6 +1015,7 @@
E18BF68D069FEA1800F076B8 /* Ulis Template Editor.bundle */,
B229EECA15A4B8720032C12C /* PNG Editor.plugin */,
B2FCA78A15A66ACE00696598 /* PICT Editor.plugin */,
B2B2C40715A9464400D6F61C /* Pattern Editor.plugin */,
);
name = Products;
sourceTree = "<group>";
@ -1291,6 +1351,23 @@
productReference = B229EECA15A4B8720032C12C /* PNG Editor.plugin */;
productType = "com.apple.product-type.bundle";
};
B2B2C40615A9464400D6F61C /* Pattern Editor */ = {
isa = PBXNativeTarget;
buildConfigurationList = B2B2C41015A9464400D6F61C /* Build configuration list for PBXNativeTarget "Pattern Editor" */;
buildPhases = (
B2B2C40315A9464400D6F61C /* Sources */,
B2B2C40415A9464400D6F61C /* Frameworks */,
B2B2C40515A9464400D6F61C /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = "Pattern Editor";
productName = "Pattern Editor";
productReference = B2B2C40715A9464400D6F61C /* Pattern Editor.plugin */;
productType = "com.apple.product-type.bundle";
};
B2FCA78915A66ACE00696598 /* PICT Editor */ = {
isa = PBXNativeTarget;
buildConfigurationList = B2FCA79315A66ACF00696598 /* Build configuration list for PBXNativeTarget "PICT Editor" */;
@ -1329,6 +1406,7 @@
0ED5B4B813BF0A7800A5DC6D /* PBXTargetDependency */,
E13F836508F139E900E2A5CB /* PBXTargetDependency */,
B229EEE315A4BB720032C12C /* PBXTargetDependency */,
B2B2C41415A9467100D6F61C /* PBXTargetDependency */,
);
name = ResKnife;
productInstallPath = "$(USER_APPS_DIR)";
@ -1511,6 +1589,7 @@
E18BF671069FEA1700F076B8 /* Uli's Template Editor */,
B229EEC915A4B8720032C12C /* PNG Editor */,
B2FCA78915A66ACE00696598 /* PICT Editor */,
B2B2C40615A9464400D6F61C /* Pattern Editor */,
);
};
/* End PBXProject section */
@ -1524,6 +1603,15 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
B2B2C40515A9464400D6F61C /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
B2B2C40E15A9464400D6F61C /* InfoPlist.strings in Resources */,
B2B2C41715A9470500D6F61C /* PatternWindowController.xib in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
B2FCA78815A66ACE00696598 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@ -1699,6 +1787,15 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
B2B2C40315A9464400D6F61C /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
B2B2C41615A946FB00D6F61C /* PatternWindowController.m in Sources */,
B2B2C41815A9473C00D6F61C /* Notifications.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
B2FCA78615A66ACE00696598 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@ -1856,6 +1953,11 @@
target = B229EEC915A4B8720032C12C /* PNG Editor */;
targetProxy = B229EEE215A4BB720032C12C /* PBXContainerItemProxy */;
};
B2B2C41415A9467100D6F61C /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = B2B2C40615A9464400D6F61C /* Pattern Editor */;
targetProxy = B2B2C41315A9467100D6F61C /* PBXContainerItemProxy */;
};
B2FCA79B15A66B4A00696598 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = B2FCA78915A66ACE00696598 /* PICT Editor */;
@ -1984,6 +2086,14 @@
name = HexWindow.xib;
sourceTree = "<group>";
};
B2B2C40C15A9464400D6F61C /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
B2B2C40D15A9464400D6F61C /* en */,
);
name = InfoPlist.strings;
sourceTree = "<group>";
};
B2FCA78F15A66ACF00696598 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
@ -2185,7 +2295,7 @@
};
name = Release;
};
B2FCA79415A66ACF00696598 /* Debug */ = {
B2B2C41115A9464400D6F61C /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
@ -2196,6 +2306,58 @@
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "Pattern Editor/Pattern Editor-Prefix.pch";
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "Pattern Editor/Pattern Editor-Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
MACOSX_DEPLOYMENT_TARGET = 10.7;
ONLY_ACTIVE_ARCH = YES;
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = plugin;
};
name = Debug;
};
B2B2C41215A9464400D6F61C /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "Pattern Editor/Pattern Editor-Prefix.pch";
GCC_VERSION = com.apple.compilers.llvm.clang.1_0;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
INFOPLIST_FILE = "Pattern Editor/Pattern Editor-Info.plist";
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
MACOSX_DEPLOYMENT_TARGET = 10.7;
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = plugin;
};
name = Release;
};
B2FCA79415A66ACF00696598 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
COPY_PHASE_STRIP = NO;
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_ENABLE_OBJC_EXCEPTIONS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "PICT Editor/PICT Editor-Prefix.pch";
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
@ -2219,7 +2381,6 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
ARCHS = "$(ARCHS_STANDARD_64_BIT)";
COPY_PHASE_STRIP = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
GCC_C_LANGUAGE_STANDARD = gnu99;
@ -2666,6 +2827,14 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Debug;
};
B2B2C41015A9464400D6F61C /* Build configuration list for PBXNativeTarget "Pattern Editor" */ = {
isa = XCConfigurationList;
buildConfigurations = (
B2B2C41115A9464400D6F61C /* Debug */,
B2B2C41215A9464400D6F61C /* Release */,
);
defaultConfigurationIsVisible = 0;
};
B2FCA79315A66ACF00696598 /* Build configuration list for PBXNativeTarget "PICT Editor" */ = {
isa = XCConfigurationList;
buildConfigurations = (