mirror of
https://github.com/gnustep/libs-gui.git
synced 2025-04-25 04:50:54 +00:00
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@21259 72102866-910b-0410-8b05-ffd578937521
190 lines
5 KiB
Objective-C
190 lines
5 KiB
Objective-C
/*
|
|
NSButtonCell.h
|
|
|
|
The cell class for NSButton
|
|
|
|
Copyright (C) 1996 Free Software Foundation, Inc.
|
|
|
|
Author: Scott Christley <scottc@net-community.com>
|
|
Ovidiu Predescu <ovidiu@net-community.com>
|
|
Date: 1996
|
|
|
|
This file is part of the GNUstep GUI Library.
|
|
|
|
This library is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU Library General Public
|
|
License as published by the Free Software Foundation; either
|
|
version 2 of the License, or (at your option) any later version.
|
|
|
|
This library is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Library General Public License for more details.
|
|
|
|
You should have received a copy of the GNU Library General Public
|
|
License along with this library; see the file COPYING.LIB.
|
|
If not, write to the Free Software Foundation,
|
|
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
*/
|
|
|
|
#ifndef _GNUstep_H_NSButtonCell
|
|
#define _GNUstep_H_NSButtonCell
|
|
|
|
#include <AppKit/NSActionCell.h>
|
|
|
|
@class NSFont;
|
|
@class NSSound;
|
|
|
|
typedef enum _NSButtonType {
|
|
NSMomentaryPushButton,
|
|
NSPushOnPushOffButton,
|
|
NSToggleButton,
|
|
NSSwitchButton,
|
|
NSRadioButton,
|
|
NSMomentaryChangeButton,
|
|
NSOnOffButton,
|
|
// These come from MacOSX
|
|
NSMomentaryLight,
|
|
NSMomentaryLightButton = NSMomentaryLight,
|
|
NSMomentaryPushInButton = NSMomentaryPushButton
|
|
} NSButtonType;
|
|
|
|
typedef enum _NSBezelStyle {
|
|
NSRoundedBezelStyle,
|
|
NSRegularSquareBezelStyle,
|
|
NSThickSquareBezelStyle,
|
|
NSThickerSquareBezelStyle,
|
|
// The next five no longer show up in the MacOSX documentation
|
|
NSNeXTBezelStyle,
|
|
NSPushButtonBezelStyle,
|
|
NSSmallIconButtonBezelStyle,
|
|
NSMediumIconButtonBezelStyle,
|
|
NSLargeIconButtonBezelStyle,
|
|
// But those two do
|
|
NSShadowlessSquareBezelStyle,
|
|
NSCircularBezelStyle
|
|
} NSBezelStyle;
|
|
|
|
typedef enum _NSGradientType {
|
|
NSGradientNone,
|
|
NSGradientConcaveWeak,
|
|
NSGradientConcaveStrong,
|
|
NSGradientConvexWeak,
|
|
NSGradientConvexStrong
|
|
} NSGradientType;
|
|
|
|
|
|
@interface NSButtonCell : NSActionCell
|
|
{
|
|
// Attributes
|
|
NSString *_altContents;
|
|
NSImage *_altImage;
|
|
NSString *_keyEquivalent;
|
|
NSFont *_keyEquivalentFont;
|
|
NSSound *_sound;
|
|
unsigned int _keyEquivalentModifierMask;
|
|
unsigned int _highlightsByMask;
|
|
unsigned int _showAltStateMask;
|
|
float _delayInterval;
|
|
float _repeatInterval;
|
|
NSBezelStyle _bezel_style;
|
|
NSGradientType _gradient_type;
|
|
BOOL _shows_border_only_while_mouse_inside;
|
|
BOOL _mouse_inside;
|
|
// Think of the following as a BOOL ivars
|
|
#define _buttoncell_is_transparent _cell.subclass_bool_one
|
|
#define _image_dims_when_disabled _cell.subclass_bool_two
|
|
}
|
|
|
|
//
|
|
// Setting the Titles
|
|
//
|
|
- (NSString *)alternateTitle;
|
|
- (void)setAlternateTitle:(NSString *)aString;
|
|
- (void)setFont:(NSFont *)fontObject;
|
|
- (void)setTitle:(NSString *)aString;
|
|
- (NSString *)title;
|
|
#ifndef STRICT_OPENSTEP
|
|
- (NSAttributedString *)attributedAlternateTitle;
|
|
- (NSAttributedString *)attributedTitle;
|
|
- (void)setAttributedAlternateTitle:(NSAttributedString *)aString;
|
|
- (void)setAttributedTitle:(NSAttributedString *)aString;
|
|
- (void)setTitleWithMnemonic:(NSString *)aString;
|
|
- (NSString *)alternateMnemonic;
|
|
- (unsigned)alternateMnemonicLocation;
|
|
- (void)setAlternateMnemonicLocation:(unsigned)location;
|
|
- (void)setAlternateTitleWithMnemonic:(NSString *)aString;
|
|
#endif
|
|
|
|
//
|
|
// Setting the Images
|
|
//
|
|
- (NSImage *)alternateImage;
|
|
- (NSCellImagePosition)imagePosition;
|
|
- (void)setAlternateImage:(NSImage *)anImage;
|
|
- (void)setImagePosition:(NSCellImagePosition)aPosition;
|
|
|
|
//
|
|
// Setting the Repeat Interval
|
|
//
|
|
- (void)getPeriodicDelay:(float *)delay
|
|
interval:(float *)interval;
|
|
- (void)setPeriodicDelay:(float)delay
|
|
interval:(float)interval;
|
|
|
|
//
|
|
// Setting the Key Equivalent
|
|
//
|
|
- (NSString *)keyEquivalent;
|
|
- (NSFont *)keyEquivalentFont;
|
|
- (unsigned int)keyEquivalentModifierMask;
|
|
- (void)setKeyEquivalent:(NSString *)key;
|
|
- (void)setKeyEquivalentModifierMask:(unsigned int)mask;
|
|
- (void)setKeyEquivalentFont:(NSFont *)fontObj;
|
|
- (void)setKeyEquivalentFont:(NSString *)fontName
|
|
size:(float)fontSize;
|
|
|
|
//
|
|
// Modifying Graphic Attributes
|
|
//
|
|
- (BOOL)isTransparent;
|
|
- (void)setTransparent:(BOOL)flag;
|
|
#ifndef STRICT_OPENSTEP
|
|
- (NSBezelStyle)bezelStyle;
|
|
- (void)setBezelStyle:(NSBezelStyle)bezelStyle;
|
|
- (BOOL)showsBorderOnlyWhileMouseInside;
|
|
- (void)setShowsBorderOnlyWhileMouseInside:(BOOL)show;
|
|
- (NSGradientType)gradientType;
|
|
- (void)setGradientType:(NSGradientType)gradientType;
|
|
- (BOOL)imageDimsWhenDisabled;
|
|
- (void)setImageDimsWhenDisabled:(BOOL)flag;
|
|
#endif
|
|
|
|
//
|
|
// Modifying Graphic Attributes
|
|
//
|
|
- (int)highlightsBy;
|
|
- (void)setHighlightsBy:(int)mask;
|
|
- (void)setShowsStateBy:(int)mask;
|
|
- (void)setButtonType:(NSButtonType)buttonType;
|
|
- (int)showsStateBy;
|
|
|
|
//
|
|
// Sound
|
|
//
|
|
#ifndef STRICT_OPENSTEP
|
|
- (void)setSound:(NSSound *)aSound;
|
|
- (NSSound *)sound;
|
|
#endif
|
|
|
|
//
|
|
// Mouse
|
|
//
|
|
#ifndef STRICT_OPENSTEP
|
|
- (void)mouseEntered:(NSEvent *)event;
|
|
- (void)mouseExited:(NSEvent *)event;
|
|
#endif
|
|
|
|
@end
|
|
|
|
#endif // _GNUstep_H_NSButtonCell
|