diff --git a/common/pcb.keywords b/common/pcb.keywords index 033e8d8986..ca2a5b299e 100644 --- a/common/pcb.keywords +++ b/common/pcb.keywords @@ -177,6 +177,7 @@ pad_prop_testpoint pad_prop_heatsink property page +paper path pcb_text_size pcb_text_width diff --git a/pcbnew/kicad_plugin.h b/pcbnew/kicad_plugin.h index b6030cf650..35c9b4cf48 100644 --- a/pcbnew/kicad_plugin.h +++ b/pcbnew/kicad_plugin.h @@ -65,8 +65,9 @@ class TEXTE_PCB; //#define SEXPR_BOARD_FILE_VERSION 20190905 // Add board physical stackup info in setup section //#define SEXPR_BOARD_FILE_VERSION 20190907 // Keepout areas in footprints //#define SEXPR_BOARD_FILE_VERSION 20191123 // pin function in pads -//#define SEXPR_BOARD_FILE_VERSION 20200104 // pad property for fabrication -#define SEXPR_BOARD_FILE_VERSION 20200119 // arcs in tracks +//#define SEXPR_BOARD_FILE_VERSION 20200104 // pad property for fabrication +//#define SEXPR_BOARD_FILE_VERSION 20200119 // arcs in tracks +#define SEXPR_BOARD_FILE_VERSION 20200512 // page -> paper #define CTL_STD_LAYER_NAMES (1 << 0) ///< Use English Standard layer names #define CTL_OMIT_NETS (1 << 1) ///< Omit pads net names (useless in library) diff --git a/pcbnew/pcb_parser.cpp b/pcbnew/pcb_parser.cpp index 67099029d1..d896302512 100644 --- a/pcbnew/pcb_parser.cpp +++ b/pcbnew/pcb_parser.cpp @@ -546,13 +546,16 @@ BOARD* PCB_PARSER::parseBOARD_unchecked() token = NextTok(); + if( token == T_page && m_requiredVersion <= 20200119 ) + token = T_paper; + switch( token ) { case T_general: parseGeneralSection(); break; - case T_page: + case T_paper: parsePAGE_INFO(); break; @@ -790,7 +793,7 @@ void PCB_PARSER::parseGeneralSection() void PCB_PARSER::parsePAGE_INFO() { - wxCHECK_RET( CurTok() == T_page, + wxCHECK_RET( ( CurTok() == T_page && m_requiredVersion <= 20200119 ) || CurTok() == T_paper, wxT( "Cannot parse " ) + GetTokenString( CurTok() ) + wxT( " as a PAGE_INFO." ) ); T token;