7
mirror of https://gitlab.com/kicad/code/kicad.git synced 2025-04-04 23:55:30 +00:00

Persist some missing jobset arguments.

Also adds some missing CLI arguments.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/20116
This commit is contained in:
Jeff Young 2025-03-02 19:26:34 +00:00
parent 3fc87a841d
commit b0eef3ee28
7 changed files with 73 additions and 37 deletions

View File

@ -43,9 +43,8 @@ JOB_EXPORT_PCB_DXF::JOB_EXPORT_PCB_DXF() :
{
m_plotDrawingSheet = false;
m_params.emplace_back(
new JOB_PARAM<bool>( "plot_footprint_values", &m_plotFootprintValues, m_plotFootprintValues ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_graphic_items_using_contours", &m_plotGraphicItemsUsingContours,
m_params.emplace_back( new JOB_PARAM<bool>( "plot_graphic_items_using_contours",
&m_plotGraphicItemsUsingContours,
m_plotGraphicItemsUsingContours ) );
m_params.emplace_back( new JOB_PARAM<DXF_UNITS>( "units", &m_dxfUnits, m_dxfUnits ) );
m_params.emplace_back( new JOB_PARAM<bool>( "polygon_mode", &m_polygonMode, m_polygonMode ) );

View File

@ -33,19 +33,13 @@ JOB_EXPORT_PCB_GERBER::JOB_EXPORT_PCB_GERBER( const std::string& aType ) :
{
m_plotDrawingSheet = false;
m_params.emplace_back( new JOB_PARAM<wxString>( "drawing_sheet",
&m_drawingSheet,
m_drawingSheet ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_footprint_values",
&m_plotFootprintValues,
m_plotFootprintValues ) );
m_params.emplace_back( new JOB_PARAM<bool>( "include_netlist_attributes",
&m_includeNetlistAttributes,
m_includeNetlistAttributes ) );
m_params.emplace_back( new JOB_PARAM<bool>( "use_x2_format", &m_useX2Format, m_useX2Format ) );
m_params.emplace_back( new JOB_PARAM<bool>( "disable_aperture_macros", &m_disableApertureMacros,
m_params.emplace_back( new JOB_PARAM<bool>( "disable_aperture_macros",
&m_disableApertureMacros,
m_disableApertureMacros ) );
m_params.emplace_back( new JOB_PARAM<bool>( "use_protel_file_extension",
&m_useProtelFileExtension,

View File

@ -46,20 +46,6 @@ JOB_EXPORT_PCB_PDF::JOB_EXPORT_PCB_PDF() :
m_params.emplace_back( new JOB_PARAM<wxString>( "color_theme",
&m_colorTheme, m_colorTheme ) );
m_params.emplace_back( new JOB_PARAM<bool>( "mirror",
&m_mirror, m_mirror ) );
m_params.emplace_back( new JOB_PARAM<bool>( "black_and_white",
&m_blackAndWhite, m_blackAndWhite ) );
m_params.emplace_back( new JOB_PARAM<bool>( "negative",
&m_negative, m_negative ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_footprint_values",
&m_plotFootprintValues, m_plotFootprintValues ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_pad_numbers",
&m_plotPadNumbers, m_plotPadNumbers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "sketch_pads_on_fab_layers",
&m_sketchPadsOnFabLayers, m_sketchPadsOnFabLayers ) );
m_params.emplace_back( new JOB_PARAM<DRILL_MARKS>( "drill_shape",
&m_drillShapeOption, m_drillShapeOption ) );
m_params.emplace_back( new JOB_PARAM<bool>( "pdf_metadata",
&m_pdfMetadata, m_pdfMetadata ) );

View File

@ -49,6 +49,31 @@ JOB_EXPORT_PCB_PLOT::JOB_EXPORT_PCB_PLOT( PLOT_FORMAT aFormat, const std::string
&m_printMaskLayersToIncludeOnAllLayers,
m_printMaskLayersToIncludeOnAllLayers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "mirror",
&m_mirror, m_mirror ) );
m_params.emplace_back( new JOB_PARAM<bool>( "black_and_white",
&m_blackAndWhite, m_blackAndWhite ) );
m_params.emplace_back( new JOB_PARAM<bool>( "negative",
&m_negative, m_negative ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_footprint_values",
&m_plotFootprintValues, m_plotFootprintValues ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_ref_des",
&m_plotRefDes, m_plotRefDes ) );
m_params.emplace_back( new JOB_PARAM<bool>( "hide_dnp_footprints_on_fab_layers",
&m_hideDNPFPsOnFabLayers,
m_hideDNPFPsOnFabLayers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "sketch_dnp_footprints_on_fab_layers",
&m_sketchDNPFPsOnFabLayers,
m_sketchDNPFPsOnFabLayers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "crossout_dnp_footprints_on_fab_layers",
&m_crossoutDNPFPsOnFabLayers,
m_crossoutDNPFPsOnFabLayers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "sketch_pads_on_fab_layers",
&m_sketchPadsOnFabLayers,
m_sketchPadsOnFabLayers ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_pad_numbers",
&m_plotPadNumbers, m_plotPadNumbers ) );
@ -59,11 +84,12 @@ JOB_EXPORT_PCB_PLOT::JOB_EXPORT_PCB_PLOT( PLOT_FORMAT aFormat, const std::string
&m_subtractSolderMaskFromSilk,
m_subtractSolderMaskFromSilk ) );
m_params.emplace_back( new JOB_PARAM<bool>( "plot_ref_des", &m_plotRefDes, m_plotRefDes ) );
m_params.emplace_back( new JOB_PARAM<bool>( "use_drill_origin",
&m_useDrillOrigin, m_useDrillOrigin ) );
m_params.emplace_back( new JOB_PARAM<DRILL_MARKS>( "drill_shape",
&m_drillShapeOption, m_drillShapeOption ) );
m_params.emplace_back( new JOB_PARAM<wxString>( "drawing_sheet",
&m_drawingSheet, m_drawingSheet ) );
}

View File

@ -37,16 +37,7 @@ JOB_EXPORT_PCB_SVG::JOB_EXPORT_PCB_SVG() :
m_plotDrawingSheet = true;
m_params.emplace_back( new JOB_PARAM<wxString>( "color_theme", &m_colorTheme, m_colorTheme ) );
m_params.emplace_back( new JOB_PARAM<bool>( "mirror", &m_mirror, m_mirror ) );
m_params.emplace_back(
new JOB_PARAM<bool>( "black_and_white", &m_blackAndWhite, m_blackAndWhite ) );
m_params.emplace_back( new JOB_PARAM<bool>( "negative", &m_negative, m_negative ) );
m_params.emplace_back( new JOB_PARAM<bool>(
"sketch_pads_on_fab_layers", &m_sketchPadsOnFabLayers, m_sketchPadsOnFabLayers ) );
m_params.emplace_back(
new JOB_PARAM<int>( "page_size_mode", &m_pageSizeMode, m_pageSizeMode ) );
m_params.emplace_back(
new JOB_PARAM<DRILL_MARKS>( "drill_shape", &m_drillShapeOption, m_drillShapeOption ) );
m_params.emplace_back( new JOB_PARAM<int>( "page_size_mode", &m_pageSizeMode, m_pageSizeMode ) );
m_params.emplace_back( new JOB_PARAM<unsigned int>( "precision", &m_precision, m_precision ) );
m_params.emplace_back( new JOB_PARAM<GEN_MODE>( "gen_mode", &m_genMode, m_genMode ) );
}

View File

@ -53,6 +53,22 @@ CLI::PCB_EXPORT_DXF_COMMAND::PCB_EXPORT_DXF_COMMAND() : PCB_EXPORT_BASE_COMMAND(
.help( UTF8STDSTR( _( "Exclude the value text" ) ) )
.flag();
m_argParser.add_argument( "--sp", ARG_SKETCH_PADS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_SKETCH_PADS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--hdnp", ARG_HIDE_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_HIDE_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--sdnp", ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--cdnp", ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( ARG_SUBTRACT_SOLDERMASK )
.help( UTF8STDSTR( _( "Subtract soldermask from silkscreen" ) ) )
.flag();
@ -117,6 +133,10 @@ int CLI::PCB_EXPORT_DXF_COMMAND::doPerform( KIWAY& aKiway )
dxfJob->m_filename = m_argInput;
dxfJob->SetConfiguredOutputPath( m_argOutput );
dxfJob->m_drawingSheet = m_argDrawingSheet;
dxfJob->m_sketchPadsOnFabLayers = m_argParser.get<bool>( ARG_SKETCH_PADS_ON_FAB_LAYERS );
dxfJob->m_hideDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_HIDE_DNP_FPS_ON_FAB_LAYERS );
dxfJob->m_sketchDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS );
dxfJob->m_crossoutDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS );
dxfJob->SetVarOverrides( m_argDefineVars );
if( !wxFile::Exists( dxfJob->m_filename ) )

View File

@ -53,6 +53,22 @@ CLI::PCB_EXPORT_GERBER_COMMAND::PCB_EXPORT_GERBER_COMMAND( const std::string& aN
.help( UTF8STDSTR( _( "Include the border and title block" ) ) )
.flag();
m_argParser.add_argument( "--sp", ARG_SKETCH_PADS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_SKETCH_PADS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--hdnp", ARG_HIDE_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_HIDE_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--sdnp", ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( "--cdnp", ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS )
.help( UTF8STDSTR( _( ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS_DESC ) ) )
.flag();
m_argParser.add_argument( ARG_NO_X2 )
.help( UTF8STDSTR( _( "Do not use the extended X2 format" ) ) )
.flag();
@ -100,6 +116,10 @@ int CLI::PCB_EXPORT_GERBER_COMMAND::populateJob( JOB_EXPORT_PCB_GERBER* aJob )
aJob->m_filename = m_argInput;
aJob->SetConfiguredOutputPath( m_argOutput );
aJob->m_drawingSheet = m_argDrawingSheet;
aJob->m_sketchPadsOnFabLayers = m_argParser.get<bool>( ARG_SKETCH_PADS_ON_FAB_LAYERS );
aJob->m_hideDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_HIDE_DNP_FPS_ON_FAB_LAYERS );
aJob->m_sketchDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS );
aJob->m_crossoutDNPFPsOnFabLayers = m_argParser.get<bool>( ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS );
aJob->SetVarOverrides( m_argDefineVars );
aJob->m_plotFootprintValues = !m_argParser.get<bool>( ARG_EXCLUDE_VALUE );