Minor fixes in add zone and duplicate zone (legacy mode)
This commit is contained in:
parent
e2c7e6bf02
commit
4ebe471420
|
@ -123,6 +123,16 @@ void PCB_EDIT_FRAME::duplicateZone( wxDC* aDC, ZONE_CONTAINER* aZone )
|
|||
else
|
||||
success = InvokeNonCopperZonesEditor( this, aZone, &zoneSettings );
|
||||
|
||||
// If the new zone is on the same layer as the the initial zone,
|
||||
// do nothing
|
||||
if( success && ( aZone->GetLayer() == zoneSettings.m_CurrentZone_Layer ) )
|
||||
{
|
||||
DisplayError( this,
|
||||
_( "The duplicated zone is on the same layer as the initial zone, which has no sense.\n"
|
||||
"Please, chose an other layer for the new zone") );
|
||||
success = false;
|
||||
}
|
||||
|
||||
if( success )
|
||||
{
|
||||
zoneSettings.ExportSetting( *newZone );
|
||||
|
@ -148,7 +158,8 @@ void PCB_EDIT_FRAME::duplicateZone( wxDC* aDC, ZONE_CONTAINER* aZone )
|
|||
if( GetBoard()->GetAreaIndex( newZone ) >= 0
|
||||
&& GetBoard()->Test_Drc_Areas_Outlines_To_Areas_Outlines( newZone, true ) )
|
||||
{
|
||||
DisplayError( this, _( "Duplicate Zone: The outline of the duplicated zone fails DRC check!" ) );
|
||||
DisplayError( this,
|
||||
_( "The outline of the duplicated zone fails DRC check!" ) );
|
||||
}
|
||||
|
||||
UpdateCopyOfZonesList( s_PickedList, s_AuxiliaryList, GetBoard() );
|
||||
|
|
|
@ -257,9 +257,13 @@ void UpdateCopyOfZonesList( PICKED_ITEMS_LIST& aPickList,
|
|||
}
|
||||
}
|
||||
|
||||
wxASSERT_MSG( notfound != true,
|
||||
wxT( "UpdateCopyOfZonesList() error: item not found in "
|
||||
"aAuxiliaryList" ) );
|
||||
if( notfound ) // happens when the new zone overlaps an existing zone
|
||||
// and these zones are combined
|
||||
{
|
||||
DBG( printf(
|
||||
"UpdateCopyOfZonesList(): item not found in aAuxiliaryList,"
|
||||
"combined with an other zone\n" ) );
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue