0032433: Visualization, TKService - introduce Wasm_Window implementing Aspect_Window...
[occt.git] / src / ViewerTest / ViewerTest_EventManager.hxx
index 4b54598..23dfe7d 100644 (file)
@@ -22,6 +22,7 @@
 #include <TCollection_AsciiString.hxx>
 
 class AIS_InteractiveContext;
+class Aspect_Window;
 class V3d_View;
 
 DEFINE_STANDARD_HANDLE(ViewerTest_EventManager, Standard_Transient)
@@ -58,6 +59,9 @@ public:
   //! Destructor.
   Standard_EXPORT virtual ~ViewerTest_EventManager();
 
+  //! Setup or adjust window callbacks.
+  Standard_EXPORT static void SetupWindowCallbacks (const Handle(Aspect_Window)& theWin);
+
   //! Return interactive context.
   const Handle(AIS_InteractiveContext)& Context() const { return myCtx; }
 
@@ -75,6 +79,12 @@ public:
     myPickPntArgVec[2] = theArgZ;
   }
 
+  //! Handle mouse button click event.
+  Standard_EXPORT virtual bool UpdateMouseClick (const Graphic3d_Vec2i& thePoint,
+                                                  Aspect_VKeyMouse theButton,
+                                                  Aspect_VKeyFlags theModifiers,
+                                                  bool theIsDoubleClick) Standard_OVERRIDE;
+
   //! Handle mouse button press/release event.
   Standard_EXPORT virtual bool UpdateMouseButtons (const Graphic3d_Vec2i& thePoint,
                                                    Aspect_VKeyMouse theButtons,
@@ -138,6 +148,8 @@ private:
   Standard_Boolean myToPickPnt;
   Standard_Boolean myIsTmpContRedraw;
 
+  unsigned int     myUpdateRequests; //!< counter for unhandled update requests
+
 };
 
 #endif // _ViewerTest_EventManager_HeaderFile