3 #ifndef NewGeom_SalomeViewer_H
4 #define NewGeom_SalomeViewer_H
8 #include <XGUI_SalomeViewer.h>
10 class SUIT_ViewWindow;
14 class NewGeom_OCCSelector;
16 class NewGeom_SalomeViewer: public XGUI_SalomeViewer
20 NewGeom_SalomeViewer(QObject* theParent);
22 //! Returns AIS_InteractiveContext from current OCCViewer
23 virtual Handle(AIS_InteractiveContext) AISContext() const;
25 //! Retrurns V3d_Vioewer from current viewer
26 virtual Handle(V3d_Viewer) v3dViewer() const;
28 //! Returns Vsd_View object from currently active view window
29 virtual Handle(V3d_View) activeView() const;
31 //! Enable or disable selection in the viewer
32 virtual void enableSelection(bool isEnabled);
34 //! Returns true if selection is enabled
35 virtual bool isSelectionEnabled() const;
37 //! Enable or disable multiselection in the viewer
38 virtual void enableMultiselection(bool isEnable);
40 //! Returns true if multiselection is enabled
41 virtual bool isMultiSelectionEnabled() const;
43 void setSelector(NewGeom_OCCSelector* theSel);
45 NewGeom_OCCSelector* selector() const { return mySelector; }
48 void onMousePress(SUIT_ViewWindow*, QMouseEvent*);
49 void onMouseRelease(SUIT_ViewWindow*, QMouseEvent*);
50 void onMouseDoubleClick(SUIT_ViewWindow*, QMouseEvent*);
51 void onMouseMove(SUIT_ViewWindow*, QMouseEvent*);
52 void onKeyPress(SUIT_ViewWindow*, QKeyEvent*);
53 void onKeyRelease(SUIT_ViewWindow*, QKeyEvent*);
57 NewGeom_OCCSelector* mySelector;