* Headers/Additions/GNUstepGUI/GSTheme.h:

* Source/GSTheme.m:
Declare GSSliderHorizontalTrack and GSSliderVerticalTrack
part names for themeing the background of NSSlider
* Source/GSThemeDrawing.m:
Add new drawSliderBorderAndBackground:frame:inCell:isHorizontal:
method to draw the slider border and background.
* Source/GSThemePrivate.h:
* Source/GSThemeTools.m:
Add a -size method on GSDrawTiles which returns the total
original size of the tiles, so we can easily compute a rect
that scales the tiles in only one dimension.
* Source/NSSliderCell.m:
Override _drawBorderAndBackgroundWithFrame: to call new
GSTheme method. Also, tweak the knob drawing code; the knob
is now centered and drawn at its native size. This still looks
correct with the default slider sizes create by Gorm.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37185 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Eric Wasylishen 2013-10-03 04:51:10 +00:00
parent d3be1c555f
commit 2347347cf9
7 changed files with 147 additions and 17 deletions

View file

@ -130,6 +130,15 @@ typedef enum {
- (GSThemeFillStyle) fillStyle;
- (void) setFillStyle: (GSThemeFillStyle)aStyle;
/**
* Returns the sum of the widths of the left, middle, and right tiles,
* and the sum of the heights of the top, center, and bottom tiles, before scaling.
*
* Can be used to calculate a rect to draw the tiles in such that they are only
* filled in one direction.
*/
- (NSSize) size;
@end
/** This is the panel used to select and inspect themes.