Commit 6c2fcf7e authored by Dick Hollenbeck's avatar Dick Hollenbeck
Browse files

KICAD_PLUGIN alternate nanometer board loader work

parents 1ab12c2b 3bb91baf
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -69,7 +69,7 @@ BOARD::BOARD( PCB_BASE_FRAME* frame ) :


BOARD::~BOARD()
BOARD::~BOARD()
{
{
    if( m_PcbFrame->GetScreen() )
    if( m_PcbFrame && m_PcbFrame->GetScreen() )
        m_PcbFrame->GetScreen()->ClearUndoRedoList();
        m_PcbFrame->GetScreen()->ClearUndoRedoList();


    while( m_ZoneDescriptorList.size() )
    while( m_ZoneDescriptorList.size() )
+11 −0
Original line number Original line Diff line number Diff line
@@ -26,6 +26,17 @@ PCB_TARGET::PCB_TARGET( BOARD_ITEM* aParent ) :
    m_Size  = 5000;
    m_Size  = 5000;
}
}


PCB_TARGET::PCB_TARGET( BOARD_ITEM* aParent, int aShape, int aLayer,
    const wxPoint& aPos, int aSize, int aWidth ) :
    BOARD_ITEM( aParent, PCB_TARGET_T )
{
    m_Shape = aShape;
    m_Layer = aLayer;
    m_Pos   = aPos;
    m_Size  = aSize;
    m_Width = aWidth;
}



PCB_TARGET::~PCB_TARGET()
PCB_TARGET::~PCB_TARGET()
{
{
+3 −0
Original line number Original line Diff line number Diff line
@@ -25,6 +25,9 @@ public:


public:
public:
    PCB_TARGET( BOARD_ITEM* aParent );
    PCB_TARGET( BOARD_ITEM* aParent );
    PCB_TARGET( BOARD_ITEM* aParent, int aShape, int aLayer,
                const wxPoint& aPos, int aSize, int aWidth );

    ~PCB_TARGET();
    ~PCB_TARGET();


    PCB_TARGET* Next() const { return (PCB_TARGET*) Pnext; }
    PCB_TARGET* Next() const { return (PCB_TARGET*) Pnext; }
+11 −2
Original line number Original line Diff line number Diff line
@@ -174,7 +174,6 @@ public:
        return (m_ModuleStatus & MODULE_is_LOCKED) != 0;
        return (m_ModuleStatus & MODULE_is_LOCKED) != 0;
    }
    }



    /**
    /**
     * Function SetLocked
     * Function SetLocked
     * sets the MODULE_is_LOCKED bit in the m_ModuleStatus
     * sets the MODULE_is_LOCKED bit in the m_ModuleStatus
@@ -188,6 +187,16 @@ public:
            m_ModuleStatus &= ~MODULE_is_LOCKED;
            m_ModuleStatus &= ~MODULE_is_LOCKED;
    }
    }


    bool IsPlaced() const   { return (m_ModuleStatus & MODULE_is_PLACED); }
    void SetIsPlaced( bool isPlaced )
    {
        if( isPlaced )
            m_ModuleStatus |= MODULE_is_PLACED;
        else
            m_ModuleStatus &= ~MODULE_is_PLACED;
    }

    void SetLastEditTime( long aTime ) { m_LastEdit_Time = aTime; }


    /* Reading and writing data on files */
    /* Reading and writing data on files */


+20 −2
Original line number Original line Diff line number Diff line
@@ -110,7 +110,7 @@ public:


    wxSize  m_DeltaSize;            // delta on rectangular shapes
    wxSize  m_DeltaSize;            // delta on rectangular shapes


    wxPoint m_Pos0;                 // Initial Pad position (i.e. pas position relative to the
    wxPoint m_Pos0;                 // Initial Pad position (i.e. pad position relative to the
                                    // module anchor, orientation 0
                                    // module anchor, orientation 0


    int     m_ShapeMaxRadius;       // radius of the circle containing the pad shape
    int     m_ShapeMaxRadius;       // radius of the circle containing the pad shape
@@ -169,6 +169,7 @@ public:
     * @return the shape of this pad.
     * @return the shape of this pad.
     */
     */
    int GetShape() const { return m_PadShape & 0xFF;  }
    int GetShape() const { return m_PadShape & 0xFF;  }
    void SetShape( int aShape )             { m_PadShape = aShape; }


    const wxPoint GetPosition() const   // overload
    const wxPoint GetPosition() const   // overload
    {
    {
@@ -177,6 +178,23 @@ public:


    void SetPosition( const wxPoint& aPos )     { m_Pos = aPos; }   // overload
    void SetPosition( const wxPoint& aPos )     { m_Pos = aPos; }   // overload


    void SetPos0( const wxPoint& aPos )         { m_Pos0 = aPos; }
    void SetSize( const wxSize& aSize )         { m_Size = aSize; }
    void SetDelta( const wxSize& aSize )        { m_DeltaSize = aSize; }
    void SetDrillSize( const wxSize& aSize )    { m_Drill = aSize; }
    void SetOffset( const wxSize& aOffset )     { m_Offset = aOffset; }
    void SetOrientation( int aAngle )           { m_Orient = aAngle; }
    void SetDrillShape( int aDrillShape )       { m_DrillShape = aDrillShape; }
    void SetLayerMask( int aLayerMask )         { m_layerMask = aLayerMask; }
    void SetAttribute( int aAttribute )         { m_Attribut = aAttribute; }
    void SetDieLength( int aLength )            { m_LengthDie = aLength; }
    void SetSolderMaskMargin( int aLength )     { m_LocalSolderMaskMargin = aLength; }
    void SetSolderPasteMargin( int aLength )    { m_LocalSolderPasteMargin = aLength; }
    void SetSolderPasteRatio( double aRatio )   { m_LocalSolderPasteMarginRatio = aRatio; }

    /// A local override of the Module's clearance
    void SetPadClearance( int aLength )         { m_LocalClearance = aLength; }

    /**
    /**
     * Function TransformShapeWithClearanceToPolygon
     * Function TransformShapeWithClearanceToPolygon
     * Convert the pad shape to a closed polygon
     * Convert the pad shape to a closed polygon
Loading