Use the return value from init methods for other init methods that call them.

This commit is contained in:
Nate Weaver 2013-01-19 16:44:54 -06:00
parent 28edba7062
commit eabf1698c0
4 changed files with 161 additions and 686 deletions

View File

@ -15,14 +15,12 @@ NSString *RKResourcePboardType = @"RKResourcePboardType";
- (id)initWithType:(NSString *)typeValue andID:(NSNumber *)resIDValue
{
[self initWithType:typeValue andID:resIDValue withName:@"" andAttributes:[NSNumber numberWithUnsignedShort:0]];
return self;
return [self initWithType:typeValue andID:resIDValue withName:@"" andAttributes:[NSNumber numberWithUnsignedShort:0]];
}
- (id)initWithType:(NSString *)typeValue andID:(NSNumber *)resIDValue withName:(NSString *)nameValue andAttributes:(NSNumber *)attributesValue
{
[self initWithType:typeValue andID:resIDValue withName:nameValue andAttributes:attributesValue data:[NSData data]];
return self;
return [self initWithType:typeValue andID:resIDValue withName:nameValue andAttributes:attributesValue data:[NSData data]];
}
- (id)initWithType:(NSString *)typeValue andID:(NSNumber *)resIDValue withName:(NSString *)nameValue andAttributes:(NSNumber *)attributesValue data:(NSData *)dataValue

View File

@ -2,25 +2,23 @@
<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>
<string key="IBDocument.SystemVersion">12A269</string>
<string key="IBDocument.InterfaceBuilderVersion">2549</string>
<string key="IBDocument.AppKitVersion">1187</string>
<string key="IBDocument.HIToolboxVersion">624.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>
<string key="NS.object.0">2549</string>
</object>
<array key="IBDocument.IntegratedClassDependencies">
<string>NSView</string>
<string>NSCustomObject</string>
<string>NSCustomView</string>
<string>NSMenu</string>
<string>NSScrollView</string>
<string>NSWindowTemplate</string>
<string>NSMenuItem</string>
<string>NSTextField</string>
<string>NSTextFieldCell</string>
<string>NSTextView</string>
<string>NSScroller</string>
<string>NSCustomObject</string>
<string>NSView</string>
<string>NSWindowTemplate</string>
</array>
<array key="IBDocument.PluginDependencies">
<string>com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -162,441 +160,21 @@
<characters key="NS.bytes">View</characters>
</object>
<nil key="NSUserInterfaceItemIdentifier"/>
<string key="NSWindowContentMinSize">{226, 140}</string>
<string key="NSWindowContentMinSize">{300, 140}</string>
<object class="NSView" key="NSWindowView" id="542921733">
<reference key="NSNextResponder"/>
<int key="NSvFlags">256</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSScrollView" id="813846596">
<reference key="NSNextResponder" ref="542921733"/>
<int key="NSvFlags">272</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSClipView" id="588609848">
<reference key="NSNextResponder" ref="813846596"/>
<int key="NSvFlags">2304</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextView" id="706277205">
<reference key="NSNextResponder" ref="588609848"/>
<int key="NSvFlags">2322</int>
<set class="NSMutableSet" key="NSDragTypes">
<string>Apple HTML pasteboard type</string>
<string>Apple PDF pasteboard type</string>
<string>Apple PICT pasteboard type</string>
<string>CorePasteboardFlavorType 0x6D6F6F76</string>
<string>NSColor pasteboard type</string>
<string>NSFilenamesPboardType</string>
<string>NSStringPboardType</string>
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT RTFD pasteboard type</string>
<string>NeXT Rich Text Format v1.0 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
</set>
<string key="NSFrameSize">{74, 300}</string>
<reference key="NSSuperview" ref="588609848"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="1004349541"/>
<object class="NSTextContainer" key="NSTextContainer" id="750324176">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
<object class="NSMutableString" key="NSString">
<characters key="NS.bytes">00000000:</characters>
</object>
<dictionary key="NSAttributes" id="54573663">
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">textColor</string>
<object class="NSColor" key="NSColor" id="1030989473">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MAA</bytes>
</object>
</object>
<object class="NSFont" key="NSFont">
<string key="NSName">Courier</string>
<double key="NSSize">12</double>
<int key="NSfFlags">16</int>
</object>
<object class="NSMutableParagraphStyle" key="NSParagraphStyle">
<nil key="NSTabStops"/>
</object>
</dictionary>
<nil key="NSDelegate"/>
</object>
<array class="NSMutableArray" key="NSTextContainers">
<reference ref="750324176"/>
</array>
<int key="NSLMFlags">6</int>
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="706277205"/>
<double key="NSWidth">74</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
<int key="NSFlags">2912</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<object class="NSColor" key="NSBackgroundColor" id="89734044">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MQA</bytes>
</object>
<dictionary key="NSSelectedAttributes">
<object class="NSColor" key="NSBackgroundColor" id="543699763">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">selectedTextBackgroundColor</string>
<object class="NSColor" key="NSColor" id="941239175">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
</object>
</object>
<object class="NSColor" key="NSColor" id="647666086">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">selectedTextColor</string>
<reference key="NSColor" ref="1030989473"/>
</object>
</dictionary>
<reference key="NSInsertionColor" ref="1030989473"/>
<dictionary key="NSLinkAttributes">
<object class="NSColor" key="NSColor" id="896763461">
<int key="NSColorSpace">1</int>
<bytes key="NSRGB">MCAwIDEAA</bytes>
</object>
<object class="NSCursor" key="NSCursor" id="770457595">
<string key="NSHotSpot">{8, -8}</string>
<int key="NSCursorType">13</int>
</object>
<integer value="1" key="NSUnderline"/>
</dictionary>
<nil key="NSDefaultParagraphStyle"/>
<nil key="NSTextFinder"/>
<int key="NSPreferredTextFinderStyle">0</int>
</object>
<int key="NSTVFlags">6</int>
<string key="NSMaxSize">{160, 10000000}</string>
<nil key="NSDelegate"/>
</object>
</array>
<string key="NSFrameSize">{74, 300}</string>
<reference key="NSSuperview" ref="813846596"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="706277205"/>
<reference key="NSDocView" ref="706277205"/>
<reference key="NSBGColor" ref="89734044"/>
<object class="NSCursor" key="NSCursor">
<string key="NSHotSpot">{5, 5}</string>
<int key="NSCursorType">0</int>
</object>
<int key="NScvFlags">4</int>
</object>
<object class="NSScroller" id="1004349541">
<reference key="NSNextResponder" ref="813846596"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 298}}</string>
<reference key="NSSuperview" ref="813846596"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="393811220"/>
<reference key="NSTarget" ref="813846596"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
</object>
<object class="NSScroller" id="393811220">
<reference key="NSNextResponder" ref="813846596"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="813846596"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="588609848"/>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="813846596"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
<double key="NSPercent">0.94565218687057495</double>
</object>
</array>
<string key="NSFrame">{{0, 20}, {74, 300}}</string>
<reference key="NSSuperview" ref="542921733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="588609848"/>
<int key="NSsFlags">133120</int>
<reference key="NSVScroller" ref="1004349541"/>
<reference key="NSHScroller" ref="393811220"/>
<reference key="NSContentView" ref="588609848"/>
</object>
<object class="NSScrollView" id="760747433">
<reference key="NSNextResponder" ref="542921733"/>
<int key="NSvFlags">272</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSClipView" id="280341911">
<reference key="NSNextResponder" ref="760747433"/>
<int key="NSvFlags">2304</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextView" id="310956344">
<reference key="NSNextResponder" ref="280341911"/>
<int key="NSvFlags">2322</int>
<set class="NSMutableSet" key="NSDragTypes">
<string>Apple HTML pasteboard type</string>
<string>Apple PDF pasteboard type</string>
<string>Apple PICT pasteboard type</string>
<string>Apple PNG pasteboard type</string>
<string>Apple URL pasteboard type</string>
<string>CorePasteboardFlavorType 0x6D6F6F76</string>
<string>NSColor pasteboard type</string>
<string>NSFilenamesPboardType</string>
<string>NSStringPboardType</string>
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT RTFD pasteboard type</string>
<string>NeXT Rich Text Format v1.0 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
<string>NeXT font pasteboard type</string>
<string>NeXT ruler pasteboard type</string>
<string>WebURLsWithTitlesPboardType</string>
<string>public.url</string>
</set>
<string key="NSFrameSize">{339, 298}</string>
<reference key="NSSuperview" ref="280341911"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="718325052"/>
<object class="NSTextContainer" key="NSTextContainer" id="560345675">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
<object class="NSMutableString" key="NSString">
<characters key="NS.bytes">00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00</characters>
</object>
<reference key="NSAttributes" ref="54573663"/>
<nil key="NSDelegate"/>
</object>
<array class="NSMutableArray" key="NSTextContainers">
<reference ref="560345675"/>
</array>
<int key="NSLMFlags">6</int>
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="310956344"/>
<double key="NSWidth">339</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
<int key="NSFlags">12131</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="89734044"/>
<dictionary key="NSSelectedAttributes">
<reference key="NSBackgroundColor" ref="543699763"/>
<reference key="NSColor" ref="647666086"/>
</dictionary>
<reference key="NSInsertionColor" ref="1030989473"/>
<dictionary key="NSLinkAttributes">
<reference key="NSColor" ref="896763461"/>
<reference key="NSCursor" ref="770457595"/>
<integer value="1" key="NSUnderline"/>
</dictionary>
<nil key="NSDefaultParagraphStyle"/>
<nil key="NSTextFinder"/>
<int key="NSPreferredTextFinderStyle">1</int>
</object>
<int key="NSTVFlags">6</int>
<string key="NSMaxSize">{339, 10000000}</string>
<nil key="NSDelegate"/>
</object>
</array>
<string key="NSFrame">{{1, 1}, {339, 298}}</string>
<reference key="NSSuperview" ref="760747433"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="310956344"/>
<reference key="NSDocView" ref="310956344"/>
<reference key="NSBGColor" ref="89734044"/>
<object class="NSCursor" key="NSCursor" id="460499685">
<string key="NSHotSpot">{4, 5}</string>
<object class="NSImage" key="NSImage">
<int key="NSImageFlags">12582912</int>
<array class="NSMutableArray" key="NSReps">
<array>
<integer value="0"/>
<object class="NSBitmapImageRep">
<object class="NSData" key="NSTIFFRepresentation">
<bytes key="NS.bytes">TU0AKgAAAHCAFUqgBVKsAAAAwdVQUqwaEQeIRGJRGFlYqwWLQ+JxuOQpVRmEx2RROKwOQyOUQSPyaUym
SxqWyKXyeYxyZzWbSuJTScRCbz2Nz+gRKhUOfTqeUai0OSxiWTiBQSHSGFquGwekxyAgAAAOAQAAAwAA
AAEAEAAAAQEAAwAAAAEAEAAAAQIAAwAAAAIACAAIAQMAAwAAAAEABQAAAQYAAwAAAAEAAQAAAREABAAA
AAEAAAAIARIAAwAAAAEAAQAAARUAAwAAAAEAAgAAARYAAwAAAAEAEAAAARcABAAAAAEAAABnARwAAwAA
AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</object>
</object>
</array>
</array>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MCAwAA</bytes>
</object>
</object>
</object>
<int key="NScvFlags">4</int>
</object>
<object class="NSScroller" id="718325052">
<reference key="NSNextResponder" ref="760747433"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {15, 298}}</string>
<reference key="NSSuperview" ref="760747433"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="824020125"/>
<reference key="NSTarget" ref="760747433"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
</object>
<object class="NSScroller" id="824020125">
<reference key="NSNextResponder" ref="760747433"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="760747433"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="280341911"/>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="760747433"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
<double key="NSPercent">0.94565218687057495</double>
</object>
</array>
<string key="NSFrame">{{82, 20}, {341, 300}}</string>
<reference key="NSSuperview" ref="542921733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="280341911"/>
<int key="NSsFlags">133122</int>
<reference key="NSVScroller" ref="718325052"/>
<reference key="NSHScroller" ref="824020125"/>
<reference key="NSContentView" ref="280341911"/>
</object>
<object class="NSScrollView" id="866590901">
<reference key="NSNextResponder" ref="542921733"/>
<int key="NSvFlags">272</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSClipView" id="909246413">
<reference key="NSNextResponder" ref="866590901"/>
<int key="NSvFlags">2304</int>
<array class="NSMutableArray" key="NSSubviews">
<object class="NSTextView" id="598519770">
<reference key="NSNextResponder" ref="909246413"/>
<int key="NSvFlags">2322</int>
<set class="NSMutableSet" key="NSDragTypes">
<string>Apple HTML pasteboard type</string>
<string>Apple PDF pasteboard type</string>
<string>Apple PICT pasteboard type</string>
<string>Apple PNG pasteboard type</string>
<string>Apple URL pasteboard type</string>
<string>CorePasteboardFlavorType 0x6D6F6F76</string>
<string>NSColor pasteboard type</string>
<string>NSFilenamesPboardType</string>
<string>NSStringPboardType</string>
<string>NeXT Encapsulated PostScript v1.2 pasteboard type</string>
<string>NeXT RTFD pasteboard type</string>
<string>NeXT Rich Text Format v1.0 pasteboard type</string>
<string>NeXT TIFF v4.0 pasteboard type</string>
<string>NeXT font pasteboard type</string>
<string>NeXT ruler pasteboard type</string>
<string>WebURLsWithTitlesPboardType</string>
<string>public.url</string>
</set>
<string key="NSFrameSize">{138, 298}</string>
<reference key="NSSuperview" ref="909246413"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="636540923"/>
<object class="NSTextContainer" key="NSTextContainer" id="6753358">
<object class="NSLayoutManager" key="NSLayoutManager">
<object class="NSTextStorage" key="NSTextStorage">
<object class="NSMutableString" key="NSString">
<characters key="NS.bytes">0123456789ABCDEF</characters>
</object>
<reference key="NSAttributes" ref="54573663"/>
<nil key="NSDelegate"/>
</object>
<array class="NSMutableArray" key="NSTextContainers">
<reference ref="6753358"/>
</array>
<int key="NSLMFlags">6</int>
<nil key="NSDelegate"/>
</object>
<reference key="NSTextView" ref="598519770"/>
<double key="NSWidth">138</double>
<int key="NSTCFlags">1</int>
</object>
<object class="NSTextViewSharedData" key="NSSharedData">
<int key="NSFlags">12131</int>
<int key="NSTextCheckingTypes">0</int>
<nil key="NSMarkedAttributes"/>
<reference key="NSBackgroundColor" ref="89734044"/>
<dictionary key="NSSelectedAttributes">
<reference key="NSBackgroundColor" ref="543699763"/>
<reference key="NSColor" ref="647666086"/>
</dictionary>
<reference key="NSInsertionColor" ref="1030989473"/>
<dictionary key="NSLinkAttributes">
<reference key="NSColor" ref="896763461"/>
<reference key="NSCursor" ref="770457595"/>
<integer value="1" key="NSUnderline"/>
</dictionary>
<nil key="NSDefaultParagraphStyle"/>
<nil key="NSTextFinder"/>
<int key="NSPreferredTextFinderStyle">1</int>
</object>
<int key="NSTVFlags">6</int>
<string key="NSMaxSize">{323, 10000000}</string>
<string key="NSMinize">{123, 298}</string>
<nil key="NSDelegate"/>
</object>
</array>
<string key="NSFrame">{{1, 1}, {138, 298}}</string>
<reference key="NSSuperview" ref="866590901"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="598519770"/>
<reference key="NSDocView" ref="598519770"/>
<reference key="NSBGColor" ref="89734044"/>
<reference key="NSCursor" ref="460499685"/>
<int key="NScvFlags">4</int>
</object>
<object class="NSScroller" id="462029514">
<reference key="NSNextResponder" ref="866590901"/>
<int key="NSvFlags">256</int>
<string key="NSFrame">{{124, 1}, {15, 298}}</string>
<reference key="NSSuperview" ref="866590901"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="930024921"/>
<reference key="NSTarget" ref="866590901"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
</object>
<object class="NSScroller" id="636540923">
<reference key="NSNextResponder" ref="866590901"/>
<int key="NSvFlags">-2147483392</int>
<string key="NSFrame">{{-100, -100}, {87, 18}}</string>
<reference key="NSSuperview" ref="866590901"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="909246413"/>
<int key="NSsFlags">1</int>
<reference key="NSTarget" ref="866590901"/>
<string key="NSAction">_doScroller:</string>
<double key="NSCurValue">1</double>
<double key="NSPercent">0.94565218687057495</double>
</object>
</array>
<string key="NSFrame">{{431, 20}, {140, 300}}</string>
<reference key="NSSuperview" ref="542921733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="909246413"/>
<int key="NSsFlags">133138</int>
<reference key="NSVScroller" ref="462029514"/>
<reference key="NSHScroller" ref="636540923"/>
<reference key="NSContentView" ref="909246413"/>
</object>
<object class="NSTextField" id="930024921">
<reference key="NSNextResponder" ref="542921733"/>
<int key="NSvFlags">290</int>
<string key="NSFrame">{{4, 2}, {546, 17}}</string>
<reference key="NSSuperview" ref="542921733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView"/>
<bool key="NSEnabled">YES</bool>
<object class="NSTextFieldCell" key="NSCell" id="250019369">
<int key="NSCellFlags">67239424</int>
<int key="NSCellFlags">67108864</int>
<int key="NSCellFlags2">4194304</int>
<string key="NSContents"/>
<object class="NSFont" key="NSSupport">
@ -609,24 +187,41 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">controlColor</string>
<reference key="NSColor" ref="941239175"/>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes>
</object>
</object>
<object class="NSColor" key="NSTextColor">
<int key="NSColorSpace">6</int>
<string key="NSCatalogName">System</string>
<string key="NSColorName">controlTextColor</string>
<reference key="NSColor" ref="1030989473"/>
<object class="NSColor" key="NSColor">
<int key="NSColorSpace">3</int>
<bytes key="NSWhite">MAA</bytes>
</object>
</object>
</object>
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
</object>
<object class="NSCustomView" id="215366927">
<reference key="NSNextResponder" ref="542921733"/>
<int key="NSvFlags">274</int>
<string key="NSFrameSize">{570, 319}</string>
<reference key="NSSuperview" ref="542921733"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="930024921"/>
<string key="NSReuseIdentifierKey">_NS:9</string>
<string key="NSClassName">HFTextView</string>
</object>
</array>
<string key="NSFrameSize">{570, 319}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<reference key="NSNextKeyView" ref="813846596"/>
<reference key="NSNextKeyView" ref="215366927"/>
</object>
<string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string>
<string key="NSMinSize">{226, 162}</string>
<string key="NSMinSize">{300, 162}</string>
<string key="NSMaxSize">{10000000000000, 10000000000000}</string>
<bool key="NSWindowIsRestorable">NO</bool>
</object>
@ -678,27 +273,11 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">offset</string>
<string key="label">textView</string>
<reference key="source" ref="827009667"/>
<reference key="destination" ref="706277205"/>
<reference key="destination" ref="215366927"/>
</object>
<int key="connectionID">58</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">ascii</string>
<reference key="source" ref="827009667"/>
<reference key="destination" ref="598519770"/>
</object>
<int key="connectionID">76</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">hex</string>
<reference key="source" ref="827009667"/>
<reference key="destination" ref="310956344"/>
</object>
<int key="connectionID">77</int>
<int key="connectionID">90</int>
</object>
<object class="IBConnectionRecord">
<object class="IBActionConnection" key="connection">
@ -788,14 +367,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</object>
<int key="connectionID">68</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">initialFirstResponder</string>
<reference key="source" ref="447655345"/>
<reference key="destination" ref="598519770"/>
</object>
<int key="connectionID">73</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">controller</string>
@ -804,14 +375,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</object>
<int key="connectionID">41</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">offset</string>
<reference key="source" ref="147077064"/>
<reference key="destination" ref="706277205"/>
</object>
<int key="connectionID">49</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">message</string>
@ -820,54 +383,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</object>
<int key="connectionID">52</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">hex</string>
<reference key="source" ref="147077064"/>
<reference key="destination" ref="310956344"/>
</object>
<int key="connectionID">74</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">ascii</string>
<reference key="source" ref="147077064"/>
<reference key="destination" ref="598519770"/>
</object>
<int key="connectionID">75</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="310956344"/>
<reference key="destination" ref="147077064"/>
</object>
<int key="connectionID">69</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">nextKeyView</string>
<reference key="source" ref="310956344"/>
<reference key="destination" ref="598519770"/>
</object>
<int key="connectionID">70</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">nextKeyView</string>
<reference key="source" ref="598519770"/>
<reference key="destination" ref="310956344"/>
</object>
<int key="connectionID">71</int>
</object>
<object class="IBConnectionRecord">
<object class="IBOutletConnection" key="connection">
<string key="label">delegate</string>
<reference key="source" ref="598519770"/>
<reference key="destination" ref="147077064"/>
</object>
<int key="connectionID">72</int>
</object>
</array>
<object class="IBMutableOrderedSet" key="objectRecords">
<array key="orderedObjects">
@ -978,57 +493,22 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<int key="objectID">35</int>
<reference key="object" ref="542921733"/>
<array class="NSMutableArray" key="children">
<reference ref="813846596"/>
<reference ref="760747433"/>
<reference ref="866590901"/>
<reference ref="930024921"/>
<reference ref="215366927"/>
</array>
<reference key="parent" ref="447655345"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">42</int>
<reference key="object" ref="813846596"/>
<array class="NSMutableArray" key="children">
<reference ref="706277205"/>
<reference ref="1004349541"/>
<reference ref="393811220"/>
</array>
<reference key="parent" ref="542921733"/>
<int key="objectID">39</int>
<reference key="object" ref="147077064"/>
<reference key="parent" ref="0"/>
<string key="objectName">HexEditorDelegate</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">43</int>
<reference key="object" ref="706277205"/>
<reference key="parent" ref="813846596"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">45</int>
<reference key="object" ref="760747433"/>
<array class="NSMutableArray" key="children">
<reference ref="310956344"/>
<reference ref="718325052"/>
<reference ref="824020125"/>
</array>
<reference key="parent" ref="542921733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">44</int>
<reference key="object" ref="310956344"/>
<reference key="parent" ref="760747433"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">47</int>
<reference key="object" ref="866590901"/>
<array class="NSMutableArray" key="children">
<reference ref="598519770"/>
<reference ref="462029514"/>
<reference ref="636540923"/>
</array>
<reference key="parent" ref="542921733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">46</int>
<reference key="object" ref="598519770"/>
<reference key="parent" ref="866590901"/>
<int key="objectID">-3</int>
<reference key="object" ref="745348491"/>
<reference key="parent" ref="0"/>
<string key="objectName">Application</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">48</int>
@ -1038,52 +518,15 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
</array>
<reference key="parent" ref="542921733"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">39</int>
<reference key="object" ref="147077064"/>
<reference key="parent" ref="0"/>
<string key="objectName">HexEditorDelegate</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">82</int>
<reference key="object" ref="250019369"/>
<reference key="parent" ref="930024921"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">83</int>
<reference key="object" ref="1004349541"/>
<reference key="parent" ref="813846596"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">84</int>
<reference key="object" ref="393811220"/>
<reference key="parent" ref="813846596"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">85</int>
<reference key="object" ref="718325052"/>
<reference key="parent" ref="760747433"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">86</int>
<reference key="object" ref="824020125"/>
<reference key="parent" ref="760747433"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">87</int>
<reference key="object" ref="462029514"/>
<reference key="parent" ref="866590901"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">88</int>
<reference key="object" ref="636540923"/>
<reference key="parent" ref="866590901"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">-3</int>
<reference key="object" ref="745348491"/>
<reference key="parent" ref="0"/>
<string key="objectName">Application</string>
<int key="objectID">89</int>
<reference key="object" ref="215366927"/>
<reference key="parent" ref="542921733"/>
</object>
</array>
</object>
@ -1100,14 +543,6 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="35.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="36.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="39.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="42.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="43.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="44.CustomClassName">HexTextView</string>
<string key="44.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="45.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="46.CustomClassName">AsciiTextView</string>
<string key="46.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="47.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="48.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="5.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="6.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
@ -1115,19 +550,14 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="78.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="8.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="82.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="83.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="84.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="85.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="86.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="87.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="88.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="89.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
<string key="9.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">88</int>
<int key="maxID">90</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
@ -1139,6 +569,25 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="minorKey">./Classes/AsciiTextView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">HFTextView</string>
<string key="superclassName">NSControl</string>
<object class="NSMutableDictionary" key="outlets">
<string key="NS.key.0">delegate</string>
<string key="NS.object.0">id</string>
</object>
<object class="NSMutableDictionary" key="toOneOutletInfosByName">
<string key="NS.key.0">delegate</string>
<object class="IBToOneOutletInfo" key="NS.object.0">
<string key="name">delegate</string>
<string key="candidateClassName">id</string>
</object>
</object>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/HFTextView.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">HexEditorDelegate</string>
<string key="superclassName">NSObject</string>
@ -1256,6 +705,7 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="message">NSTextField</string>
<string key="offset">NSTextView</string>
<string key="pasteSubmenu">NSMenu</string>
<string key="textView">HFTextView</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
<object class="IBToOneOutletInfo" key="ascii">
@ -1286,12 +736,57 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="name">pasteSubmenu</string>
<string key="candidateClassName">NSMenu</string>
</object>
<object class="IBToOneOutletInfo" key="textView">
<string key="name">textView</string>
<string key="candidateClassName">HFTextView</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/HexWindowController.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">NSDocument</string>
<dictionary class="NSMutableDictionary" key="actions">
<string key="printDocument:">id</string>
<string key="revertDocumentToSaved:">id</string>
<string key="runPageLayout:">id</string>
<string key="saveDocument:">id</string>
<string key="saveDocumentAs:">id</string>
<string key="saveDocumentTo:">id</string>
</dictionary>
<dictionary class="NSMutableDictionary" key="actionInfosByName">
<object class="IBActionInfo" key="printDocument:">
<string key="name">printDocument:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="revertDocumentToSaved:">
<string key="name">revertDocumentToSaved:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="runPageLayout:">
<string key="name">runPageLayout:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="saveDocument:">
<string key="name">saveDocument:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="saveDocumentAs:">
<string key="name">saveDocumentAs:</string>
<string key="candidateClassName">id</string>
</object>
<object class="IBActionInfo" key="saveDocumentTo:">
<string key="name">saveDocumentTo:</string>
<string key="candidateClassName">id</string>
</object>
</dictionary>
<object class="IBClassDescriptionSource" key="sourceIdentifier">
<string key="majorKey">IBProjectSource</string>
<string key="minorKey">./Classes/NSDocument.h</string>
</object>
</object>
<object class="IBPartialClassDescription">
<string key="className">ResourceDataSource</string>
<string key="superclassName">NSObject</string>
@ -1484,6 +979,10 @@ AAEAAQAAAT0AAwAAAAEAAgAAAVIAAwAAAAEAAQAAAVMAAwAAAAIAAQABAAAAAA</bytes>
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
<real value="1070" key="NS.object.0"/>
</object>
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults">
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string>
<real value="1070" key="NS.object.0"/>
</object>
<bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<dictionary class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes">

View File

@ -1,6 +1,7 @@
#import <Cocoa/Cocoa.h>
#import "HexEditorDelegate.h"
#import "HexTextView.h"
#import <HexFiend/HexFiend.h>
#import "ResKnifePluginProtocol.h"
#import "ResKnifeResourceProtocol.h"
@ -37,6 +38,9 @@
BOOL liveEdit;
int bytesPerRow;
NSUndoManager *undoManager;
IBOutlet HFTextView *textView;
HFController *textViewController;
}
// conform to the ResKnifePluginProtocol with the inclusion of these methods
@ -46,7 +50,7 @@
- (IBAction)showFind:(id)sender;
// save sheet methods
- (void)saveSheetDidClose:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo;
- (void)saveSheetDidClose:(NSAlert *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo;
- (IBAction)saveResource:(id)sender;
- (IBAction)revertResource:(id)sender;
@ -54,7 +58,6 @@
- (void)resourceNameDidChange:(NSNotification *)notification;
- (void)resourceDataDidChange:(NSNotification *)notification;
- (void)resourceWasSaved:(NSNotification *)notification;
- (void)refreshData:(NSData *)data;
// accessors
- (id)resource;

View File

@ -58,22 +58,8 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
- (void)windowDidLoad
{
[super windowDidLoad];
{
// set up tab, shift-tab and enter behaviour (cannot set these in IB at the moment)
[hex setFieldEditor:YES];
[ascii setFieldEditor:YES];
[offset setDrawsBackground:NO];
[[offset enclosingScrollView] setDrawsBackground:NO];
// from HexEditorDelegate, here until bug is fixed
[[NSNotificationCenter defaultCenter] addObserver:hexDelegate selector:@selector(viewDidScroll:) name:NSViewBoundsDidChangeNotification object:[[offset enclosingScrollView] contentView]];
[[NSNotificationCenter defaultCenter] addObserver:hexDelegate selector:@selector(viewDidScroll:) name:NSViewBoundsDidChangeNotification object:[[hex enclosingScrollView] contentView]];
[[NSNotificationCenter defaultCenter] addObserver:hexDelegate selector:@selector(viewDidScroll:) name:NSViewBoundsDidChangeNotification object:[[ascii enclosingScrollView] contentView]];
}
// insert the resources' data into the text fields
[self refreshData:[resource data]];
[[self window] setResizeIncrements:NSMakeSize(kWindowStepWidthPerChar * kWindowStepCharsPerStep, 1)];
// min 346, step 224, norm 570, step 224, max 794
@ -82,10 +68,23 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resourceDataDidChange:) name:ResourceDataDidChangeNotification object:resource];
if(liveEdit) [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resourceWasSaved:) name:ResourceDataDidChangeNotification object:resource];
else [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resourceWasSaved:) name:ResourceDataDidChangeNotification object:backup];
HFLineCountingRepresenter *lineCountingRepresenter = [[[HFLineCountingRepresenter alloc] init] autorelease];
HFStatusBarRepresenter *statusBarRepresenter = [[[HFStatusBarRepresenter alloc] init] autorelease];
[[textView layoutRepresenter] addRepresenter:lineCountingRepresenter];
[[textView layoutRepresenter] addRepresenter:statusBarRepresenter];
[[textView controller] setFont:[NSFont userFixedPitchFontOfSize:10.0]];
[[textView controller] addRepresenter:lineCountingRepresenter];
[[textView controller] addRepresenter:statusBarRepresenter];
[textView bind:@"data" toObject:self withKeyPath:@"data" options:nil];
[lineCountingRepresenter cycleLineNumberFormat];
// finally, set the window title & show the window
[[self window] setTitle:[resource defaultWindowTitle]];
[self showWindow:self];
[[textView layoutRepresenter] performLayout];
}
- (NSString *)windowTitleForDocumentDisplayName:(NSString *)displayName
@ -149,26 +148,37 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
{
if([[self window] isDocumentEdited])
{
NSBeginAlertSheet(@"Do you want to keep the changes you made to this resource?", @"Keep", @"Don't Keep", @"Cancel", sender, self, @selector(saveSheetDidClose:returnCode:contextInfo:), nil, nil, @"Your changes cannot be saved later if you don't keep them.");
NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSAlert *alert = [[NSAlert alloc] init];
[alert setMessageText:NSLocalizedStringFromTableInBundle(@"KeepChangesDialogTitle", nil, bundle, nil)];
[alert setInformativeText:NSLocalizedStringFromTableInBundle(@"KeepChangesDialogMessage", nil, bundle, nil)];
[alert addButtonWithTitle:NSLocalizedStringFromTableInBundle(@"KeepChangesButton", nil, bundle, nil)];
[alert addButtonWithTitle:NSLocalizedStringFromTableInBundle(@"CancelButton", nil, bundle, nil)];
NSButton *button = [alert addButtonWithTitle:NSLocalizedStringFromTableInBundle(@"DiscardChangesButton", nil, bundle, nil)];
[button setKeyEquivalent:@"d"];
[button setKeyEquivalentModifierMask:NSCommandKeyMask];
[alert beginSheetModalForWindow:sender modalDelegate:self didEndSelector:@selector(saveSheetDidClose:returnCode:contextInfo:) contextInfo:NULL];
//[alert release];
return NO;
}
else return YES;
}
- (void)saveSheetDidClose:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo
- (void)saveSheetDidClose:(NSAlert *)sheet returnCode:(NSInteger)returnCode contextInfo:(void *)contextInfo
{
switch(returnCode)
{
case NSAlertDefaultReturn: // keep
case NSAlertFirstButtonReturn: // keep
[self saveResource:nil];
[[self window] close];
break;
case NSAlertAlternateReturn: // don't keep
[[self window] close];
case NSAlertSecondButtonReturn: // cancel
break;
case NSAlertOtherReturn: // cancel
case NSAlertThirdButtonReturn: // don't keep
[[sheet window] orderOut:nil];
[[self window] close];
break;
}
}
@ -202,7 +212,6 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
// bug: if liveEdit is false and another editor changes backup, if we are dirty we need to ask the user whether to accept the changes from the other editor and discard our changes, or vice versa.
if([notification object] == (id)resource)
{
[self refreshData:[resource data]];
[self setDocumentEdited:YES];
}
}
@ -222,44 +231,6 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
}
}
- (void)refreshData:(NSData *)data;
{
// save selections
NSRange hexSelection = [hex selectedRange];
NSRange asciiSelection = [ascii selectedRange];
// clear delegates (see HexEditorDelegate class for explanation of why)
id oldDelegate = [hex delegate];
[hex setDelegate:nil];
[ascii setDelegate:nil];
// prepare attributes dictionary
NSMutableParagraphStyle *paragraph = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];
[paragraph setLineBreakMode:NSLineBreakByCharWrapping];
NSDictionary *dictionary = [NSDictionary dictionaryWithObject:paragraph forKey:NSParagraphStyleAttributeName];
[paragraph release];
// do stuff with data
[offset setString:[hexDelegate offsetRepresentation:data]];
if([data length] > 0)
[hex setString:[[data hexRepresentation] stringByAppendingString:@" "]];
else [hex setString:[data hexRepresentation]];
[ascii setString:[data asciiRepresentation]];
// apply attributes
[[offset textStorage] addAttributes:dictionary range:NSMakeRange(0, [[offset textStorage] length])];
[[hex textStorage] addAttributes:dictionary range:NSMakeRange(0, [[hex textStorage] length])];
[[ascii textStorage] addAttributes:dictionary range:NSMakeRange(0, [[ascii textStorage] length])];
// restore selections (this is the dumbest way to do it, but it'll do for now)
[hex setSelectedRange:NSIntersectionRange(hexSelection, [hex selectedRange])];
[ascii setSelectedRange:NSIntersectionRange(asciiSelection, [ascii selectedRange])];
// restore delegates
[hex setDelegate:oldDelegate];
[ascii setDelegate:oldDelegate];
}
- (id)resource
{
return resource;
@ -270,6 +241,10 @@ OSStatus Plug_InitInstance(Plug_PlugInRef plug, Plug_ResourceRef resource)
return [resource data];
}
- (void)setData:(NSData *)data {
[resource setData:data];
}
- (int)bytesPerRow
{
return bytesPerRow;