home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / dho.zip / DHO / SRC / SOURCE.ZIP / winbase.h < prev    next >
C/C++ Source or Header  |  1995-08-27  |  2KB  |  70 lines

  1. /****************************************/
  2. /*    Developer Helper Object Set       */
  3. /*  (C) 1994-95 Thomas E. Bednarz, Jr.  */
  4. /*     All rights reserved              */
  5. /***************************************/
  6.  
  7. /* $Id: winbase.h 1.8 1995/08/21 05:26:50 teb Exp $ */
  8.  
  9.  
  10. #ifndef __WINBASE_H__
  11. #define __WINBASE_H__
  12.  
  13. #define INCL_PM
  14. #define INCL_WIN
  15. #define INCL_GPI
  16. #include <os2.h>             
  17. #include<object.h>
  18.  
  19.  
  20. const ULONG WinBase_NoResource = 0;
  21.  
  22. class WinMsg
  23. {
  24.    public:
  25.       HWND hwnd;
  26.       ULONG msg;
  27.       MPARAM mp1;
  28.       MPARAM mp2;
  29. };
  30.  
  31.  
  32. class TWinBase : public TObject
  33. {
  34.  
  35.    protected:
  36.      ULONG fResource;
  37.      HWND hwnd;
  38.      HPS getScreenPS();
  39.    public:
  40.       TWinBase(ULONG id);
  41.       virtual ~TWinBase(void);
  42.       virtual BOOL init()=0;
  43.       virtual const char *getClassName(void);
  44.       HWND getHWND(void);
  45.       virtual void doCommand(WinMsg wm);
  46.       virtual void doControl(WinMsg wm);
  47.  
  48.       BOOL isEnabled();
  49.       BOOL enableUpdate(BOOL enable);
  50.       BOOL isVisible();
  51.  
  52.       virtual BOOL setParent(TWinBase *parent, BOOL redraw);
  53.       BOOL isChild(TWinBase *parent);
  54.  
  55.       void hideWindow();
  56.       void showWindow();
  57.  
  58.       void setFrameTitle(char *title);
  59.       void shellSetPosition(); 
  60.       void setWindowPosition(LONG x, LONG y);
  61.       void getWindowPosition(LONG &x, LONG &y, LONG &cx, LONG &cy);
  62.       void setWindowSize(LONG cx, long cy);
  63.       void Update();
  64.       void forceUpdate();
  65. };
  66.  
  67.  
  68. #endif  /* winbase */
  69.  
  70.