* Source/GSThemePrivate.h:

* Source/GSTheme.m: Add GSStringFromImageFrameStyle
	* Source/GSThemeDrawing.m (-drawBorderForImageFrameStyle:...):
	Use GSStringFromImageFrameStyle to get tiles, if presentwq


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37242 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Eric Wasylishen 2013-10-16 05:14:32 +00:00
parent c05595c8be
commit 64432f901d
4 changed files with 50 additions and 16 deletions

View file

@ -1,3 +1,10 @@
2013-10-15 Eric Wasylishen <ewasylishen@gmail.com>
* Source/GSThemePrivate.h:
* Source/GSTheme.m: Add GSStringFromImageFrameStyle
* Source/GSThemeDrawing.m (-drawBorderForImageFrameStyle:...):
Use GSStringFromImageFrameStyle to get tiles, if present
2013-10-15 Eric Wasylishen <ewasylishen@gmail.com>
* Source/GSThemeDrawing.m (-drawColorWellBorder:...): Draw inner

View file

@ -253,6 +253,20 @@ GSStringFromTabViewType(NSTabViewType type)
}
}
NSString *
GSStringFromImageFrameStyle(NSImageFrameStyle type)
{
switch (type)
{
case NSImageFrameNone: return @"NSImageFrameNone";
case NSImageFramePhoto: return @"NSImageFramePhoto";
case NSImageFrameGrayBezel: return @"NSImageFrameGrayBezel";
case NSImageFrameGroove: return @"NSImageFrameGroove";
case NSImageFrameButton: return @"NSImageFrameButton";
default: return nil;
}
}
@interface NSImage (Private)
+ (void) _setImagePath: (NSString*)path name: (NSString*)name;
+ (void) _reloadCachedImages;

View file

@ -388,23 +388,35 @@
frame: (NSRect)frame
view: (NSView*)view
{
switch (frameStyle)
NSString *name = GSStringFromImageFrameStyle(frameStyle);
GSDrawTiles *tiles = [self tilesNamed: name state: GSThemeNormalState];
if (tiles == nil)
{
case NSImageFrameNone:
// do nothing
break;
case NSImageFramePhoto:
[self drawFramePhoto: frame withClip: NSZeroRect];
break;
case NSImageFrameGrayBezel:
[self drawGrayBezel: frame withClip: NSZeroRect];
break;
case NSImageFrameGroove:
[self drawGroove: frame withClip: NSZeroRect];
break;
case NSImageFrameButton:
[self drawButton: frame withClip: NSZeroRect];
break;
switch (frameStyle)
{
case NSImageFrameNone:
// do nothing
break;
case NSImageFramePhoto:
[self drawFramePhoto: frame withClip: NSZeroRect];
break;
case NSImageFrameGrayBezel:
[self drawGrayBezel: frame withClip: NSZeroRect];
break;
case NSImageFrameGroove:
[self drawGroove: frame withClip: NSZeroRect];
break;
case NSImageFrameButton:
[self drawButton: frame withClip: NSZeroRect];
break;
}
}
else
{
[self fillRect: frame
withTiles: tiles
background: [NSColor clearColor]];
}
}

View file

@ -40,6 +40,7 @@ NSString *GSStringFromSegmentStyle(NSSegmentStyle segmentStyle);
NSString *GSStringFromBezelStyle(NSBezelStyle bezelStyle);
NSString *GSStringFromBorderType(NSBorderType borderType);
NSString *GSStringFromTabViewType(NSTabViewType type);
NSString *GSStringFromImageFrameStyle(NSImageFrameStyle type);
/** These are the nine types of tile used to draw a rectangular object.
*/