2003-07-31 23:52:10 +00:00
|
|
|
/*
|
|
|
|
NSForm.h
|
|
|
|
|
|
|
|
Form class, a matrix of text fields with labels
|
|
|
|
|
|
|
|
Copyright (C) 1996 Free Software Foundation, Inc.
|
|
|
|
|
|
|
|
Author: Ovidiu Predescu <ovidiu@net-community.com>
|
|
|
|
Date: March 1997
|
|
|
|
|
|
|
|
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_NSForm
|
|
|
|
#define _GNUstep_H_NSForm
|
2006-11-06 13:58:37 +00:00
|
|
|
#import <GNUstepBase/GSVersionMacros.h>
|
2003-07-31 23:52:10 +00:00
|
|
|
|
|
|
|
#include <AppKit/NSMatrix.h>
|
|
|
|
|
|
|
|
@class NSFormCell;
|
|
|
|
@class NSFont;
|
|
|
|
|
|
|
|
@interface NSForm : NSMatrix <NSCoding>
|
|
|
|
{
|
|
|
|
BOOL _title_width_needs_update;
|
|
|
|
}
|
|
|
|
//
|
|
|
|
// Laying Out the Form
|
|
|
|
//
|
|
|
|
- (NSFormCell*)addEntry:(NSString*)title;
|
|
|
|
- (NSFormCell*)insertEntry:(NSString*)title
|
|
|
|
atIndex:(int)index;
|
|
|
|
- (void)removeEntryAtIndex:(int)index;
|
|
|
|
- (void)setInterlineSpacing:(float)spacing;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Finding Indices
|
|
|
|
//
|
|
|
|
- (int)indexOfCellWithTag:(int)aTag;
|
|
|
|
- (int)indexOfSelectedItem;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Modifying Graphic Attributes
|
|
|
|
//
|
|
|
|
- (void)setBezeled:(BOOL)flag;
|
|
|
|
- (void)setBordered:(BOOL)flag;
|
|
|
|
- (void)setTextAlignment:(int)aMode;
|
|
|
|
- (void)setTextFont:(NSFont*)fontObject;
|
|
|
|
- (void)setTitleAlignment:(NSTextAlignment)aMode;
|
|
|
|
- (void)setTitleFont:(NSFont*)fontObject;
|
2007-08-29 14:59:29 +00:00
|
|
|
#if OS_API_VERSION(MAC_OS_X_VERSION_10_4, GS_API_LATEST)
|
|
|
|
- (void) setTitleBaseWritingDirection: (NSWritingDirection)direction;
|
|
|
|
- (void) setTextBaseWritingDirection: (NSWritingDirection)direction;
|
|
|
|
#endif
|
2003-07-31 23:52:10 +00:00
|
|
|
|
|
|
|
//
|
|
|
|
// Getting a Cell
|
|
|
|
//
|
|
|
|
- (id)cellAtIndex:(int)index;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Displaying a Cell
|
|
|
|
//
|
|
|
|
- (void)drawCellAtIndex:(int)index;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Editing Text
|
|
|
|
//
|
|
|
|
- (void)selectTextAtIndex:(int)index;
|
|
|
|
|
|
|
|
//
|
|
|
|
// Resizing the Form
|
|
|
|
//
|
|
|
|
- (void)setEntryWidth:(float)width;
|
|
|
|
|
|
|
|
// Private
|
|
|
|
-(void) _setTitleWidthNeedsUpdate: (NSNotification*)notification;
|
|
|
|
@end
|
|
|
|
|
|
|
|
APPKIT_EXPORT NSString *_NSFormCellDidChangeTitleWidthNotification;
|
|
|
|
|
|
|
|
#endif // _GNUstep_H_NSForm
|