Copyright ©1995 by NeXT Computer, Inc. All Rights Reserved.
Slider |
Inherits From: | Control : View : Responder : Object | |
Declared In: | appkit/Slider.h |
Class Description |
Slider is a type of Control with a sliding knob that can be moved to represent a value between a minimum and a maximum. A Slider may be either horizontal or vertical, but its minimum value is always at the left or bottom end of the bar, and the maximum at the right or top. By default, a Slider is a continuous Control: it sends it action message to its target continuously while the user drags its knob. To configure a Slider to send its action only when the mouse is released, send setContinuous: with an argument of NO.
A Slider can be configured to display an image, a title, or both, in its bar behind its knob. A Slider's title can be drawn in any gray level or color, and in any font available. A Slider's value can be set programmatically with any of the standard Control value-setting methods, such as setFloatValue:. For more information on the behavior of these methods in Slider, see the SliderCell class specification. |
Instance Variables |
None declared in this class. |
Method Types |
Setting Slider's Cell Class | + setCellClass: | |
Initializing a new Slider | initFrame: |
Modifying a Slider's appearance |
setKnobThickness: |
knobThickness setImage: image setTitle: setTitleNoCopy: title setTitleCell: titleCell setTitleFont: titleFont setTitleColor: titleColor setTitleGray: titleGray isVertical |
Setting value limits | setMinValue: |
minValue setMaxValue: maxValue |
Resizing the Slider | sizeToFit | |
Handling events | acceptsFirstMouse |
setEnabled: mouseDown: |
Class Methods |
setCellClass: |
+ setCellClass:classId |
Configures the Slider class to use instances of classId for its Cells. classId should be the id of a subclass of SliderCell, obtained by sending the class message to either the SliderCell subclass object or to an instance of that subclass. The default Cell class is SliderCell. Returns self.
If this method isn't overridden by a subclass of Slider, then when it's sent to that subclass, Slider and any other subclasses of Slider that don't override the methods mentioned below will use the new Cell subclass as well. To safely set a Cell class for your subclass of Slider, override this method to store the Cell class in a static id. Also, override the designated initializer to replace the Slider subclass instance's Cell with an instance of the Cell subclass stored in that static id. See "Creating New Controls" in the Control class specification for more information. |
Instance Methods |
acceptsFirstMouse |
(BOOL)acceptsFirstMouse |
Returns YES since Sliders always accept a mouse-down event that activates a Window, whether or not the Slider is enabled. |
image |
image |
Returns the NXImage that the Slider displays in its bar, or nil if one hasn't been set.
See also: setImage: |
initFrame: |
initFrame:(const NXRect *)frameRect |
Initializes and returns the receiver, a new instance of Slider. The Slider will be horizontal if frameRect is wider than it is high; otherwise it will be vertical. By default, the Slider is continuous. After initializing the Slider, invoke the sizeToFit method to resize the Slider to accommodate its knob. This method is the designated initializer for the Slider class.
See also: sizeToFit, isVertical, isContinuous (Control), setContinuous: (Control) |
isVertical |
(int)isVertical |
Returns 1 if the Slider is vertical, 0 if it's horizontal, and 1 if the orientation can't be determined (because the Slider hasn't been initialized, for example). A Slider is vertical if its height is greater than its width. |
knobThickness |
(NXCoord)knobThickness |
Returns the thickness of the Slider's knob (that is, its extent along the bar's length) in the Slider's coordinate system.
See also: setKnobThickness: |
maxValue |
(double)maxValue |
Returns the maximum value of the Slider.
See also: setMaxValue:, minValue |
minValue |
(double)minValue |
Returns the minimum value of the Slider.
See also: setMinValue:, maxValue |
mouseDown: |
mouseDown:(NXEvent *)theEvent |
Tracks the mouse until a mouse-up event occurs, updating the knob's position to follow the cursor as it's dragged. Returns self.
See also: trackMouse:inRect:ofView: (SliderCell) |
setEnabled: |
setEnabled:(BOOL)flag |
If flag is YES, enables the Slider; if NO, disables the Slider. Redraws the interior of the Slider if autodisplay is on and the enabled state changes. Returns self.
See also: isEnabled (Control), setAutodisplay: (View) |
setImage: |
setImage:image |
Sets the NXImage used as the Slider's bar. This method doesn't scale the NXImage. Returns self. |
setKnobThickness: |
setKnobThickness:(NXCoord)aFloat |
Sets the thickness of the Slider's knob (that is, its extent along the bar's length) in its own coordinate system. aFloat must be greater than 0.0, and shouldn't be greater than the Slider's length. If the knob thickness changes, the Slider's inside is redrawn. Returns self.
See also: knobThickness |
setMaxValue: |
setMaxValue:(double)aDouble |
Sets the maximum value of the Slider to aDouble and returns self. If the maximum value changes, the Slider's inside is redrawn to reposition the knob relative to the new maximum.
See also: maxValue, setMinValue: |
setMinValue: |
setMinValue:(double)aDouble |
Sets the minimum value of the Slider to aDouble and returns self. If the minimum value changes, the Slider's inside is redrawn to reposition the knob relative to the new minimum.
See also: minValue, setMaxValue: |
setTitle: |
setTitle:(const char *)aString |
Sets the title drawn over the Slider's bar to aString. Returns self.
See also: setTitleNoCopy:, title |
setTitleCell: |
setTitleCell:aCell |
Sets the Cell used to draw the Slider's title. aCell should be an instance of TextFieldCell (or of a subclass). Doesn't redraw the Slider; furthermore, a setTitle: message is required to display a title, even if aCell already has a string value. Returns the old Cell.
See also: titleCell, setTitle: |
setTitleColor: |
setTitleColor:(NXColor)color |
Sets the color used to draw the Slider's title, redraws the Slider's inside, and returns self. The default is to draw in a gray level of 0.0 (NX_BLACK).
See also: titleColor, setTitleGray:, titleGray |
setTitleFont: |
setTitleFont:fontObject |
Sets the Font used to draw the SliderCell's title and redraws the Slider's inside. The default font is the default system font as set by the user (with the Preferences application), and its size is 12.0 point. Returns self.
See also: titleFont |
setTitleGray: |
setTitleGray:(float)aFloat |
Sets the gray value used to draw the Slider's title, redraws the Slider's inside, and returns self. The default gray level is 0.0 (NX_BLACK).
See also: titleGray, setTitleColor:, titleColor |
setTitleNoCopy: |
setTitleNoCopy:(const char *)aString |
Sets the title drawn over the Slider's bar to aString, but doesn't copy the string. Returns self.
See also: setTitle:, title |
sizeToFit |
sizeToFit |
The Slider is sized to fit its cell, and its width is adjusted so that its knob fits exactly in its border. Returns self. |
title |
(const char *)title |
Returns the string used as the Slider's title. The title is drawn over the Slider's bar. Returns self.
See also: setTitle: |
titleCell |
titleCell |
Returns the TextFieldCell used to draw the Slider's title. If the Slider doesn't have a title, a new TextFieldCell is created and returned. This doesn't result in a title getting set.
See also: setTitleCell: |
titleColor |
(NXColor)titleColor |
Returns the color used to draw the Slider's title. The default is to draw in a gray level of 0.0 (NX_BLACK). Returns self.
See also: setTitleColor:, titleGray, setTitleGray: |
titleFont |
titleFont |
Returns the Font used to draw the Slider's title. The default font is the default system font as set by the user (with the Preferences application), and its size is 12.0 point.
See also: setTitleFont: |
titleGray |
(float)titleGray |
Returns the gray value used to draw the Slider's title. The default gray level is 0.0 (NX_BLACK). Returns self.
See also: setTitleGray:, titleColor, setTitleColor: |