home *** CD-ROM | disk | FTP | other *** search
/ Virtual Reality Zone / VRZONE.ISO / mac / PC / PCGLOVE / GLOVE / OBJGLV.ZIP / INCLUDE / WINGLOVE.HPP < prev   
C/C++ Source or Header  |  1993-05-12  |  3KB  |  99 lines

  1. //
  2. // WinGlove.hpp:
  3. //    Interface Definition of classes TDemoWindow and TGloveApp.
  4. //    Example use of Object Glove.
  5. //
  6. // Purpose:
  7. //    Sets up the Windows glove application.
  8. //
  9. // Compatibility:
  10. //    Windows only!
  11. //
  12. // Copyright 1993   Mark Thomas Pflaging
  13. //
  14. // Date:    3/22/93 (Release 3.0)
  15. //
  16. #ifndef __WINGLOVE_HPP
  17. #define __WINGLOVE_HPP
  18.  
  19. #include <owl.h>
  20. #include <static.h>
  21.  
  22. #include "smooth.hpp"
  23. #include "glsnd.hpp"
  24. #include "wingest.hpp"
  25.  
  26. class winGraphicsActor;
  27.  
  28. _CLASSDEF(TGloveApp)
  29. class TGloveApp : public TApplication
  30. {
  31.     InitFile * gloveIni;
  32.     rawGlove * GLOVE1, *GLOVE2;
  33.     winGraphicsActor *gloveGraph1, *gloveGraph2;
  34. //        soundActor *gloveSound1;
  35.     winGestureActor *gloveGesture1;
  36.     winGestureActor *gloveGesture2;
  37.     GestureSystem *gestSys, *gestSys2;
  38.         int howMany;
  39.  
  40. public:
  41.     TGloveApp(LPSTR AName, HINSTANCE hInstance, HINSTANCE hPrevInstance,
  42.         LPSTR lpCmdLine, int nCmdShow)
  43.         : TApplication(AName, hInstance, hPrevInstance, lpCmdLine, nCmdShow),
  44.         GLOVE1(NULL), GLOVE2(NULL),
  45.         gloveGraph1(NULL), gloveGraph2(NULL),
  46.         /* gloveSound1(NULL), */ gloveGesture1(NULL), gloveGesture2(NULL),
  47.         gestSys(NULL), gestSys2(NULL) {
  48.         if (strlen(lpCmdLine) > 0) howMany = atoi(lpCmdLine);
  49.                 else howMany = 1;
  50.     }
  51.     ~TGloveApp();
  52.     winGraphicsActor * getGlvGrph() { return gloveGraph1; }
  53.     winGraphicsActor * getGlvGrph2() { return gloveGraph2; }
  54.     void Setup();
  55.     virtual void InitMainWindow();
  56.     virtual void InitApplication();
  57.     virtual void InitInstance();
  58.     virtual void IdleAction();
  59.     static void graphicsOutput(gloveDriver & gd, void * app);
  60.     static void graphicsOutput2(gloveDriver & gd, void * app);
  61.     virtual BOOL CanClose();
  62. };
  63.  
  64. _CLASSDEF(TMyWindow)
  65. class TDemoWindow : public TWindow
  66. {
  67.     COLORREF PenColor;
  68.     HDC DragDC;
  69.     HPEN ThePen;
  70.     LOGBRUSH BrushData;
  71.     HBRUSH TheBrush;
  72.     static HGDIOBJ oldPen;
  73.     static HGDIOBJ oldBrush;
  74.     int PenSize;
  75.         HICON hGloveIcon;
  76.  
  77.     void ActivateBrush() {
  78.         DeleteObject(TheBrush);
  79.         TheBrush = CreateBrushIndirect(& BrushData);
  80.     //    SelectObject(TheBrush);
  81.     }
  82. protected:
  83.     virtual void SetupWindow();
  84.  
  85. public:
  86.     TDemoWindow(PTWindowsObject AParent, LPSTR ATitle);
  87.     ~TDemoWindow();
  88.     virtual BOOL CanClose();
  89.     void SetPenSize(int NewSize);
  90.     void SetPenColor(COLORREF NewColor);
  91.     void setupHDC(HDC DC, int currentColor);
  92.     void releaseHDC(HDC DC);
  93.     void infoDisplay(gloveDriver & gd);
  94.     virtual void Paint(HDC DC, PAINTSTRUCT& PS);
  95.         virtual void GetWindowClass(WNDCLASS & AWndClass);
  96. };
  97.  
  98. #endif
  99.