Merge branch 'loader' of github.com:280north/cappuccino into loader

This commit is contained in:
Nicholas Small
2010-02-04 14:14:36 -05:00
8 changed files with 1401 additions and 107 deletions
+13
View File
@@ -38,6 +38,14 @@ var CPThemeStatePressed = CPThemeState("pressed");
{
_textField = [[CPTextField alloc] initWithFrame:[self bounds]];
[_textField setAutoresizingMask:CPViewWidthSizable|CPViewHeightSizable];
[_textField setTextColor: [CPColor colorWithHexString: @"333333"]];
[_textField setValue:[CPFont boldSystemFontOfSize:12.0] forThemeAttribute:@"font"];
[_textField setValue:CPLeftTextAlignment forThemeAttribute:@"alignment"];
[_textField setVerticalAlignment:CPCenterVerticalTextAlignment];
[_textField setValue:CGSizeMake(0,1) forThemeAttribute:@"text-shadow-offset"];
[_textField setValue:[CPColor whiteColor] forThemeAttribute:@"text-shadow-color"];
[self addSubview:_textField];
}
@@ -77,6 +85,11 @@ var CPThemeStatePressed = CPThemeState("pressed");
{
[_textField sizeToFit];
}
- (void)setValue:(id)aValue forThemeAttribute:(id)aKey
{
[_textField setValue:aValue forThemeAttribute:aKey];
}
@end
@implementation CPTableHeaderView : CPView
+9 -5
View File
@@ -2172,9 +2172,13 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
}
}
CGContextMoveToPoint(context, minX, maxY);
CGContextAddLineToPoint(context, maxX, maxY);
//if the row after the current row is not selected then there is no need to draw the bottom grid line white.
if([indexes containsObject:indexes[i]+1])
{
CGContextMoveToPoint(context, minX, maxY);
CGContextAddLineToPoint(context, maxX, maxY);
}
}
CGContextClosePath(context);
@@ -2395,9 +2399,9 @@ CPTableViewFirstColumnOnlyAutoresizingStyle = 5;
rowIndex = [self rowAtPoint:aPoint];
if (rowIndex !== -1)
{
if(_draggedRowIndexes !== nil)
if ([_draggedRowIndexes count] > 0)
{
_draggedRowIndexes = nil;
_draggedRowIndexes = [CPIndexSet indexSet];
return;
}
// if the table has drag support then we use mouseUp to select a single row.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 133 B

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 B

After

Width:  |  Height:  |  Size: 129 B

+3
View File
@@ -70,6 +70,9 @@ task ("documentation", function()
{
if (executableExists("doxygen"))
{
if (OS.system(["ruby", FILE.join("Tools", "Documentation", "make_headers")]))
OS.exit(1); //rake abort if ($? != 0)
if (OS.system(["doxygen", FILE.join("Tools", "Documentation", "Cappuccino.doxygen")]))
OS.exit(1); //rake abort if ($? != 0)
+1 -5
View File
@@ -22,7 +22,7 @@ CPLogRegister(CPLogConsole);
dataSet1 = [],
dataSet2 = [];
for(var i = 1; i < 100; i++)
for(var i = 1; i < 500000; i++)
{
dataSet1[i - 1] = i;
dataSet2[i - 1] = i + 10;
@@ -75,8 +75,6 @@ CPLogRegister(CPLogConsole);
var column = [[CPTableColumn alloc] initWithIdentifier:String(i)];
[[column headerView] setStringValue:"Number "+i];
[[column headerView] sizeToFit];
//[column setWidth:[[column headerView] frame].size.width + 20];
[column setWidth:200.0];
[column setMinWidth:150.0];
@@ -160,8 +158,6 @@ CPLogRegister(CPLogConsole);
var column = [[CPTableColumn alloc] initWithIdentifier:String(i)];
[[column headerView] setStringValue:"Number "+i];
[[column headerView] sizeToFit];
//[column setWidth:[[column headerView] frame].size.width + 20];
[column setWidth:200.0];
[column setMinWidth:150.0];
File diff suppressed because it is too large Load Diff
+46
View File
@@ -0,0 +1,46 @@
#! /usr/bin/env ruby
@outputFiles = []
def makeHeaderFileFrom(fileName)
# Grab the entire file (text)
data = File.new(fileName).read
# Extract out all the "implementation" lines. Note, there may be
# more than on in a given .j file.
m = data.scan(/.*?(@implementation.*?\{.*?\})/m)
if m.length > 0
for i in 0...m.length
line = m[i][0]
# Skip category definitions
if not /.*?\(.*?\).*?\{/m.match(line)
# Extract the class name
m2 = line.scan(/.*?@implementation(.*?):.*/m)
if !m2.nil? && !m2[0].nil?
className = m2[0][0].strip()
# Change "implementation" to "interface", create the .h file, and write the interface
newLine = line.sub("implementation", "interface")
newFileName = File.dirname(fileName) + "/" + className + ".h"
f = File.new(newFileName, "w")
f.write(newLine + "\n@end")
f.close()
@outputFiles.push(newFileName)
end
end
end
end
end
fileList = Dir['AppKit/**/*.j'] + Dir['Foundation/**/*.j']
for fileName in fileList
makeHeaderFileFrom(fileName)
end
for fileName in @outputFiles
File.delete(fileName)
end