2003-07-31 23:52:10 +00:00
|
|
|
/*
|
|
|
|
NSImageCell.h
|
|
|
|
|
|
|
|
The cell class for NSImage
|
|
|
|
|
|
|
|
Copyright (C) 1999 Free Software Foundation, Inc.
|
|
|
|
|
|
|
|
Author: Jonathan Gapen <jagapen@chem.wisc.edu>
|
|
|
|
Date: 1999
|
|
|
|
|
|
|
|
This file is part of the GNUstep GUI Library.
|
|
|
|
|
|
|
|
This library is free software; you can redistribute it and/or
|
2007-10-29 21:16:17 +00:00
|
|
|
modify it under the terms of the GNU Lesser General Public
|
2003-07-31 23:52:10 +00:00
|
|
|
License as published by the Free Software Foundation; either
|
2007-10-29 21:16:17 +00:00
|
|
|
version 3 of the License, or (at your option) any later version.
|
|
|
|
|
2003-07-31 23:52:10 +00:00
|
|
|
This library is distributed in the hope that it will be useful,
|
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2007-10-29 21:16:17 +00:00
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
Lesser General Public License for more details.
|
2003-07-31 23:52:10 +00:00
|
|
|
|
2007-10-29 21:16:17 +00:00
|
|
|
You should have received a copy of the GNU Lesser General Public
|
2003-07-31 23:52:10 +00:00
|
|
|
License along with this library; see the file COPYING.LIB.
|
2007-10-29 21:16:17 +00:00
|
|
|
If not, see <http://www.gnu.org/licenses/> or write to the
|
|
|
|
Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
2006-11-06 13:58:37 +00:00
|
|
|
Boston, MA 02110-1301, USA.
|
2003-07-31 23:52:10 +00:00
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _GNUstep_H_NSImageCell
|
|
|
|
#define _GNUstep_H_NSImageCell
|
2006-11-06 13:58:37 +00:00
|
|
|
#import <GNUstepBase/GSVersionMacros.h>
|
2003-07-31 23:52:10 +00:00
|
|
|
|
|
|
|
#include <AppKit/NSCell.h>
|
|
|
|
|
|
|
|
typedef enum {
|
2003-12-31 00:12:36 +00:00
|
|
|
NSScaleProportionally = 0, // Fit proportionally
|
2003-07-31 23:52:10 +00:00
|
|
|
NSScaleToFit, // Forced fit (distort if necessary)
|
|
|
|
NSScaleNone // Don't scale (clip)
|
|
|
|
} NSImageScaling;
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
NSImageAlignCenter = 0,
|
|
|
|
NSImageAlignTop,
|
|
|
|
NSImageAlignTopLeft,
|
|
|
|
NSImageAlignTopRight,
|
|
|
|
NSImageAlignLeft,
|
|
|
|
NSImageAlignBottom,
|
|
|
|
NSImageAlignBottomLeft,
|
|
|
|
NSImageAlignBottomRight,
|
|
|
|
NSImageAlignRight
|
|
|
|
} NSImageAlignment;
|
|
|
|
|
|
|
|
typedef enum {
|
|
|
|
NSImageFrameNone = 0,
|
|
|
|
NSImageFramePhoto,
|
|
|
|
NSImageFrameGrayBezel,
|
|
|
|
NSImageFrameGroove,
|
|
|
|
NSImageFrameButton
|
|
|
|
} NSImageFrameStyle;
|
|
|
|
|
|
|
|
@interface NSImageCell : NSCell
|
|
|
|
{
|
|
|
|
// Attributes
|
|
|
|
NSImageAlignment _imageAlignment;
|
|
|
|
NSImageFrameStyle _frameStyle;
|
|
|
|
NSImageScaling _imageScaling;
|
|
|
|
NSSize _original_image_size;
|
|
|
|
}
|
|
|
|
|
|
|
|
//
|
|
|
|
// Aligning and scaling the image
|
|
|
|
//
|
|
|
|
- (NSImageAlignment) imageAlignment;
|
|
|
|
- (void) setImageAlignment: (NSImageAlignment)anAlignment;
|
|
|
|
- (NSImageScaling) imageScaling;
|
|
|
|
- (void) setImageScaling: (NSImageScaling)scaling;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Choosing the frame
|
|
|
|
//
|
|
|
|
- (NSImageFrameStyle) imageFrameStyle;
|
|
|
|
- (void) setImageFrameStyle: (NSImageFrameStyle)aFrameStyle;
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
#endif // _GNUstep_H_NSImageCell
|