Salome HOME
Issue #1407: Provide selection of feature from result
[modules/shaper.git] / src / XGUI / XGUI_Workshop.h
index 6cbc1429cf5a06a7e16b1a7aeab7a6f48bf55e84..4c894fc81c088b11826d94df4aaf22e643fbd1d1 100755 (executable)
@@ -47,7 +47,7 @@ class QDockWidget;
 class QMainWindow;
 
 class QAction;
-
+class Config_DataModelReader;
 
 /**\class XGUI_Workshop
  * \ingroup GUI
@@ -288,6 +288,14 @@ Q_OBJECT
   /// features found in the given list
   void highlightResults(const QObjectPtrList& theObjects);
 
+  /// Highlights feature objects in Object Browser according to
+  /// features found in the given list
+  void highlightFeature(const QObjectPtrList& theObjects);
+
+  /// Returns Data Model XML reader which contains information about 
+  /// Data structure configuration
+  const Config_DataModelReader* dataModelXMLReader() const { return myDataModelXMLReader; }
+
   /// A constant string used for "Move to end" command definition
   /// It is used for specific processing of Undo/Redo for this command.
   static QString MOVE_TO_END_COMMAND;
@@ -383,28 +391,6 @@ signals:
   /// \param theOperation an operation
    void setGrantedFeatures(ModuleBase_Operation* theOperation);
 
-  //! Find all referenced features. Return direct and indirect lists of referenced object
-  //! \param theList an objects to be checked
-  //! \param aDirectRefFeatures a list of direct reference features
-  //! \param aIndirectRefFeatures a list of features which depend on the feature through others
-  void findReferences(const QObjectPtrList& theList,
-                      std::set<FeaturePtr>& aDirectRefFeatures,
-                      std::set<FeaturePtr>& aIndirectRefFeatures);
-
-  //! Shows a dialog box about references. Ask whether they should be also removed.
-  //! \param theList an objects to be checked
-  //! \param aDirectRefFeatures a list of direct reference features
-  //! \param aIndirectRefFeatures a list of features which depend on the feature through others
-  //! \param theParent a parent widget for the question message box
-  //! \param doDeleteReferences if there are parameters between features, ask if they should be
-  //! replaced to their meaning without corresponded features remove
-  //! \return true if in message box answer is Yes
-  bool isDeleteFeatureWithReferences(const QObjectPtrList& theList,
-                                     const std::set<FeaturePtr>& aDirectRefFeatures,
-                                     const std::set<FeaturePtr>& aIndirectRefFeatures,
-                                     QWidget* theParent,
-                                     bool& doDeleteReferences);
-
   //! \param theIgnoredFeatures a list of features to be ignored during delete
   //! \param theList an objects to be checked
   //! \param aDirectRefFeatures a list of direct reference features
@@ -537,6 +523,8 @@ private:
   QString myCurrentDir;
 
   int myViewerSelMode;
+
+  Config_DataModelReader* myDataModelXMLReader;
 };
 
 #endif