+ static QString backgroundData(QStringList&, QIntList&, QIntList&);
+
+ XGUI_Viewer(XGUI_MainWindow* theParent, bool DisplayTrihedron = true);
+ ~XGUI_Viewer();
+
+ //! Creates a new view window
+ QMdiSubWindow* createView(V3d_TypeOfView theType = V3d_ORTHOGRAPHIC);
+
+ //! Return pointer on a main window - parent of the Viewer
+ XGUI_MainWindow* mainWindow() const
+ {
+ return myMainWindow;
+ }
+
+ //! Returns OCCT object which manages 3d scene
+ Handle(V3d_Viewer) v3dViewer() const
+ {
+ return myV3dViewer;
+ }
+
+ //! Returns OCCT object which manages displaying and selection in 3d scene
+ Handle(AIS_InteractiveContext) AISContext() const
+ {
+ return myAISContext;
+ }
+
+ //! 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
+ void getSelectedObjects(AIS_ListOfInteractive& theList);
+
+ /// Return shapes selected in 3D viewer
+ /// \param theList - list to be filled with selected shapes
+ void getSelectedShapes(NCollection_List<TopoDS_Shape>& theList);
+
+ /// Selects objects in 3D viewer. Other selected objects are left as selected
+ /// \param theList - list objects to be selected
+ void setObjectsSelected(const AIS_ListOfInteractive& theList);
+
+ /// Returns true if selection in the viewer is enabled
+ bool isSelectionEnabled() const { return mySelectionEnabled; }
+
+ /// Enable or disable selectioon in the viewer
+ // \param toEnable - true or false (enable or disable selection)
+ void setSelectionEnabled(bool toEnable);
+
+ /// Returns true if multi-selection in the viewer is enabled
+ bool isMultiSelectionEnabled() const { return myMultiSelectionEnabled; }
+
+ /// Enable or disable selectioon in the viewer
+ // \param toEnable - true or false (enable or disable selection)
+ void setMultiSelectionEnabled(bool toEnable);