From eb292e6d87eaac56b27e62fbb46bb2459418b445 Mon Sep 17 00:00:00 2001 From: Aparajita Fishman Date: Thu, 5 Apr 2012 19:57:30 -0700 Subject: [PATCH] Factored image creation code so -description can be added --- AppKit/Cib/_CPCibCustomResource.j | 40 +++++++++++++++++++++---------- 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/AppKit/Cib/_CPCibCustomResource.j b/AppKit/Cib/_CPCibCustomResource.j index 9d23958ea..a1dc2c703 100644 --- a/AppKit/Cib/_CPCibCustomResource.j +++ b/AppKit/Cib/_CPCibCustomResource.j @@ -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