Commit 9d40727b authored by jean-pierre charras's avatar jean-pierre charras
Browse files

Pcbnew: fix issues: Ensure pads type connector have a drill size= 0, like...

Pcbnew: fix issues:   Ensure pads type connector  have a drill size= 0, like SMD pads. Ensure keepout zones have no net.
parent ccd9500b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -7,9 +7,9 @@

#ifndef KICAD_BUILD_VERSION
#if defined KICAD_GOST
#   define KICAD_BUILD_VERSION "(2013-mar-09 GOST)"
#   define KICAD_BUILD_VERSION "(2013-mar-10 GOST)"
#else
#   define KICAD_BUILD_VERSION "(2013-mar-09)"
#   define KICAD_BUILD_VERSION "(2013-mar-10)"
#endif
#endif

+275 −275

File changed.

Preview size limit exceeded, changes collapsed.

+2 −2
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@

; General Product Description Definitions
!define PRODUCT_NAME "KiCad"
!define PRODUCT_VERSION "2013.03.09"
!define PRODUCT_VERSION "2013.03.10"
!define PRODUCT_WEB_SITE "http://iut-tice.ujf-grenoble.fr/kicad/"
!define SOURCEFORGE_WEB_SITE "http://kicad.sourceforge.net/"
!define COMPANY_NAME ""
@@ -36,7 +36,7 @@ SetCompressor /final /solid lzma
CRCCheck force
XPStyle on
Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"
OutFile "${PRODUCT_NAME}_stable-${PRODUCT_VERSION}-BZR3990_Win_full_version.exe"
OutFile "${PRODUCT_NAME}_stable-${PRODUCT_VERSION}-BZR3992_Win_full_version.exe"
InstallDir "$PROGRAMFILES\KiCad"
ShowInstDetails hide
ShowUnInstDetails hide
+8 −0
Original line number Diff line number Diff line
@@ -2375,6 +2375,14 @@ void LEGACY_PLUGIN::loadZONE_CONTAINER()

        else if( TESTLINE( "$endCZONE_OUTLINE" ) )
        {
            // Ensure keepout does not have a net
            // (which have no sense for a keepout zone)
            if( zc->GetIsKeepout() )
            {
                zc->SetNet(0);
                zc->SetNetName( wxEmptyString );
            }

            // should always occur, but who knows, a zone without two corners
            // is no zone at all, it's a spot?

+14 −2
Original line number Diff line number Diff line
@@ -2004,11 +2004,16 @@ D_PAD* PCB_PARSER::parseD_PAD() throw( IO_ERROR, PARSE_ERROR )
        pad->SetAttribute( PAD_SMD );

        // Default D_PAD object is thru hole with drill.
        // SMD pads have no hole
        pad->SetDrillSize( wxSize( 0, 0 ) );
        break;

    case T_connect:
        pad->SetAttribute( PAD_CONN );

        // Default D_PAD object is thru hole with drill.
        // CONN pads have no hole
        pad->SetDrillSize( wxSize( 0, 0 ) );
        break;

    case T_np_thru_hole:
@@ -2136,8 +2141,8 @@ D_PAD* PCB_PARSER::parseD_PAD() throw( IO_ERROR, PARSE_ERROR )
            // This fixes a bug caused by setting the default D_PAD drill size to a value
            // other than 0 used to fix a bunch of debug assertions even though it is defined
            // as a through hole pad.  Wouldn't a though hole pad with no drill be a surface
            // mount pad?
            if( pad->GetAttribute() != PAD_SMD )
            // mount pad (or a conn pad which is a smd pad with no solder paste)?
            if( ( pad->GetAttribute() != PAD_SMD ) && ( pad->GetAttribute() != PAD_CONN ) )
                pad->SetDrillSize( drillSize );
            else
                pad->SetDrillSize( wxSize( 0, 0 ) );
@@ -2667,6 +2672,13 @@ ZONE_CONTAINER* PCB_PARSER::parseZONE_CONTAINER() throw( IO_ERROR, PARSE_ERROR )
    if( pts.size() )
        zone->AddFilledPolysList( pts );

    // Ensure keepout does not have a net (which have no sense for a keepout zone)
    if( zone->GetIsKeepout() )
    {
        zone->SetNet(0);
        zone->SetNetName( wxEmptyString );
    }

    return zone.release();
}