Commit graph

5489 commits

Author SHA1 Message Date
fredkiefer
cfdbd263bb * Update release notes to prepare for upcoming release.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37492 72102866-910b-0410-8b05-ffd578937521
2013-12-23 16:57:18 +00:00
fredkiefer
7eca2d4194 * Source/GSXibLoader.m: Handle changed keys for XIB 4.6 format.
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
2013-12-13 20:34:52 +00:00
fredkiefer
f4ef0ffb77 * Source/NSTableView.m (-numberOfRows): Return the current number
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
2013-12-13 15:08:32 +00:00
fredkiefer
078ad71cec * Source/NSClipView.m (-setBounds:, -setBoundsSize:): Use
-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
2013-12-08 14:16:17 +00:00
fredkiefer
6440780eb2 * Source/NSClipView.m (-setDocumentView:): Don't take the
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
2013-12-07 20:55:26 +00:00
fredkiefer
bbfd47efe3 * Source/GSThemeDrawing.m (-drawScrollViewRect:inView:): Use the
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
2013-12-07 20:40:47 +00:00
fredkiefer
b355e85c95 * Source/NSBitmapImageRep+JPEG.m: Remove CYGWIN specific define
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
2013-12-06 17:45:37 +00:00
fredkiefer
3e9e68dd23 * Source/NSClipView.m (-setBounds:, -setBoundsSize:): Mark the
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
2013-12-03 22:18:04 +00:00
fredkiefer
99f4bd9648 * Source/GSThemeDrawing.m (-drawScrollViewRect:inView:): Use
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
2013-12-03 21:37:41 +00:00
fredkiefer
957f817a56 * Source/NSScroller.m (-drawKnobSlot): Draw the slot even when
the scroller is disabled.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37427 72102866-910b-0410-8b05-ffd578937521
2013-12-02 18:59:04 +00:00
fredkiefer
b6a7b5ad60 * Source/Functions.m (NSFrameRectWithWidth): Use one pixel width
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
2013-12-01 20:58:06 +00:00
fredkiefer
ca6ec91a49 * Headers/Additions/GNUstepGUI/GSModelLoaderFactory.h,
* 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
2013-12-01 12:26:12 +00:00
fredkiefer
935c45f00e * Source/NSGradient.m: Rearrange code to avoid duplicate
saveGraphicsState calls.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37407 72102866-910b-0410-8b05-ffd578937521
2013-11-24 20:25:23 +00:00
fredkiefer
803c50651d * Source/NSBitmapImageRep+GIF.m: Add define missing in libgif 5.0.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37405 72102866-910b-0410-8b05-ffd578937521
2013-11-24 11:56:33 +00:00
fredkiefer
be61e98fac * Source/NSBrowser.m (-selectionIndexPaths): Actually do the correction.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37404 72102866-910b-0410-8b05-ffd578937521
2013-11-24 11:08:02 +00:00
fredkiefer
929048423f * Source/NSBrowser.m (-selectionIndexPaths): Correct off by one
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
2013-11-23 17:04:56 +00:00
fredkiefer
cf3ba566ca * configure.ac: Detect new GifQuantizeBuffer function.
* configure: regenerate
        * Source/NSBitmapImageRep+GIF.m: Try to handle quantize again
          for libgif 5.0.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37400 72102866-910b-0410-8b05-ffd578937521
2013-11-22 23:02:17 +00:00
fredkiefer
9be38fcc46 * configure.ac: Try to improve the ICU detection.
* configure: regenerate
        * Headers/AppKit/NSTrackingArea.h
        * Source/NSTrackingArea.m: Remove compiler warnings.
        * Headers/AppKit/NSBrowser.h,
        * Source/NSBrowser.m: Add a few new Cocoa methods.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37399 72102866-910b-0410-8b05-ffd578937521
2013-11-22 22:44:37 +00:00
espectador
86c551f017 Set _lastPoint only for mouse entered events.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37398 72102866-910b-0410-8b05-ffd578937521
2013-11-22 19:21:02 +00:00
rmottola
c43f72954e Adapt for newer libgif versions of EGifOpen and renamed GifMakeMapObject.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37369 72102866-910b-0410-8b05-ffd578937521
2013-11-08 09:01:50 +00:00
ericwa
7b78ff24ba * Source/GSThemeDrawing.m (-highlightTableViewSelectionInClipRect:...):
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
2013-11-05 21:34:52 +00:00
buzzdee
dac39deb37 * Source/NSSpellChecker.m
int -> NSInteger transition

OK Fred



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37355 72102866-910b-0410-8b05-ffd578937521
2013-11-03 16:04:06 +00:00
fredkiefer
bb061a68cd * Source/GSServicesManager.m: Call the more modern
NSDocumentController methods to open documents.
        * Resources/English.lproj/Localizable.strings
        * Resources/Esperanto.lproj/Localizable.strings
        * Resources/French.lproj/Localizable.strings
        * Resources/German.lproj/Localizable.strings
        * Resources/Italian.lproj/Localizable.strings
        * Resources/Lojban.lproj/Localizable.strings
        * Resources/Spanish.lproj/Localizable.strings
        Regenerate string files.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37350 72102866-910b-0410-8b05-ffd578937521
2013-11-01 20:34:29 +00:00
rfm
a564598e45 fix caching for mutated attribute values
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37343 72102866-910b-0410-8b05-ffd578937521
2013-11-01 06:45:18 +00:00
fredkiefer
43b35bea00 * Source/GSHorizontalTypesetter.m (-layoutLineNewParagraph:):
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
2013-10-27 20:02:41 +00:00
rmottola
09ac2ff97f * Source/NSTextView.m (-mouseDown:): Use container origin for attachment cells.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37283 72102866-910b-0410-8b05-ffd578937521
2013-10-26 15:50:02 +00:00
fredkiefer
c2f1410076 * Source/NSMenuView.m (-heightForItem:): Use
-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
2013-10-25 22:34:18 +00:00
fredkiefer
58829e5f8d * Source/NSBitmapImageRep+PNG.m: Better cleanup on error.
* 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
2013-10-20 20:41:52 +00:00
fredkiefer
e00ae378c2 Add some OSX 10.6 methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37247 72102866-910b-0410-8b05-ffd578937521
2013-10-17 21:05:15 +00:00
ericwa
6ba92fb344 * Source/GSThemeDrawing.m:
* 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
2013-10-16 07:19:45 +00:00
ericwa
6cb79db929 * Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add methods
	-menuSubmenuHorizontalOverlap and -menuSubmenuVerticalOverlap
	wrapping user defaults GSMenuSubmenuHorizontalOverlap and
	GSMenuSubmenuVerticalOverlap
	* Source/NSMenuView.m (-locationForSubmenu:): Offset calculations
	by -[GSTheme menuSubmenuHorizontalOverlap] and
	-[GSTheme menuSubmenuVerticalOverlap]


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37243 72102866-910b-0410-8b05-ffd578937521
2013-10-16 07:08:15 +00:00
ericwa
3245adb05e * 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
2013-10-16 05:14:32 +00:00
ericwa
a6f9c9ab78 * Source/GSThemeDrawing.m (-drawColorWellBorder:...): Draw inner
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
2013-10-16 04:11:41 +00:00
ericwa
a11deb9ea1 * Source/GSThemePrivate.h:
* Source/GSThemeTools.m:
	* Source/GSThemeDrawing.m: Add explicit isFlipped: param to
	-[GSDrawTiles contentRectForRect:]


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37239 72102866-910b-0410-8b05-ffd578937521
2013-10-16 03:36:01 +00:00
ericwa
240f754c33 * Headers/Additions/GNUstepGUI/GSTheme.h: Remove GSScrollViewBottomCorner
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
2013-10-15 23:26:51 +00:00
ericwa
7ebdcd6517 * Source/NSTableView.m (-tile): Check the GSScrollViewNoInnerBorder
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
2013-10-15 20:33:46 +00:00
ericwa
cc79a86cb6 * Source/NSButtonCell.m:
* 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
2013-10-15 18:41:17 +00:00
ericwa
d2c40ca934 * Headers/Additions/GNUstepGUI/GSTheme.h: Add -tabViewContentRectForBounds:
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
2013-10-15 07:27:44 +00:00
ericwa
617357136a * Source/NSTabViewItem.m (-drawLabel:inRect:): Center label vertically
inside the tab.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37233 72102866-910b-0410-8b05-ffd578937521
2013-10-15 07:08:01 +00:00
ericwa
c673a06970 * Source/NSTabView.m (-initWithCoder:): Make non-keyed archives
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
2013-10-15 06:17:36 +00:00
ericwa
58a7b10047 * Source/GSThemeDrawing.m (-tabHeightForType:): Check for nil
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
2013-10-15 04:21:45 +00:00
ericwa
1c0c80227c * Source/GSThemeDrawing.m: Change stepper drawing methods to use
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
2013-10-14 20:52:55 +00:00
ericwa
c8c8f845ce * Headers/Additions/GNUstepGUI/GSTheme.h: Add three new theme
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
2013-10-14 17:18:38 +00:00
ericwa
fe37bc668a * Source/GSThemeDrawing.m (-drawTableViewBackgroundInClipRect:...):
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
2013-10-14 07:05:05 +00:00
ericwa
7267a3cd1a * Source/NSSliderCell.m (-drawKnob:): Don't fill the knob
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
2013-10-14 04:16:30 +00:00
ericwa
25d6d5d2f2 * Headers/Additions/GNUstepGUI/GSTheme.h:
* 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
2013-10-14 03:31:54 +00:00
ericwa
4ee6d51fd0 * Source/GSThemeTools.m (-initWithNinePatchImage:): Parse the
"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
2013-10-12 18:24:33 +00:00
ericwa
a92ca7df32 * Source/NSColorWell.m (-drawRect:): Remove incorrect intersection
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
2013-10-12 04:48:04 +00:00
ericwa
4444c54901 * Source/GSThemeTools.m: Fix unflipped/flipped coordinates bug
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
2013-10-12 04:33:59 +00:00
espectador
7a7cc128b9 Fix last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37215 72102866-910b-0410-8b05-ffd578937521
2013-10-09 19:45:55 +00:00