Commit graph

5565 commits

Author SHA1 Message Date
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
espectador
1cd93b15a4 Send events mouse entered only if the cursor rectangle is valid.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37214 72102866-910b-0410-8b05-ffd578937521
2013-10-09 19:07:36 +00:00
espectador
f96885c63e Set _lastPoint after update the cursor in NSWindow.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37213 72102866-910b-0410-8b05-ffd578937521
2013-10-09 18:52:39 +00:00
ericwa
ddbcf53054 * Source/GSThemeDrawing.m:
* Source/GSTheme.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add part names for
themeing bottom tabs.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37211 72102866-910b-0410-8b05-ffd578937521
2013-10-09 01:48:50 +00:00
ericwa
37404490a1 * Source/GSThemeDrawing.m (-drawBoxInClipRect:...):
* Source/NSBox.m (-calcSizesAllowingNegative):
Special case for box type NSBoxSeparator to draw a centered line


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37210 72102866-910b-0410-8b05-ffd578937521
2013-10-08 23:42:30 +00:00
ericwa
88a3f4a16e * Source/NSTabView.m: Fix incorrect content rect now that view
is flipped.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37209 72102866-910b-0410-8b05-ffd578937521
2013-10-08 20:30:28 +00:00
ericwa
3b991352f8 * Source/GSTheme.m (-tilesNamed:state:): Interpret .9.png files
as NinePatch=YES. If a tile isn't listed in GSThemeTiles in the
plist, try to find it in the ThemeTiles directory anyway. This
lets you avoid declaring tiles in the info plist.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37208 72102866-910b-0410-8b05-ffd578937521
2013-10-08 19:32:09 +00:00
ericwa
b1340d7958 * Source/GSThemeDrawing.m (NSBox): If drawing with theme tiles,
use actual clipping to clip a hole in the border, so we can avoid
filling anything with the background color.
* Source/NSBox.m (-isOpaque:): change to NO.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37207 72102866-910b-0410-8b05-ffd578937521
2013-10-08 18:22:15 +00:00
ericwa
d015c4a1c8 * Source/NSTabView.m: Uncomment - (BOOL) isFlipped { return YES; }
* Source/GSThemeDrawing.m: Change tab drawing to assume flipped
coordinates


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37206 72102866-910b-0410-8b05-ffd578937521
2013-10-08 17:35:44 +00:00
ericwa
4b5afa085d * Source/GSThemeDrawing.m: Rewrite tab drawing code to be more
organized, lay out the images in a straightforward way, and
allow themeing the fill part of the tab between the end images.
The output is almost pixel-identical to
the old code (only some unnoticable 1-pixel differences
in where shadows end). It's also organized so that adding support
for left and right tabs should be easy.
* Headers/Additions/GNUstepGUI/GSTheme.h: Add some part names
* Images/common_Tab*.tiff: Tweak to work with the new layout code.
All top images are now the same size, as are all bottom images.
* Images/GNUmakefile:
* Images/common_TabUnSelectToSelectedJunction.tiff: Renamed to
Images/common_TabUnSelectedToSelectedJunction.tiff
* Source/GSThemePrivate.h:
* Source/GSTheme.m: Add GSStringFromTabViewType utility function


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37205 72102866-910b-0410-8b05-ffd578937521
2013-10-08 08:01:23 +00:00
ericwa
8253cb0c29 * Source/GSThemeDrawing.m (-drawTableViewGridInClipRect:inView:):
Clean up grid drawing code; use rect fills to avoid blurriness.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37204 72102866-910b-0410-8b05-ffd578937521
2013-10-07 23:32:14 +00:00
ericwa
cb7205389d * Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSPopUpButtonCell.m:
Remove -[GSTheme drawBorderAndBackgroundForPopUpButtonCell:
withFrame:inView:state:] which I added recently, and just use
-[GSTheme drawButton:in:view:style:state]. This way,
NSPopUpButtonCell automatically supports all of the different
NSBezelStyles.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37202 72102866-910b-0410-8b05-ffd578937521
2013-10-07 07:29:13 +00:00
ericwa
703f72ff3c * Source/GSTitleView.m: Use the GSTheme
-setName:forElement:temporary: mechanism to bind the menu close
button's cell to the name GSMenuCloseButton, so themes can provide
a custom border for this button.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37201 72102866-910b-0410-8b05-ffd578937521
2013-10-07 06:23:02 +00:00
ericwa
3009711bf0 * Documentation/GuiUser/DefaultsSummary.gsdoc:
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSScroller.m: Add defaults GSScrollerScrollsByPage
and GSScrollerArrowsSameEnd to allow customizing scroller
behaviour beyond the combinations provided by NSInterfaceStyle.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37200 72102866-910b-0410-8b05-ffd578937521
2013-10-07 03:29:14 +00:00
ericwa
a2975a65f0 * Source/NSColor.m:
* Source/NSColorWell.m: Move code to draw the black and white
triangles background for transparent colors to
-[NSColor drawSwatchInRect:].


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37194 72102866-910b-0410-8b05-ffd578937521
2013-10-04 07:18:27 +00:00
ericwa
e6357523a4 * Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m:
* Source/NSBrowser.m:
* Source/NSTableHeaderCell.m: Add custom color names
tableHeaderTextColor and browserHeaderTextColor for
table and browser headers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37193 72102866-910b-0410-8b05-ffd578937521
2013-10-04 02:23:16 +00:00
ericwa
07d2fc465b * Source/NSMenuItemCell.m: If the cell is highlighted, draw
the arrow using NSHighlightedMenuArrow (if available).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37192 72102866-910b-0410-8b05-ffd578937521
2013-10-04 00:50:45 +00:00
ericwa
ddba9eefa8 * Source/GSThemeDrawing.m: Use new -[GSDrawTiles themeMargins]
to get the margins for draw tiles.
* Source/GSThemePrivate.h:
* Source/GSThemeTools.m: Get the 9-patch content rect support
working from end-to-end.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37191 72102866-910b-0410-8b05-ffd578937521
2013-10-03 22:24:57 +00:00
ericwa
edfc7a3923 * Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
* Source/GSThemeDrawing.m:
* Source/NSBox.m: Factor out -[NSBox drawRect:] to GSTheme
method -drawBoxInClipRect:boxType:borderType:inView:.
Add a tiles name GSBoxBorder for themeing the box border.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37188 72102866-910b-0410-8b05-ffd578937521
2013-10-03 19:52:05 +00:00
ericwa
97d5edec42 * Source/NSSliderCell.m: Support themeing the circular slider
with the image @"common_CircularSlider". Draw the dimple
with @"common_Dimple" instead of an NSBezierPath.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37186 72102866-910b-0410-8b05-ffd578937521
2013-10-03 06:55:45 +00:00
ericwa
d34a33eef0 * 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
2013-10-03 04:51:10 +00:00
ericwa
2d9baa6c5e * Source/NSMenuView.m (heightForItem:, yOriginForItem:):
Accept negative item indicies, which are passed in when
opening the preferences window in TextEdit. Need to investigate
further why that is happening.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37184 72102866-910b-0410-8b05-ffd578937521
2013-10-03 00:35:27 +00:00
ericwa
93eeb1101c * Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSTheme.m:
* Source/GSThemeDrawing.m:
* Source/NSPopUpButtonCell.m: Add a theme part GSPopUpButton
so NSPopUpButtonCell can be drawn with a different background
than NSMenuItemCell.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37183 72102866-910b-0410-8b05-ffd578937521
2013-10-02 23:56:16 +00:00
ericwa
3b57b63430 * Source/NSMenuView.m: Read the menu item/menu bar/separator
height from GSTheme.
* Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/GSThemeDrawing.m: Add -menuBarHeight, -menuItemHeight,
-menuSeparatorHeight. Corresponding defaults are GSMenuBarHeight,
GSMenuItemHeight, GSMenuSeparatorHeight


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37182 72102866-910b-0410-8b05-ffd578937521
2013-10-02 22:06:24 +00:00
ericwa
31c0b939b2 * Headers/Additions/GNUstepGUI/GSTheme.h:
* Source/NSScrollView.m:
* Source/GSThemeDrawing.m:
* Source/GSTheme.m: Add GSScrollViewUseBottomCorner default,
which themes can set to NO to leave a square gap in the bottom-
left (or bottom-right) corner where the horizontal and vertical
scrollers meet.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37176 72102866-910b-0410-8b05-ffd578937521
2013-09-30 05:53:21 +00:00
ericwa
c84655da3d * Source/NSBrowser.m: Fix some position calculations from the last
commit


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37175 72102866-910b-0410-8b05-ffd578937521
2013-09-30 02:29:28 +00:00
ericwa
17303e9182 * Source/NSBrowser.m:
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSBrowserUseBezels
user default. Themes can set it to NO to prevent NSBrowser from
drawing any bezels, even if separatesColumns is set to YES.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37174 72102866-910b-0410-8b05-ffd578937521
2013-09-30 00:38:09 +00:00
ericwa
b44e528c8c * Source/NSBrowser.m: Small refactoring to simplify code.
Remove update logic from -setSeparatesColumns: and just use
-tile. Tested by toggling "separates columns" flag in Gorm.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37173 72102866-910b-0410-8b05-ffd578937521
2013-09-29 22:44:57 +00:00
ericwa
176305a0e8 * Source/NSBrowser.m: Change NSBR_COLUMN_SEP and NSBR_VOFFSET
macros to static floats. Cache the values in +initialize and
when GSThemeDidActivateNotification is sent, by calling the
new GSTheme methods.
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add
-browserColumnSeparation and -browserVerticalPadding methods
which access user defaults GSBrowserColumnSeparation and
GSBrowserVerticalPadding. These determine the padding between
browser columns, and the vertical padding between the bottom
scroller, contents, and headers.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37171 72102866-910b-0410-8b05-ffd578937521
2013-09-29 19:36:08 +00:00
fredkiefer
a00b4fa98f * Source/NSImage.m: Better protection against representation being nil.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37169 72102866-910b-0410-8b05-ffd578937521
2013-09-29 16:37:59 +00:00
espectador
c5b6909179 Check the scrollview style to display the autocomplete window.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37166 72102866-910b-0410-8b05-ffd578937521
2013-09-29 07:14:01 +00:00
ericwa
d4dff12435 * Source/GSTheme.m:
* Source/GSTitleView.m:
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Add GSMenuTitleBackground
theme tile for themeing the background of GSTitleView.

NOTE: I removed some code that was in -[GSTitleView drawRect:] for
drawing with a different style when the GSTitleView is NOT owned
by an NSMenu, but by an NSWindow/NSPanel (_ownedByMenu == NO).
If needed, this can be added back, but it doesn't appear to ever
be used in gnustep-gui - GSTitleView is only created in one place,
with NSMenu as the owner.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37165 72102866-910b-0410-8b05-ffd578937521
2013-09-29 00:30:59 +00:00
ericwa
d81d463a64 * Source/NSCell.m (-highlight:withFrame:inView:):
Remove call to [controlView displayRect: cellFrame];
There was a comment saying it should be removed, and when
combined with the -[NSButtonCell isOpaque] change, it
was casuing scroller buttons to stay "stuck" down.
* Source/NSBrowser.m (-isOpaque):
* Source/NSButtonCell.m (-isOpaque):
* Source/NSColorWell.m (-isOpaque):
Force -isOpaque to return NO, because it's
possible to make all of these controls semitransparent with
theme tiles. This was visible with the Narcissus theme
(svn://svn.gna.org/svn/etoile/trunk/Etoile/Themes/Narcissus.theme)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37164 72102866-910b-0410-8b05-ffd578937521
2013-09-28 21:38:29 +00:00
ericwa
7a25520ef2 * Source/GSThemeDrawing.m: Add GSScrollerDefaultWidth user default
so non-code themes can change -[GSTheme defaultScrollerWidth]


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37163 72102866-910b-0410-8b05-ffd578937521
2013-09-28 20:40:42 +00:00
ericwa
ec3a8cd060 * Source/NSScroller.m: Add GSScrollerKnobOvershoot default which
allows themes to make the scroller knob overlap the scroller buttons
by a specified amount.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37162 72102866-910b-0410-8b05-ffd578937521
2013-09-28 18:51:00 +00:00
espectador
5ec2ca791b Don't change the location of submenus in NSMacintoshInterfaceStyle.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37161 72102866-910b-0410-8b05-ffd578937521
2013-09-27 22:20:12 +00:00
fredkiefer
b751aed5b0 * Source/NSBrowserCell.m (-drawInteriorWithFrame:inView:): Don't
draw string when editing.
        * Source/NSBrowserCell.m (-titleRectForBounds:): Implement to
        exactly match calculation in -drawInteriorWithFrame:inView:.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37159 72102866-910b-0410-8b05-ffd578937521
2013-09-27 13:10:23 +00:00
espectador
054851fa01 Close popup if user press a modifier flag an theme process events.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37158 72102866-910b-0410-8b05-ffd578937521
2013-09-27 07:47:01 +00:00
espectador
7baaaf9425 Revert last change and implement a better solution.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37157 72102866-910b-0410-8b05-ffd578937521
2013-09-27 04:33:30 +00:00
espectador
ecd8160ff7 Improvements at pulldown popups when the theme process events.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37154 72102866-910b-0410-8b05-ffd578937521
2013-09-25 05:42:27 +00:00
ivucica
b75ea68510 * Source/NSImage.m: Missing -retain inside the method
-drawInRect:fromRect:... caused a crash inside Opal backend.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37141 72102866-910b-0410-8b05-ffd578937521
2013-09-23 17:12:25 +00:00
ivucica
7cd5676bb5 * Source/NSImage.m: Missing -retain inside the method
-compositeToPoint:fromRect:operation:fraction caused a crash
inside Opal backend.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37140 72102866-910b-0410-8b05-ffd578937521
2013-09-23 16:58:18 +00:00
gcasa
c7652bd6d4 2013-09-18 18:17-EDT Gregory John Casamento <greg.casamento@gmail.com>
* Headers/AppKit/AppKit.h: Add NSTrackingArea.h                                                                                                         
        * Headers/AppKit/NSTrackingArea.h: Add interface for NSTrackingArea                                                                                     
        * Source/GNUmakefile: Add NSTrackingArea.[hm] to makefile.                                                                                              
        * Source/NSTrackingArea.m: Add implementation for NSTrackingArea  


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37112 72102866-910b-0410-8b05-ffd578937521
2013-09-18 22:19:12 +00:00
rmottola
9f329f337c silence more warnings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37102 72102866-910b-0410-8b05-ffd578937521
2013-09-17 23:19:12 +00:00
ivucica
04b988ee6b NSLayoutManager: advancementbuf[0] was not being filled. Most backends, including cairo, ignore advancements, so the bug was not immediately apparent until opal backend started using the advancements.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37100 72102866-910b-0410-8b05-ffd578937521
2013-09-17 21:58:21 +00:00
rmottola
7535e30d2d warning fix
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37088 72102866-910b-0410-8b05-ffd578937521
2013-09-17 09:39:47 +00:00
fredkiefer
00dc04169b * Source/NSBrowser.m (-setPath:): Fixed a bug where setting the
path to "/" would not deselect the cells.
  Based on patch by Frank Le Grand <frank.legrand@testplant.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37081 72102866-910b-0410-8b05-ffd578937521
2013-09-16 18:18:07 +00:00
rmottola
422bb8d17d Prepare for additional argument to function DGifOpen in newer libgif versions.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37078 72102866-910b-0410-8b05-ffd578937521
2013-09-13 15:50:05 +00:00
fredkiefer
2767d3548e * Source\NSAttributedString.m (-fixFontAttributeInRange:): In
* the
        absence of a NSFontAttributeName attribute, use a default font
to
        prevent the substitution from stopping. This fixes a bug where
        unicode characters would not get the proper font substitution.
        Patch by: Frank Le Grand <frank.legrand@testplant.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37027 72102866-910b-0410-8b05-ffd578937521
2013-08-30 15:30:22 +00:00
fredkiefer
23d7de30cb * Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m: Add new method -_printEventQueue.
* Source/NSWindow.m (-_checkCursorRectangles:forEvent:): Replace
  hack with proper functions that handle cursor rectangles.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37026 72102866-910b-0410-8b05-ffd578937521
2013-08-30 11:27:10 +00:00
fredkiefer
645a552a58 * Source/NSCursor.m (-mouseEntered:, -mouseExited:):
Add better debug output.
* Source/NSWindow.m (-_checkCursorRectangles:forEvent:): Add
hack that updates cursor rectangles more correctly.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37022 72102866-910b-0410-8b05-ffd578937521
2013-08-27 21:00:42 +00:00
fredkiefer
cc4fbf9642 * Headers/AppKit/NSTreeController.h,
* Headers/AppKit/NSTreeNode.h: Add method declarations to these
        * files.
        * Headers/AppKit/AppKit.h,
        * Source/GNUmakefile: Include new files.
        * Source/NSObjectController.m (+initialize, -selection): Get
        * basic
        binding example working.
        * Source/NSTreeController.m: Minimal implementation.
        * Source/NSTreeNode.m: Full implementation of this class.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36991 72102866-910b-0410-8b05-ffd578937521
2013-08-19 19:10:22 +00:00
fredkiefer
6590fa6a1f Add code by Nikolaus Schaller <hns@computer.org>, reformatted and
simplified.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36982 72102866-910b-0410-8b05-ffd578937521
2013-08-17 13:39:16 +00:00
lubosd
c209f41c6a * Headers/AppKit/NSSavePanel.h,
* Source/NSSavePanel.m: beginSheetModalForWindow: and
beginWithCompletionHander: implementations



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36968 72102866-910b-0410-8b05-ffd578937521
2013-08-12 18:10:38 +00:00
gcasa
24829740bc Add placeholder for NSStatusItem.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36950 72102866-910b-0410-8b05-ffd578937521
2013-08-08 20:28:33 +00:00
qmathe
16c2ec5de0 Fixed missing theme images if not listed in the theme bundle Info.plist.
Theme bundles that contain theme images named using either GNUstep or 
OPENSTEP names now work properly again (bug introduced in r36836).


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36916 72102866-910b-0410-8b05-ffd578937521
2013-07-22 15:24:32 +00:00
espectador
2e0bf31862 Move code of previous commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36906 72102866-910b-0410-8b05-ffd578937521
2013-07-18 23:04:22 +00:00
espectador
f229269213 Improvements for PopUp when should process events.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36902 72102866-910b-0410-8b05-ffd578937521
2013-07-17 23:34:20 +00:00
rmottola
2282989353 Add license to the Theme properties
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36889 72102866-910b-0410-8b05-ffd578937521
2013-07-15 13:20:41 +00:00
espectador
317ed00b80 Use arrow cursor in transient menus.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36875 72102866-910b-0410-8b05-ffd578937521
2013-07-12 05:03:34 +00:00
fredkiefer
6165cdf0c2 * Headers/Additions/GNUstepGUI/GSDisplayServer.h
* Source/GSDisplayServer.m: Add new method -setIgnoreMouse::
        * with
        empty implementation.
        * Source/NSWindow.m (-setIgnoresMouseEvents:): Use this new
        * method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36854 72102866-910b-0410-8b05-ffd578937521
2013-07-08 20:42:49 +00:00
espectador
f04d46ad46 Ignore the first mouse up in transient menus if style is NSWindows95InterfaceStyle.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36852 72102866-910b-0410-8b05-ffd578937521
2013-07-08 19:20:36 +00:00
espectador
bba3a51621 Revert last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36849 72102866-910b-0410-8b05-ffd578937521
2013-07-08 01:33:25 +00:00
espectador
c60b6b5c60 Prevent duplicate the cursor with -push.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36848 72102866-910b-0410-8b05-ffd578937521
2013-07-07 18:33:01 +00:00
fredkiefer
39a773e9e7 * Source/NSImageRep.m (-guiDrawInRect:...fraction:): Readd special
handling for printing as suggested by Eric Wasylishen <ewasylishen@gmail.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36847 72102866-910b-0410-8b05-ffd578937521
2013-07-07 15:26:21 +00:00
qmathe
f73c6013ba Added support for providing custom theme control images (e.g. checkbox) in the same way we support it for tiles
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36836 72102866-910b-0410-8b05-ffd578937521
2013-07-04 15:46:11 +00:00
rfm
b421bd0e50 fixes for bug reported by marcus
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36834 72102866-910b-0410-8b05-ffd578937521
2013-07-04 07:54:52 +00:00
ericwa
242003a698 Improve NSDrawThreePartImage implementation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36827 72102866-910b-0410-8b05-ffd578937521
2013-07-03 22:03:59 +00:00
ericwa
f9a2310183 Add NSDrawThreePartImage
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36824 72102866-910b-0410-8b05-ffd578937521
2013-07-03 16:19:24 +00:00
espectador
db5b56b068 Revert last change in NSCursor.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36806 72102866-910b-0410-8b05-ffd578937521
2013-07-03 00:05:31 +00:00
espectador
c4080b3b73 Improvements to handle cursors.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36802 72102866-910b-0410-8b05-ffd578937521
2013-07-02 16:57:54 +00:00
espectador
d7dc57f31a Fix memory leak in GSComboWindow.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36744 72102866-910b-0410-8b05-ffd578937521
2013-06-22 22:47:35 +00:00
espectador
762838d8df Fix problems with last commit.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36734 72102866-910b-0410-8b05-ffd578937521
2013-06-20 18:33:52 +00:00
espectador
3b9f2b264c Add autocomplete in NSTextView.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36733 72102866-910b-0410-8b05-ffd578937521
2013-06-19 18:40:28 +00:00
buzzdee
1fa605e73f bump version of NSParagraphStyle, and fix the decoder
makes Grr happy again loading its gorm files

OK Fred Kiefer



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36646 72102866-910b-0410-8b05-ffd578937521
2013-05-17 15:50:53 +00:00
espectador
9070a82bd5 Add -resetCursorRect:inView: in NSFormCell.m
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36620 72102866-910b-0410-8b05-ffd578937521
2013-05-14 18:39:36 +00:00
fredkiefer
4087333c3b * Source/GSNibLoading.m: Remove method [NSKeyedUnarchiver
-replaceObject:withObject:] which was moved to base.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36619 72102866-910b-0410-8b05-ffd578937521
2013-05-13 21:01:47 +00:00
fredkiefer
118dac6092 * Source/NSColorPanel.m (-_magnify:): Use a local auto release
pool in loop.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36613 72102866-910b-0410-8b05-ffd578937521
2013-05-11 20:32:20 +00:00
espectador
ba3be347fb Handle correctly the mouse cursor in NSSearchField.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36595 72102866-910b-0410-8b05-ffd578937521
2013-05-06 22:58:46 +00:00
gcasa
93e8ef8ada * Headers/AppKit/NSPopover.h: correct delegate method
for popoverShouldClose:
	* Headers/AppKit/NSWindow.h: add convertRectToScreen: and
	convertRectFromScreen: methods.
	* Source/NSPopover.m: Correct delegate method for popoverShouldClose:.
	Changes to align popover window with rect it is being placed relative
	to.
	* Source/NSWindow.m: implementation of convertRectToScreen: and
	convertRectFromScreen: methods.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36577 72102866-910b-0410-8b05-ffd578937521
2013-04-24 09:25:56 +00:00
fredkiefer
3c28ba9b1a * Source/GSXibLoader.m: Add -replaceObject:withObject: method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36573 72102866-910b-0410-8b05-ffd578937521
2013-04-23 21:40:34 +00:00
fredkiefer
8c6a5ecaac * Headers/AppKit/NSPopover.h,
* Source/NSPopover.m: Adjust to GNUstep coding standards.
        * Source/externs.m: Move new strings to here.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36555 72102866-910b-0410-8b05-ffd578937521
2013-04-21 21:32:36 +00:00
fredkiefer
2b9a93f163 * Source/NSCollectionView.m (-_moveUpAndExpandSelection:):
* Correct
        the comparision. Bug reported by Gregory John Casamento
        <greg.casamento@gmail.com>
        * Headers/AppKit/NSPopover.h: Add missing import.
        * Source/GSXibLoader.m: Disable NSCustomView hack again.
        * Headers/AppKit/NSApplication.h: Replace GSAppDelegateProtocol
        with NSApplicationDelegate.
        * Source/NSApplication.m: Adjust documentation to this
        * replacement.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36553 72102866-910b-0410-8b05-ffd578937521
2013-04-21 16:57:58 +00:00
gcasa
8df483e637 * Headers/AppKit/AppKit.h: Add NSPopover.h to set of files
included.
	* Headers/AppKit/NSApplication.h: Add NSApplicationDelegate.
	Inherit from GSAppDelegateProtocol.
	* Headers/AppKit/NSPopover.h: NSPopover header.
	* Source/GNUmakefile: Added NSPopover.[hm]
	* Source/GSXibLoader.m: Translate NSCustomView to NSView when
	unarchiving.
	* Source/NSPopover.m: Skeletal implementation of NSPopover.m.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36552 72102866-910b-0410-8b05-ffd578937521
2013-04-21 13:45:20 +00:00
fredkiefer
ab56e573e7 * Source/NSTableView.m (-selectedColumnIndexes,
* -selectedRowIndexes): Return an
        autoreleased copy of the corresponding ivar. Returning a
reference to the ivar
        leads to issues (and behavior different from Cocoa) when
iterating thru the
        indexsets if at a time they would be being altered.
        Patch by Frank LeGrand (flegrand@testplant.com).
        * Source/GNUmakefile: Add NSCollectionViewItem.
        * Headers/AppKit/NSCollectionView.h,
        * Headers/AppKit/NSCollectionViewItem.h,
        * Source/NSCollectionViewItem.m,
        * Source/NSCollectionView.m: Bring closer to the GNUstep coding
        * standard.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36551 72102866-910b-0410-8b05-ffd578937521
2013-04-21 13:28:47 +00:00
gcasa
06c706a7c8 * Headers/AppKit/NSCollectionView.h
* Headers/AppKit/NSCollectionViewItem.h
	* Source/GNUmakefile
	* Source/NSCollectionViewItem.m
	* Source/NSCollectionView.m: Added NSCollectionView and
	NSCollectionViewItem classes from testplant branch.  Made changes
	to original patch to conform to coding standards, NSCoding for
	non-keyed archiving and moved instances of float/integer to
	CGFloat and NSInteger/NSUInteger as appropriate.
	Patch by Doug Simons (dsimons@testplant.com) and
	Frank LeGrand (flegrand@testplant.com).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36545 72102866-910b-0410-8b05-ffd578937521
2013-04-18 03:57:49 +00:00
fredkiefer
44de437380 * Headers/AppKit/NSKeyValueBinding.h,
* Source/externs.m: Additional binding name
        * NSContentValuesBinding.
        * Source/NSPopUpButton.m: Add KVB for NSContentValuesBinding.
        Patch by Marcian Lytwyn <marcian.lytwyn@advcsi.com>
        * Source/NSArrayController.m: Encode/decode
        * clearsFilterPredicateOnInsertion.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36540 72102866-910b-0410-8b05-ffd578937521
2013-04-15 20:20:38 +00:00
ericwa
82a968380f * Source/GSTheme.m:
* Source/NSImage.m: Revert previous commit and write a much cleaner
implementation that fixes the same bug.

I removed the step in theme activation where we call
+[NSImage _setImagePath:name:] on each image in the theme, and instead
modified +[NSImage _pathForImageNamed:] to also search the theme images
directory.

When a GSTheme activates now, it only calls +[NSImage _reloadCachedImages]
which checks all NSImage cached by name and reloads any whose path has
changed.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36482 72102866-910b-0410-8b05-ffd578937521
2013-04-06 19:30:48 +00:00
ericwa
ac2faeaa9e Revert "Allow themes to override only a "base" image like"
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36481 72102866-910b-0410-8b05-ffd578937521
2013-04-06 19:30:30 +00:00
ericwa
709dcde42d Allow themes to override only a "base" image like
common_3DArrowRight and have images that map to it (NSMenuArrow)
automatically update.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36474 72102866-910b-0410-8b05-ffd578937521
2013-04-06 07:57:57 +00:00
fredkiefer
c9301f8873 * Source/NSBitmapImageRep+GIF.m (-_bitmapIsGIF:): Prepare for
additional argument to function DGifOpen in newer libgif
versions.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36459 72102866-910b-0410-8b05-ffd578937521
2013-04-03 18:30:46 +00:00
fredkiefer
6c68a82d02 Remove commented out old code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36394 72102866-910b-0410-8b05-ffd578937521
2013-03-20 22:15:26 +00:00
fredkiefer
0af714f9a3 * Source/GSToolTips.m (+initialize): Set the level of the tool
* tip
        window to NSPopUpMenuWindowLevel.
        Change suggested by Wolfgang Lux  <wolfgang.lux@gmail.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36393 72102866-910b-0410-8b05-ffd578937521
2013-03-20 22:10:38 +00:00
fredkiefer
e45644b3fd * Tests/gui/NSImage/basic.m: Add basic tests for NSImage.
* Tests/gui/NSCell/basic.m: Extend basic tests for NSCell.
        * Source/NSImage.m: Try to correct keyed encoding/decoding. Add
        incomplete isEqual: method.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36384 72102866-910b-0410-8b05-ffd578937521
2013-03-18 22:50:11 +00:00
fredkiefer
0334fe3bca * Source/NSViewController.m: Retain the view.
* Source/NSOutline.m(-drawRow:clipRect:): The selected cell
        * shows
        its first responder state.
        Patch by Frank LeGrand <frank.legrand@testplant.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36378 72102866-910b-0410-8b05-ffd578937521
2013-03-17 22:36:34 +00:00
fredkiefer
20dbc07afd * Source/NSEvent.m,
* Source/NSParagraphStyle.m: Use NSInteger instead of enumerator
        type name for decoding and encoding.
        * Header/AppKit/NSFontPanel.h,
        * Header/AppKit/NSOpenPanel.h,
        * Header/AppKit/NSDataLinkPanel.h,
        * Source/NSDataLinkPanel.m,
        * Header/AppKit/NSForm.h,
        * Source/NSForm.m,
        * Header/AppKit/NSHelpPanel.h,
        * Source/NSHelpPanel.m,
        * Source/NSColorPanel.m: Remove unused encoding/decoding
        * methods.
        * Source/NSCustomImageRep.m,
        * Source/NSEPSImageRep.m,
        * Source/NSMovie.m,
        * Source/NSRulerMarker.m,
        * Source/NSColorList.m: Flag missing keyed encoding/decoding.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36377 72102866-910b-0410-8b05-ffd578937521
2013-03-17 19:53:50 +00:00
fredkiefer
7ce551f716 * Source/NSTableView.m: Use new method -_isCellSelectableColumn:row:,
that checks the cells selectable state, in -mouseDown:.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36363 72102866-910b-0410-8b05-ffd578937521
2013-03-15 16:39:31 +00:00
fredkiefer
41c7b054f0 * Source/GSNibLoading.m (NSCustomView -nibInstantiateWithCoder:):
Re-add call to -replaceObject:withObject: on decoder, but this
time in the right place.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36329 72102866-910b-0410-8b05-ffd578937521
2013-03-10 13:39:00 +00:00
fredkiefer
12b5c60a5a * Source/NSTableColumn.m (-initWithCoder:): Make columns
non-editable by default.
* Source/NSTableView.m (-editColumn:...select:): Make editing
here independ of the datasource.
* Source/NSTableView.m: Split -_isCellEditableColumn:row: in two
methods and ignore the cell isEditable state in -mouseDown:.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36307 72102866-910b-0410-8b05-ffd578937521
2013-03-08 11:51:51 +00:00
fredkiefer
7dca29c6f1 * Source/NSBezierPath.m (-elementAtIndex:associatedPoints:): Fix
handling of close element.
Patch by Bluna Ratimonkey <object@gmail.com>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36304 72102866-910b-0410-8b05-ffd578937521
2013-03-08 08:59:18 +00:00
fredkiefer
7e3d936674 * Source/GSHorizontalTypesetter.m: Change floats into CGFloats to
stop infinite loop.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36282 72102866-910b-0410-8b05-ffd578937521
2013-03-05 22:33:57 +00:00
fredkiefer
afe3773e01 * Source/NSBezierPath.m: Implement keyed coding and complete
keyed decoding.
Patch by Christopher Armstrong <carmstrong@fastmail.com.au>
* Source/NSBezierPath.m: Rewrote -elementAtIndex:associatedPoints:
to return a point for NSClosePathBezierPathElement. And adjust
all callers to make use of that point. Complete non-keyed coding and
decoding.
* Tests/gui/NSBezierPath/basic.m: Add basic tests for NSBezierPath.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36267 72102866-910b-0410-8b05-ffd578937521
2013-03-04 16:51:10 +00:00
buzzdee
f5f233857e * Source/NSMenuItemCell.m
* Headers/AppKit/NSMenuItemCell.h
          float -> CGFloat transitions



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36238 72102866-910b-0410-8b05-ffd578937521
2013-03-02 18:06:25 +00:00
ericwa
aa261766b1 * Source/GSPDFPrintOperation.m: Update -_print and -deliverResult
to match GSEPSPrintOperation to get the class to at least partly
working. Output is appearing up-side-down for me though.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36203 72102866-910b-0410-8b05-ffd578937521
2013-02-28 09:40:36 +00:00
fredkiefer
dfbf8d0c39 * Source/NSindow.m (-setDelegate:): Don't unregister delegate
notifications if same delegate is set twice.
        Patch by Doug Simons <doug.simons@testplant.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36192 72102866-910b-0410-8b05-ffd578937521
2013-02-23 15:36:46 +00:00
fredkiefer
13adade3a8 Correct problems found by valgrind.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36188 72102866-910b-0410-8b05-ffd578937521
2013-02-22 15:39:29 +00:00
fredkiefer
78e4d15232 Add the timers for NSModalPanelRunLoopMode as well.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36187 72102866-910b-0410-8b05-ffd578937521
2013-02-22 11:28:06 +00:00
fredkiefer
f520eb658d * Source/NSTabView.m (-minimumSize, -contentRect): Make the
* values
        here consistent with the code in GSThemeDrawing.
        * Source/GSThemeDrawing.m (-drawTabViewRect:...): Remove useless
        line of code. 


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36184 72102866-910b-0410-8b05-ffd578937521
2013-02-22 09:26:55 +00:00
rmottola
ebaa526be2 Encode and decode lineBreakMode with NSInteger and not NSLineBreakMode
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36182 72102866-910b-0410-8b05-ffd578937521
2013-02-21 17:19:00 +00:00
fredkiefer
ff39f78a62 * Source/NSBitmapImageRep+PNG.m
(-_PNGRepresentationWithProperties:): Revert last change and
don't use png_info_init_3() on PNG >= 1.5.



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36178 72102866-910b-0410-8b05-ffd578937521
2013-02-21 08:53:31 +00:00
rmottola
22885a9de0 Define png_sizeof() to allow compilation on 1.6.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36177 72102866-910b-0410-8b05-ffd578937521
2013-02-20 23:42:11 +00:00
qmathe
087be03727 Fixed typo in comment
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36171 72102866-910b-0410-8b05-ffd578937521
2013-02-19 17:01:31 +00:00
qmathe
231105f428 Cleaned drop handling code a bit more in NSTableView
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36170 72102866-910b-0410-8b05-ffd578937521
2013-02-19 16:59:21 +00:00
qmathe
3145e67066 Don't update the drop row and operation if the drop target hasn't changed (this prevents to overwrite a custom drop row and operation set by the user)
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36169 72102866-910b-0410-8b05-ffd578937521
2013-02-19 16:03:28 +00:00
qmathe
8e2af0a5ab Extracted table view drop indicator drawing from -draggingUpdated: into a new method -_drawDropIndicator
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36168 72102866-910b-0410-8b05-ffd578937521
2013-02-19 15:57:04 +00:00
qmathe
7304ddbbe8 Modularized the first part of -draggingUpdated: into several smaller methods
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36167 72102866-910b-0410-8b05-ffd578937521
2013-02-19 15:18:53 +00:00
fredkiefer
0b7c1c3bd5 Fix compiler warnings reported by
Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36165 72102866-910b-0410-8b05-ffd578937521
2013-02-18 20:29:10 +00:00
fredkiefer
8793a644bd More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36163 72102866-910b-0410-8b05-ffd578937521
2013-02-17 22:44:47 +00:00
fredkiefer
6880e50086 Correct coding/decoding after type changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36160 72102866-910b-0410-8b05-ffd578937521
2013-02-17 16:53:48 +00:00
fredkiefer
695b0ae8e8 * Source/NSBezierPath.m: More keyed decoding.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36157 72102866-910b-0410-8b05-ffd578937521
2013-02-17 13:02:46 +00:00
fredkiefer
6a52d99499 More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36154 72102866-910b-0410-8b05-ffd578937521
2013-02-17 00:49:04 +00:00
fredkiefer
a7a48ea407 More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36153 72102866-910b-0410-8b05-ffd578937521
2013-02-16 21:37:29 +00:00
fredkiefer
a4abfc354f More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36148 72102866-910b-0410-8b05-ffd578937521
2013-02-16 00:08:33 +00:00
qmathe
9a8f8f4e07 Replaced -_dataCellForTableColumn:row: by -preparedCellAtColumn:row: new public method from Mac OS X 10.5
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36136 72102866-910b-0410-8b05-ffd578937521
2013-02-14 10:34:20 +00:00
fredkiefer
9531572fb4 * Source/GSXibLoader.m (GSXibKeyedUnarchiver -_preProcessXib:):
Release the document.
        Patch by Doug Simons <doug.simons@testplant.com>
        * Source/GSXibLoader.m: Fix a problem where owner,
        * firstResponder and application
        were put in the list of top-level objects, creating a
retain-cycle.
        * Source/NSViewController.m: Fix a problem where view
        * controllers
        did not release their top-level objects as expected.
        * Source/NSWindowController.m: Fix a problem where window
        controllers did not release their top-level objects as expected.
        Changes made in occordance with
        https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/LoadingResources/CocoaNibs/CocoaNibs.html
        Patch by Jonathan Gillaspie <jonathan.gillaspie@testplant.com>



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36134 72102866-910b-0410-8b05-ffd578937521
2013-02-14 09:22:56 +00:00