mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-09-10 12:47:13 +00:00
Merge branch 'refs/heads/master' into slevenbits
This commit is contained in:
+38
-2
@@ -27,6 +27,7 @@
|
||||
@import "CGColor.j"
|
||||
@import "CGColorSpace.j"
|
||||
@import "CGGradient.j"
|
||||
@import "CPBezierPath.j"
|
||||
@import "CPGraphicsContext.j"
|
||||
|
||||
CPGradientDrawsBeforeStartingLocation = kCGGradientDrawsBeforeStartLocation;
|
||||
@@ -40,6 +41,11 @@ CPGradientDrawsAfterEndingLocation = kCGGradientDrawsAfterEndLocation;
|
||||
CGGradient _gradient;
|
||||
}
|
||||
|
||||
- (id)initWithStartingColor:(CPColor)startingColor endingColor:(CPColor)endingColor
|
||||
{
|
||||
return [self initWithColors:[startingColor, endingColor]];
|
||||
}
|
||||
|
||||
- (id)initWithColors:(CPArray)someColors
|
||||
{
|
||||
var count = [someColors count];
|
||||
@@ -83,7 +89,19 @@ CPGradientDrawsAfterEndingLocation = kCGGradientDrawsAfterEndLocation;
|
||||
CGContextClipToRect(ctx, rect);
|
||||
CGContextAddRect(ctx, rect);
|
||||
|
||||
var startPoint,
|
||||
[self _drawAtAngle:angle];
|
||||
|
||||
CGContextRestoreGState(ctx);
|
||||
}
|
||||
|
||||
/*!
|
||||
@ignore like draw in rect but apply no clipping.
|
||||
*/
|
||||
- (void)_drawInRect:(CGRect)rect atAngle:(float)angle
|
||||
{
|
||||
var ctx = [[CPGraphicsContext currentContext] graphicsPort],
|
||||
|
||||
startPoint,
|
||||
endPoint;
|
||||
|
||||
// Modulo of negative values doesn't work as expected in JS.
|
||||
@@ -117,7 +135,25 @@ CPGradientDrawsAfterEndingLocation = kCGGradientDrawsAfterEndLocation;
|
||||
startPoint.y + length * SIN(radians));
|
||||
|
||||
[self drawFromPoint:startPoint toPoint:endPoint options:CPGradientDrawsBeforeStartingLocation | CPGradientDrawsAfterEndingLocation];
|
||||
CGContextRestoreGState(ctx);
|
||||
}
|
||||
|
||||
- (void)drawInBezierPath:(CPBezierPath)aPath angle:(float)anAngle
|
||||
{
|
||||
[CPGraphicsContext saveGraphicsState];
|
||||
|
||||
var ctx = [[CPGraphicsContext currentContext] graphicsPort];
|
||||
|
||||
// Nail down the path which CGContextDrawLinearGradient will cause to be filled.
|
||||
// Note we don't do this by clipping to the path and then calling drawInRect:atAngle:
|
||||
// as this would cut off any antialias of the drawing, plus any active context shadow.
|
||||
CGContextBeginPath(ctx);
|
||||
CGContextAddPath(ctx, aPath._path);
|
||||
CGContextSetLineWidth(ctx, [aPath lineWidth]);
|
||||
CGContextClosePath(ctx);
|
||||
|
||||
[self _drawInRect:[aPath bounds] atAngle:anAngle];
|
||||
|
||||
[CPGraphicsContext restoreGraphicsState];
|
||||
}
|
||||
|
||||
- (void)drawFromPoint:(NSPoint)startingPoint toPoint:(NSPoint)endingPoint options:(NSGradientDrawingOptions)options
|
||||
|
||||
@@ -223,7 +223,7 @@ var _CPMenuBarVisible = NO,
|
||||
- (float)menuBarHeight
|
||||
{
|
||||
if (self === [CPApp mainMenu])
|
||||
return [[CPTheme defaultTheme] valueForAttributeWithName:@"menu-bar-height" forClass:_CPMenuView];
|
||||
return [CPMenu menuBarHeight];
|
||||
|
||||
return 0.0;
|
||||
}
|
||||
|
||||
+7
-28
@@ -31,11 +31,9 @@
|
||||
*/
|
||||
@implementation CPShadow : CPObject
|
||||
{
|
||||
CGSize _offset;
|
||||
float _blurRadius;
|
||||
CPColor _color;
|
||||
|
||||
CPString _cssString;
|
||||
CGSize _offset @accessors(property=shadowOffset);
|
||||
float _blurRadius @accessors(property=shadowBlurRadius);
|
||||
CPColor _color @accessors(property=shadowColor);
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -60,35 +58,16 @@
|
||||
_offset = anOffset;
|
||||
_blurRadius = aBlurRadius;
|
||||
_color = aColor;
|
||||
|
||||
_cssString = [_color cssString] + " " + ROUND(anOffset.width) + @"px " + ROUND(anOffset.height) + @"px " + ROUND(_blurRadius) + @"px";
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the shadow's offset.
|
||||
*/
|
||||
- (CGSize)shadowOffset
|
||||
- (void)set
|
||||
{
|
||||
return _offset;
|
||||
}
|
||||
var context = [[CPGraphicsContext currentContext] graphicsPort];
|
||||
|
||||
/*!
|
||||
Returns the shadow's blur radius
|
||||
*/
|
||||
- (float)shadowBlurRadius
|
||||
{
|
||||
return _blurRadius;
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns the shadow's color.
|
||||
*/
|
||||
- (CPColor)shadowColor
|
||||
{
|
||||
return _color;
|
||||
CGContextSetShadowWithColor(context, _offset, _blurRadius, _color);
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -96,7 +75,7 @@
|
||||
*/
|
||||
- (CPString)cssString
|
||||
{
|
||||
return _cssString;
|
||||
return [_color cssString] + " " + ROUND(_offset.width) + @"px " + ROUND(_offset.height) + @"px " + ROUND(_blurRadius) + @"px";
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@@ -309,11 +309,13 @@
|
||||
|
||||
// resize the window
|
||||
var theWindow = [self window],
|
||||
frame = [theWindow frame];
|
||||
frame = [theWindow frame],
|
||||
dy;
|
||||
|
||||
var dy = _CGRectGetHeight([_headView frame]) + _CGRectGetHeight([_dividerView frame]);
|
||||
if (enable)
|
||||
dy = -dy;
|
||||
dy = -(_CGRectGetHeight([_headView frame]) + _CGRectGetHeight([_dividerView frame]));
|
||||
else
|
||||
dy = [self toolbarMaxY] + 1.0;
|
||||
|
||||
var newHeight = _CGRectGetMaxY(frame) + dy,
|
||||
newWidth = _CGRectGetMaxX(frame);
|
||||
@@ -321,9 +323,11 @@
|
||||
frame.size.height += dy;
|
||||
|
||||
[self setFrameSize:_CGSizeMake(newWidth, newHeight)];
|
||||
|
||||
[self tile];
|
||||
[theWindow setFrame:frame display:NO animate:NO];
|
||||
|
||||
[self setNeedsLayout];
|
||||
}
|
||||
|
||||
- (void)layoutSubviews
|
||||
@@ -335,22 +339,6 @@
|
||||
|
||||
[_minimizeButton setImage:[self valueForThemeAttribute:@"minimize-image-button"]];
|
||||
[_minimizeButton setAlternateImage:[self valueForThemeAttribute:@"minimize-image-highlighted-button"]];
|
||||
|
||||
if (![_headView isHidden])
|
||||
[_headView setFrame:CGRectMake(0.0, 0.0, CGRectGetWidth(bounds), [self toolbarMaxY])];
|
||||
else
|
||||
[_headView setFrame:CGRectMake(0.0, 0.0, CGRectGetWidth(bounds), 0)];
|
||||
|
||||
if (![_dividerView isHidden])
|
||||
[_dividerView setFrame:CGRectMake(0.0, CGRectGetMaxY([_headView frame]), CGRectGetWidth(bounds), 1.0)];
|
||||
else
|
||||
[_dividerView setFrame:CGRectMake(0.0, CGRectGetMaxY([_headView frame]), CGRectGetWidth(bounds), 0.0)];
|
||||
|
||||
[_dividerView setBackgroundColor:[self valueForThemeAttribute:@"divider-color"]];
|
||||
|
||||
var y = CGRectGetMaxY([_dividerView frame]);
|
||||
|
||||
[_bodyView setFrame:CGRectMake(0.0, y, CGRectGetWidth(bounds), CGRectGetHeight(bounds) - y)];
|
||||
[_bodyView setBackgroundColor:[self valueForThemeAttribute:@"body-color"]];
|
||||
|
||||
[_headView setNeedsLayout];
|
||||
|
||||
@@ -1869,7 +1869,8 @@ var themedButtonValues = nil,
|
||||
{
|
||||
positions: "full",
|
||||
width: 5.0,
|
||||
height: 1.0
|
||||
height: 1.0,
|
||||
bottomHeight:5.0
|
||||
}),
|
||||
|
||||
closeButtonImage = PatternImage(@"window-standard-close-button.png", 16, 16),
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
@import <Foundation/CPObject.j>
|
||||
|
||||
@import "CPButton.j"
|
||||
@import "CPMenu.j"
|
||||
@import "CPPanel.j"
|
||||
|
||||
// Use forward declaration because this file is imported by CPPopover
|
||||
@@ -189,7 +190,8 @@ var _CPPopoverWindow_shouldClose_ = 1 << 0,
|
||||
originRight = _CGPointCreateCopy(platformOrigin),
|
||||
originTop = _CGPointCreateCopy(platformOrigin),
|
||||
originBottom = _CGPointCreateCopy(platformOrigin),
|
||||
frameSize = [self frame].size;
|
||||
frameSize = [self frame].size,
|
||||
menuBarHeight = [CPMenu menuBarVisible] ? [CPMenu menuBarHeight] : 0;
|
||||
|
||||
// CPMaxXEdge
|
||||
originRight.x += platformRect.size.width;
|
||||
@@ -215,12 +217,15 @@ var _CPPopoverWindow_shouldClose_ = 1 << 0,
|
||||
case CPMaxXEdge:
|
||||
requestedOrigin = originRight;
|
||||
break;
|
||||
|
||||
case CPMinXEdge:
|
||||
requestedOrigin = originLeft;
|
||||
break;
|
||||
|
||||
case CPMinYEdge:
|
||||
requestedOrigin = originTop;
|
||||
break;
|
||||
|
||||
case CPMaxYEdge:
|
||||
requestedOrigin = originBottom;
|
||||
break;
|
||||
@@ -252,8 +257,8 @@ var _CPPopoverWindow_shouldClose_ = 1 << 0,
|
||||
|
||||
if (origin.y < 0)
|
||||
{
|
||||
[_windowView setArrowOffsetY:origin.y];
|
||||
origin.y = 0;
|
||||
[_windowView setArrowOffsetY:origin.y - menuBarHeight];
|
||||
origin.y = menuBarHeight;
|
||||
}
|
||||
|
||||
if (origin.y + frameSize.height > nativeRect.size.height)
|
||||
|
||||
@@ -120,6 +120,29 @@ var concat = Array.prototype.concat,
|
||||
return self[anIndex];
|
||||
}
|
||||
|
||||
- (CPArray)objectsAtIndexes:(CPIndexSet)indexes
|
||||
{
|
||||
if ([indexes lastIndex] >= self.length)
|
||||
[CPException raise:CPRangeException reason:_cmd + " indexes out of bounds"];
|
||||
|
||||
var ranges = indexes._ranges,
|
||||
count = ranges.length,
|
||||
result = [],
|
||||
i = 0;
|
||||
|
||||
for (; i < count; i++)
|
||||
{
|
||||
var range = ranges[i],
|
||||
loc = range.location,
|
||||
len = range.length,
|
||||
subArray = self.slice(loc, loc + len);
|
||||
|
||||
result.splice.apply(result, [result.length, 0].concat(subArray));
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
- (CPUInteger)indexOfObject:(id)anObject inRange:(CPRange)aRange
|
||||
{
|
||||
// Only use isEqual: if our object is a CPObject.
|
||||
|
||||
@@ -190,13 +190,18 @@
|
||||
if (self === anObject)
|
||||
return YES;
|
||||
|
||||
if (self.isa !== anObject.isa || _value !== [anObject evaluateObject:nil])
|
||||
if (self.isa !== anObject.isa || _value !== [anObject evaluateWithObject:nil])
|
||||
return NO;
|
||||
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (BOOL)evaluateObject:(id)object
|
||||
- (BOOL)evaluateWithObject:(id)object
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
|
||||
- (BOOL)evaluateWithObject:(id)object substitutionVariables:(CPDictionary)variables
|
||||
{
|
||||
return _value;
|
||||
}
|
||||
|
||||
@@ -212,6 +212,54 @@ var ELEMENTS = 100,
|
||||
}
|
||||
}
|
||||
|
||||
- (void)testObjectsAtIndexesSpeed
|
||||
{
|
||||
var SIZE = 1000,
|
||||
c = SIZE,
|
||||
r = rr = REPEATS = 100,
|
||||
location = 0,
|
||||
array = [CPArray array],
|
||||
indexes = [CPIndexSet indexSet];
|
||||
|
||||
while (c--)
|
||||
array.push(""+c);
|
||||
|
||||
while (location < SIZE - 10)
|
||||
{
|
||||
var rangeLength = ROUND(10 * RAND());
|
||||
[indexes addIndexesInRange:CPMakeRange(location, rangeLength)];
|
||||
|
||||
location += rangeLength + ROUND(10 * RAND());
|
||||
}
|
||||
|
||||
var d = new Date(),
|
||||
test1,
|
||||
test2;
|
||||
while (r--)
|
||||
test1 = [array _previous_objectsAtIndexes:indexes];
|
||||
var dd = new Date();
|
||||
|
||||
while (rr--)
|
||||
test2 = [array objectsAtIndexes:indexes];
|
||||
var ddd = new Date();
|
||||
|
||||
CPLog.warn("\n_CPJavaScriptArray -objectsAtIndexes:");
|
||||
CPLog.warn(" CPArray -objectsAtIndexes: " + (dd - d) + "ms.");
|
||||
CPLog.warn("_CPJavaScriptArray -objectsAtIndexes: " + (ddd - dd) + "ms.");
|
||||
|
||||
if (![test1 isEqual:test2])
|
||||
[self fail:"_CPJavaScriptArray -objectsAtIndexes: returns an wrong value"];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation _CPJavaScriptArray (ObjectsAtIndexes)
|
||||
|
||||
- (CPArray)_previous_objectsAtIndexes:(CPIndexSet)indexes
|
||||
{
|
||||
return [super objectsAtIndexes:indexes];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation CPArray (NativeSort)
|
||||
|
||||
@@ -450,6 +450,23 @@
|
||||
[self assertTrue:([filtered count] == 2) message:@"Count should be 2 and is " + [filtered count]];
|
||||
}
|
||||
|
||||
- (void)testTruepredicate
|
||||
{
|
||||
var data = [1, 2, 3],
|
||||
result;
|
||||
|
||||
var tpred = [CPPredicate predicateWithFormat:@"TRUEPREDICATE"];
|
||||
var ctpred = [CPCompoundPredicate andPredicateWithSubpredicates:[tpred]];
|
||||
|
||||
// fails if evaluateWithObject: isn't implemented in CPPredicate_BOOL
|
||||
result = [tpred evaluateWithObject:"gazonk"];
|
||||
[self assertTrue:result message:"'" + [tpred description] + "' should evaluate to true"];
|
||||
|
||||
// fails if evaluateWithObject:substitutionVariables: isn't implemented in CPPredicate_BOOL
|
||||
result = [data filteredArrayUsingPredicate:ctpred];
|
||||
[self assertTrue:[result isEqual:data] message:"[1, 2, 3] filtered with '" + [ctpred description] + "' should return [1, 2, 3]"];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation CPObject (PredicateTesting)
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
@@ -39,6 +39,7 @@
|
||||
IBOutlet TNXCodeCapp *xcc;
|
||||
IBOutlet NSWindow *windowDebug;
|
||||
IBOutlet NSMenuItem *menuDebug;
|
||||
IBOutlet NSMenuItem *menuHistory;
|
||||
IBOutlet TNErrorDataView *dataViewError;
|
||||
|
||||
NSImage *_iconActive;
|
||||
@@ -58,6 +59,7 @@
|
||||
- (void)registerDefaults;
|
||||
- (void)growlWithTitle:(NSString *)aTitle message:(NSString *)aMessage;
|
||||
- (void)openCenteredWindow:(NSWindow *)aWindow;
|
||||
- (void)_prepareHistoryMenu;
|
||||
|
||||
- (IBAction)chooseFolder:(id)aSender;
|
||||
- (IBAction)openErrors:(id)sender;
|
||||
@@ -67,6 +69,8 @@
|
||||
- (IBAction)openHelp:(id)aSender;
|
||||
- (IBAction)openAbout:(id)aSender;
|
||||
- (IBAction)updatePreferences:(id)aSender;
|
||||
- (IBAction)switchProject:(id)aSender;
|
||||
- (IBAction)clearProjectHistory:(id)aSender;
|
||||
|
||||
@end
|
||||
|
||||
|
||||
@@ -93,15 +93,17 @@ float heightForStringDrawing(NSString *myString, NSFont *myFont, float myWidth)
|
||||
}
|
||||
|
||||
[xcc setDelegate:self];
|
||||
|
||||
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(XCodeCappConversionDidStart:) name:XCCConversionStartNotification object:xcc];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(XCodeCappConversionDidStop:) name:XCCConversionStopNotification object:xcc];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(XCodeCappPopulateProject:) name:XCCDidPopulateProjectNotification object:xcc];
|
||||
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(XCodeCappListeningDidStart:) name:XCCListeningStartNotification object:xcc];
|
||||
|
||||
|
||||
[helpTextView setTextContainerInset:NSSizeFromCGSize(CGSizeMake(10.0, 10.0))];
|
||||
|
||||
|
||||
[xcc start];
|
||||
|
||||
[self _prepareHistoryMenu];
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -133,6 +135,7 @@ float heightForStringDrawing(NSString *myString, NSFont *myFont, float myWidth)
|
||||
[appDefaults setObject:[NSNumber numberWithInt:0] forKey:@"XCCAPIMode"];
|
||||
[appDefaults setObject:[NSNumber numberWithInt:1] forKey:@"XCCReactMode"];
|
||||
[appDefaults setObject:[NSNumber numberWithInt:1] forKey:@"XCCReopenLastProject"];
|
||||
[appDefaults setObject:[[NSArray alloc] init] forKey:@"XCCProjectHistory"];
|
||||
|
||||
[defaults registerDefaults:appDefaults];
|
||||
}
|
||||
@@ -215,6 +218,33 @@ float heightForStringDrawing(NSString *myString, NSFont *myFont, float myWidth)
|
||||
clickContext:nil];
|
||||
}
|
||||
|
||||
/*!
|
||||
Prepare the history menu
|
||||
*/
|
||||
- (void)_prepareHistoryMenu
|
||||
{
|
||||
NSMenu *menu = [[NSMenu alloc] init];
|
||||
NSArray *projectHistory = [[NSUserDefaults standardUserDefaults] objectForKey:@"XCCProjectHistory"];
|
||||
|
||||
for(int i = 0; i < [projectHistory count]; i++)
|
||||
{
|
||||
NSString *itemTitle = [[projectHistory objectAtIndex:i] lastPathComponent];
|
||||
NSString *projectPath = [[projectHistory objectAtIndex:i] stringByStandardizingPath];
|
||||
NSString *currentProjectPath = [[[xcc currentProjectURL] path] stringByStandardizingPath];
|
||||
NSMenuItem *item = [menu addItemWithTitle:itemTitle action:@selector(switchProject:) keyEquivalent:@""];
|
||||
|
||||
[item setRepresentedObject:projectPath];
|
||||
|
||||
if ([currentProjectPath isEqualToString:projectPath])
|
||||
[item setAction:nil];
|
||||
}
|
||||
|
||||
[menu addItem:[NSMenuItem separatorItem]];
|
||||
[menu addItemWithTitle:@"Clear history" action:@selector(clearProjectHistory:) keyEquivalent:@""];
|
||||
|
||||
[menuHistory setEnabled:([projectHistory count]) ? YES : NO];
|
||||
[menuHistory setSubmenu:menu];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark -
|
||||
@@ -250,7 +280,19 @@ float heightForStringDrawing(NSString *myString, NSFont *myFont, float myWidth)
|
||||
if ([openPanel runModal] != NSFileHandlingPanelOKButton)
|
||||
return;
|
||||
|
||||
[xcc listenProjectAtPath:[NSString stringWithFormat:@"%@/", [[[openPanel URLs] objectAtIndex:0] path]]];
|
||||
NSString *projectPath = [NSString stringWithFormat:@"%@/", [[[openPanel URLs] objectAtIndex:0] path]];
|
||||
NSMutableArray *projectHistory = [NSMutableArray arrayWithArray:[[NSUserDefaults standardUserDefaults] objectForKey:@"XCCProjectHistory"]];
|
||||
|
||||
if ([projectHistory containsObject:[projectPath stringByStandardizingPath]])
|
||||
[projectHistory removeObject:[projectPath stringByStandardizingPath]];
|
||||
|
||||
[projectHistory insertObject:[projectPath stringByStandardizingPath] atIndex:0];
|
||||
|
||||
[[NSUserDefaults standardUserDefaults] setObject:projectHistory forKey:@"XCCProjectHistory"];
|
||||
|
||||
[xcc listenProjectAtPath:projectPath];
|
||||
|
||||
[self _prepareHistoryMenu];
|
||||
}
|
||||
|
||||
/*!
|
||||
@@ -268,6 +310,21 @@ float heightForStringDrawing(NSString *myString, NSFont *myFont, float myWidth)
|
||||
[[NSUserDefaults standardUserDefaults] removeObjectForKey:@"LastOpenedPath"];
|
||||
}
|
||||
|
||||
- (IBAction)switchProject:(id)aSender
|
||||
{
|
||||
NSString *newPath = [aSender representedObject];
|
||||
|
||||
[self stopListener:aSender];
|
||||
[xcc listenProjectAtPath:newPath];
|
||||
[self _prepareHistoryMenu];
|
||||
}
|
||||
|
||||
- (IBAction)clearProjectHistory:(id)aSender
|
||||
{
|
||||
[[NSUserDefaults standardUserDefaults] setObject:[NSArray array] forKey:@"XCCProjectHistory"];
|
||||
[self _prepareHistoryMenu];
|
||||
}
|
||||
|
||||
/*!
|
||||
Open the xCode support project in xCode
|
||||
@param aSender the sender of the action
|
||||
|
||||
+49
-207
@@ -2,13 +2,13 @@
|
||||
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="8.00">
|
||||
<data>
|
||||
<int key="IBDocument.SystemTarget">1050</int>
|
||||
<string key="IBDocument.SystemVersion">12D54</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">2844</string>
|
||||
<string key="IBDocument.SystemVersion">12D61</string>
|
||||
<string key="IBDocument.InterfaceBuilderVersion">3084</string>
|
||||
<string key="IBDocument.AppKitVersion">1187.37</string>
|
||||
<string key="IBDocument.HIToolboxVersion">626.00</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginVersions">
|
||||
<string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="NS.object.0">2844</string>
|
||||
<string key="NS.object.0">3084</string>
|
||||
</object>
|
||||
<array key="IBDocument.IntegratedClassDependencies">
|
||||
<string>NSButton</string>
|
||||
@@ -60,7 +60,7 @@
|
||||
<nil key="NSViewClass"/>
|
||||
<nil key="NSUserInterfaceItemIdentifier"/>
|
||||
<object class="NSView" key="NSWindowView" id="524832152">
|
||||
<nil key="NSNextResponder"/>
|
||||
<reference key="NSNextResponder"/>
|
||||
<int key="NSvFlags">256</int>
|
||||
<array class="NSMutableArray" key="NSSubviews">
|
||||
<object class="NSTextField" id="135374801">
|
||||
@@ -117,6 +117,7 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
</object>
|
||||
</array>
|
||||
<string key="NSFrameSize">{375, 153}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSNextKeyView" ref="135374801"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
|
||||
@@ -166,6 +167,24 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<reference key="NSOnImage" ref="451435966"/>
|
||||
<reference key="NSMixedImage" ref="521607813"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="602162139">
|
||||
<reference key="NSMenu" ref="293792969"/>
|
||||
<string key="NSTitle">Open Recent</string>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="451435966"/>
|
||||
<reference key="NSMixedImage" ref="521607813"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="109499447">
|
||||
<reference key="NSMenu" ref="293792969"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
<string key="NSTitle"/>
|
||||
<string key="NSKeyEquiv"/>
|
||||
<int key="NSMnemonicLoc">2147483647</int>
|
||||
<reference key="NSOnImage" ref="451435966"/>
|
||||
<reference key="NSMixedImage" ref="521607813"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="8232279">
|
||||
<reference key="NSMenu" ref="293792969"/>
|
||||
<string key="NSTitle">About...</string>
|
||||
@@ -182,7 +201,7 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<reference key="NSOnImage" ref="451435966"/>
|
||||
<reference key="NSMixedImage" ref="521607813"/>
|
||||
</object>
|
||||
<object class="NSMenuItem" id="109499447">
|
||||
<object class="NSMenuItem" id="329844908">
|
||||
<reference key="NSMenu" ref="293792969"/>
|
||||
<bool key="NSIsDisabled">YES</bool>
|
||||
<bool key="NSIsSeparator">YES</bool>
|
||||
@@ -228,7 +247,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<int key="NSvFlags">256</int>
|
||||
<string key="NSFrameSize">{512, 249}</string>
|
||||
<reference key="NSSuperview" ref="493529786"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="185808728"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
@@ -313,7 +331,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
</array>
|
||||
<string key="NSFrame">{{1, 1}, {512, 249}}</string>
|
||||
<reference key="NSSuperview" ref="351336909"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="578469478"/>
|
||||
<reference key="NSDocView" ref="578469478"/>
|
||||
<reference key="NSBGColor" ref="254108606"/>
|
||||
@@ -324,7 +341,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{413, 17}, {15, 166}}</string>
|
||||
<reference key="NSSuperview" ref="351336909"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="169310253"/>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
<reference key="NSTarget" ref="351336909"/>
|
||||
@@ -336,7 +352,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<int key="NSvFlags">-2147483392</int>
|
||||
<string key="NSFrame">{{1, 183}, {427, 15}}</string>
|
||||
<reference key="NSSuperview" ref="351336909"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="437791480"/>
|
||||
<bool key="NSAllowsLogicalLayoutDirection">NO</bool>
|
||||
<int key="NSsFlags">1</int>
|
||||
@@ -347,7 +362,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
</array>
|
||||
<string key="NSFrame">{{-1, 35}, {514, 251}}</string>
|
||||
<reference key="NSSuperview" ref="166068453"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="493529786"/>
|
||||
<int key="NSsFlags">133682</int>
|
||||
<reference key="NSVScroller" ref="185808728"/>
|
||||
@@ -363,7 +377,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<int key="NSvFlags">289</int>
|
||||
<string key="NSFrame">{{314, 8}, {85, 19}}</string>
|
||||
<reference key="NSSuperview" ref="166068453"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="873219284"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="302978101">
|
||||
@@ -390,8 +403,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
<int key="NSvFlags">289</int>
|
||||
<string key="NSFrame">{{407, 8}, {85, 19}}</string>
|
||||
<reference key="NSSuperview" ref="166068453"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="566868790">
|
||||
<int key="NSCellFlags">-2080374784</int>
|
||||
@@ -411,7 +422,6 @@ YWppdGFAYXBhcmFqaXRhLmNvbQ</string>
|
||||
</array>
|
||||
<string key="NSFrameSize">{512, 285}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="351336909"/>
|
||||
</object>
|
||||
<string key="NSScreenRect">{{0, 0}, {1440, 878}}</string>
|
||||
@@ -860,8 +870,6 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<int key="NSvFlags">297</int>
|
||||
<string key="NSFrame">{{182, 19}, {18, 19}}</string>
|
||||
<reference key="NSSuperview" ref="765897076"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSButtonCell" key="NSCell" id="16212794">
|
||||
<int key="NSCellFlags">-2080374784</int>
|
||||
@@ -887,7 +895,6 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<int key="NSvFlags">274</int>
|
||||
<string key="NSFrame">{{7, 9}, {170, 18}}</string>
|
||||
<reference key="NSSuperview" ref="765897076"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1003500738"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="24981968">
|
||||
@@ -906,7 +913,6 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<int key="NSvFlags">266</int>
|
||||
<string key="NSFrame">{{7, 30}, {170, 17}}</string>
|
||||
<reference key="NSSuperview" ref="765897076"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="284994474"/>
|
||||
<bool key="NSEnabled">YES</bool>
|
||||
<object class="NSTextFieldCell" key="NSCell" id="1045170492">
|
||||
@@ -930,7 +936,6 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
</array>
|
||||
<string key="NSFrameSize">{209, 57}</string>
|
||||
<reference key="NSSuperview"/>
|
||||
<reference key="NSWindow"/>
|
||||
<reference key="NSNextKeyView" ref="1060533501"/>
|
||||
<string key="NSClassName">TNErrorDataView</string>
|
||||
</object>
|
||||
@@ -1153,6 +1158,14 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
</object>
|
||||
<int key="connectionID">682</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBOutletConnection" key="connection">
|
||||
<string key="label">menuHistory</string>
|
||||
<reference key="source" ref="138157001"/>
|
||||
<reference key="destination" ref="602162139"/>
|
||||
</object>
|
||||
<int key="connectionID">694</int>
|
||||
</object>
|
||||
<object class="IBConnectionRecord">
|
||||
<object class="IBActionConnection" key="connection">
|
||||
<string key="label">performClose:</string>
|
||||
@@ -1427,8 +1440,10 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<reference ref="806558167"/>
|
||||
<reference ref="931008714"/>
|
||||
<reference ref="1053204856"/>
|
||||
<reference ref="109499447"/>
|
||||
<reference ref="8232279"/>
|
||||
<reference ref="329844908"/>
|
||||
<reference ref="109499447"/>
|
||||
<reference ref="602162139"/>
|
||||
</array>
|
||||
<reference key="parent" ref="0"/>
|
||||
</object>
|
||||
@@ -1844,6 +1859,16 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<reference key="object" ref="16212794"/>
|
||||
<reference key="parent" ref="1003500738"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">691</int>
|
||||
<reference key="object" ref="329844908"/>
|
||||
<reference key="parent" ref="293792969"/>
|
||||
</object>
|
||||
<object class="IBObjectRecord">
|
||||
<int key="objectID">692</int>
|
||||
<reference key="object" ref="602162139"/>
|
||||
<reference key="parent" ref="293792969"/>
|
||||
</object>
|
||||
</array>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="flattenedProperties">
|
||||
@@ -1926,199 +1951,16 @@ d2hhdCB5b3UgYXJlIGRvaW5nLCBsZWF2ZSB0aGlzIG9uICJBdXRvIi4</string>
|
||||
<string key="680.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="687.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="688.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="691.IBPluginDependency">com.apple.InterfaceBuilder.CocoaPlugin</string>
|
||||
<string key="692.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">690</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes">
|
||||
<array class="NSMutableArray" key="referencedPartialClassDescriptions">
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">AppController</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<dictionary class="NSMutableDictionary" key="actions">
|
||||
<string key="chooseFolder:">id</string>
|
||||
<string key="clearErrors:">id</string>
|
||||
<string key="openAbout:">id</string>
|
||||
<string key="openErrors:">id</string>
|
||||
<string key="openHelp:">id</string>
|
||||
<string key="openXCode:">id</string>
|
||||
<string key="stopListener:">id</string>
|
||||
<string key="updatePreferences:">id</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="actionInfosByName">
|
||||
<object class="IBActionInfo" key="chooseFolder:">
|
||||
<string key="name">chooseFolder:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="clearErrors:">
|
||||
<string key="name">clearErrors:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="openAbout:">
|
||||
<string key="name">openAbout:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="openErrors:">
|
||||
<string key="name">openErrors:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="openHelp:">
|
||||
<string key="name">openHelp:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="openXCode:">
|
||||
<string key="name">openXCode:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="stopListener:">
|
||||
<string key="name">stopListener:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
<object class="IBActionInfo" key="updatePreferences:">
|
||||
<string key="name">updatePreferences:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="outlets">
|
||||
<string key="aboutWindow">NSPanel</string>
|
||||
<string key="buttonPreferencesAPIMode">NSPopUpButton</string>
|
||||
<string key="checkBoxPreferencesReactMode">NSButton</string>
|
||||
<string key="dataViewError">TNErrorDataView</string>
|
||||
<string key="errorsPanel">NSPanel</string>
|
||||
<string key="errorsTable">NSTableView</string>
|
||||
<string key="helpTextView">NSTextView</string>
|
||||
<string key="helpWindow">NSWindow</string>
|
||||
<string key="labelVersion">NSTextField</string>
|
||||
<string key="menuDebug">NSMenuItem</string>
|
||||
<string key="menuItemOpenXCode">NSMenuItem</string>
|
||||
<string key="menuItemStartStop">NSMenuItem</string>
|
||||
<string key="preferencesController">NSUserDefaultsController</string>
|
||||
<string key="statusMenu">NSMenu</string>
|
||||
<string key="windowDebug">NSWindow</string>
|
||||
<string key="xcc">TNXCodeCapp</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<object class="IBToOneOutletInfo" key="aboutWindow">
|
||||
<string key="name">aboutWindow</string>
|
||||
<string key="candidateClassName">NSPanel</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="buttonPreferencesAPIMode">
|
||||
<string key="name">buttonPreferencesAPIMode</string>
|
||||
<string key="candidateClassName">NSPopUpButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="checkBoxPreferencesReactMode">
|
||||
<string key="name">checkBoxPreferencesReactMode</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="dataViewError">
|
||||
<string key="name">dataViewError</string>
|
||||
<string key="candidateClassName">TNErrorDataView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="errorsPanel">
|
||||
<string key="name">errorsPanel</string>
|
||||
<string key="candidateClassName">NSPanel</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="errorsTable">
|
||||
<string key="name">errorsTable</string>
|
||||
<string key="candidateClassName">NSTableView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="helpTextView">
|
||||
<string key="name">helpTextView</string>
|
||||
<string key="candidateClassName">NSTextView</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="helpWindow">
|
||||
<string key="name">helpWindow</string>
|
||||
<string key="candidateClassName">NSWindow</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="labelVersion">
|
||||
<string key="name">labelVersion</string>
|
||||
<string key="candidateClassName">NSTextField</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="menuDebug">
|
||||
<string key="name">menuDebug</string>
|
||||
<string key="candidateClassName">NSMenuItem</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="menuItemOpenXCode">
|
||||
<string key="name">menuItemOpenXCode</string>
|
||||
<string key="candidateClassName">NSMenuItem</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="menuItemStartStop">
|
||||
<string key="name">menuItemStartStop</string>
|
||||
<string key="candidateClassName">NSMenuItem</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="preferencesController">
|
||||
<string key="name">preferencesController</string>
|
||||
<string key="candidateClassName">NSUserDefaultsController</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="statusMenu">
|
||||
<string key="name">statusMenu</string>
|
||||
<string key="candidateClassName">NSMenu</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="windowDebug">
|
||||
<string key="name">windowDebug</string>
|
||||
<string key="candidateClassName">NSWindow</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="xcc">
|
||||
<string key="name">xcc</string>
|
||||
<string key="candidateClassName">TNXCodeCapp</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/AppController.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">TNErrorDataView</string>
|
||||
<string key="superclassName">NSView</string>
|
||||
<object class="NSMutableDictionary" key="actions">
|
||||
<string key="NS.key.0">openFile:</string>
|
||||
<string key="NS.object.0">id</string>
|
||||
</object>
|
||||
<object class="NSMutableDictionary" key="actionInfosByName">
|
||||
<string key="NS.key.0">openFile:</string>
|
||||
<object class="IBActionInfo" key="NS.object.0">
|
||||
<string key="name">openFile:</string>
|
||||
<string key="candidateClassName">id</string>
|
||||
</object>
|
||||
</object>
|
||||
<dictionary class="NSMutableDictionary" key="outlets">
|
||||
<string key="buttonOpenFile">NSButton</string>
|
||||
<string key="fieldFileName">NSTextField</string>
|
||||
<string key="fieldMessage">NSTextField</string>
|
||||
</dictionary>
|
||||
<dictionary class="NSMutableDictionary" key="toOneOutletInfosByName">
|
||||
<object class="IBToOneOutletInfo" key="buttonOpenFile">
|
||||
<string key="name">buttonOpenFile</string>
|
||||
<string key="candidateClassName">NSButton</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="fieldFileName">
|
||||
<string key="name">fieldFileName</string>
|
||||
<string key="candidateClassName">NSTextField</string>
|
||||
</object>
|
||||
<object class="IBToOneOutletInfo" key="fieldMessage">
|
||||
<string key="name">fieldMessage</string>
|
||||
<string key="candidateClassName">NSTextField</string>
|
||||
</object>
|
||||
</dictionary>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/TNErrorDataView.h</string>
|
||||
</object>
|
||||
</object>
|
||||
<object class="IBPartialClassDescription">
|
||||
<string key="className">TNXCodeCapp</string>
|
||||
<string key="superclassName">NSObject</string>
|
||||
<object class="IBClassDescriptionSource" key="sourceIdentifier">
|
||||
<string key="majorKey">IBProjectSource</string>
|
||||
<string key="minorKey">./Classes/TNXCodeCapp.h</string>
|
||||
</object>
|
||||
</object>
|
||||
</array>
|
||||
<int key="maxID">694</int>
|
||||
</object>
|
||||
<object class="IBClassDescriber" key="IBDocument.Classes"/>
|
||||
<int key="IBDocument.localizationMode">0</int>
|
||||
<string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string>
|
||||
<object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies">
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user