Salome HOME
Style changes.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_Tool.h
index 18a3d587e4df9c2034c03cffbc23543d192cf73b..7e0efdd8445f42a26c2ee7994e11170a0c0e6b0e 100644 (file)
 #include <TCollection_HAsciiString.hxx>
 #include <TCollection_HExtendedString.hxx>
 
+// IDL includes
+#include <SALOMEconfig.h>
+#include CORBA_SERVER_HEADER(GEOM_Gen)
+
 class SUIT_ViewManager;
 class OCCViewer_ViewFrame;
 
@@ -112,6 +116,14 @@ public:
                                                         SUIT_ViewManager* theViewManager );
 
   /**
+   * \brief Returns TRUE if object can be shown on the viewer.
+   * \param theObject data model object to check
+   * \param theViewerType viewer type
+   */
+  static bool                     IsObjectHasPresentation( const Handle(HYDROData_Entity)& theObject,
+                                                           const QString&                  theViewerType = "" );
+
+/**
    * \brief Get sub-objects to build presentations.
    * \param theModule module
    * \param theSeq sequence of sub-objects
@@ -166,9 +178,11 @@ public:
   /**
    * \brief Get the selected GEOM objects.
    * \param theModule module
+   * \param theTypes the acceptable GEOM object types
    * \return list of GEOM objects entries
    */
-  static QStringList GetSelectedGeomObjects( HYDROGUI_Module* theModule );
+  static QStringList GetSelectedGeomObjects( HYDROGUI_Module* theModule,
+                                             QList<GEOM::shape_type> theTypes );
 
   /**
    * \brief Find the data object with the specified name.
@@ -262,12 +276,12 @@ public:
                                                      const bool isShown );
 
   /**
-   * \brief Get the list of references (recursively) for the specified image object
-   * \param theImage image data object
+   * \brief Get the list of references (recursively) for the specified data object
+   * \param theObj data object
    * \param theRefObjects list of reference objects
    * \param theRefNames list of reference object names
    */
-  static void                     GetObjectReferences( const Handle(HYDROData_Image)& theImage,
+  static void                     GetObjectReferences( const Handle(HYDROData_Entity)& theObj,
                                                        HYDROData_SequenceOfObjects& theRefObjects,
                                                        QStringList& theRefNames );
 
@@ -275,13 +289,19 @@ public:
    * \brief Get the list of back-references for the specified object
    * \param theModule module
    * \param theObj data object
-   * \param theBackRefObjects list of back-reference objects
-   * \param theBackRefNames list of back-reference object names
+   * \return list of back-reference objects
+   */
+  static HYDROData_SequenceOfObjects GetObjectBackReferences( HYDROGUI_Module*                theModule,
+                                                              const Handle(HYDROData_Entity)& theObj );
+
+  /**
+   * \brief Get the map of back-references for the specified list of objects
+   * \param theModule module
+   * \param theObjectNames names of objects
+   * \return map of back-reference objects
    */
-  static void                     GetObjectBackReferences( HYDROGUI_Module* theModule,
-                                                           const Handle(HYDROData_Entity)& theObj,
-                                                           HYDROData_SequenceOfObjects& theBackRefObjects,
-                                                           QStringList& theBackRefNames );
+  static QMap<QString,HYDROData_SequenceOfObjects> GetObjectsBackReferences( HYDROGUI_Module*   theModule,
+                                                                             const QStringList& theObjectNames );
 
   /**
    * \brief Get father dock window for widget