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
|
else
|
||||||
success = InvokeNonCopperZonesEditor( this, aZone, &zoneSettings );
|
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 )
|
if( success )
|
||||||
{
|
{
|
||||||
zoneSettings.ExportSetting( *newZone );
|
zoneSettings.ExportSetting( *newZone );
|
||||||
|
@ -148,7 +158,8 @@ void PCB_EDIT_FRAME::duplicateZone( wxDC* aDC, ZONE_CONTAINER* aZone )
|
||||||
if( GetBoard()->GetAreaIndex( newZone ) >= 0
|
if( GetBoard()->GetAreaIndex( newZone ) >= 0
|
||||||
&& GetBoard()->Test_Drc_Areas_Outlines_To_Areas_Outlines( newZone, true ) )
|
&& 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() );
|
UpdateCopyOfZonesList( s_PickedList, s_AuxiliaryList, GetBoard() );
|
||||||
|
|
|
@ -257,9 +257,13 @@ void UpdateCopyOfZonesList( PICKED_ITEMS_LIST& aPickList,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
wxASSERT_MSG( notfound != true,
|
if( notfound ) // happens when the new zone overlaps an existing zone
|
||||||
wxT( "UpdateCopyOfZonesList() error: item not found in "
|
// and these zones are combined
|
||||||
"aAuxiliaryList" ) );
|
{
|
||||||
|
DBG( printf(
|
||||||
|
"UpdateCopyOfZonesList(): item not found in aAuxiliaryList,"
|
||||||
|
"combined with an other zone\n" ) );
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue