+// Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
+
#ifndef XGUI_VIEWERPROXY_H
#define XGUI_VIEWERPROXY_H
#include <ModuleBase_IViewer.h>
class XGUI_Workshop;
-class XGUI_ViewWindow;
+class AppElements_ViewWindow;
/**
- * Proxy class which repersents or XGUI_Viewer or Salome Viewer
+ * Proxy class which repersents or AppElements_Viewer or Salome Viewer
* dependently on current launching environment.
* It is reccomennded to use this class in operation for accessing to viewer
* functionality instead of direct access to a viewer
/// Connects to a viewer according to current environment
void connectToViewer();
- private slots:
- void onMousePress(XGUI_ViewWindow*, QMouseEvent*);
- void onMouseRelease(XGUI_ViewWindow*, QMouseEvent*);
- void onMouseDoubleClick(XGUI_ViewWindow*, QMouseEvent*);
- void onMouseMove(XGUI_ViewWindow*, QMouseEvent*);
- void onKeyPress(XGUI_ViewWindow*, QKeyEvent*);
- void onKeyRelease(XGUI_ViewWindow*, QKeyEvent*);
+ /// Add selection filter to the viewer
+ virtual void addSelectionFilter(const Handle(SelectMgr_Filter)& theFilter);
+
+ /// Remove selection filter from the viewer
+ virtual void removeSelectionFilter(const Handle(SelectMgr_Filter)& theFilter);
+
+ /// Remove all selection filters from the viewer
+ virtual void clearSelectionFilters();
+
+ /// Update current viewer
+ virtual void update();
+
+private slots:
+ void onTryCloseView(AppElements_ViewWindow*);
+ void onDeleteView(AppElements_ViewWindow*);
+ void onViewCreated(AppElements_ViewWindow*);
+ void onActivated(AppElements_ViewWindow*);
+
+ void onMousePress(AppElements_ViewWindow*, QMouseEvent*);
+ void onMouseRelease(AppElements_ViewWindow*, QMouseEvent*);
+ void onMouseDoubleClick(AppElements_ViewWindow*, QMouseEvent*);
+ void onMouseMove(AppElements_ViewWindow*, QMouseEvent*);
+
+ void onKeyPress(AppElements_ViewWindow*, QKeyEvent*);
+ void onKeyRelease(AppElements_ViewWindow*, QKeyEvent*);
private:
XGUI_Workshop* myWorkshop;