correct imp type.
* Source/NSButtonCell.m (-setBackgroundColor:): Update the
control view.
* Source/NSSegmentedCell.m (-drawSegment:inFrame:withView:):
* Draw
image if available.
* Source/NSPopUpButtonCell.m (-initWithCoder:): Add work around
for NSClassSwapper cell replacement.
Patches based on changes by Josh Freeman
<pikopixel@twilightedge.com>
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39006 72102866-910b-0410-8b05-ffd578937521
for centerScanRect: with flipped view.
* Source/NSView.m (-centerScanRect:): Change to get the failed
tests to pass.
* Source/GSThemeTools.m (-drawRoundBezel:withColor:): Make round
bezel look a bit nicer.
* Source/NSButtonCell.m (-drawImage:withFrame:inView:): Use
centerScanRect: instead of similar code.
* Source/NSCell.m: Use imageRectForBounds: and
titleRectForBounds: in drawInteriorWithFrame:inView:.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38929 72102866-910b-0410-8b05-ffd578937521
* Source/NSButtonCell.m (-encodeWithCoder:): Correct bug with
image position in NSButtonFlags.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38526 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
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
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
file with key equivalent. Make sure that the image is properly
set.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35717 72102866-910b-0410-8b05-ffd578937521
for method setKeyEquivalent:forButtonCell:
* Source/GSThemeDrawing.m: Add implementation for method
setKeyEquivalent:forButtonCell:
* Source/NSButtonCell.m: Add call to new method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@35702 72102866-910b-0410-8b05-ffd578937521
and unsigned with NSUInteger. This allows to recompile gui on
64 bit systems after the change to NSNotFound in base.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34312 72102866-910b-0410-8b05-ffd578937521
* Headers/AppKit/NSCell.h: Move NSImageScaling constants to NSCell
* Source/NSImageCell.m:
* Source/NSCell.m: Refactor the image scaling logic to a private
method in NSCell, -_scaleImageWithSize:toFitInSize:scalingType:
which can be share by NSImageCell, NSButtonCell, and any other
cell classes that need it.
* Source/NSButtonCell.m:
* Headers/AppKit/NSButtonCell.h: Implement -imageScaling and
-setImageScaling methods.
* Source/GSThemeDrawing.m:
* Headers/Additions/GNUstepGUI/GSTheme.h: Remove the
-drawImage:inButtonCell:withFrame:position: API intended
to let themes substitute images right before drawing,
as IMHO it's the wrong place to hook in new images (by
the time this method was caleld, sizing/positionging
was already done).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34160 72102866-910b-0410-8b05-ffd578937521
Rename buttonBorderForCell:style:state: to buttonMarginsForCell:style:state:
and return the top/bottom/left/right margins instead of just two values.
(This is a theme API break.)
* Source/GSThemeDrawing.m: Implement buttonMarginsForCell:style:state:.
Also reduce the top and left margin of the default button by 1 pt, to
better reflect the button's appearance.
* Source/GSGuiPrivate.h: Add a GSRoundTowardsNegativeInfinity function
* Source/NSButtonCell.m (-drawImage:withFrame:inView:): Round the image
position down and to the right, as this seems to look the best.
* Source/NSButtonCell.m (-cellSize): Call new buttonMarginsForCell: method
* Source/NSButtonCell.m (-drawingRectForBounds:): Call new
buttonMarginsForCell: method
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33743 72102866-910b-0410-8b05-ffd578937521
* Source/NSButtonCell.m (-alternateTitle): Return @"" instead of nil
* Source/NSButtonCell.m (-attributedAlternateTitle): Use
[self alternateTitle] instead of accessing _altContents directly to guard
against _altContents being nil
* Source/NSButtonCell.m (-attributedTitle): Don't return nil. Use
[self title] instead of accessing _contents directly to guard against
_contents being nil
* Source/NSButtonCell.m (-keyEquivalent): Return @"" instead of nil
* Source/NSButtonCell.m (-encodeWithCoder):
For keyEquivelant and alternateTitle, now that the methods never return
nil, instead of checking if they return nil to decide whether to encode them,
check if the string length is > 0.
* Source/NSToolbarItem.m (-label): Return @"" instead of nil.
* Source/NSCell.m (-stringValue): Return @"" instead of nil
* Source/NSCell.m (-attributedStringValue): Don't return nil. Use
[self stringValue] instead of accessing _contents directly to guard against
_contents being nil.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33598 72102866-910b-0410-8b05-ffd578937521
-setAlternateImage:, -setImagePosition:): Update the control to
reflect the changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33350 72102866-910b-0410-8b05-ffd578937521
the point at which the image is drawn to the nearest pixel.
r32895 which reimplemented -[NSImage composite..] methods
on top of -[NSImage draw...] methods means that drawing
images with -compositeToPoint: no longer pixel-aligns
the image automatically. The new behaviour matches
Cocoa, however.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33002 72102866-910b-0410-8b05-ffd578937521
image or title. Neither of this is desirable as it prevents
temporarily hiding the image or title by changing the image
position. This makes the behavior of -setImagePosition: now fully
compatible with Mac OS X.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29704 72102866-910b-0410-8b05-ffd578937521
plenty of warnings and the result isn't working at least on 64 bit
machines :-(
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29685 72102866-910b-0410-8b05-ffd578937521
remove special case from NSCell setString:.
Removed unneeded NSSliderCell methods.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29142 72102866-910b-0410-8b05-ffd578937521
for drawButtonCell:...
* Source/GSThemeDrawing.m: Added implementation for new method. The
purpose of the method is to allow the theme to override images with
native images which may be theme dependent.
* Source/NSButtonCell.m: Use the new method.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@28522 72102866-910b-0410-8b05-ffd578937521
super string value methods and redefine the local string value
methods to work with the object value.
Patch by Matt Rice <ratmice@gmail.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27946 72102866-910b-0410-8b05-ffd578937521
Patch by Wolfgang Lux <wolfgang.lux@gmail.com>.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27579 72102866-910b-0410-8b05-ffd578937521
Don't do anything when the same contents view gets set on the window
again.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27308 72102866-910b-0410-8b05-ffd578937521