Patch by Johannes Lundberg <johannes@brilliantservice.co.jp>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37518 72102866-910b-0410-8b05-ffd578937521
Based on patch by Marcian Lytwyn <marcian.lytwyn@advcsi.com>.
* Source/GSXibLoader.m (-parser:...): Warn about unsupported XIB 5 format.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37463 72102866-910b-0410-8b05-ffd578937521
of rows not the internal cached value.
Replace some occurences of int with NSInteger
and unsigned with NSUInteger.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37461 72102866-910b-0410-8b05-ffd578937521
-setNeedsDisplay: to redraw areas no longer covered by the
document view.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37441 72102866-910b-0410-8b05-ffd578937521
background colour from the document view.
Patch by Jeff Teunissen <deek@d2dc.net>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37440 72102866-910b-0410-8b05-ffd578937521
scrollview bounds instead of the scroller frame for drawing the
border.
Patch by Jeff Teunissen <deek@d2dc.net>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37438 72102866-910b-0410-8b05-ffd578937521
as it is no longer needed. I leave the code for this in for a
while.
Patch by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37435 72102866-910b-0410-8b05-ffd578937521
documentView as needing redisplay. Fixes#40776.
Based on patch by Jeff Teunissen <deek@d2dc.net>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37429 72102866-910b-0410-8b05-ffd578937521
NSRectFill() instead of line drawing to get sharper separator
lines.
* Source/GSThemeDrawing.m (-drawScrollerRect:...): Don't fill
with window background colour.
* Source/NSScroller.m (-drawRect:): Draw only the knob slot when
disabled.
* Source/NSScroller.m (-mouseDown:): Don't handle mouse down
event when disabled.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37428 72102866-910b-0410-8b05-ffd578937521
if a value of 0 is given. Fixes bug #40760
* Source/NSScroller.m: Move disable check out of -rectForPart:.
Fixes bug #40761.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37425 72102866-910b-0410-8b05-ffd578937521
* Source/GSModelLoaderFactory.m: Add new method +supportedTypes.
* Source/NSBundleAdditions.m: Use this new method to implement
NIB resource detection on top of the base methods instead of doing
it here.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37421 72102866-910b-0410-8b05-ffd578937521
error in last change.
Detected by Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37403 72102866-910b-0410-8b05-ffd578937521
Use color named @"highlightedTableRowBackgroundColor", if present in
the theme, to fill the selected row background.
* Source/GSThemeDrawing.m (-drawTableViewRow:clipRect:inView:):
When the row/column is selected, if the cell is a NSTextFieldCell,
set the text color to @"highlightedTableRowTextColor" before drawing the
cell (only if the theme defines that color).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37363 72102866-910b-0410-8b05-ffd578937521
Only adjust max_line_height to minimumLineHeight if it isn't zero.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37296 72102866-910b-0410-8b05-ffd578937521
-menuItemCellForItemAtIndex: to protect against an index being to
big. This happens when the menu does not send notifications and a
non-existing item gets highlighted.
* Source/NSMenuView.m (-menuItemCellForItemAtIndex:): Protect
against negative index values.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37279 72102866-910b-0410-8b05-ffd578937521
* Source/NSBitmapImageRep.m (_set_bit_value): Correct error in
bit operation. This should allow the code to work with 16 bit images.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37267 72102866-910b-0410-8b05-ffd578937521
* Source/GSThemeTools.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Small refactor:
most uses of -[GSTheme fillRect:withTiles:background:] use
[NSColor clearColor], so add a version without the background:
param.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37244 72102866-910b-0410-8b05-ffd578937521
* 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
border using part GSColorWellInnerBorder
* Source/GSTheme.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSColorWellInnerBorder
part name
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37240 72102866-910b-0410-8b05-ffd578937521
part name, instead themes should just provide a part called NSScrollView.
Add -scrollViewScrollersOverlapBorders method.
* Source/GSTheme.m: Remove GSScrollViewBottomCorner part name.
* Source/GSThemeDrawing.m: Add -scrollViewScrollersOverlapBorders.
* Source/GSThemeDrawing.m (-drawBrowserRect:...): If
-scrollViewScrollersOverlapBorders is enabled, fill the browser background
with the NSScrollView tile.
* Source/GSThemeDrawing.m (-drawScrollViewRect:...): If
-scrollViewScrollersOverlapBorders is enabled, fill the scroll view background
with the NSScrollView tile.
* Source/NSScroller.m (-rectForPart:): Change the meaning of the
GSScrollerKnobOvershoot default so the knob only overlaps the buttons
by this much (rather than both ends of the track). Turns out this is more
useful for themes.
* Source/NSScrollView.m (-tile): Add support for
-[GSTheme scrollViewScrollersOverlapBorders]
* Source/NSBrowser.m (-tile): Add support for
-[GSTheme scrollViewScrollersOverlapBorders] and
-[GSTheme scrollViewUseBottomCorner]
The overall point of these additions is to support NSScrollView and
NSBrowser looking like: http://jesseross.com/clients/gnustep/ui/concepts/
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37238 72102866-910b-0410-8b05-ffd578937521
user default to see whether to expand the corner view by 1pt or not.
* Source/GSThemeDrawing.m (-drawTableHeaderRect:inView:): Remove
special case which reduced the width of the last column header by 1pt.
I don't see any reason for doing that and it looks better to me without
the gap, and more uniform for themeing.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37237 72102866-910b-0410-8b05-ffd578937521
* Source/NSMenuItemCell.m: Make a shared -themeControlState in
NSButtonCell and eliminate duplicated code.
* Source/NSPopUpButtonCell.m: Add private declaration for
-[NSButtonCell themeControlState]
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37236 72102866-910b-0410-8b05-ffd578937521
method.
* Source/GSThemeDrawing.m:
* Source/NSTabView.m: Move the -contentRect implementation to GSTheme
so we can delegate to GSDrawTiles, if used.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37234 72102866-910b-0410-8b05-ffd578937521
call -selectTabViewItem: to select the current tab at unarchiving
time (keyed archives were already doing this.)
Comment: "N.B.: As a side effect, this discards the subview frame
and sets it to [self contentRect].
This is desirable because the subview frame will be different
depending on whether the arcive is from Cocoa or GNUstep,
and which GNUstep theme was active at save time.
However, it does mean that the tab view contents should be
prepared to resize slightly."
The immediate need for this is tab views were changed to use
flipped coordinates, so the subview frames stored in existing
archives are now in the wrong coordinate system.
This is essentially the same idea as NSScrollView calling -tile at the
end of -initWithCoder: so I hope it makes sense for tab views too.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37232 72102866-910b-0410-8b05-ffd578937521
before calling -size on an NSImage, for systems where this
corrupts the stack.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37231 72102866-910b-0410-8b05-ffd578937521
images. The stepper is too small to make decomposing it in to
border + bezel + arrow worthwhile; it's simpler to just use images.
* Images/GNUmakefile:
* Images/common_StepperDown.tiff:
* Images/common_StepperDownHighlighted.tiff:
* Images/common_StepperUp.tiff:
* Images/common_StepperUpHighlighted.tiff: Add stepper images
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37229 72102866-910b-0410-8b05-ffd578937521
control state: GSThemeFirstResponderState,
GSThemeHighlightedFirstResponderState,
and GSThemeSelectedFirstResponderState. This lets themes draw
custom first responder tiles, if the desired effect can't be
accomplished by drawing on top of an existing button.
* Source/GSThemeDrawing.m (-drawFocusFrame:inRect:):
Use tiles named "NSFocusRing" if available, else draw dotted
rect.
* Source/GSTheme.m:
* Source/NSButtonCell.m: Use new GSTheme*FirstResponderState
states
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37227 72102866-910b-0410-8b05-ffd578937521
Add support for drawing striped table backgrounds, using the colors
returned by [NSColor controlAlternatingRowBackgroundColors].
Currently not used because
-[NSTableView usesAlternatingRowBackgroundColors] is hardcoded to
return NO.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37226 72102866-910b-0410-8b05-ffd578937521
with a background color before drawing the cell. Seems pointless
- GNUstep's default knob image is opaque, but filling with a solid
color prevents transparent knob images from looking good.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37224 72102866-910b-0410-8b05-ffd578937521
* Source/GSTheme.m: Add GSProgressIndicatorBezel part name
* Source/GSThemeDrawing.m (-drawProgressIndicatorBezel:withClip:):
Use GSProgressIndicatorBezel to draw bezel if available.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37222 72102866-910b-0410-8b05-ffd578937521
"optiacal bounds" metadata in 9-patch images. It's stored
in the layoutRect ivar but not used otherwise.
See "Optical bounds layout" section of:
http://developer.android.com/about/versions/android-4.3.html
* Source/GSThemePrivate.h (GSDrawTiles): Add layoutRect ivar
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37219 72102866-910b-0410-8b05-ffd578937521
with clipping rect that was causing artifacts when scrolling a list
of color wells in Thematic.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37218 72102866-910b-0410-8b05-ffd578937521
in the 9-patch content rect parsing code. Add some comments.
Simplify contentRectForRect: implementation.
* Source/GSThemeDrawing.m (-browserHeaderDrawingRectForCell:...):
Use -contentRectForRect: to get the content rect instead of
incorrectly reading from ivar. Fixes broken text positioning
in browser header with Nesedah theme.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37217 72102866-910b-0410-8b05-ffd578937521