mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-09-27 12:47:42 +00:00
Merge branch 'loader' of github.com:280north/cappuccino into loader
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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 |
@@ -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)
|
||||
|
||||
|
||||
@@ -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
Executable
+46
@@ -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
|
||||
Reference in New Issue
Block a user