Salome HOME
[HYDRO 514] Use specific cursors for edition operations.
[modules/gui.git] / src / OCCViewer / OCCViewer_ViewWindow.h
index ca1869d2ea022fb2c69319654346ba63a3e2be69..088249714aaa3d344fc6d20120fd50ff800ef7f9 100755 (executable)
@@ -1,4 +1,4 @@
-// Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2015  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
@@ -28,6 +28,7 @@
 #include "SUIT_ViewWindow.h"
 #include <gp_Pnt.hxx>
 #include <V3d_Plane.hxx>
+#include <TopAbs_ShapeEnum.hxx>
 
 class QtxRectRubberBand;
 class SUIT_Desktop;
@@ -142,7 +143,7 @@ class OCCVIEWER_EXPORT OCCViewer_ViewWindow : public SUIT_ViewWindow
   Q_OBJECT
 
 public:
-  enum { DumpId, FitAllId, FitRectId, ZoomId, PanId, GlobalPanId,
+  enum { DumpId, FitAllId, FitRectId, FitSelectionId, ZoomId, PanId, GlobalPanId,
          ChangeRotationPointId, RotationId,
          FrontId, BackId, TopId, BottomId, LeftId, RightId, ClockWiseId, AntiClockWiseId,
         ResetId, CloneId, ClippingId, MemId, RestoreId,
@@ -153,7 +154,7 @@ public:
         UserId };
 
   enum OperationType{ NOTHING, PANVIEW, ZOOMVIEW, ROTATE, 
-                      PANGLOBAL, WINDOWFIT, FITALLVIEW, RESETVIEW,
+                      PANGLOBAL, WINDOWFIT, FITALLVIEW, FITSELECTION, RESETVIEW,
                       FRONTVIEW, BACKVIEW, TOPVIEW, BOTTOMVIEW, LEFTVIEW, RIGHTVIEW,
                      CLOCKWISEVIEW, ANTICLOCKWISEVIEW };
 
@@ -222,6 +223,8 @@ public:
   virtual QColor  backgroundColor() const;                      // obsolete
   virtual void    setBackgroundColor( const QColor& );          // obsolete
 
+  virtual void    showStaticTrihedron( bool );
+
   virtual Qtx::BackgroundData  background() const;
   virtual void                 setBackground( const Qtx::BackgroundData& );
 
@@ -245,6 +248,7 @@ public slots:
   virtual void onAntiClockWiseView();
   virtual void onResetView();
   virtual void onFitAll();
+  virtual void onFitSelection();
   virtual void activateZoom();
   virtual void activateWindowFit();
   virtual void activateRotation();
@@ -257,7 +261,7 @@ public slots:
   virtual void onAmbientToogle();
   virtual void onMemorizeView();
   virtual void onRestoreView();
-  virtual void onTrihedronShow();
+  virtual void onTrihedronShow(bool);
   virtual void setRestoreFlag();
   virtual void onSwitchInteractionStyle( bool on );
   virtual void onSwitchZoomingStyle( bool on );
@@ -266,7 +270,7 @@ public slots:
 
   virtual void activateSetRotationGravity();
   virtual void activateSetRotationSelected( double theX, double theY, double theZ );
-  virtual void activateStartPointSelection();
+  virtual void activateStartPointSelection( TopAbs_ShapeEnum );
   virtual void updateGravityCoords();
    
   virtual void showEvent( QShowEvent * );
@@ -325,6 +329,8 @@ protected:
 
   virtual OCCViewer_ViewSketcher*       createSketcher( int );
 
+  void                                  saveCursor();
+
   OCCViewer_ViewSketcher*               mypSketcher;
   QList<OCCViewer_ViewSketcher*>        mySketchers;