home *** CD-ROM | disk | FTP | other *** search
- /*
- NXBrowser.h
- Application Kit, Release 2.0
- Copyright (c) 1988, 1989, 1990, NeXT, Inc. All rights reserved.
- */
-
- #import "NSControl.h"
-
- @interface NSBrowser : NSControl
- {
- id target;
- id delegate;
- id _reserved1[3];
- SEL action;
- SEL doubleAction;
- id matrixClass;
- id cellPrototype;
- NSSize _reserved2;
- short _reserved4[4];
- unsigned short pathSeparator;
- char _reserved3[6];
- void *_private;
- }
-
- - initWithFrame:(NSRect)frameRect;
-
- - (void)dealloc;
- - (SEL)action;
- - setAction:(SEL)aSelector;
- - target;
- - setTarget:anObject;
- - (SEL)doubleAction;
- - setDoubleAction:(SEL)aSelector;
- - setMatrixClass:factoryId;
- - setCellClass:factoryId;
- - cellPrototype;
- - setCellPrototype:aCell;
- - delegate;
- - setDelegate:anObject;
- - setEnabled:(BOOL)flag;
-
- - setMultipleSelectionEnabled:(BOOL)flag;
- - (BOOL)isMultipleSelectionEnabled;
- - setBranchSelectionEnabled:(BOOL)flag;
- - (BOOL)isBranchSelectionEnabled;
- - setEmptySelectionEnabled:(BOOL)flag;
- - (BOOL)isEmptySelectionEnabled;
-
- - setHorizontalScrollerEnabled:(BOOL)flag;
- - (BOOL)isHorizontalScrollerEnabled;
- - setHorizontalScrollButtonsEnabled:(BOOL)flag;
- - (BOOL)areHorizontalScrollButtonsEnabled;
-
- - reuseColumns:(BOOL)flag;
- - separateColumns:(BOOL)flag;
- - (BOOL)columnsAreSeparated;
- - useScrollButtons:(BOOL)flag;
- - useScrollBars:(BOOL)flag;
- - getTitleFromPreviousColumn:(BOOL)flag;
-
- - (BOOL)isTitled;
- - setTitled:(BOOL)flag;
- - (NSRect)titleFrameOfColumn:(int)column;
- - setTitle:(NSString *)aString ofColumn:(int)column;
- - (NSString *)titleOfColumn:(int)column;
- - drawTitle:(NSString *)title inRect:(NSRect)aRect ofColumn:(int)column;
- - clearTitleInRect:(NSRect)aRect ofColumn:(int)column;
- - (float)titleHeight;
-
- - loadColumnZero;
- - (BOOL)isLoaded;
-
- - setPathSeparator:(NSString *)charaters;
- - setPath:(NSString *)path;
- - (NSString *)pathToColumn:(int)column;
-
- - displayColumn:(int)column;
- - reloadColumn:(int)column;
- - validateVisibleColumns;
- - displayAllColumns;
-
- - scrollColumnsRightBy:(int)shiftAmount;
- - scrollColumnsLeftBy:(int)shiftAmount;
- - scrollColumnToVisible:(int)column;
- - scrollUpOrDown:sender;
- - reflectScroll:clipView;
- - scrollViaScroller:sender;
- - updateScroller;
-
- - setLastColumn:(int)column;
- - addColumn;
-
- - setMinColumnWidth:(int)columnWidth;
- - (int)minColumnWidth;
- - setMaxVisibleColumns:(int)columnCount;
- - (int)maxVisibleColumns;
- - (int)numVisibleColumns;
- - (int)firstVisibleColumn;
- - (int)lastVisibleColumn;
- - (int)lastColumn;
- - (int)selectedColumn;
- - selectedCell;
- - getSelectedCells:(List *)aList;
- - (int)columnOf:matrix;
- - matrixInColumn:(int)column;
- - getLoadedCellAtRow:(int)row inColumn:(int)col;
- - selectAll:sender;
-
- - (NSRect)frameOfColumn:(int)column;
- - (NSRect)frameOfInsideColumn:(int)column;
-
- - tile;
-
- - drawRect:(NSRect)rect;
- - mouseDown:(NSEvent *)theEvent;
- - setFrameSize:(NSSize)_newSize;
- - sizeToFit;
-
- - acceptArrowKeys:(BOOL)acceptFlag andSendActionMessages:(BOOL)sendFlag;
- - keyDown:(NSEvent *)theEvent;
- - (BOOL)acceptsFirstResponder;
-
- - doClick:sender;
- - doDoubleClick:sender;
- - sendAction;
-
- @end
-
- @interface NSObject(BrowserDelegate)
- - (int)browser:sender getNumRowsInColumn:(int)column;
- - (int)browser:sender fillMatrix:matrix inColumn:(int)column;
- - browser:sender loadCell:cell atRow:(int)row inColumn:(int)column;
- - (NSString *)browser:sender titleOfColumn:(int)column;
- - (BOOL)browser:sender selectCell:(NSString *)title inColumn:(int)column;
- - (BOOL)browser:sender columnIsValid:(int)column;
- - browserWillScroll:sender;
- - browserDidScroll:sender;
- @end
-