home *** CD-ROM | disk | FTP | other *** search
/ Altsys Virtuoso 2.0K / virtuoso_20k.iso / DemoApps / Utilities / Other / JumpBack / Source.compressed / Source.compressed / Source / TwoPassUIControl.h < prev    next >
Encoding:
Text File  |  1993-03-19  |  3.4 KB  |  133 lines

  1.  
  2. //======================================================================
  3. //
  4. //    Portions written by FreemanSoft Inc.
  5. //
  6. //    FreemanSoft disclaims any warranty of any kind, expressed or implied,
  7. //    as to this source code's fitness for any particular use.
  8. //
  9. //    For more information, use the following electronic mail addresses:
  10. //     
  11. //        info@FreemanSoft.com    general questions
  12. //        support@FreemanSoft.com    technical questions
  13. //
  14. //======================================================================
  15.  
  16.  
  17. /* Written by
  18.  *    Joe Freeman    
  19.  *
  20.  *
  21.  *    This code has no warranty.  
  22.  *    It is provided so that the consumer may maintain and modify it
  23.  *    at their own risk.  Use this code at your own risk.
  24.  */
  25.  
  26. /* Generated by Interface Builder */
  27.  
  28. #import <appkit/appkit.h>        /* precompiled headers */
  29.  
  30. typedef enum
  31.     {
  32.     NOTHING_RUNNING =0,
  33.     PASS_1_RUNNING =1,
  34.     PASS_2_RUNNING =2,
  35.     } TwoPassUIControl_state ;
  36.  
  37.     /* this is here for subclasses */
  38. @interface TwoPassUIControl:Object
  39. {
  40.     id        subprocessObj;
  41.     
  42.     id        destinationDragView;
  43.     id        destinationText;
  44.     id        sourceDragView;
  45.     id        sourceText;
  46.     
  47.     id        logText;        /* picked up from logScroller */
  48.     id        startButton;        /* so we can change its state */
  49.     
  50.     id        theWindow;        /* main window that stuff is dragged */
  51.  
  52.             /* full path names for source and dest */
  53.     char     sPathList[1024], dPathList[1024];
  54.     
  55.     int     currentState;
  56.     BOOL    canContinue;        /* usually after a find failed */
  57. }
  58.  
  59. - init;
  60. - initSourcePath:(char *)srcPath destinationPath:(char *)destPath;
  61.  
  62. - window;
  63. - (int)state;
  64.  
  65.                 /* override these methods */
  66. - (const char *)buttonImageName;/* so right image ends up on the button */
  67. - (const char *)buttonAltImageName;
  68.                 /* not actually used yet */
  69. - (const char *)stringsTable;    /* all strings not in Localization.strings */
  70.  
  71. - setStartButton:anObject;    /* so we can load the icon */
  72.  
  73.                 /* caueses sPathList and dPathList to be
  74.                  * updated from the text fields, 
  75.                  * usually in response to user editing 
  76.                  */
  77. - updateFromTextFields:sender;
  78.                 /* causes source and dest text fields to be 
  79.                  * updated according to sPathList, dPathList
  80.                  * and defaults 
  81.                  */
  82. - updateTextFields:sender;
  83.                 /* 
  84.                  * tells icon views to look up new icons
  85.                  * for the new paths that will be passed them
  86.                  */
  87. - updateIconViews:sender;
  88.                 /* usually from the strings table */
  89. - logIt:(const char *)s;
  90.  
  91.  
  92. - startProcess:sender;
  93. - abortProcess:sender;
  94.  
  95. - runPassOne:sender;        /* return nil if find not run */
  96. - runPassTwo:sender;
  97.  
  98. /*=======================================
  99.  *
  100.  * drag support 
  101.  *
  102.  *=======================================*/
  103. - iconEntered:where;        /* so window title is cute */
  104. - iconBogus:where;        /* not a dir  or invalid in some way */
  105. - iconLeft:where;        /* so window title is cute */
  106. - iconDropped:where;        /* so window title is cute */
  107. - (BOOL) isFilePBValid:(Pasteboard *)aPB forView:sender;
  108. - (BOOL) acceptedFilePB:(Pasteboard *)pboard forView:sender;
  109. - userClicked:(int)numTimes at:(NXPoint *)clickPoint inDragView:sender;
  110.  
  111. /* ===========================
  112.  * subprocess delegation
  113.  * ===========================*/
  114. - subprocessOutput:(char *)buffer;
  115. - subprocessDone;
  116.  
  117. /* ===========================
  118.  * window delegation
  119.  * ===========================*/
  120. - windowWillClose:sender;
  121.  
  122. /* ===========================
  123.  * text delegation
  124.  * ===========================*/
  125. - textDidEnd:textObject endChar:(unsigned short)whyEnd;
  126.  
  127. @end
  128.  
  129. @interface TwoPassUIControl (Private)
  130. - setState:(int)newState;
  131. @end
  132.  
  133.