Commit dc35a18c authored by Dick Hollenbeck's avatar Dick Hollenbeck
Browse files

merge from testing, new work

parents 4e97b4e1 258cebf1
Loading
Loading
Loading
Loading
+14 −0
Original line number Original line Diff line number Diff line
@@ -4,6 +4,20 @@ KiCad ChangeLog 2010
Please add newer entries at the top, list the date and your name with
Please add newer entries at the top, list the date and your name with
email address.
email address.


2010-Dec-28 UPDATE Dick Hollenbeck <dick@softplc.com>
================================================================================
++new:
    Completed a good portion of /new class LIB_TABLE.
    Starting LPID.
++common:
    Tricked xnode.h into not issuing deprecation warnings.
++richio:
  * Added support of DSNLEXER( LINE_READER* ) to TokenList2DsnLexer.cmake, which
    allows the chaining of different grammars on top of a common LINE_READER.
  * Changed OUTPUT_FORMATTER::Quoted() to return a std::string and not modify
    its input parameter.


2010-dec-21 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
2010-dec-21 UPDATE Wayne Stambaugh <stambaughw@verizon.net>
================================================================================
================================================================================
++all
++all
+21 −3
Original line number Original line Diff line number Diff line
@@ -223,8 +223,9 @@ using namespace DSN; // enum ${enum} is in this namespace
class ${RESULT}_LEXER : public DSNLEXER
class ${RESULT}_LEXER : public DSNLEXER
{
{
public:
public:

    /**
    /**
     * Constructor ${RESULT}_LEXER
     * Constructor ( const std::string&, const wxString& )
     * @param aSExpression is (utf8) text possibly from the clipboard that you want to parse.
     * @param aSExpression is (utf8) text possibly from the clipboard that you want to parse.
     * @param aSource is a description of the origin of @a aSExpression, such as a filename.
     * @param aSource is a description of the origin of @a aSExpression, such as a filename.
     *   If left empty, then _("clipboard") is used.
     *   If left empty, then _("clipboard") is used.
@@ -236,7 +237,7 @@ public:
    }
    }


    /**
    /**
     * Constructor ${RESULT}_LEXER
     * Constructor ( FILE* )
     * takes @a aFile already opened for reading and @a aFilename as parameters.
     * takes @a aFile already opened for reading and @a aFilename as parameters.
     * The opened file is assumed to be positioned at the beginning of the file
     * The opened file is assumed to be positioned at the beginning of the file
     * for purposes of accurate line number reporting in error messages.  The
     * for purposes of accurate line number reporting in error messages.  The
@@ -250,6 +251,23 @@ public:
    {
    {
    }
    }


    /**
     * Constructor ( LINE_READER* )
     * intializes a lexer and prepares to read from @a aLineReader which
     * is assumed ready, and may be in use by other DSNLEXERs also.  No ownership
     * is taken of @a aLineReader. This enables it to be used by other lexers also.
     * The transition between grammars in such a case, must happen on a text
     * line boundary, not within the same line of text.
     *
     * @param aLineReader is any subclassed instance of LINE_READER, such as
     *  STRING_LINE_READER or FILE_LINE_READER.  No ownership is taken of aLineReader.
     */
    ${RESULT}_LEXER( LINE_READER* aLineReader ) :
        DSNLEXER( DSN::${result}_keywords, DSN::${result}_keyword_count,
                  aLineReader )
    {
    }

    /**
    /**
     * Function NextTok
     * Function NextTok
     * returns the next token found in the input file or T_EOF when reaching
     * returns the next token found in the input file or T_EOF when reaching
+1 −1
Original line number Original line Diff line number Diff line
@@ -6,7 +6,7 @@
#endif
#endif


#ifndef KICAD_BUILD_VERSION
#ifndef KICAD_BUILD_VERSION
#define KICAD_BUILD_VERSION "(2010-12-22 BZR 2676)"
#define KICAD_BUILD_VERSION "(2010-12-23 BZR 2682)"
#endif
#endif


//#define VERSION_STABILITY      "stable"
//#define VERSION_STABILITY      "stable"
+10 −12
Original line number Original line Diff line number Diff line
@@ -170,29 +170,27 @@ void DXF_PLOTTER::pen_to( wxPoint pos, char plume )
void DXF_PLOTTER::set_dash( bool dashed )
void DXF_PLOTTER::set_dash( bool dashed )
{
{
    /* NOP for now */
    /* NOP for now */
    wxASSERT( output_file );
}
}




/**
/**
 * Function Plot a filled segment (track)
 * Function thick_segment
 * @param start = starting point
 * Plot a filled segment (track)
 * @param end = ending point
 * @param aStart = starting point
 * @param aEnd = ending point
 * @param aWidth = segment width (thickness)
 * @param aWidth = segment width (thickness)
 * @param aPlotMode = FILLED, SKETCH ..
 * @param aPlotMode = FILLED, SKETCH ..
 */
 */
void DXF_PLOTTER::thick_segment( wxPoint start, wxPoint end, int width,
void DXF_PLOTTER::thick_segment( wxPoint aStart, wxPoint aEnd, int aWidth,
                                 GRTraceMode tracemode )
                                 GRTraceMode aPlotMode )
{
{
    wxASSERT( output_file );
    if( aPlotMode == FILAIRE )  /* just a line is Ok */

    if( tracemode == FILAIRE )  /* just a line is Ok */
    {
    {
        move_to( start );
        move_to( aStart );
        finish_to( end );
        finish_to( aEnd );
    }
    }
    else
    else
        segment_as_oval( start, end, width, tracemode );
        segment_as_oval( aStart, aEnd, aWidth, aPlotMode );
}
}




+18 −16
Original line number Original line Diff line number Diff line
@@ -157,21 +157,21 @@ static void DrawGraphicTextPline(
    wxDC* aDC,
    wxDC* aDC,
    EDA_Colors aColor,
    EDA_Colors aColor,
    int aWidth,
    int aWidth,
    bool sketch_mode,
    bool aSketchMode,
    int point_count,
    int point_count,
    wxPoint* coord,
    wxPoint* coord,
    void (* aCallback)(int x0, int y0, int xf, int yf ),
    void (* aCallback)(int x0, int y0, int xf, int yf ),
    PLOTTER* plotter )
    PLOTTER* aPlotter )
{
{
    if( plotter )
    if( aPlotter )
    {
    {
        plotter->move_to( coord[0] );
        aPlotter->move_to( coord[0] );
        for( int ik = 1; ik < point_count; ik++ )
        for( int ik = 1; ik < point_count; ik++ )
        {
        {
            plotter->line_to( coord[ik] );
            aPlotter->line_to( coord[ik] );
        }
        }


        plotter->pen_finish();
        aPlotter->pen_finish();
    }
    }
    else if( aCallback )
    else if( aCallback )
    {
    {
@@ -181,7 +181,7 @@ static void DrawGraphicTextPline(
                       coord[ik + 1].x, coord[ik + 1].y );
                       coord[ik + 1].x, coord[ik + 1].y );
        }
        }
    }
    }
    else if( sketch_mode )
    else if( aSketchMode )
    {
    {
        for( int ik = 0; ik < (point_count - 1); ik++ )
        for( int ik = 0; ik < (point_count - 1); ik++ )
            GRCSegm( aClipBox, aDC, coord[ik].x, coord[ik].y,
            GRCSegm( aClipBox, aDC, coord[ik].x, coord[ik].y,
@@ -218,8 +218,11 @@ static int overbar_position( int size_v, int thickness )
 *      Use a value min(aSize.x, aSize.y) / 5 for a bold text
 *      Use a value min(aSize.x, aSize.y) / 5 for a bold text
 *  @param aItalic = true to simulate an italic font
 *  @param aItalic = true to simulate an italic font
 *  @param aBold = true to use a bold font. Useful only with default width value (aWidth = 0)
 *  @param aBold = true to use a bold font. Useful only with default width value (aWidth = 0)
 *  @param aCallback() = function called (if non null) to draw each segment.
 *                  used to draw 3D texts or for plotting, NULL for normal drawings
 *  @param aPlotter = a pointer to a PLOTTER instance, when this function is used to plot
 *                  the text. NULL to draw this text.
 */
 */
/****************************************************************************************************/
void DrawGraphicText( WinEDA_DrawPanel* aPanel,
void DrawGraphicText( WinEDA_DrawPanel* aPanel,
                      wxDC* aDC,
                      wxDC* aDC,
                      const wxPoint& aPos,
                      const wxPoint& aPos,
@@ -233,8 +236,7 @@ void DrawGraphicText( WinEDA_DrawPanel* aPanel,
                      bool aItalic,
                      bool aItalic,
                      bool aBold,
                      bool aBold,
                      void (* aCallback)( int x0, int y0, int xf, int yf ),
                      void (* aCallback)( int x0, int y0, int xf, int yf ),
                      PLOTTER* plotter )
                      PLOTTER* aPlotter )
/****************************************************************************************************/
{
{
    int       AsciiCode;
    int       AsciiCode;
    int       x0, y0;
    int       x0, y0;
@@ -353,10 +355,10 @@ void DrawGraphicText( WinEDA_DrawPanel* aPanel,
        RotatePoint( &current_char_pos, aPos, aOrient );
        RotatePoint( &current_char_pos, aPos, aOrient );
        RotatePoint( &end, aPos, aOrient );
        RotatePoint( &end, aPos, aOrient );


        if( plotter )
        if( aPlotter )
        {
        {
            plotter->move_to( current_char_pos );
            aPlotter->move_to( current_char_pos );
            plotter->finish_to( end );
            aPlotter->finish_to( end );
        }
        }
        else if( aCallback )
        else if( aCallback )
        {
        {
@@ -410,7 +412,7 @@ void DrawGraphicText( WinEDA_DrawPanel* aPanel,
                coord[1] = overbar_pos;
                coord[1] = overbar_pos;
                /* Plot the overbar segment */
                /* Plot the overbar segment */
                DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
                DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
                                      sketch_mode, 2, coord, aCallback, plotter );
                                      sketch_mode, 2, coord, aCallback, aPlotter );
            }
            }
            continue; /* Skip ~ processing */
            continue; /* Skip ~ processing */
        }
        }
@@ -450,7 +452,7 @@ void DrawGraphicText( WinEDA_DrawPanel* aPanel,
                        aWidth = 0;
                        aWidth = 0;
                    DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
                    DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
                                          sketch_mode, point_count, coord,
                                          sketch_mode, point_count, coord,
                                          aCallback, plotter );
                                          aCallback, aPlotter );
                }
                }
                point_count = 0;
                point_count = 0;
            }
            }
@@ -492,7 +494,7 @@ void DrawGraphicText( WinEDA_DrawPanel* aPanel,
        coord[1] = overbar_pos;
        coord[1] = overbar_pos;
        /* Plot the overbar segment */
        /* Plot the overbar segment */
        DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
        DrawGraphicTextPline( clipBox, aDC, aColor, aWidth,
                              sketch_mode, 2, coord, aCallback, plotter );
                              sketch_mode, 2, coord, aCallback, aPlotter );
    }
    }
}
}


Loading