home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ool.zip / OOL / include / xprocess.h < prev    next >
Text File  |  1997-04-02  |  2KB  |  59 lines

  1. #ifndef __OOL_XPROCES_H__
  2. #define __OOL_XPROCES_H__
  3.  
  4. /*===========================================================================*/
  5. /* OOL ------------------- the Open Object Library ------------- OS/2 Beta 1 */
  6. /*===========================================================================*/
  7. /*                              class: XProcess                              */
  8. /*                       derived from: XObject                               */
  9. /*                        last update: 4/97                                  */
  10. /*                      programmed by: Stefan von Brauk (sbrauk@gwdg.de)     */
  11. /*===========================================================================*/
  12.  
  13.  
  14.  
  15. #include "xobject.h"
  16.  
  17. class XWindow;
  18. class XString;
  19.  
  20. #ifdef OOL_FOR_OS2_X86
  21.    #define EXE_SYNC       EXEC_SYNC
  22.    #define EXE_ASYNC      EXEC_ASYNC
  23. #endif
  24.  
  25. class _export_ XProcess: public XObject
  26. {
  27.       friend class XResourceLibrary;
  28.       friend class XHelpInstance;
  29.       friend class XFrameWindow;
  30.       friend class XUserWindow;
  31.         friend class XPrinterDevice;
  32.       friend class XProfile;
  33.         friend class XModelessDialog;
  34.         friend class XModalDialog;
  35.         friend class XDialog;
  36.    protected:
  37.       HAB hab;
  38.       HMQ queue;
  39.       QMSG messagequeue;
  40.       SHORT windows;
  41.       XWindow ** frames;
  42.       void AddWindow( const XWindow * );
  43.       void RemoveWindow( const XWindow*);
  44.    public:
  45.       XProcess();
  46.       virtual ~XProcess() {;}
  47.       static void Beep( const LONG f, const LONG d);
  48.         static void EnterCriticSection();
  49.       static LONG ExecuteProg( const char * path, const char * args, const char * env, const ULONG flag, LONG * result);
  50.         static void LeaveCriticSection();
  51.       virtual BOOL QueryForQuit( void );
  52.       static BOOL ScanEnvironment( const char * valueToSearch, XString * buffer);
  53.       static void Sleep( const LONG d);
  54.       void Start( void );
  55.       virtual void Terminate( void );
  56. };
  57.  
  58. #endif
  59.