Salome HOME
Profile object creation.
[modules/hydro.git] / src / HYDROData / HYDROData_Object.h
index 805b593f34368136435b3052cbd4189787fa1b18..eda7375543c9f4c098c1bf7606cc6a77183d71e3 100644 (file)
@@ -8,6 +8,7 @@ class TopoDS_Shape;
 
 DEFINE_STANDARD_HANDLE(HYDROData_Object, HYDROData_Entity)
 
+class Handle(HYDROData_Bathymetry);
 
 /**\class HYDROData_Object
  * \brief The base class for all geometrical objects in the HYDRO module.
@@ -24,14 +25,9 @@ protected:
     DataTag_First = HYDROData_Entity::DataTag_First + 100, ///< first tag, to reserve
     DataTag_TopShape,
     DataTag_Shape3D,
-  };
-
-  /**
-   * Enumeration of tags corresponding to the child sub-objects of object.
-   */
-  enum ChildTag
-  {
-    ChildTag_First = HYDROData_Entity::ChildTag_First + 100, ///< first tag, to reserve
+    DataTag_Bathymetry,   ///< reference bathymetry
+    DataTag_FillingColor, ///< filling color of geometrical object
+    DataTag_BorderColor   ///< border color of geometrical object
   };
 
 public:
@@ -57,6 +53,52 @@ public:
    */
   HYDRODATA_EXPORT virtual TopoDS_Shape GetShape3D() const = 0;
 
+  
+  /**
+   * Set reference bathymetry object for geometry object.
+   */
+  HYDRODATA_EXPORT virtual void SetBathymetry( const Handle(HYDROData_Bathymetry)& theBathymetry );
+
+  /**
+   * Returns reference bathymetry object of geometry object.
+   */
+  HYDRODATA_EXPORT virtual Handle(HYDROData_Bathymetry) GetBathymetry() const;
+
+  /**
+   * Clear the reference bathymetry object for geometry object.
+   */
+  HYDRODATA_EXPORT virtual void RemoveBathymetry();
+
+   /**
+   * Sets filling color for object.
+   */
+  HYDRODATA_EXPORT virtual void SetFillingColor( const QColor& theColor );
+
+  /**
+   * Returns filling color of object.
+   */
+  HYDRODATA_EXPORT virtual QColor GetFillingColor() const;
+
+   /**
+   * Sets border color for object.
+   */
+  HYDRODATA_EXPORT virtual void SetBorderColor( const QColor& theColor );
+
+  /**
+   * Returns border color of object.
+   */
+  HYDRODATA_EXPORT virtual QColor GetBorderColor() const;
+
+  /**
+   * Returns default filling color for new object.
+   */
+  HYDRODATA_EXPORT static QColor DefaultFillingColor();
+
+  /**
+   * Returns default border color for new object.
+   */
+  HYDRODATA_EXPORT static QColor DefaultBorderColor();
+
 protected:
 
   /**
@@ -77,11 +119,21 @@ protected:
    */
   HYDRODATA_EXPORT TopoDS_Shape getTopShape() const;
 
+  /**
+   * Removes the top shape from data label of the object.
+   */
+  HYDRODATA_EXPORT void removeTopShape();
+
+
   /**
    * Retrieve the 3d shape of the object from data label.
    */
   HYDRODATA_EXPORT TopoDS_Shape getShape3D() const;
 
+  /**
+   * Removes the 3d shape from data label of the object.
+   */
+  HYDRODATA_EXPORT void removeShape3D();
 };
 
 #endif