Salome HOME
Issue #6 Extended processing of nested actions.
[modules/shaper.git] / src / XGUI / XGUI_Viewer.h
index c7a2492f1fda250990112f6ca7ab1f198113c146..23d66656a92bf3badab36e66d613ce5dd5630665 100644 (file)
@@ -14,6 +14,8 @@
 #include <NCollection_List.hxx>
 #include <TopoDS_Shape.hxx>
 
+#include <QPoint>
+
 class XGUI_MainWindow;
 class QMdiSubWindow;
 class XGUI_ViewWindow;
@@ -57,15 +59,8 @@ public:
     return myAISContext;
   }
 
-  //! Activate local selection
-  //! \param theAIS the list of objects
-  //! \param theMode the selection mode
-  //! \param isUpdateViewer the state wether the viewer should be updated immediatelly
-  void setLocalSelection(const AIS_ListOfInteractive& theAISObjects, const int theMode,
-                         const bool isUpdateViewer);
-  //! Deactivate local selection
-  //! \param isUpdateViewer the state wether the viewer should be updated immediatelly
-  void setGlobalSelection(const bool isUpdateViewer);
+  //! Returns an active view window or NULL
+  XGUI_ViewWindow* activeViewWindow() const;
 
   /// Return objects selected in 3D viewer
   /// \param theList - list to be filled with selected objects
@@ -119,6 +114,12 @@ public:
   static void getHotButton(XGUI::InteractionStyle theInteractionStyle, XGUI::HotOperation theOper,
                            Qt::KeyboardModifiers& theState, Qt::MouseButtons& theButton);
 
+  //! Sets the view projection
+  /// \param theX the X projection value
+  /// \param theY the Y projection value
+  /// \param theZ the Z projection value
+  void setViewProjection(double theX, double theY, double theZ);
+
   typedef QMap<XGUI::HotOperation, Qt::KeyboardModifiers> StatesMap;
   typedef QMap<XGUI::HotOperation, Qt::MouseButtons> ButtonsMap;
 
@@ -141,6 +142,8 @@ signals:
   void keyRelease(XGUI_ViewWindow* theWindow, QKeyEvent* theEvent);
   void activated(XGUI_ViewWindow* theWindow);
   void selectionChanged();
+  void mouseReleased(QPoint thePoint);
+  void mouseMoved(QPoint thePoint);
 
 public slots:
   void onWindowMinimized(QMdiSubWindow*);
@@ -160,7 +163,9 @@ private:
 private:
   XGUI_MainWindow* myMainWindow;
 
-  Handle(V3d_Viewer) myV3dViewer;Handle(AIS_Trihedron) myTrihedron;Handle(AIS_InteractiveContext) myAISContext;
+  Handle(V3d_Viewer) myV3dViewer;
+  Handle(AIS_Trihedron) myTrihedron;
+  Handle(AIS_InteractiveContext) myAISContext;
 
   XGUI::InteractionStyle myInteractionStyle;