+ int getStudyId() const;
+
+ virtual void initialize( CAM_Application* );
+ virtual void windows( QMap<int, int>& ) const;
+ virtual void viewManagers( QStringList& ) const;
+
+ virtual void contextMenuPopup( const QString&, QMenu*, QString& );
+
+ virtual void update( const int );
+ virtual void updateCommandsStatus();
+
+ virtual void selectionChanged();
+
+ SUIT_ViewManager* getViewManager( const int theId ) const;
+ HYDROGUI_DataModel* getDataModel() const;
+ HYDROGUI_Displayer* getDisplayer() const;
+ HYDROGUI_OCCDisplayer* getOCCDisplayer() const;
+ HYDROGUI_VTKPrsDisplayer* getVTKDisplayer() const;
+
+ GraphicsView_Viewer* getViewer( const int theId ) const;
+ OCCViewer_Viewer* getOCCViewer( const int theId ) const;
+ SVTK_Viewer* getVTKViewer( const int theId ) const;
+
+ int getViewManagerId( SUIT_ViewManager* theViewManager );
+ ViewManagerRole getViewManagerRole( SUIT_ViewManager* theViewManager );
+ void setViewManagerRole( SUIT_ViewManager* theViewManager,
+ const ViewManagerRole theRole );
+
+ bool isObjectVisible( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject ) const;
+ void setObjectVisible( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject,
+ const bool theState );
+ /**
+ * Set IsToUpdate flag for all presentations of the given object to recompute them during
+ * the next viewer(s) updating.
+ * @param theObject the data model object
+ * @param theState the flag to set for object's presentations, it's true by default.
+ */
+ void setIsToUpdate( const Handle(HYDROData_Entity)& theObject,
+ const bool theState = true );
+ HYDROGUI_Shape* getObjectShape( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject ) const;
+ void setObjectShape( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject,
+ HYDROGUI_Shape* theShape );
+ void removeViewShapes( const int theViewId );
+ void removeObjectShape( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject );
+
+ HYDROGUI_VTKPrs* getObjectVTKPrs( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject ) const;
+ void setObjectVTKPrs( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject,
+ HYDROGUI_VTKPrs* theShape );
+ void removeViewVTKPrs( const int theViewId );
+ void removeObjectVTKPrs( const int theViewId,
+ const Handle(HYDROData_Entity)& theObject );
+
+ void removeObjectVTKPrs( const int theViewId,
+ const QString& theEntry );
+