Add Gerber job file writer in Pcbnew, and a basic reader in Gerbview. Currently disabled
Fix also very minor issues in Gerbview
This commit is contained in:
@@ -82,6 +82,7 @@ PCB_PLOT_PARAMS::PCB_PLOT_PARAMS()
|
||||
m_useGerberProtelExtensions = false;
|
||||
m_useGerberAttributes = false;
|
||||
m_includeGerberNetlistInfo = false;
|
||||
m_createGerberJobFile = false;
|
||||
m_gerberPrecision = gbrDefaultPrecision;
|
||||
m_excludeEdgeLayer = true;
|
||||
m_lineWidth = g_DrawDefaultLineThickness;
|
||||
@@ -146,14 +147,11 @@ void PCB_PLOT_PARAMS::Format( OUTPUTFORMATTER* aFormatter,
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_usegerberextensions ),
|
||||
m_useGerberProtelExtensions ? trueStr : falseStr );
|
||||
|
||||
if( m_useGerberAttributes ) // save this option only if active,
|
||||
// to avoid incompatibility with older Pcbnew version
|
||||
{
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_usegerberattributes ), trueStr );
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_usegerberattributes ), trueStr );
|
||||
|
||||
if( GetIncludeGerberNetlistInfo() )
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_usegerberadvancedattributes ), trueStr );
|
||||
}
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_usegerberadvancedattributes ), trueStr );
|
||||
|
||||
aFormatter->Print( aNestLevel+1, "(%s %s)\n", getTokenName( T_creategerberjobfile ), trueStr );
|
||||
|
||||
if( m_gerberPrecision != gbrDefaultPrecision ) // save this option only if it is not the default value,
|
||||
// to avoid incompatibility with older Pcbnew version
|
||||
@@ -228,6 +226,8 @@ bool PCB_PLOT_PARAMS::IsSameAs( const PCB_PLOT_PARAMS &aPcbPlotParams, bool aCom
|
||||
return false;
|
||||
if( m_useGerberAttributes && m_includeGerberNetlistInfo != aPcbPlotParams.m_includeGerberNetlistInfo )
|
||||
return false;
|
||||
if( m_createGerberJobFile != aPcbPlotParams.m_createGerberJobFile )
|
||||
return false;
|
||||
if( m_gerberPrecision != aPcbPlotParams.m_gerberPrecision )
|
||||
return false;
|
||||
if( m_excludeEdgeLayer != aPcbPlotParams.m_excludeEdgeLayer )
|
||||
@@ -392,6 +392,10 @@ void PCB_PLOT_PARAMS_PARSER::Parse( PCB_PLOT_PARAMS* aPcbPlotParams )
|
||||
aPcbPlotParams->m_includeGerberNetlistInfo = parseBool();
|
||||
break;
|
||||
|
||||
case T_creategerberjobfile:
|
||||
aPcbPlotParams->m_createGerberJobFile = parseBool();
|
||||
break;
|
||||
|
||||
case T_gerberprecision:
|
||||
aPcbPlotParams->m_gerberPrecision =
|
||||
parseInt( gbrDefaultPrecision-1, gbrDefaultPrecision);
|
||||
|
||||
Reference in New Issue
Block a user