+
+ return aRes;
+}
+
+bool HYDROData_Object::SetAltitudeObject(
+ const Handle(HYDROData_IAltitudeObject)& theAltitude )
+{
+ if ( theAltitude.IsNull() )
+ return false;
+
+ Handle(HYDROData_IAltitudeObject) aPrevAltitude = GetAltitudeObject();
+ if ( IsEqual( aPrevAltitude, theAltitude ) )
+ return true;
+
+ SetReferenceObject( theAltitude, DataTag_AltitudeObject );
+
+ // #636: In the case of the altitude object change the geometry of the main object is not changed,
+ // to the object should not be marked as updated
+ //SetToUpdate( true );
+
+ return true;
+}
+
+Handle(HYDROData_IAltitudeObject) HYDROData_Object::GetAltitudeObject() const
+{
+ return Handle(HYDROData_IAltitudeObject)::DownCast(
+ GetReferenceObject( DataTag_AltitudeObject ) );
+}
+
+void HYDROData_Object::RemoveAltitudeObject()
+{
+ Handle(HYDROData_IAltitudeObject) aPrevAltitude = GetAltitudeObject();
+ if ( aPrevAltitude.IsNull() )
+ return;
+
+ ClearReferenceObjects( DataTag_AltitudeObject );
+
+ // #636: In the case of the altitude object change the geometry of the main object is not changed,
+ // to the object should not be marked as updated
+ //SetToUpdate( true );
+}
+
+void HYDROData_Object::SetFillingColor( const QColor& theColor )
+{
+ SetColor( theColor, DataTag_FillingColor );
+}
+
+QColor HYDROData_Object::GetFillingColor() const
+{
+ return GetColor( DefaultFillingColor(), DataTag_FillingColor );
+}
+
+void HYDROData_Object::SetBorderColor( const QColor& theColor )
+{
+ SetColor( theColor, DataTag_BorderColor );
+}
+
+QColor HYDROData_Object::GetBorderColor() const
+{
+ return GetColor( DefaultBorderColor(), DataTag_BorderColor );
+}
+
+QColor HYDROData_Object::DefaultFillingColor() const
+{
+ return QColor( Qt::yellow );
+}
+
+QColor HYDROData_Object::DefaultBorderColor() const
+{
+ return QColor( Qt::transparent );
+}
+
+QStringList HYDROData_Object::dumpObjectCreation( MapOfTreatedObjects& theTreatedObjects ) const
+{
+ QStringList aResList = HYDROData_Entity::dumpObjectCreation( theTreatedObjects );
+ if ( aResList.isEmpty() )
+ return aResList; //Object was not created
+
+ QStringList aColorsDef;
+
+ QColor aFillingColor = GetFillingColor();
+ setPythonObjectColor( aColorsDef, aFillingColor, DefaultFillingColor(), "SetFillingColor" );
+
+ QColor aBorderColor = GetBorderColor();
+ setPythonObjectColor( aColorsDef, aBorderColor, DefaultBorderColor(), "SetBorderColor" );
+
+ if ( !aColorsDef.isEmpty() )
+ {
+ aResList << aColorsDef;
+ aResList << QString( "" );
+ }
+
+ return aResList;
+}
+
+ObjectKind HYDROData_Object::getAltitudeObjectType() const
+{
+ return KIND_UNKNOWN;
+}
+
+Handle(HYDROData_IAltitudeObject) HYDROData_Object::getChildAltitudeObject() const
+{
+ Handle(HYDROData_IAltitudeObject) anObject;
+
+ TDF_Label aLabel = myLab.FindChild( DataTag_ChildAltitudeObject, false );
+ if ( !aLabel.IsNull() )
+ {
+ TDF_Label aChildLabel = aLabel.FindChild( 0, false );
+ if ( !aChildLabel.IsNull() )
+ {
+ anObject = Handle(HYDROData_IAltitudeObject)::DownCast(
+ HYDROData_Iterator::Object( aChildLabel ) );
+ }