if ( !aZone.IsNull() )
{
HYDROData_SequenceOfObjects aSeq = aZone->GetGeometryObjects();
- if ( aZone->IsMergingNeed() || aSeq.Length() == 1 )
+ if ( ( aZone->IsMergingNeed() && aZone->GetMergeType() == HYDROData_Zone::Merge_UNKNOWN )
+ || aSeq.Length() == 1 )
{
// Collect all used bathymetries names when merging is necessary
// or just get the name of bathymetry of a single geometry object
{
// Implement red color for bathymetry conflicts in case creation dialog
QColor aRes;
- if( isMergingNeed() )
+ Handle(HYDROData_Zone) aZone = Handle(HYDROData_Zone)::DownCast( modelObject() );
+ if ( !aZone.IsNull() )
{
- switch( theColorRole )
+ if ( ( aZone->IsMergingNeed() && aZone->GetMergeType() == HYDROData_Zone::Merge_UNKNOWN ) )
{
- case Text: // editor foreground (text) color
- case Foreground: // foreground (text) color
- aRes = Qt::red;
- break;
- case HighlightedText: // highlighted foreground (text) color
- aRes = Qt::black;
- break;
- case Base: // editor background color
- case Background: // background color
- case Highlight: // highlight background color
- default:
- aRes = Qt::red;
+ switch( theColorRole )
+ {
+ case Text: // editor foreground (text) color
+ case Foreground: // foreground (text) color
+ aRes = Qt::red;
+ break;
+ case HighlightedText: // highlighted foreground (text) color
+ aRes = Qt::black;
+ break;
+ case Base: // editor background color
+ case Background: // background color
+ case Highlight: // highlight background color
+ default:
+ aRes = Qt::red;
+ }
}
}
- else
+ if ( !aRes.isValid() )
{
aRes = LightApp_DataObject::color( theColorRole, theColumnId );
}