Salome HOME
Merge branch 'BR_LAND_COVER_MAP' of ssh://git.salome-platform.org/modules/hydro into...
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_ImmersibleZoneOp.cxx
index 294e9b2c949cdbf0dbb4791b57d7770a792d3e65..3af761cbb32ab5d86e50805d510e272c093b376b 100644 (file)
@@ -78,7 +78,8 @@ void HYDROGUI_ImmersibleZoneOp::startOperation()
 
   if ( myIsEdit )
   {
-    myEditedObject = Handle(HYDROData_ImmersibleZone)::DownCast( HYDROGUI_Tool::GetSelectedObject( module() ) );
+    if ( isApplyAndClose() )
+      myEditedObject = Handle(HYDROData_ImmersibleZone)::DownCast( HYDROGUI_Tool::GetSelectedObject( module() ) );
     if( !myEditedObject.IsNull() )
     {
       anObjectName = myEditedObject->GetName();
@@ -95,12 +96,12 @@ void HYDROGUI_ImmersibleZoneOp::startOperation()
 
   aPanel->setObjectName( anObjectName );
   aPanel->setPolylineNames( HYDROGUI_Tool::FindExistingObjectsNames( doc(), KIND_POLYLINEXY ) );
-  aPanel->setBathymetryNames( HYDROGUI_Tool::FindExistingObjectsNames( doc(), KIND_BATHYMETRY ) );
+  aPanel->setAdditionalParams( HYDROGUI_Tool::FindExistingObjectsNames( doc(), KIND_BATHYMETRY ) );
 
   aPanel->blockSignals( false );
 
   aPanel->setPolylineName( aSelectedPolyline );
-  aPanel->setBathymetryName( aSelectedBathymetry );
+  aPanel->setSelectedAdditionalParamName( aSelectedBathymetry );
 }
 
 void HYDROGUI_ImmersibleZoneOp::abortOperation()
@@ -161,7 +162,7 @@ bool HYDROGUI_ImmersibleZoneOp::processApply( int& theUpdateFlags,
       HYDROGUI_Tool::FindObjectByName( module(), aPolylineName, KIND_POLYLINEXY ) );
   }
 
-  QString aBathymetryName = aPanel->getBathymetryName();
+  QString aBathymetryName = aPanel->getSelectedAdditionalParamName();
   if ( !aBathymetryName.isEmpty() )
   {
     aZoneBathymetry = Handle(HYDROData_Bathymetry)::DownCast(
@@ -182,8 +183,8 @@ bool HYDROGUI_ImmersibleZoneOp::processApply( int& theUpdateFlags,
 
   if ( !myIsEdit )
   {
-    aZoneObj->SetFillingColor( HYDROData_ImmersibleZone::DefaultFillingColor() );
-    aZoneObj->SetBorderColor( HYDROData_ImmersibleZone::DefaultBorderColor() );
+    aZoneObj->SetFillingColor( aZoneObj->DefaultFillingColor() );
+    aZoneObj->SetBorderColor( aZoneObj->DefaultBorderColor() );
   }
 
   aZoneObj->SetPolyline( aZonePolyline );
@@ -241,8 +242,8 @@ void HYDROGUI_ImmersibleZoneOp::onCreatePreview( const QString& thePolylineName
 
   if ( aViewManager && myPreviewPrs )
   {
-    QColor aFillingColor = HYDROData_ImmersibleZone::DefaultFillingColor();
-    QColor aBorderColor = HYDROData_ImmersibleZone::DefaultBorderColor();
+    QColor aFillingColor = Qt::darkBlue;
+    QColor aBorderColor = Qt::transparent;
     if ( !myEditedObject.IsNull() ) {
       aFillingColor = myEditedObject->GetFillingColor();
       aBorderColor = myEditedObject->GetBorderColor();