+ /// Initialize the Object browser
+ void initialize(ModuleBase_ITreeNode* theRoot);
+
+ /// Returns list of folders opened state for the given document
+ /// \param theDoc the document
+ /// \return list of booleans with state expanded or not
+ std::list<bool> getStateForDoc(DocumentPtr theDoc) const;
+
+ /// Set folders opened state for the given document
+ /// \param theDoc the document
+ /// \param theStates list of booleans with state expanded or not
+ void setStateForDoc(DocumentPtr theDoc, const std::list<bool>& theStates);
+
+ /// Returns current workshop
+ XGUI_Workshop* workshop() const { return myWorkshop; }
+
+ void onSelectionChanged();
+
+ /// Updates all items of object browser
+ /// \param theColumn - column of items
+ /// \param theParent - a parent item (by default from root)
+ void updateAllIndexes(int theColumn = 0, const QModelIndex& theParent = QModelIndex());
+
+ QMap<ObjectPtr, bool> getFoldersState(DocumentPtr theDoc) const;
+
+ void setFoldersState(const QMap<ObjectPtr, bool>& theStates);
+
+public slots:
+ //! Called on Edit command request
+ void onEditItem();
+