home *** CD-ROM | disk | FTP | other *** search
-
- /*
- Copyright 1993 Jeremy Slade.
-
- You are free to use all or any parts of the Locus project
- however you wish, just give credit where credit is due.
- The author (Jeremy Slade) shall not be held responsible
- for any damages that result out of use or misuse of any
- part of this project.
-
- */
-
- /*
-
- Project: Locus
-
- Class: GroupBrowser
-
- Description:
-
- Original Author: Jeremy Slade
-
- Revision History:
- Created
- V.101 JSG Wed Feb 3 23:53:15 GMT-0700 1993
-
- */
-
-
- #ifndef GroupBrowser_h
- #define GroupBrowser_h
-
- #define GroupBrowser_VERSION (101)
-
-
- #import <appkit/ScrollView.h>
-
-
- @interface GroupBrowser : ScrollView
- {
- id matrix;
- id delegate;
-
- id target;
- SEL action;
- SEL doubleAction;
-
- BOOL allowMultiSel;
-
- int selectKey;
- long lastTime;
- char selectFile[11];
- }
-
- // Creating, initializing methods
- - free;
- + initialize;
- - initFrame:(const NXRect *)frameRect;
-
- // Setting the group that is displayed
- - showGroup:group;
-
- // Drawing
- - resizeSubviews:(const NXSize *)oldSize;
-
- // Setting the delegate
- - delegate;
- - setDelegate:anObject;
-
- // Setting behavior
- - (BOOL)acceptsFirstMouse;
- - allowMultiSel:(BOOL)flag;
- - (BOOL)doesAllowMultiSel;
- - setEnabled:(BOOL)flag;
- - (BOOL)isEnabled;
-
- // Setting target and action
- - setTarget:anObject;
- - setAction:(SEL)selector;
- - setDoubleAction:(SEL)selector;
- - target;
- - (SEL)action;
- - (SEL)doubleAction;
- - doAction:sender;
- - doDoubleAction:sender;
-
- // Making selections
- - selectAll:sender;
- - selectUp:sender;
- - selectDown:sender;
- - selectedCell;
- - selection;
- - selectionList;
- - (int)selectionCount;
- - selectKey:(unsigned int)charCode time:(long)time;
- - selectRow:(unsigned int)row;
- - scrollRowToVisible:(unsigned int)row;
- - scrollToSelection;
-
- // NXDraggingDestination Protocol
- - (NXDragOperation)draggingEntered:(id <NXDraggingInfo>)sender;
- - (NXDragOperation)draggingUpdated:(id <NXDraggingInfo>)sender;
- - draggingExited:(id <NXDraggingInfo>)sender;
- - (BOOL)prepareForDragOperation:(id <NXDraggingInfo>)sender;
- - (BOOL)performDragOperation:(id <NXDraggingInfo>)sender;
- - concludeDragOperation:(id <NXDraggingInfo>)sender;
-
- @end
-
-
- @interface Object (GroupBrowserDelegate)
- - browserSelectionChanged:sender;
- @end
-
-
- #endif // GroupBrowser_h
-