mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-25 04:57:03 +00:00
Factored image creation code so -description can be added
This commit is contained in:
@@ -94,23 +94,32 @@ var _CPCibCustomResourceClassNameKey = @"_CPCibCustomResourceClassNameKey",
|
||||
else if (_resourceName == "CPRemoveTemplate")
|
||||
return [[CPImage alloc] initWithContentsOfFile:[[CPBundle bundleForClass:[CPButtonBar class]] pathForResource:@"minus_button.png"] size:CGSizeMake(11, 4)];
|
||||
|
||||
var bundleClass = _properties.valueForKey(@"bundleClass"),
|
||||
bundle = nil;
|
||||
|
||||
if (bundleClass)
|
||||
{
|
||||
bundleClass = CPClassFromString(bundleClass);
|
||||
|
||||
if (bundleClass)
|
||||
bundle = [CPBundle bundleForClass:bundleClass];
|
||||
}
|
||||
|
||||
return [[CPImage alloc] initWithContentsOfFile:[(bundle || [aCoder bundle]) pathForResource:_resourceName] size:_properties.valueForKey(@"size")];
|
||||
return [self imageFromBundle:[aCoder bundle]];
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
- (CPImage)imageFromBundle:(CPBundle)aBundle
|
||||
{
|
||||
if (!aBundle)
|
||||
{
|
||||
var bundleClass = _properties.valueForKey(@"bundleClass");
|
||||
|
||||
if (bundleClass)
|
||||
{
|
||||
bundleClass = CPClassFromString(bundleClass);
|
||||
|
||||
if (bundleClass)
|
||||
aBundle = [CPBundle bundleForClass:bundleClass];
|
||||
}
|
||||
else
|
||||
aBundle = [CPBundle mainBundle];
|
||||
}
|
||||
|
||||
return [[CPImage alloc] initWithContentsOfFile:[aBundle pathForResource:_resourceName] size:_properties.valueForKey(@"size")];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
@implementation _CPCibCustomResource (CPImage)
|
||||
@@ -145,4 +154,11 @@ var _CPCibCustomResourceClassNameKey = @"_CPCibCustomResourceClassNameKey",
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (CPString)description
|
||||
{
|
||||
var image = [self imageFromBundle:nil];
|
||||
|
||||
return [image description];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user