Salome HOME
refs #568: use ordered list view with selection synchronized with object browser...
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_Tool.h
index 48c8e246dcc0903ae4a20fc2613475074777760b..fada415c5233880283e5493d286456419e6587d7 100644 (file)
@@ -1,12 +1,8 @@
-// Copyright (C) 2007-2013  CEA/DEN, EDF R&D, OPEN CASCADE
-//
-// Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
-//
+// Copyright (C) 2014-2015  EDF-R&D
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 #include <TCollection_HAsciiString.hxx>
 #include <TCollection_HExtendedString.hxx>
 
+#include <Image_PixMap.hxx>
+
+// IDL includes
+#include <SALOMEconfig.h>
+#include CORBA_SERVER_HEADER(GEOM_Gen)
+
 class SUIT_ViewManager;
 class OCCViewer_ViewFrame;
 
@@ -112,6 +114,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
@@ -156,6 +166,13 @@ public:
    */
   static HYDROData_SequenceOfObjects GetGeometryObjects( HYDROGUI_Module* theModule );
 
+  /**
+   * \brief Get the land covers from document.
+   * \param theModule module
+   * \return sequence of land covers
+   */
+  static HYDROData_SequenceOfObjects GetLandCovers( HYDROGUI_Module* theModule );
+
   /**
    * \brief Get kind of objects the selected partition contains.
    * \param theModule module
@@ -166,9 +183,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.
@@ -321,14 +340,22 @@ public:
    * \return list of names
    */
   static QStringList              FindExistingObjectsNames( const Handle(HYDROData_Document)& theDoc, 
-                                                            const ObjectKind theObjectKind );
+                                                            const ObjectKind theObjectKind, 
+                                                            bool isCheckValidProfile = false );
 
   /**
    * \brief Converts coordinate value to string.
    * \param theNumber coordinate as a number
    * \return coordinate as a string
    */
-  static QString                  GetCoordinateString( const double theNumber );
+  static QString                  GetCoordinateString( const double theNumber, bool isInLocale );
+
+  /**
+   * \brief Converts Qt QImage object to OCCT Image_PixMap object.
+   * \param theImage QImage object
+   * \return Image_PixMap object
+   */
+  static Handle(Image_PixMap)     Pixmap( const QImage& theImage );
 };
 
 #endif