+
+ /**
+ * \brief Get list of the selected data objects.
+ * \param theModule module
+ * \return list of the selected data objects
+ */
+ static HYDROData_SequenceOfObjects GetSelectedObjects( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get the selected data object (first in the selected list).
+ * \param theModule module
+ * \return selected data object
+ */
+ static Handle(HYDROData_Entity) GetSelectedObject( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get the geometry data objects from document.
+ * \param theModule module
+ * \return sequence of data objects
+ */
+ static HYDROData_SequenceOfObjects GetGeometryObjects( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get kind of objects the selected partition contains.
+ * \param theModule module
+ * \return object kind
+ */
+ static ObjectKind GetSelectedPartition( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Find the data object with the specified name.
+ * \param theModule module
+ * \param theName name
+ * \param theObjectKind kind of object
+ * \return data object
+ */
+ static Handle(HYDROData_Entity) FindObjectByName( HYDROGUI_Module* theModule,
+ const QString& theName,
+ const ObjectKind theObjectKind = KIND_UNKNOWN );
+
+ /**
+ * \brief Find the data objects with the specified names.
+ * \param theModule module
+ * \param theNames list of names
+ * \param theObjectKind kind of object
+ * \return list of data objects
+ */
+ static HYDROData_SequenceOfObjects FindObjectsByNames( HYDROGUI_Module* theModule,
+ const QStringList& theNames,
+ const ObjectKind theObjectKind = KIND_UNKNOWN );
+
+ /**
+ * \brief Generate name for new object.
+ * \param theModule module
+ * \param thePrefix name prefix
+ * \param theUsedNames list of already used names
+ * \return generated name
+ */
+ static QString GenerateObjectName( HYDROGUI_Module* theModule,
+ const QString& thePrefix,
+ const QStringList& theUsedNames = QStringList() );
+
+ /**
+ * \brief Get id of the active view.
+ * \param theModule module
+ * \return view id
+ */
+ static size_t GetActiveViewId( HYDROGUI_Module* theModule,
+ const QString& theViewId = QString() );
+
+ /**
+ * \brief Get id of the active GraphicsView view.
+ * \param theModule module
+ * \return view id
+ */
+ static size_t GetActiveGraphicsViewId( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get id of the active OCC view.
+ * \param theModule module
+ * \return view id
+ */
+ static size_t GetActiveOCCViewId( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get list of ids of existing GraphicsView views.
+ * \param theModule module
+ * \return list of view ids
+ */
+ static QList<size_t> GetGraphicsViewIdList( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get list of ids of existing OCC views.
+ * \param theModule module
+ * \return list of view ids
+ */
+ static QList<size_t> GetOCCViewIdList( HYDROGUI_Module* theModule );
+
+ /**
+ * \brief Get the list of references (recursively) for the specified image object
+ * \param theImage image data object
+ * \param theRefObjects list of reference objects
+ * \param theRefNames list of reference object names
+ */
+ static void GetObjectReferences( const Handle(HYDROData_Image)& theImage,
+ HYDROData_SequenceOfObjects& theRefObjects,
+ QStringList& theRefNames );
+
+ /**
+ * \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
+ */
+ static void GetObjectBackReferences( HYDROGUI_Module* theModule,
+ const Handle(HYDROData_Entity)& theObj,
+ HYDROData_SequenceOfObjects& theBackRefObjects,
+ QStringList& theBackRefNames );
+
+ /**
+ * \brief Get father dock window for widget
+ * \param wid widget
+ * \return dock window
+ */
+ static QDockWidget* WindowDock( QWidget* wid );
+
+ /**
+ * \brief Generates the filling color for intersected zone
+ * \param theModule module
+ * \param theZoneNames list of intersected zones
+ * \return result color
+ */
+ static QColor GenerateFillingColor( HYDROGUI_Module* theModule,
+ const QStringList& theZoneNames );
+
+ /*
+ * \brief Generates the filling color for intersected zone
+ * \param theDoc model document
+ * \param theZoneNames list of intersected zones
+ * \return result color
+ */
+ static QColor GenerateFillingColor( const Handle(HYDROData_Document)& theDoc,
+ const QStringList& theZoneNames );
+