Francisco Ryan Tolmasky I
2008-09-09 14:57:53 -07:00
parent c25005de43
commit 4a858cda3e
40 changed files with 853 additions and 148 deletions
+15 -3
View File
@@ -7,7 +7,7 @@
<key>Targets</key>
<array>
<dict>
<key>name</key>
<key>Name</key>
<string>AppKit</string>
<key>Excluded</key>
<array>
@@ -15,12 +15,24 @@
<string>CPTableColumn.j</string>
<string>CPTableView.j</string>
</array>
<key>Flags</key>
<string>-DPLATFORM_DOM</string>
</dict>
<dict>
<key>Name</key>
<string>AppKit-Rhino</string>
<key>Excluded</key>
<array>
<string>CPOutlineView.j</string>
<string>CPTableColumn.j</string>
<string>CPTableView.j</string>
</array>
</dict>
</array>
<key>Configurations</key>
<array>
<dict>
<key>name</key>
<key>Name</key>
<string>Debug</string>
<key>Settings</key>
<dict>
@@ -31,7 +43,7 @@
</dict>
</dict>
<dict>
<key>name</key>
<key>Name</key>
<string>Release</string>
<key>Settings</key>
<dict>
+8 -2
View File
@@ -210,6 +210,7 @@ var _CPTextFieldSquareBezelColor = nil;
[self setStringValue:@""];
#if PLATFORM(DOM)
var element = [[self class] _inputElement];
element.value = string;
@@ -244,17 +245,20 @@ var _CPTextFieldSquareBezelColor = nil;
};
[[CPDOMWindowBridge sharedDOMWindowBridge] _propagateCurrentDOMEvent:YES];
#endif
return YES;
}
- (BOOL)resignFirstResponder
{
#if PLATFORM(DOM)
var element = [[self class] _inputElement];
_DOMElement.removeChild(element);
[self setStringValue:element.value];
#endif
return YES;
}
@@ -272,7 +276,9 @@ var _CPTextFieldSquareBezelColor = nil;
{
[super setFrameSize:aSize];
#if PLATFORM(DOM)
CPDOMDisplayServerSetStyleSize(_DOMTextElement, _frame.size.width - 2.0 * HORIZONTAL_PADDING, _frame.size.height - TOP_PADDING - BOTTOM_PADDING);
#endif
}
- (BOOL)isSelectable
+35 -22
View File
@@ -22,6 +22,19 @@
import "CPView.j"
var CPViewAutoresizingMaskKey = @"CPViewAutoresizingMask",
CPViewAutoresizesSubviewsKey = @"CPViewAutoresizesSubviews",
CPViewBackgroundColorKey = @"CPViewBackgroundColor",
CPViewBoundsKey = @"CPViewBoundsKey",
CPViewFrameKey = @"CPViewFrameKey",
CPViewHitTestsKey = @"CPViewHitTestsKey",
CPViewIsHiddenKey = @"CPViewIsHiddenKey",
CPViewOpacityKey = @"CPViewOpacityKey",
CPViewSubviewsKey = @"CPViewSubviewsKey",
CPViewSuperviewKey = @"CPViewSuperviewKey",
CPViewWindowKey = @"CPViewWindowKey";
@implementation CPCustomView : CPView
{
CPString _className;
@@ -43,41 +56,41 @@ var CPCustomViewClassNameKey = @"CPCustomViewClassNameKey";
// FIXME: Should we instead throw an exception?
if (!theClass)
theClass = [CPView class];
// If this is just a "CPView", don't bother with any funny business, just go ahead and create it with initWithCoder:
if (theClass == [CPView class])
self = [[CPView alloc] initWithCoder:aCoder];
return self;
// If not, fall back to initWithFrame:
/*
var frame = [aCoder decodeRectForKey:CPViewFrameKey];
self = [[theClass alloc] initWithFrame:frame];
// If this is just a "CPView", don't bother with any funny business, just go ahead and create it with initWithCoder:
if (theClass == [CPView class])
self = [[CPView alloc] initWithFrame:frame];
if (self)
{
_bounds = [aCoder decodeRectForKey:CPViewBoundsKey];
_window = [aCoder decodeObjectForKey:CPViewWindowKey];
_subviews = [aCoder decodeObjectForKey:CPViewSubviewsKey];
_superview = [aCoder decodeObjectForKey:CPViewSuperviewKey];
{
[self _setWindow:[aCoder decodeObjectForKey:CPViewWindowKey]];
// Since the object replacement logic hasn't had a chance to kick in yet, we need to do it manually:
var subviews = [aCoder decodeObjectForKey:CPViewSubviewsKey],
index = 0,
count = subviews.length;
for (; index < count; ++index)
{
// This is a bogus superview "CPCustomView".
subviews[index]._superview = nil;
[self addSubview:subviews[index]];
}
_autoresizingMask = [aCoder decodeIntForKey:CPViewAutoresizingMaskKey];
_autoresizesSubviews = [aCoder decodeBoolForKey:CPViewAutoresizesSubviewsKey];
// FIXME: UGH!!!!
_index = [aCoder decodeIntForKey:FIXME_indexKey];
_hitTests = [aCoder decodeObjectForKey:CPViewHitTestsKey];
_isHidden = [aCoder decodeObjectForKey:CPViewIsHiddenKey];
_opacity = [aCoder decodeIntForKey:CPViewOpacityKey];
[self setBackgroundColor:[aCoder decodeObjectForKey:CPViewBackgroundColorKey]];
}
return self;*/
return self;
}
@end
-2
View File
@@ -21,5 +21,3 @@
*/
#define PLATFORM(FEATURE) (defined( PLATFORM_##FEATURE ) && PLATFORM_##FEATURE)
#define PLATFORM_DOM 1
+8 -2
View File
@@ -16,7 +16,13 @@
<steam>
<arguments>
<arg line = "-f AppKit.steam -c ${Configuration}" />
<arg line = "-f AppKit.steam -c ${Configuration} -t AppKit" />
</arguments>
</steam>
<steam>
<arguments>
<arg line = "-f AppKit.steam -c ${Configuration} -t AppKit-Rhino" />
</arguments>
</steam>
@@ -33,7 +39,7 @@
</copy>
<copy todir = "${Build.Cappuccino.Tools.Lib.Frameworks}/AppKit">
<fileset dir = "${Build}/${Configuration}/AppKit" />
<fileset dir = "${Build}/${Configuration}/AppKit-Rhino" />
</copy>
<copy todir = "${Build.Cappuccino.Starter.Frameworks}/AppKit" >
+4 -4
View File
@@ -2,19 +2,19 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>name</key>
<key>Name</key>
<string>Foundation</string>
<key>Targets</key>
<array>
<dict>
<key>name</key>
<key>Name</key>
<string>Foundation</string>
</dict>
</array>
<key>Configurations</key>
<array>
<dict>
<key>name</key>
<key>Name</key>
<string>Debug</string>
<key>Settings</key>
<dict>
@@ -25,7 +25,7 @@
</dict>
</dict>
<dict>
<key>name</key>
<key>Name</key>
<string>Release</string>
<key>Settings</key>
<dict>
+2
View File
@@ -27,11 +27,13 @@ mkdir -p $INSTALL_DIR/share
cp -fR objj/ $INSTALL_DIR/share/objj
ln -sf $INSTALL_DIR/share/objj/bin/nib2cib $INSTALL_DIR/bin/nib2cib
ln -sf $INSTALL_DIR/share/objj/bin/objj $INSTALL_DIR/bin/objj
ln -sf $INSTALL_DIR/share/objj/bin/objjc $INSTALL_DIR/bin/objjc
ln -sf $INSTALL_DIR/share/objj/bin/steam $INSTALL_DIR/bin/steam
ln -sf $INSTALL_DIR/share/objj/bin/bake $INSTALL_DIR/bin/bake
chmod +x $INSTALL_DIR/bin/nib2cib
chmod +x $INSTALL_DIR/bin/objj
chmod +x $INSTALL_DIR/bin/objjc
chmod +x $INSTALL_DIR/bin/steam
+25
View File
@@ -0,0 +1,25 @@
import <Foundation/CPObject.j>
import <AppKit/CPCib.j>
@implementation AppController : CPObject
{
}
- (void)applicationDidFinishLaunching:(CPNotification)aNotification
{
var cib = [[CPCib alloc] initWithContentsOfURL:@"MainMenu.cib"],
x = [cib instantiateCibWithExternalNameTable:nil];
[x setBackgroundColor:[CPColor blueColor]];
var theWindow = [[CPWindow alloc] initWithContentRect:CGRectMakeZero() styleMask:CPBorderlessBridgeWindowMask],
contentView = [theWindow contentView];
[contentView addSubview:x];
[theWindow orderFront:self];
}
@end
+1
View File
@@ -0,0 +1 @@
/Users/tolmasky/Development/Build/Release
+279
View File
@@ -0,0 +1,279 @@
<?xml version="1.0" encoding="UTF-8"?>
<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.01">
<data>
<int key="IBDocument.SystemTarget">1050</int>
<string key="IBDocument.SystemVersion">9E17</string>
<string key="IBDocument.InterfaceBuilderVersion">629</string>
<string key="IBDocument.AppKitVersion">949.33</string>
<string key="IBDocument.HIToolboxVersion">352.00</string>
<object class="NSMutableArray" key="IBDocument.EditedObjectIDs">
<bool key="EncodedWithXMLCoder">YES</bool>
<integer value="1"/>
</object>
<object class="NSArray" key="IBDocument.PluginDependencies">
<bool key="EncodedWithXMLCoder">YES</bool>
<string id="432113897">com.apple.InterfaceBuilder.CocoaPlugin</string>
</object>
<object class="NSMutableArray" key="IBDocument.RootObjects" id="1000">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSCustomObject" id="1001">
<string key="NSClassName">NSObject</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="NSCustomView" id="1005">
<reference key="NSNextResponder"/>
<int key="NSvFlags">268</int>
<object class="NSMutableArray" key="NSSubviews">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSButton" id="376826387">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{157, 110}, {154, 19}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSButtonCell" key="NSCell" id="428923890">
<int key="NSCellFlags">-2080244224</int>
<int key="NSCellFlags2">134217728</int>
<string key="NSContents">Round Rect Button</string>
<object class="NSFont" key="NSSupport">
<string key="NSName">LucidaGrande</string>
<double key="NSSize">1.200000e+01</double>
<int key="NSfFlags">16</int>
</object>
<reference key="NSControlView" ref="376826387"/>
<int key="NSButtonFlags">-2038152961</int>
<int key="NSButtonFlags2">164</int>
<string key="NSAlternateContents" id="729400536"/>
<reference key="NSKeyEquivalent" ref="729400536"/>
<int key="NSPeriodicDelay">400</int>
<int key="NSPeriodicInterval">75</int>
</object>
</object>
<object class="NSSlider" id="1050330329">
<reference key="NSNextResponder" ref="1005"/>
<int key="NSvFlags">268</int>
<string key="NSFrame">{{359, 108}, {96, 21}}</string>
<reference key="NSSuperview" ref="1005"/>
<reference key="NSWindow"/>
<bool key="NSEnabled">YES</bool>
<object class="NSSliderCell" key="NSCell" id="955868276">
<int key="NSCellFlags">-2080244224</int>
<int key="NSCellFlags2">0</int>
<reference key="NSContents" ref="729400536"/>
<object class="NSFont" key="NSSupport">
<string key="NSName">Helvetica</string>
<double key="NSSize">1.200000e+01</double>
<int key="NSfFlags">16</int>
</object>
<reference key="NSControlView" ref="1050330329"/>
<double key="NSMaxValue">1.000000e+02</double>
<double key="NSMinValue">0.000000e+00</double>
<double key="NSValue">5.000000e+01</double>
<double key="NSAltIncValue">0.000000e+00</double>
<int key="NSNumberOfTickMarks">0</int>
<int key="NSTickMarkPosition">1</int>
<bool key="NSAllowsTickMarkValuesOnly">NO</bool>
<bool key="NSVertical">NO</bool>
</object>
</object>
</object>
<string key="NSFrameSize">{480, 272}</string>
<reference key="NSSuperview"/>
<reference key="NSWindow"/>
<string key="NSClassName">NSView</string>
</object>
</object>
<object class="IBObjectContainer" key="IBDocument.Objects">
<object class="NSMutableArray" key="connectionRecords">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<object class="IBMutableOrderedSet" key="objectRecords">
<object class="NSArray" key="orderedObjects">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="IBObjectRecord">
<int key="objectID">0</int>
<object class="NSArray" key="object" id="1002">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<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="1002"/>
<string type="base64-UTF8" key="objectName">RmlsZSdzIE93bmVyA</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-1</int>
<reference key="object" ref="1003"/>
<reference key="parent" ref="1002"/>
<string key="objectName">First Responder</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">-3</int>
<reference key="object" ref="1004"/>
<reference key="parent" ref="1002"/>
<string key="objectName">Application</string>
</object>
<object class="IBObjectRecord">
<int key="objectID">1</int>
<reference key="object" ref="1005"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="376826387"/>
<reference ref="1050330329"/>
</object>
<reference key="parent" ref="1002"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">8</int>
<reference key="object" ref="376826387"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="428923890"/>
</object>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">9</int>
<reference key="object" ref="428923890"/>
<reference key="parent" ref="376826387"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">10</int>
<reference key="object" ref="1050330329"/>
<object class="NSMutableArray" key="children">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="955868276"/>
</object>
<reference key="parent" ref="1005"/>
</object>
<object class="IBObjectRecord">
<int key="objectID">11</int>
<reference key="object" ref="955868276"/>
<reference key="parent" ref="1050330329"/>
</object>
</object>
</object>
<object class="NSMutableDictionary" key="flattenedProperties">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSMutableArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
<string>-1.IBPluginDependency</string>
<string>-2.IBPluginDependency</string>
<string>-3.IBPluginDependency</string>
<string>1.IBPluginDependency</string>
<string>1.WindowOrigin</string>
<string>1.editorWindowContentRectSynchronizationRect</string>
<string>10.IBPluginDependency</string>
<string>11.IBPluginDependency</string>
<string>8.IBPluginDependency</string>
<string>9.IBPluginDependency</string>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
<reference ref="432113897"/>
<reference ref="432113897"/>
<reference ref="432113897"/>
<reference ref="432113897"/>
<string>{628, 654}</string>
<string>{{319, 416}, {480, 272}}</string>
<string id="682767821">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="682767821"/>
<string id="32298658">com.apple.InterfaceBuilder.CocoaPlugin</string>
<reference ref="32298658"/>
</object>
</object>
<object class="NSMutableDictionary" key="unlocalizedProperties">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
<nil key="activeLocalization"/>
<object class="NSMutableDictionary" key="localizations">
<bool key="EncodedWithXMLCoder">YES</bool>
<object class="NSArray" key="dict.sortedKeys">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
<object class="NSMutableArray" key="dict.values">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
<nil key="sourceID"/>
<int key="maxID">11</int>
</object>
<object class="IBClassDescriber" key="IBDocument.Classes">
<object class="NSMutableArray" key="referencedPartialClassDescriptions">
<bool key="EncodedWithXMLCoder">YES</bool>
</object>
</object>
<int key="IBDocument.localizationMode">0</int>
<nil key="IBDocument.LastKnownRelativeProjectPath"/>
<int key="IBDocument.defaultPropertyAccessControl">3</int>
<object class="NSMutableData" key="IBDocument.RunnableNib">
<bytes key="NS.bytes">YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA
AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxA/AAsADAAxADUANgA7ADwA
QABEAEcASwBUAGwAbQB1AHYAeQCJAIoAjgCYAAsAmQCfALMAtgC3AL8AwgDHAMgAywALAJ0AzADPANIA
0wDVAN4A6ADyAPMA9AD1APYA9wD4APkA/AD/AQkBEwEUARUBFgCrARcBGAEZARwBHwEiVSRudWxs3xAS
AA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAq
ACsALAAtAC4ALwAwVk5TUm9vdFYkY2xhc3NdTlNPYmplY3RzS2V5c18QD05TQ2xhc3Nlc1ZhbHVlc18Q
GU5TQWNjZXNzaWJpbGl0eU9pZHNWYWx1ZXNdTlNDb25uZWN0aW9uc1tOU05hbWVzS2V5c1tOU0ZyYW1l
d29ya11OU0NsYXNzZXNLZXlzWk5TT2lkc0tleXNdTlNOYW1lc1ZhbHVlc18QGU5TQWNjZXNzaWJpbGl0
eUNvbm5lY3RvcnNdTlNGb250TWFuYWdlcl8QEE5TVmlzaWJsZVdpbmRvd3NfEA9OU09iamVjdHNWYWx1
ZXNfEBdOU0FjY2Vzc2liaWxpdHlPaWRzS2V5c1lOU05leHRPaWRcTlNPaWRzVmFsdWVzgAKAPoAKgDGA
PYAIgCeABYAwgDKAKIA7gACABoAmgDwQDYAz0gAOADIAMwA0W05TQ2xhc3NOYW1lgASAA1hOU09iamVj
dNIANwA4ADkAOlgkY2xhc3Nlc1okY2xhc3NuYW1logA6ADVeTlNDdXN0b21PYmplY3RfEBBJQkNvY29h
RnJhbWV3b3Jr0gAOAD0APgA/Wk5TLm9iamVjdHOAB6DSADcAOABBAEKjAEIAQwA1XE5TTXV0YWJsZVNl
dFVOU1NldNIADgA9AEUARoAJoNIANwA4AEgASaMASQBKADVeTlNNdXRhYmxlQXJyYXlXTlNBcnJhedIA
DgA9AEwATYAlpgBOAE8AUABRAFIAU4ALgBCAF4ATgBqAI9wAVQAOAFYAVwBYAFkAWgBbAFwAXQBeAF8A
YABhAGIAYwBkAGIAZgBnAE8AaQBqAGtbTlNDZWxsRmxhZ3NfEBNOU0FsdGVybmF0ZUNvbnRlbnRzXxAS
TlNQZXJpb2RpY0ludGVydmFsXk5TQnV0dG9uRmxhZ3MyXxAPTlNLZXlFcXVpdmFsZW50Wk5TQ29udGVu
dHNZTlNTdXBwb3J0XU5TQ29udHJvbFZpZXdfEA9OU1BlcmlvZGljRGVsYXlcTlNDZWxsRmxhZ3MyXU5T
QnV0dG9uRmxhZ3MT/////4QB/gCAEoAREEsQpIARgAyADYAQEQGQEggAAAAT/////4aEQP9fEBFSb3Vu
ZCBSZWN0IEJ1dHRvbtQADgBuAG8AcABxAHIAcwB0Vk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OADyNAKAAA
AAAAAIAOEBBcTHVjaWRhR3JhbmRl0gA3ADgAdwB4ogB4ADVWTlNGb2502AB6AA4AewB8AH0AfgB/AIAA
UQCCAIMATgCFAIYAhwBRXxAPTlNOZXh0UmVzcG9uZGVyV05TRnJhbWVWTlNDZWxsWE5TdkZsYWdzWU5T
RW5hYmxlZFhOU1dpbmRvd1tOU1N1cGVydmlld4ATgBaAFIALEQEMCYAVgBNQ0gA3ADgAiwCMpACMAI0A
fAA1XE5TQnV0dG9uQ2VsbFxOU0FjdGlvbkNlbGzYAHoADgCPAH0AkAB/ADIAgACHAJIAkwCFAJQAhwCW
AJdaTlNTdWJ2aWV3c1tOU0ZyYW1lU2l6ZYAVgCKAHIAfgBWAIYAgXxAXe3sxNTcsIDExMH0sIHsxNTQs
IDE5fX3SADcAOACaAJulAJsAnACdAJ4ANVhOU0J1dHRvbllOU0NvbnRyb2xWTlNWaWV3W05TUmVzcG9u
ZGVy3gCgAFUADgChAKIAWgBbAFwAowCkAF4ApQCmAKcAqABgAKkAqgCrAGIArQBSAK8AsACqALEAsACx
V05TVmFsdWVfEBNOU051bWJlck9mVGlja01hcmtzXxASTlNUaWNrTWFya1Bvc2l0aW9uWk5TTWF4VmFs
dWVaTlNNaW5WYWx1ZVpOU1ZlcnRpY2FsXU5TQWx0SW5jVmFsdWVfEBpOU0FsbG93c1RpY2tNYXJrVmFs
dWVzT25seSNASQAAAAAAAIAbEAAQAYARgBiAGiNAWQAAAAAAACMAAAAAAAAAAAgI1AAOAG4AbwBwAHEA
cgC1AHSAD4AZWUhlbHZldGljYdgAegAOAHsAfAB9AH4AfwCAAFEAuQC6AFAAhQCGAIcAUYATgB6AHYAX
CYAVgBPSADcAOADAAMGkAMEAjQB8ADVcTlNTbGlkZXJDZWxs0gAOAD0ARQDEgAmiAE8AUoAQgBpfEBZ7
ezM1OSwgMTA4fSwgezk2LCAyMX190gA3ADgAyQDKpQDKAJwAnQCeADVYTlNTbGlkZXJaezQ4MCwgMjcy
fdIANwA4AM0AzqQAzgCdAJ4ANVxOU0N1c3RvbVZpZXfSAA4AMgAzANGABIAkXU5TQXBwbGljYXRpb27S
ADcAOADUAEqiAEoANdIADgA9AEwA14AlpgBPAFEAUgAfAFEAH4AQgBOAGoACgBOAAtIADgA9AEwA4IAl
pwBQAB8ATgBPAFEAUgBTgBeAAoALgBCAE4AagCPSAA4APQBMAOqAJacA6wDsAO0A7gDvAPAA8YApgCqA
K4AsgC2ALoAvW1NsaWRlciBDZWxsXEZpbGUncyBPd25lcl8QH0J1dHRvbiBDZWxsIChSb3VuZCBSZWN0
IEJ1dHRvbilfECVSb3VuZCBSZWN0IEJ1dHRvbiAoUm91bmQgUmVjdCBCdXR0b24pW0N1c3RvbSBWaWV3
XxARSG9yaXpvbnRhbCBTbGlkZXJbQXBwbGljYXRpb27SAA4APQBMAPuAJaDSAA4APQBMAP6AJaDSAA4A
PQBMAQGAJacAUAAfAE4ATwBRAFIAU4AXgAKAC4AQgBOAGoAj0gAOAD0ATAELgCWnAQwBDQEOAQ8BEAER
ARKANIA1gDaAN4A4gDmAOhALEAwQCRAIEAoT//////////3SAA4APQBFARuACaDSAA4APQBMAR6AJaDS
AA4APQBMASGAJaDSADcAOAEjASSiASQANV5OU0lCT2JqZWN0RGF0YQAIABkAIgAnADEAOgA/AEQAUgBU
AGYA5wDtATgBPwFGAVQBZgGCAZABnAGoAbYBwQHPAesB+QIMAh4COAJCAk8CUQJTAlUCVwJZAlsCXQJf
AmECYwJlAmcCaQJrAm0CbwJxAnMCfAKIAooCjAKVAp4CpwKyArcCxgLZAuIC7QLvAvAC+QMAAw0DEwMc
Ax4DHwMoAy8DPgNGA08DUQNeA2ADYgNkA2YDaANqA5sDpwO9A9ID4QPzA/4ECAQWBCgENQRDBEwETgRQ
BFIEVARWBFgEWgRcBF8EZARtBIEEkgSZBKAEqQSrBLQEtgS4BMUEzgTTBNoE+wUNBRUFHAUlBS8FOAVE
BUYFSAVKBUwFTwVQBVIFVAVVBV4FZwV0BYEFogWtBbkFuwW9Bb8FwQXDBcUFxwXhBeoF9QX+BggGDwYb
BlQGXAZyBocGkgadBqgGtgbTBtwG3gbgBuIG5AbmBugG8Qb6BvsG/AcNBw8HEQcbBzwHPgdAB0IHRAdF
B0cHSQdSB1sHaAdxB3MHeAd6B3wHlQeeB6kHsge9B8YHzwfcB+UH5wfpB/cIAAgFCA4IEAgdCB8IIQgj
CCUIJwgpCDIINAhDCEUIRwhJCEsITQhPCFEIWghcCGsIbQhvCHEIcwh1CHcIeQiFCJIItAjcCOgI/AkI
CREJEwkUCR0JHwkgCSkJKwk6CTwJPglACUIJRAlGCUgJUQlTCWIJZAlmCWgJaglsCW4JcAlyCXQJdgl4
CXoJgwmMCY4JjwmYCZoJmwmkCaYJpwmwCbUAAAAAAAACAgAAAAAAAAElAAAAAAAAAAAAAAAAAAAJxA</bytes>
</object>
</data>
</archive>
+3 -16
View File
@@ -2,23 +2,10 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CPBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeExtensions</key>
<array>
<string>MyDocument</string>
</array>
<key>CPBundleTypeName</key>
<string>MyDocument</string>
<key>CPBundleTypeRole</key>
<string>Editor</string>
<key>CPDocumentClass</key>
<string>MyDocument</string>
</dict>
</array>
<key>CPApplicationDelegateClass</key>
<string>AppController</string>
<key>CPBundleName</key>
<string>MyApplication</string>
<string>NibApp</string>
<key>CPPrincipalClass</key>
<string>CPApplication</string>
</dict>
+1
View File
@@ -0,0 +1 @@
280NPLIST;1.0;D;K;4;$topD;K;18;CPCibObjectDataKeyD;K;6;CP$UIDd;1;1E;E;K;8;$objectsA;S;5;$nullD;K;6;$classD;K;6;CP$UIDd;1;2E;K;28;_CPCibObjectDataNamesKeysKeyD;K;6;CP$UIDd;1;3E;K;30;_CPCibObjectDataNamesValuesKeyD;K;6;CP$UIDd;1;5E;K;30;_CPCibObjectDataClassesKeysKeyD;K;6;CP$UIDd;1;6E;K;32;_CPCibObjectDataClassesValuesKeyD;K;6;CP$UIDd;1;7E;K;30;_CPCibObjectDataConnectionsKeyD;K;6;CP$UIDd;1;8E;K;28;_CPCibObjectDataFrameworkKeyD;K;6;CP$UIDd;1;9E;K;26;_CPCibObjectDataNextOidKeyD;K;6;CP$UIDd;2;10E;K;30;_CPCibObjectDataObjectsKeysKeyD;K;6;CP$UIDd;2;11E;K;32;_CPCibObjectDataObjectsValuesKeyD;K;6;CP$UIDd;2;12E;K;26;_CPCibObjectDataOidKeysKeyD;K;6;CP$UIDd;2;13E;K;28;_CPCibObjectDataOidValuesKeyD;K;6;CP$UIDd;2;14E;K;29;_CPCibObjectDataRootObjectKeyD;K;6;CP$UIDd;1;0E;E;D;K;10;$classnameS;16;_CPCibObjectDataK;8;$classesA;S;16;_CPCibObjectDataS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;E;E;D;K;10;$classnameS;7;CPArrayK;8;$classesA;S;7;CPArrayS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;19E;D;K;6;CP$UIDd;2;20E;D;K;6;CP$UIDd;2;21E;D;K;6;CP$UIDd;2;22E;D;K;6;CP$UIDd;2;23E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;E;E;S;16;IBCocoaFrameworkd;1;7D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;17E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;15E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;1;0E;D;K;6;CP$UIDd;2;15E;D;K;6;CP$UIDd;2;17E;E;E;D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;24E;D;K;6;CP$UIDd;2;25E;D;K;6;CP$UIDd;2;26E;D;K;6;CP$UIDd;2;27E;D;K;6;CP$UIDd;2;28E;E;E;D;K;6;$classD;K;6;CP$UIDd;2;16E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;1;0E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;29E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;29E;K;15;CPViewWindowKeyD;K;6;CP$UIDd;1;0E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;30E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;1;0E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;31E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;2;32E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;1;0E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;2;33E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;2;34E;K;16;CPViewOpacityKeyD;K;6;CP$UIDd;2;27E;K;24;CPCustomViewClassNameKeyD;K;6;CP$UIDd;2;35E;E;D;K;10;$classnameS;12;CPCustomViewK;8;$classesA;S;12;CPCustomViewS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;D;K;6;$classD;K;6;CP$UIDd;2;18E;K;27;CPResponderNextResponderKeyD;K;6;CP$UIDd;2;15E;K;14;CPViewFrameKeyD;K;6;CP$UIDd;2;36E;K;15;CPViewBoundsKeyD;K;6;CP$UIDd;2;37E;K;15;CPViewWindowKeyD;K;6;CP$UIDd;1;0E;K;17;CPViewSubviewsKeyD;K;6;CP$UIDd;2;38E;K;18;CPViewSuperviewKeyD;K;6;CP$UIDd;2;15E;K;22;CPViewAutoresizingMaskD;K;6;CP$UIDd;2;31E;K;25;CPViewAutoresizesSubviewsD;K;6;CP$UIDd;2;32E;K;21;CPViewBackgroundColorD;K;6;CP$UIDd;1;0E;K;17;CPViewHitTestsKeyD;K;6;CP$UIDd;2;33E;K;17;CPViewIsHiddenKeyD;K;6;CP$UIDd;2;34E;K;16;CPViewOpacityKeyD;K;6;CP$UIDd;2;27E;K;21;CPControlIsEnabledKeyD;K;6;CP$UIDd;2;33E;K;21;CPControlAlignmentKeyD;K;6;CP$UIDd;1;0E;K;16;CPControlFontKeyD;K;6;CP$UIDd;2;39E;K;21;CPControlTextColorKeyD;K;6;CP$UIDd;1;0E;K;18;CPControlTargetKeyD;K;6;CP$UIDd;1;0E;K;18;CPControlActionKeyD;K;6;CP$UIDd;1;0E;K;24;CPControlSendActionOnKeyD;K;6;CP$UIDd;1;0E;K;16;CPButtonImageKeyD;K;6;CP$UIDd;1;0E;K;25;CPButtonAlternateImageKeyD;K;6;CP$UIDd;1;0E;K;16;CPButtonTitleKeyD;K;6;CP$UIDd;2;41E;K;24;CPButtonImagePositionKeyD;K;6;CP$UIDd;1;0E;K;23;CPButtonImageScalingKeyD;K;6;CP$UIDd;2;28E;K;21;CPButtonIsBorderedKeyD;K;6;CP$UIDd;2;33E;K;21;CPButtonBezelStyleKeyD;K;6;CP$UIDd;2;31E;E;D;K;10;$classnameS;8;CPButtonK;8;$classesA;S;8;CPButtonS;9;CPControlS;6;CPViewS;11;CPResponderS;8;CPObjectE;E;S;11;ApplicationS;12;File's OwnerS;25;Button Cell (Hello World)S;11;Custom ViewS;31;Round Rect Button (Hello World)d;2;-3d;1;4d;1;6d;1;1d;1;2S;20;{{0, 0}, {480, 272}}D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;D;K;6;CP$UIDd;2;17E;E;E;d;2;12d;3;256T;F;S;6;CPViewS;23;{{166, 129}, {154, 19}}S;19;{{0, 0}, {154, 19}}D;K;6;$classD;K;6;CP$UIDd;1;4E;K;10;CP.objectsA;E;E;D;K;6;$classD;K;6;CP$UIDd;2;40E;K;13;CPFontNameKeyD;K;6;CP$UIDd;2;42E;K;13;CPFontSizeKeyD;K;6;CP$UIDd;2;43E;K;15;CPFontIsBoldKeyD;K;6;CP$UIDd;2;34E;E;D;K;10;$classnameS;6;CPFontK;8;$classesA;S;6;CPFontS;8;CPObjectE;E;S;11;Hello WorldS;5;Ariald;2;11E;K;9;$archiverS;15;CPKeyedArchiverK;8;$versionS;6;100000E;
-33
View File
@@ -1,33 +0,0 @@
//
// Document.j
// Editor
//
// Created by Francisco Tolmasky on May 21, 2008.
// Copyright 2005 - 2008, 280 North, Inc. All rights reserved.
//
import <AppKit/CPDocument.j>
import <AppKit/CPNib.j>
@implementation MyDocument : CPDocument
{
CPTextField _textField;
}
- (void)windowControllerDidLoadNib:(CPWindowController)aWindowController
{
[super windowControllerDidLoadNib:aWindowController];
var nib = [[CPNib alloc] initWithContentsOfURL:@"MainMenu.cib"];
var x = [nib instantiateNibWithExternalNameTable:nil];
[x setBackgroundColor:[CPColor blueColor]];
//alert([[x subviews] count]);
[[[aWindowController window] contentView] addSubview:x];
}
@end
+2 -3
View File
@@ -14,13 +14,12 @@
-->
<head>
<title>Loading...</title>
<title>Nib App</title>
<script src = "Frameworks/Objective-J/Objective-J.js" type = "text/javascript"></script>
<script type = "text/javascript">
objj_import("main.j", YES);
objj_import("main.j", YES, function() { main(); });
</script>
</head>
+2 -4
View File
@@ -9,12 +9,10 @@
import <Foundation/Foundation.j>
import <AppKit/AppKit.j>
import "MyDocument.j"
import "AppController.j"
function main(args, namedArgs)
{
CPApplicationMain(args, namedArgs);
}
window.setTimeout(main, 0);
}
+1
View File
@@ -5,6 +5,7 @@
<filelist id = "Projects" dir = ".">
<file name = "Install/build.xml" />
<file name = "nib2cib/build.xml" />
<file name = "objj/build.xml" />
<file name = "objjc/build.xml" />
<file name = "steam/build.xml" />
+21
View File
@@ -1,3 +1,24 @@
/*
* NSAppKit.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import "NSButton.j"
import "NSCell.j"
+22 -1
View File
@@ -1,4 +1,25 @@
/*
* NSArray.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <Foundation/CPObject.j>
+29 -4
View File
@@ -1,3 +1,27 @@
/*
* NSButton.j
* nib2cib
*
* Portions based on NSButtonCell.m (09/09/2008) in Cocotron (http://www.cocotron.org/)
* Copyright (c) 2006-2007 Christopher J. W. Lloyd
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPButton.j>
@@ -13,12 +37,14 @@ import "NSControl.j"
if (self)
{
_controlSize = CPRegularControlSize;
var cell = [aCoder decodeObjectForKey:@"NSCell"];
[self setBordered:[cell isBordered]];
[self setBezelStyle:[cell bezelStyle]];
[self setTitle:[cell title]];
[self setBezelStyle:[cell bezelStyle]];
[self setBordered:[cell isBordered]];
}
return self;
@@ -62,7 +88,6 @@ import "NSControl.j"
_isBordered = (buttonFlags & 0x00800000) ? YES : NO;
_bezelStyle = (buttonFlags2 & 0x7) | ((buttonFlags2 & 0x20) >> 2);
// NSContents for NSButton is actually the title
_title = [aCoder decodeObjectForKey:@"NSContents"];
}
+24
View File
@@ -1,3 +1,27 @@
/*
* NSCell.j
* nib2cib
*
* Portions based on NSCell.m (09/09/2008) in Cocotron (http://www.cocotron.org/)
* Copyright (c) 2006-2007 Christopher J. W. Lloyd
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <Foundation/CPObject.j>
+21
View File
@@ -1,3 +1,24 @@
/*
* NSControl.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPControl.j>
+21
View File
@@ -1,3 +1,24 @@
/*
* NSCustomView.j
* AppKit
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPCustomView.j>
+21
View File
@@ -1,3 +1,24 @@
/*
* NSFont.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPFont.j>
+21
View File
@@ -1,2 +1,23 @@
/*
* NSFoundation.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import "NSArray.j"
+21 -1
View File
@@ -1,3 +1,24 @@
/*
* NSIBObjectData.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
/*#import "NSIBObjectData.h"
#import <Foundation/NSArray.h>
@@ -59,7 +80,6 @@ import <AppKit/_CPCibObjectData.j>
_connections = [aCoder decodeObjectForKey:@"NSConnections"];
//_fontManager = [aCoder decodeObjectForKey:@"NSFontManager"] retain];
_framework = [aCoder decodeObjectForKey:@"NSFramework"];
_nextOid = [aCoder decodeIntForKey:@"NSNextOid"];
+22 -1
View File
@@ -1,3 +1,24 @@
/*
* NSResponder.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPResponder.j>
@@ -30,4 +51,4 @@ import <AppKit/CPResponder.j>
return [CPResponder class];
}
@end
@end
+23 -4
View File
@@ -1,3 +1,24 @@
/*
* NSSlider.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPSlider.j>
@@ -14,10 +35,8 @@ import "NSSlider.j"
{
_minValue = [aCoder decodeDoubleForKey:@"NSMinValue"];
_maxValue = [aCoder decodeDoubleForKey:@"NSMaxValue"];
/* _knobThickness=8.0;
_numberOfTickMarks=[keyed decodeIntForKey:@"NSNumberOfTickMarks"];
_tickMarkPosition=[keyed decodeIntForKey:@"NSTickMarkPosition"];
_allowsTickMarkValuesOnly=[keyed decodeBoolForKey:@"NSAllowsTickMarkValuesOnly"];*/
//_value = [aCoder decodeDoubleForKey:@"NSValue"];
}
return self;
+24 -23
View File
@@ -1,30 +1,31 @@
/*
* NSView.j
* nib2cib
*
* Portions based on NSView.m (09/09/2008) in Cocotron (http://www.cocotron.org/)
* Copyright (c) 2006-2007 Christopher J. W. Lloyd
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <AppKit/CPView.j>
//unsigned int rotatedFromBase:1;
//unsigned int rotatedOrScaledFromBase:1;
//unsigned int autosizing:6;
//unsigned int autoresizeSubviews:1;
//unsigned int wantsGState:1;
//unsigned int needsDisplay:1;
//unsigned int validGState:1;
//unsigned int newGState:1;
//unsigned int noVerticalAutosizing:1;
//unsigned int frameChangeNotesSuspended:1;
//unsigned int needsFrameChangeNote:1;
//unsigned int focusChangeNotesSuspended:1;
//unsigned int boundsChangeNotesSuspended:1;
//unsigned int needsBoundsChangeNote:1;
//unsigned int removingWithoutInvalidation:1;
//unsigned int interfaceStyle0:1;
//unsigned int needsDisplayForBounds:1;
//unsigned int specialArchiving:1;
//unsigned int interfaceStyle1:1;
//unsigned int retainCount:6;
//unsigned int retainCountOverMax:1;
//unsigned int aboutToResize:1;
@implementation CPView (NSCoding)
- (id)NS_initWithCoder:(CPCoder)aCoder
+39
View File
@@ -0,0 +1,39 @@
<?xml version = "1.0"?>
<project name = "nib2cib" default = "build" basedir = "." >
<import file = "../../common.xml" />
<import file = "${environment.OBJJ_HOME}/lib/steam.xml" />
<target name = "clean">
<steam>
<arguments>
<arg line = "-f nib2cib.steam -c ${Configuration} clean" />
</arguments>
</steam>
</target>
<target name = "build">
<steam>
<arguments>
<arg line = "-f nib2cib.steam -c ${Configuration} -t nib2cib" />
</arguments>
</steam>
</target>
<target name = "release" depends = "build">
<antcall target = "prepare-release" />
<copy todir = "${Build.Cappuccino.Tools.Lib}/nib2cib">
<fileset dir = "${Build}/${Configuration}/nib2cib" />
</copy>
<copy file = "nib2cib" tofile = "${Build.Cappuccino.Tools.Bin}/nib2cib" />
<chmod file = "${Build.Cappuccino.Tools.Bin}/nib2cib" perm = "+x" />
</target>
</project>
@@ -1,3 +1,24 @@
/*
* main.j
* nib2cib
*
* Created by Francisco Tolmasky.
* Copyright 2008, 280 North, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
import <Foundation/Foundation.j>
@@ -62,7 +83,6 @@ var data = [CPURLConnection sendSynchronousRequest:[CPURLRequest requestWithURL:
// Minor NSKeyedArchive to CPKeyedArchive conversion.
[data setString:[data string].replace(/\<key\>\s*CF\$UID\s*\<\/key\>/g, "<key>CP$UID</key>")];
// Unarchive the NS data
var unarchiver = [[CPKeyedUnarchiver alloc] initForReadingWithData:data],
objectData = [unarchiver decodeObjectForKey:@"IB.objectdata"],
+55 -3
View File
@@ -1,6 +1,58 @@
#!/bin/sh
SELF_PATH=$(cd -P -- "$(dirname -- "$0")" && pwd -P) && SELF_PATH=$SELF_PATH/$(basename -- "$0")
SELF_DIR=`dirname $SELF_PATH`
#
# nib2cib
# nib2cib
#
# Created by Francisco Tolmasky.
# Copyright 2008, 280 North, Inc.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
#
$SELF_DIR/objj $SELF_DIR/../nib2cib/nib2cib.j $@
# if OBJJ_HOME isn't set, try to determine it
if [ -z $OBJJ_HOME ]; then
# get path of the executable
SELF_PATH=$(cd -P -- "$(dirname -- "$0")" && pwd -P) && SELF_PATH=$SELF_PATH/$(basename -- "$0")
# resolve symlinks
if [ -h $SELF_PATH ]; then
SELF_PATH=`readlink $SELF_PATH`
fi
# get second ancestor directory
SELF_DIR=`dirname $SELF_PATH`
export OBJJ_HOME=`dirname $SELF_DIR`
# check to ensure it exists, print message
if [ -d $OBJJ_HOME ]; then
echo "OBJJ_HOME not set, defaulting to $OBJJ_HOME" 1>&2
else
echo "OBJJ_HOME not set, default at $OBJJ_HOME doesn't exist, exiting" 1>&2
exit 2
fi
fi
OBJJ_LIB="$OBJJ_HOME/lib"
NIB2CIB="$OBJJ_LIB/nib2cib/main.j"
# convert paths for Cygwin
if [[ `uname` == CYGWIN* ]]; then
OBJJ_HOME=`cygpath -w "$OBJJ_HOME"`
BAKE=`cygpath -w "$NIB2CIB"`
fi
objj $NIB2CIB $@
+40
View File
@@ -0,0 +1,40 @@
<?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>Name</key>
<string>nib2cib</string>
<key>Targets</key>
<array>
<dict>
<key>Name</key>
<string>nib2cib</string>
</dict>
</array>
<key>Configurations</key>
<array>
<dict>
<key>Name</key>
<string>Debug</string>
<key>Settings</key>
<dict>
<key>PREPROCESS</key>
<true/>
<key>FLAGS</key>
<string>-DDEBUG</string>
</dict>
</dict>
<dict>
<key>Name</key>
<string>Release</string>
<key>Settings</key>
<dict>
<key>PREPROCESS</key>
<true/>
<key>PREINTERPRET</key>
<true/>
</dict>
</dict>
</array>
</dict>
</plist>
-5
View File
@@ -1,5 +0,0 @@
CPBundleExecutable=nibtocib
CPBundleIdentifier=com.280North.nibtocib
CPBundleName=nibtocib
CPBundlePackageType=280N
-4
View File
@@ -36,8 +36,6 @@
<move file = "${Build.Products}/objj.class" tofile = "${Build.objj}/objj.class" />
<copy file = "${basedir}/objj.js" tofile = "${Build.objj}/objj.js" />
<copy file = "${basedir}/../Utilities/bridge.js" tofile = "${Build.objj}/bridge.js" />
<copy file = "${basedir}/objj" tofile = "${Build.objj}/objj" />
@@ -50,8 +48,6 @@
<antcall target = "prepare-release" />
<copy file = "${Build.objj}/objj.js" tofile = "${Build.Cappuccino.Tools.Lib}/objj.js" />
<copy file = "${Build.objj}/objj.class" tofile = "${Build.Cappuccino.Tools.Lib}/objj.class" />
<copy file = "${Build.objj}/bridge.js" tofile = "${Build.Cappuccino.Tools.Lib}/bridge.js" />
+1 -4
View File
@@ -28,7 +28,6 @@ CLASSPATH="$OBJJ_LIB:$OBJJ_LIB/js.jar"
OBJJ="$OBJJ_LIB/objj.js"
RLWRAP=`which rlwrap`
FRAMEWORKS="$STEAM_BUILD"
# if there's a "lib" directory, add all the jars from it
if [ -d "lib" ]; then
@@ -41,13 +40,11 @@ if [[ `uname` == CYGWIN* ]]; then
OBJJ_HOME=`cygpath -wp "$OBJJ_HOME"`
OBJJ_LIB=`cygpath -wp "$OBJJ_LIB"`
OBJJ=`cygpath -wp "$OBJJ"`
FRAMEWORKS=`cygpath -w "$FRAMEWORKS"`
STEAM_BUILD=`cygpath -w "$STEAM_BUILD"`
CLASSPATH=`cygpath -wp "$CLASSPATH"`
fi
#if [ -e $STEAM_BUILD/Objective-J.build/Release/Rhino ]; then
$RLWRAP java -classpath $CLASSPATH objj $OBJJ_LIB $STEAM_BUILD $@
$RLWRAP java -classpath $CLASSPATH objj $OBJJ_LIB $@
#$RLWRAP java -classpath $CLASSPATH org.mozilla.javascript.tools.shell.Main $OBJJ $OBJJ_LIB $STEAM_BUILD $@
#else
# echo "Missing frameworks at $STEAM_BUILD/Objective-J.build/Release/Rhino" 1>&2
+4 -4
View File
@@ -2,8 +2,8 @@ debug = false;
args = arguments;
var OBJJ_LIB = arguments[0];
var STEAM_BUILD = arguments[1];
arguments.splice(0, 2);
arguments.splice(0, 1);
if (typeof window == "undefined")
{
@@ -23,12 +23,12 @@ if (arguments.length > 0)
{
var main_file = arguments[0];
arguments.splice(0, 1);
if (debug)
print("Loading: " + main_file);
objj_import(main_file, NO);
serviceTimeouts();
if (debug)
+37 -2
View File
@@ -12,7 +12,11 @@ importClass(java.io.SequenceInputStream);
function Target(dictionary)
{
this._name = dictionary_getValue(dictionary, "name");
this._name = dictionary_getValue(dictionary, "Name");
var flagsString = dictionary_getValue(dictionary, "Flags");
this._flags = flagsString ? flagsString.split(/\s+/) : [];
this._exclusions = [];
@@ -52,9 +56,18 @@ Target.prototype.exclusions = function()
return this._exclusions;
}
Target.prototype.flags = function()
{
return this._flags;
}
function Configuration(dictionary)
{
this._name = dictionary_getValue(dictionary, "name");
this._name = dictionary_getValue(dictionary, "Name");
var flagsString = dictionary_getValue(dictionary, "Flags");
this._flags = flagsString ? flagsString.split(/\s+/) : [];
return this;
}
@@ -64,6 +77,11 @@ Configuration.prototype.name = function()
return this._name;
}
Configuration.prototype.flags = function()
{
return this._flags;
}
function Project(/*String*/ aFilePath, /*String*/ aBuildPath)
{
this._file = new File(aFilePath).getCanonicalFile();
@@ -151,6 +169,11 @@ Project.prototype.setActiveTarget = function(/*Target*/ aTarget)
this._buildObjects = null;
}
Project.prototype.activeTarget = function()
{
return this._activeTarget;
}
Project.prototype.setActiveConfiguration = function(/*Configuration*/ aConfiguration)
{
this._activeConfiguration = aConfiguration;
@@ -160,6 +183,11 @@ Project.prototype.setActiveConfiguration = function(/*Configuration*/ aConfigura
this._buildObjects = null;
}
Project.prototype.activeConfiguration = function()
{
return this._activeConfiguration;
}
Project.prototype.buildProducts = function()
{
if (!this._buildProducts)
@@ -193,6 +221,11 @@ Project.prototype.buildObjects = function()
return this._buildObjects;
}
Project.prototype.activeFlags = function()
{
return this.activeTarget().flags().concat(this.activeConfiguration().flags());
}
Project.prototype.build = function()
{
var jFiles = getFiles(this._root, "j", this._activeTarget.exclusions()),
@@ -201,6 +234,8 @@ Project.prototype.build = function()
shouldObjjPreprocess = true,
objjcComponents = ["bash", OBJJ_HOME + "/bin/objjc"];
objjcComponents = objjcComponents.concat(this.activeFlags());
if (!shouldObjjPreprocess)
objjcComponents.push("-E");