Commit 4ebe4714 authored by jean-pierre charras's avatar jean-pierre charras
Browse files

Minor fixes in add zone and duplicate zone (legacy mode)

parent e2c7e6bf
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -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() );
+7 −3
Original line number Diff line number Diff line
@@ -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;
            }