Source

BWToolkit / BWGradientBox.m

Diff from to

BWGradientBox.m

 
 @synthesize fillStartingColor, fillEndingColor, fillColor, topBorderColor, bottomBorderColor;
 @synthesize topInsetAlpha, bottomInsetAlpha;
-@synthesize hasTopBorder, hasBottomBorder, hasGradient;
+@synthesize hasTopBorder, hasBottomBorder, hasGradient, hasFillColor;
 
 - (id)initWithCoder:(NSCoder *)decoder
 {
 		[self setHasTopBorder:[decoder decodeBoolForKey:@"BWGBHasTopBorder"]];
 		[self setHasBottomBorder:[decoder decodeBoolForKey:@"BWGBHasBottomBorder"]];
 		[self setHasGradient:[decoder decodeBoolForKey:@"BWGBHasGradient"]];
-		
+		[self setHasFillColor:[decoder decodeBoolForKey:@"BWGBHasFillColor"]];
+
 		[self setTopInsetAlpha:[decoder decodeFloatForKey:@"BWGBTopInsetAlpha"]];
 		[self setBottomInsetAlpha:[decoder decodeFloatForKey:@"BWGBBottomInsetAlpha"]];
 		
 	[coder encodeBool:[self hasTopBorder] forKey:@"BWGBHasTopBorder"];
 	[coder encodeBool:[self hasBottomBorder] forKey:@"BWGBHasBottomBorder"];
 	[coder encodeBool:[self hasGradient] forKey:@"BWGBHasGradient"];
-
+	[coder encodeBool:[self hasFillColor] forKey:@"BWGBHasFillColor"];
+	
 	[coder encodeFloat:[self topInsetAlpha] forKey:@"BWGBTopInsetAlpha"];
 	[coder encodeFloat:[self bottomInsetAlpha] forKey:@"BWGBBottomInsetAlpha"];
 } 
 	}
 	else
 	{
-		[fillColor set];
-		NSRectFillUsingOperation(self.bounds, NSCompositeSourceOver);
+		if (hasFillColor)
+		{
+			[fillColor set];
+			NSRectFillUsingOperation(self.bounds, NSCompositeSourceOver);	
+		}
 	}
 	
 	if (hasTopBorder)