ftp.nice.ch/peanuts/GeneralData/Documents/openstep/OpenStepSpec_rtf.tar.gz#/OpenStepSpec_rtf/ApplicationKit/Classes/NSBrowser.rtf

This is NSBrowser.rtf in view mode; [Download] [Up]

paperh18648 margl-907 margr0 margt0 margb0 fi0 ri0 ql sb0 f1 fs24 Copyright f3 'e3f1 1994 by NeXT Computer, Inc.  All Rights Reserved.

s4 li100 fi0 ri1007 ql f0 b fs36 fs100 
fs36 NSBrowser
pard s14 li2872 fi-2771 ri1007 ql tx2872 f1 b0 fs28 fs48 
fs28 f0 b fs24 Inherits From:tab b0 fs28 f1 NSControl : NSView : NSResponder : NSObject
fs20 
fs28 s7 f0 b fs24 Conforms To:tab b0 fs28 f1 NSCoding (NSResponder)
fi0 NSObject (NSObject)
fs20 
fs28 s8 fi-2771 f0 b fs24 Declared In:tab b0 fs28 f1 AppKit/NSBrowser.h 
fs20 
fs28 pard s19 li100 fi0 ri1007 ql f0 b fs28 fs20 
fs28 Class Description
fs14 
fs28 pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs2 
fs28 NSBrowser provides a user interface for displaying and selecting items from a list of data, or from hierarchically organized lists of data such as directory paths. When working with a hierarchy of data, the levels are displayed in columns, which are numbered from left to right, beginning with 0. Each column consists of an NSScrollView containing an NSMatrix filled with NSBrowserCells. NSBrowser relies on a delegate to provide the data in its NSBrowserCells. See the NSBrowserCell class description for more on its implementation.
fs16 
fs28 pard s18 li477 fi0 ri1007 ql f0 b fs24 fs4 
fs24 Browser Selection
pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs28 fs16 
fs28 An entry in an NSBrowser'27s column can be either a branch node (such as a directory) or a leaf node (such as a file). When the user selects a single branch node entry in a column, the NSBrowser sends itself the b addColumnb0  message, which messages its delegate to load the next column. The user'27s selection can be represented as a character string; if the selection is hierarchical (for example, a filename within a directory), each component of the path to the selected node is separated by 'aa/'ba. To use some other character as the delimiter, invoke b setPathSeparator:b0 .
fs16 
fs28 An NSBrowser can be set to allow selection of multiple entries in a column, or to limit selection to a single entry. When set for multiple selection, it can also be set to limit multiple selection to leaf nodes only, or to allow selection of both types of nodes together.
fs16 
fs28 As a subclass of NSControl, NSBrowser has a target object and action message. Each time the user selects one or more entries in a column, the action message is sent to the target. NSBrowser also adds an action to be sent when the user double-clicks on an entry, which allows the user to select items without any action being taken, and then double-click to invoke some useful action such as opening a file.
fs16 
fs28 pard s18 li477 fi0 ri1007 ql f0 b fs24 fs4 
fs24 User Interface Features
pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs28 fs16 
fs28 The user interface features of an NSBrowser can be changed in a number of ways. The NSBrowser may or may not have a horizontal scroller. (The NSBrowser'27s columns, by contrast, always have vertical scrollers'd0although a scroller'27s buttons and knob might be invisible if the column doesn'27t contain many entries.) You generally shouldn'27t create an NSBrowser without a horizontal scroller; if you do, you must make sure the bounds rectangle of the NSBrowser is wide enough that all the columns can be displayed. An NSBrowser'27s columns may be bordered and titled, bordered and untitled, or unbordered and untitled. A column'27s title may be taken from the selected entry in the column to its left, or may be provided explicitly by the NSBrowser or its delegate.
fs16 
fs28 pard s18 li477 fi0 ri1007 ql f0 b fs24 fs4 
fs24 NSBrowser'27s Delegate
pard s1 li477 fi0 ri1007 ql tx2494 tx2872 tx3250 f1 b0 fs28 fs16 
fs28 NSBrowser requires a delegate to provide it with data to display. The delegate is responsible for providing the data and for setting each item as a branch or leaf node, enabled or disabled. It can also receive notification of events like scrolling and requests for validation of columns that may have changed. 
fs16 
fs28 You can implement one of two delegate types: active or passive. An active delegate creates a column'27s rows (that is, the NSBrowserCells) itself, while a passive one leaves that job to the NSBrowser. Normally, passive delegates are preferable, because they'27re easier to implement. An active delegate must implement b browser:createRowsForColumn:inMatrix:b0  to create the rows of the specified column. A passive delegate, on the other hand, must implementb  browser:numberOfRowsInColumn:b0  to let the NSBrowser know how many rows to create. These two methods are mutually exclusive; you can implement one or the other, but not both. (The NSBrowser ascertains what type of delegate it has by which method the delegate responds to.)
fs16 
fs28 Both types of delegate implement b browser:willDisplayCell:atRow:column:b0  to set up state (such as the cell'27s string value and whether the cell is a leaf or a branch) before an individual cell is displayed. (This delegate method doesn'27t need to invoke NSBrowserCell'27s b setLoaded:b0  method, because the NSBrowser can determine that state by itself.) An active delegate can instead set all the cells'27 state at the time the cells are created, in which case it doesn'27t need to implement b browser:willDisplayCell:atRow:column:b0 . However, a passive delegate must always implement this method.
fs16 
fs28 pard s19 li100 fi0 ri1007 ql f0 b fs24 
fs28 Setting the Delegate 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (id)b delegateb0 tab Returns the NSBrowser'27s delegate.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setDelegate:b0 (id)i anObjecti0 tab Sets the NSBrowser'27s delegate to i anObjecti0 . Raises NSBrowserIllegalDelegateException if the delegate specified by i anObjecti0  doesn'27t respond to b browser:willDisplayCell:atRow:column:b0  and either of the methods b browser:numberOfRowsInColumn:b0  or b browser:createRowsForColumn:inMatrix:
pard s19 li100 fi0 ri1007 ql f0 fs48 
fs28 Target and Action 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (SEL)b doubleActionb0 tab Returns the NSBrowser'27s double-click action method.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b sendActionb0 tab Sends the action message to the target. Returns YES upon success, NO if no responder for the message could be found. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setDoubleAction:b0 (SEL)i aSelectori0 tab Sets the NSBrowser'27s double-click action to i aSelectori0 .
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Setting Component Classes 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 + (Class)b cellClasstab b0 Returns the NSBrowserCell class (regardless of whether a b setCellClass:b0  message has been sent to a particular instance).
fi-6552 fs16 
fs28 fi-6552 {f3 -} (id)b cellPrototypeb0 tab Returns the NSBrowser'27s prototype NSCell.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (Class)b matrixClasstab b0 Returns the class of NSMatrix used in the NSBrowser'27s columns.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setCellClass:b0 (Class)i classIdi0 tab Sets the class of NSCell used in the columns of the NSBrowser.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setCellPrototype:b0 (NSCell *)i aCelli0 tab Sets the NSCell instance copied to display items in the columns of NSBrowser.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setMatrixClass:b0 (Class)i classIdi0 tab Sets the class of NSMatrix used in the NSBrowser'27s columns.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Setting NSBrowser Behavior 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (BOOL)b reusesColumnsb0 tab Returns YES if NSMatrix objects aren'27t freed when their columns are unloaded. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setReusesColumns:b0 (BOOL)i flagi0 tab If i flag i0 is YES, prevents NSMatrix objects from being freed when their columns are unloaded, so they can be reused.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setTakesTitleFromPreviousColumn:b0 (BOOL)i flagi0 tab 
s11 li7030 fi-6553 fi-5796 tab Sets whether the title of a column is set to the string value of the selected NSCell in the previous column.
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b takesTitleFromPreviousColumntab b0 Returns YES if the title of a column is set to the string value of the selected NSCell in the previous column.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Allowing Different Types of Selection 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (BOOL)b allowsBranchSelectionb0 tab Returns whether the user can select branch items when multiple selection is enabled.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b allowsEmptySelectionb0 tab Returns whether there can be nothing selected.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b allowsMultipleSelectionb0 tab Returns whether the user can select multiple items.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setAllowsBranchSelection:b0 (BOOL)i flagi0 tab Sets whether the user can select branch items when multiple selection is enabled.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setAllowsEmptySelection:b0 (BOOL)i flagi0 tab Sets whether there can be nothing selected.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setAllowsMultipleSelection:b0 (BOOL)i flagi0 tab Sets whether the user can select multiple items.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Setting Arrow Key Behavior
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (BOOL)b acceptsArrowKeystab b0 Returns YES if the arrow keys are enabled.tab 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b sendsActionOnArrowKeystab b0 Returns NO if pressing an arrow key only scrolls the browser, YES if it also sends the action message specified by b setAction:b0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setAcceptsArrowKeys:b0 (BOOL)i flagi0 tab Enables or disables the arrow keys.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setSendsActionOnArrowKeys:b0 (BOOL)i flagi0 tab Sets whether pressing an arrow key will cause the action message to be sent (in addition to causing scrolling). 
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Showing a Horizontal Scroller 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b setHasHorizontalScroller:b0 (BOOL)i flagi0 tab Sets whether an NSScroller is used to scroll horizontally.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b hasHorizontalScrollerb0 tab Returns whether an NSScroller is used to scroll horizontally.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Setting the NSBrowser'27s Appearance 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (int)b maxVisibleColumnsb0 tab Returns the maximum number of visible columns. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b minColumnWidthb0 tab Returns the minimum column width.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b separatesColumnsb0 tab Returns whether columns are separated by bezeled borders.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setMaxVisibleColumns:b0 (int)i columnCounti0 tab Sets the maximum number of columns displayed.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setMinColumnWidth:b0 (int)i columnWidthi0 tab Sets the minimum column width.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setSeparatesColumns:b0 (BOOL)i flagi0 tab Sets whether to separate columns with bezeled borders.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Manipulating Columns 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b addColumnb0 tab Adds a column to the right of the last column.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b columnOfMatrix:b0 (NSMatrix *)i matrixi0 tab Returns the column number in which i matrixi0  is located.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b displayAllColumnsb0 tab Updates the NSBrowser to display all loaded columns.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b displayColumn:b0 (int)i columni0 tab Updates the NSBrowser to display the column with the given index.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b firstVisibleColumnb0 tab Returns the index of the first visible column.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b isLoadedb0 tab Returns whether column zero is loaded.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b lastColumnb0 tab Returns the index of the last column loaded.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b lastVisibleColumnb0 tab Returns the index of the last visible column.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b loadColumnZerob0 tab Loads column zero; unloads previously loaded columns.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b numberOfVisibleColumnsb0 tab Returns the number of columns visible.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b reloadColumn:b0 (int)i columni0 tab Reloads i columni0  if it is loaded; sets it as the last column.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b selectAll:b0 (id)i senderi0 tab Selects all NSCells in the last column of the NSBrowser.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b selectedColumnb0 tab Returns the index of the last column with a selected item. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setLastColumn:b0 (int)i columni0 tab Sets the last column to i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b validateVisibleColumnsb0 tab Invokes delegate method b browser:isColumnValid: b0 for visible columns.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Manipulating Column Titles 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b drawTitle:b0 (NSString *)i titletab i0 Draws the title for the column at index i columni0 .
s11 li7030 fi-6553 fi-5796 b inRect:b0 (NSRect)i aRect
i0 b ofColumn:b0 (int)i column
s9 li7029 fi-5794 fi-6552 i0 fs16 
fs28 fi-6552 {f3 -} (BOOL)b isTitledb0 tab Returns whether columns display titles.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setTitled:b0 (BOOL)i flagi0 tab Sets whether columns display titles.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setTitle:b0 (NSString *)i aStringi0 tab Sets the title of the column at index i columni0  to i aStringi0 .tab  
s11 li7030 fi-6553 fi-5796 b ofColumn:b0 (int)i column
s9 li7029 fi-5794 fi-6552 i0 fs16 
fs28 fi-6552 {f3 -} (NSRect)b titleFrameOfColumn:b0 (int)i columni0 tab Returns the bounds of the title frame for the column at index i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (float)b titleHeightb0 tab Returns the height of column titles. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSString *)b titleOfColumn:b0 (int)i columni0 tab Returns the title displayed for the column at index i columni0 .
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Scrolling an NSBrowser 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b scrollColumnsLeftBy:b0 (int)i shiftAmounti0 tab Scrolls columns left by i shiftAmounti0  columns.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b scrollColumnsRightBy:b0 (int)i shiftAmounti0 tab Scrolls columns right by i shiftAmounti0  columns. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b scrollColumnToVisible:b0 (int)i columni0 tab Scrolls to make the column at index i columni0  visible.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b scrollViaScroller:b0 (NSScroller *)i senderi0 tab Scrolls columns left or right based on an NSScroller. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b updateScrollerb0 tab Updates the horizontal scroller to reflect column positions.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Event Handling 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b doClick:b0 (id)i senderi0 tab Responds to mouse clicks in a column of the NSBrowser.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b doDoubleClick:b0 (id)i senderi0 tab Responds to double-clicks in a column of the NSBrowser. 
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Getting Matrices and Cells 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (id)b loadedCellAtRow:b0 (int)i rowi0 tab Loads if necessary and returns the NSCell at i rowi0  intab  
s11 li7030 fi-6553 fi-5796 b column:b0 (int)i columni0 tab tab i columni0 .
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSMatrix *)b matrixInColumn:b0 (int)i columni0 tab Returns the matrix located in i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (id)b selectedCellb0 tab Returns the last (rightmost and lowest) selected NSCell.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (id)b selectedCellInColumn:b0 (int)i columni0 tab Returns the last (lowest) NSCell that'27s selected in i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSArray *)b selectedCellsb0 tab Returns all the rightmost selected NSCells.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Getting Column Frames 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (NSRect)b frameOfColumn:b0 (int)i columni0 tab Returns the rectangle containing the column at index i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSRect)b frameOfInsideOfColumn:b0 (int)i columni0 tab Returns the rectangle containing the column at index i columni0 , not including borders.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Manipulating Paths 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (NSString *)b pathtab b0 Returns the browser'27s current path. 
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSString *)b pathSeparatortab b0 Returns the path separator. The default is 'aa/'ba.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSString *)b pathToColumn:b0 (int)i columni0 tab Returns a string representing the path from the first column to the column at index i columni0 .
fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b setPath:b0 (NSString *)i pathi0 tab Parses i pathi0  and selects corresponding items in columns.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b setPathSeparator:b0 (NSString *)i aStringi0 tab Sets the path separator to i aStringi0 .
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Arranging an NSBrowser'27s Components 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b tileb0 tab Adjusts the various subviews of NSBrowser'd0scrollers, columns, titles, and so on'd0without redrawing.  Your code shouldn'27t send this message.  It'27s invoked any time the appearance of the NSBrowser changes.
pard s19 li100 fi0 ri1007 ql f0 b fs48 
fs28 Methods Implemented by the Delegate 
fs14 
fs28 pard s9 li7029 fi-6552 ri1007 ql tx6652 tx7030 f1 b0 fs2 
fs28 fi-6552 {f3 -} (void)b browser:b0 (NSBrowser *)i senderi0  tab Creates a row in i matrix i0 for each row of data to be displayed
s11 li7030 fi-6553 fi-5796 b createRowsForColumn:b0 (int)i columni0  tab tab  in i column i0 of the browser. Either this method or 
b inMatrix:b0 (NSMatrix *)i matrixi0 tab tab b browser:numberOfRowsInColumn:b0  must be implemented, but not both (or an NSBrowserIllegalDelegateException will be raised).
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b browser:b0 (NSBrowser *)i senderi0 tab  
s11 li7030 fi-6553 fi-5796 b isColumnValid:b0 (int)i columni0 tab Returns whether the contents of the specified column are valid.
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (int)b browser:b0 (NSBrowser *)i senderi0 tab Returns the number of rows of data in the column at indextab  
s11 li7030 fi-6553 fi-5796 b numberOfRowsInColumn:b0 (int)i columni0 tab tab i columni0 . Either this method or 
tab tab b browser:createRowsForColumn:inMatrix:b0  must be implemented, but not both.
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (BOOL)b browser:b0 (NSBrowser *)i senderi0 tab  Asks the delegate to select the NSCell with title i titlei0  in 
s11 li7030 fi-6553 fi-5796 b selectCell:b0 (NSString *)i titlei0 tab tab  the column at index i columni0 .
b inColumn:b0 (int)i columni0 tab 
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (NSString *)b browser:b0 (NSBrowser *)i senderi0 tab  Queries the delegate for the title to display above the 
s11 li7030 fi-6553 fi-5796 b titleOfColumn:b0 (int)i columni0 tab tab column at index i columni0 .
s9 li7029 fi-5794 fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b browser:b0 (NSBrowser *)i senderi0  tab Notifies the delegate when the NSBrowser will display 
s11 li7030 fi-6553 fi-5796 b willDisplayCell:b0 (id)i celli0  tab tab the specified cell. The delegate should set any state
b atRow:b0 (int)i rowi0  tab tab necessary for correct display of the cell.
b column:b0 (int)i column
s9 li7029 fi-5794 fi-6552 i0 fs16 
fs28 fi-6552 {f3 -} (void)b browserDidScroll:b0 (NSBrowser *)i senderi0 tab Notifies the delegate when the NSBrowser has scrolled.
fi-6552 fs16 
fs28 fi-6552 {f3 -} (void)b browserWillScroll:b0 (NSBrowser *)i senderi0 tab Notifies the delegate when the NSBrowser will scroll. 
}

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.