-// Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2016 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
Q_OBJECT
public:
- enum { DumpId, FitAllId, FitRectId, FitSelectionId, ZoomId, PanId, GlobalPanId,
+ enum ActionId { DumpId, FitAllId, FitRectId, FitSelectionId, ZoomId, PanId, GlobalPanId,
ChangeRotationPointId, RotationId,
FrontId, BackId, TopId, BottomId, LeftId, RightId, ClockWiseId, AntiClockWiseId,
ResetId, CloneId, ClippingId, MemId, RestoreId,
SwitchInteractionStyleId, SwitchZoomingStyleId,
SwitchPreselectionId, SwitchSelectionId,
MaximizedId, SynchronizeId, ReturnTo3dViewId,
- OrthographicId, PerspectiveId, StereoId,
+ OrthographicId, PerspectiveId, StereoId, RayTracingId, EnvTextureId, LightSourceId,
UserId };
enum OperationType{ NOTHING, PANVIEW, ZOOMVIEW, ROTATE,
FRONTVIEW, BACKVIEW, TOPVIEW, BOTTOMVIEW, LEFTVIEW, RIGHTVIEW,
CLOCKWISEVIEW, ANTICLOCKWISEVIEW, PROJECTION };
- enum RotationPointType{ GRAVITY, SELECTED };
+ enum RotationPointType{ BBCENTER, SELECTED };
enum SketchingType { NoSketching, Rect, Polygon };
virtual void initLayout();
+ virtual bool enableDrawMode( bool );
+
virtual void updateEnabledDrawMode();
virtual void setCuttingPlane( bool on, const double x = 0 , const double y = 0 , const double z = 0,
virtual bool isQuadBufferSupport() const;
virtual void setQuadBufferSupport( const bool );
+ virtual bool isAutomaticZoom() const;
+ virtual void setAutomaticZoom( const bool );
+
void setTransformEnabled( const OperationType, const bool );
bool transformEnabled( const OperationType ) const;
virtual SUIT_CameraProperties cameraProperties();
+ bool isActionVisible( ActionId theId ) const;
+ void setActionVisible( ActionId theId, bool isVisible );
+
+ void resetState();
+
public slots:
virtual void onFrontView();
virtual void onViewFitAll();
virtual void onSwitchZoomingStyle( bool on );
virtual void onSwitchPreselection( bool on );
virtual void onSwitchSelection( bool on );
+ virtual void onRayTracing();
+ virtual void onEnvTexture();
+ virtual void onLightSource();
+ virtual void onPanning();
virtual void activateSetRotationGravity();
virtual void activateSetRotationSelected( double theX, double theY, double theZ );
void vpMouseReleaseEvent(QMouseEvent* theEvent);
void vpMouseMoveEvent(QMouseEvent* theEvent);
- void resetState();
void drawRect();
void endDrawRect();
bool computeGravityCenter( double& theX, double& theY, double& theZ );
+ void projAndPanToGravity(V3d_TypeOfOrientation CamOri);
+
virtual void onSketchingStarted();
virtual void onSketchingFinished();
bool myCursorIsHand;
bool myDrawRect; // set when a rect is used for selection or magnify
bool myEnableDrawMode;
+ bool myDrawRectEnabled;
bool myPaintersRedrawing; // set to draw with external painters
bool IsSketcherStyle;
bool myIsKeyFree;
-
+ bool myAutomaticZoom;
QCursor myCursor;
double myCurScale;
Handle(V3d_Plane) myReserveClipPlane;
viewAspectList myViewAspects;
+ bool myPanningByBtn;
};
#ifdef WIN32