+ else if ( anObjectKind == KIND_PROFILE )
+ {
+ Handle(HYDROData_Profile) aProfileObj =
+ Handle(HYDROData_Profile)::DownCast( aDataObj );
+
+ aGuiObj->setIsValid( aProfileObj->IsValid() );
+ }
+ else if ( anObjectKind == KIND_CHANNEL || anObjectKind == KIND_DIGUE )
+ {
+ Handle(HYDROData_Channel) aChannelObj =
+ Handle(HYDROData_Channel)::DownCast( aDataObj );
+
+ LightApp_DataObject* aGuideLineSect =
+ createObject( aGuiObj, tr( "CHANNEL_GUIDE_LINE" ), aGuiObj->entry() );
+ Handle(HYDROData_Polyline3D) aGuideLine = aChannelObj->GetGuideLine();
+ if ( !aGuideLine.IsNull() && !aGuideLine->IsRemoved() ) {
+ createObject( aGuideLineSect, aGuideLine, aGuiObj->entry(), false );
+ }
+
+ LightApp_DataObject* aProfileSect =
+ createObject( aGuiObj, tr( "CHANNEL_PROFILE" ), aGuiObj->entry() );
+ Handle(HYDROData_Profile) aProfile = aChannelObj->GetProfile();
+ if ( !aProfile.IsNull() && !aProfile->IsRemoved() ) {
+ createObject( aProfileSect, aProfile, aGuiObj->entry(), false );
+ }
+ }
+ else if ( anObjectKind == KIND_STREAM )
+ {
+ Handle(HYDROData_Stream) aStreamObj =
+ Handle(HYDROData_Stream)::DownCast( aDataObj );
+
+ LightApp_DataObject* aHydraulicAxisSect =
+ createObject( aGuiObj, tr( "STREAM_HYDRAULIC_AXIS" ), aGuiObj->entry() );
+ Handle(HYDROData_PolylineXY) aHydraulicAxis = aStreamObj->GetHydraulicAxis();
+ if ( !aHydraulicAxis.IsNull() && !aHydraulicAxis->IsRemoved() ) {
+ createObject( aHydraulicAxisSect, aHydraulicAxis, aGuiObj->entry(), false );
+ }
+
+ HYDROData_SequenceOfObjects aProfiles = aStreamObj->GetProfiles();
+ buildObjectPartition( aGuiObj, aProfiles, tr( "STREAM_PROFILES" ), true );
+ }