home *** CD-ROM | disk | FTP | other *** search
-
- //======================================================================
- //
- // Portions written by FreemanSoft Inc.
- //
- // FreemanSoft disclaims any warranty of any kind, expressed or implied,
- // as to this source code's fitness for any particular use.
- //
- // For more information, use the following electronic mail addresses:
- //
- // info@FreemanSoft.com general questions
- // support@FreemanSoft.com technical questions
- //
- //======================================================================
-
-
- /* Written by
- * Joe Freeman
- *
- *
- * This code has no warranty.
- * It is provided so that the consumer may maintain and modify it
- * at their own risk. Use this code at your own risk.
- */
-
- /* Generated by Interface Builder */
-
- #import <appkit/appkit.h> /* precompiled headers */
-
- typedef enum
- {
- NOTHING_RUNNING =0,
- PASS_1_RUNNING =1,
- PASS_2_RUNNING =2,
- } TwoPassUIControl_state ;
-
- /* this is here for subclasses */
- @interface TwoPassUIControl:Object
- {
- id subprocessObj;
-
- id destinationDragView;
- id destinationText;
- id sourceDragView;
- id sourceText;
-
- id logText; /* picked up from logScroller */
- id startButton; /* so we can change its state */
-
- id theWindow; /* main window that stuff is dragged */
-
- /* full path names for source and dest */
- char sPathList[1024], dPathList[1024];
-
- int currentState;
- BOOL canContinue; /* usually after a find failed */
- }
-
- - init;
- - initSourcePath:(char *)srcPath destinationPath:(char *)destPath;
-
- - window;
- - (int)state;
-
- /* override these methods */
- - (const char *)buttonImageName;/* so right image ends up on the button */
- - (const char *)buttonAltImageName;
- /* not actually used yet */
- - (const char *)stringsTable; /* all strings not in Localization.strings */
-
- - setStartButton:anObject; /* so we can load the icon */
-
- /* caueses sPathList and dPathList to be
- * updated from the text fields,
- * usually in response to user editing
- */
- - updateFromTextFields:sender;
- /* causes source and dest text fields to be
- * updated according to sPathList, dPathList
- * and defaults
- */
- - updateTextFields:sender;
- /*
- * tells icon views to look up new icons
- * for the new paths that will be passed them
- */
- - updateIconViews:sender;
- /* usually from the strings table */
- - logIt:(const char *)s;
-
-
- - startProcess:sender;
- - abortProcess:sender;
-
- - runPassOne:sender; /* return nil if find not run */
- - runPassTwo:sender;
-
- /*=======================================
- *
- * drag support
- *
- *=======================================*/
- - iconEntered:where; /* so window title is cute */
- - iconBogus:where; /* not a dir or invalid in some way */
- - iconLeft:where; /* so window title is cute */
- - iconDropped:where; /* so window title is cute */
- - (BOOL) isFilePBValid:(Pasteboard *)aPB forView:sender;
- - (BOOL) acceptedFilePB:(Pasteboard *)pboard forView:sender;
- - userClicked:(int)numTimes at:(NXPoint *)clickPoint inDragView:sender;
-
- /* ===========================
- * subprocess delegation
- * ===========================*/
- - subprocessOutput:(char *)buffer;
- - subprocessDone;
-
- /* ===========================
- * window delegation
- * ===========================*/
- - windowWillClose:sender;
-
- /* ===========================
- * text delegation
- * ===========================*/
- - textDidEnd:textObject endChar:(unsigned short)whyEnd;
-
- @end
-
- @interface TwoPassUIControl (Private)
- - setState:(int)newState;
- @end
-
-