#include <QMap>
#include <AIS_InteractiveContext.hxx>
#include <V3d_View.hxx>
+#include <AIS_Trihedron.hxx>
class QMouseEvent;
class QKeyEvent;
//! Returns AIS_InteractiveContext from current OCCViewer
virtual Handle(AIS_InteractiveContext) AISContext() const = 0;
+ //! Trihedron 3d object shown in the viewer
+ virtual Handle(AIS_Trihedron) trihedron() const = 0;
+
//! Retrurns V3d_Vioewer from current viewer
virtual Handle(V3d_Viewer) v3dViewer() const = 0;
//! Returns Vsd_View object from currently active view window
virtual Handle(V3d_View) activeView() const = 0;
+ virtual QWidget* activeViewPort() const = 0;
+
//! Enable or disable selection in the viewer
//! \param isEnabled is enable or disable flag
virtual void enableSelection(bool isEnabled) = 0;
//! Returns true if multiselection is enabled
virtual bool isMultiSelectionEnabled() const = 0;
+ //! Enable or disable draw mode in the viewer
+ virtual bool enableDrawMode(bool isEnabled) = 0;
+
//! Perfroms the fit all for the active view
virtual void fitAll() = 0;
/// \param theTransformation type of transformation (see AppElements_ViewWindow::OperationType)
void viewTransformed(int theTransformation);
+ /// Signal emited on selection changed
+ void trihedronVisibilityChanged(bool theState);
+
protected:
/// A map for storing a scale factors dependent on view object
QMap<Handle(V3d_View), double> myWindowScale;