31#define ARG_MODE_SEPARATE "--mode-separate"
32#define ARG_MODE_MULTIPAGE "--mode-multipage"
33#define ARG_MODE_SINGLE "--mode-single"
44 .help(
UTF8STDSTR(
_(
"Mirror the board (useful for trying to show bottom layers)" ) ) )
48 .help(
UTF8STDSTR(
_(
"Exclude the reference designator text" ) ) )
52 .help(
UTF8STDSTR(
_(
"Exclude the value text" ) ) )
56 .help(
UTF8STDSTR(
_(
"Include the border and title block" ) ) )
84 .default_value( std::string() )
85 .help(
UTF8STDSTR(
_(
"Color theme to use (will default to PCB Editor settings)" ) ) )
86 .metavar(
"THEME_NAME" );
94 .default_value( std::string() )
96 _(
"Layers to include on each plot, comma separated list of untranslated "
97 "layer names to include such as "
99 .metavar(
"COMMON_LAYER_LIST" );
107 _(
"Generates a single file with the output arg path acting as the complete "
108 "directory and filename path. COMMON_LAYER_LIST does not function in this "
109 "mode. Instead LAYER_LIST controls all layers plotted." ) ) )
113 .help(
UTF8STDSTR(
_(
"Plot the layers to individual PDF files" ) ) )
117 .help(
UTF8STDSTR(
_(
"Plot the layers to a single PDF file with multiple pages" ) ) )
131 pdfJob->m_filename = m_argInput;
132 pdfJob->SetConfiguredOutputPath( m_argOutput );
133 pdfJob->m_drawingSheet = m_argDrawingSheet;
134 pdfJob->SetVarOverrides( m_argDefineVars );
136 if( !wxFile::Exists( pdfJob->m_filename ) )
138 wxFprintf( stderr,
_(
"Board file does not exist or is not accessible\n" ) );
148 pdfJob->m_mirror = m_argParser.get<
bool>(
ARG_MIRROR );
150 pdfJob->m_colorTheme =
From_UTF8( m_argParser.get<std::string>(
ARG_THEME ).c_str() );
151 pdfJob->m_negative = m_argParser.get<
bool>(
ARG_NEGATIVE );
161 pdfJob->m_printMaskLayer = m_selectedLayers;
167 if( argModeMulti && argModeSeparate )
169 wxFprintf( stderr,
_(
"Cannot use more than one mode flag\n" ) );
175 pdfJob->m_printMaskLayersToIncludeOnAllLayers = convertLayerStringList( layers, blah );
179 else if( argModeSeparate )
181 else if( argModeSingle )
argparse::ArgumentParser m_argParser
void addDefineArg()
Set up the drawing sheet arg used by many of the export commands.
void addDrawingSheetArg()
Set up the drawing sheet arg used by many of the export commands.
int doPerform(KIWAY &aKiway) override
The internal handler that should be overloaded to implement command specific processing and work.
@ ALL_LAYERS_SEPARATE_FILE
@ ALL_LAYERS_ONE_FILE
DEPRECATED MODE.
@ ONE_PAGE_PER_LAYER_ONE_FILE
The most traditional output mode KiCad has had.
A minimalistic software bus for communications between various DLLs/DSOs (DSOs) within the same KiCad...
int ProcessJob(KIWAY::FACE_T aFace, JOB *aJob, REPORTER *aReporter=nullptr)
Instantiate the current locale within a scope in which you are expecting exceptions to be thrown.
#define ARG_SKETCH_PADS_ON_FAB_LAYERS_DESC
#define ARG_INCLUDE_BORDER_TITLE
#define ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS_DESC
#define ARG_SKETCH_PADS_ON_FAB_LAYERS
#define ARG_COMMON_LAYERS
#define ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS_DESC
#define ARG_EXCLUDE_REFDES
#define ARG_BLACKANDWHITE_DESC
#define ARG_PLOT_INVISIBLE_TEXT_DESC
#define ARG_PLOT_INVISIBLE_TEXT
#define ARG_NEGATIVE_SHORT
#define ARG_EXCLUDE_VALUE
#define ARG_BLACKANDWHITE
#define ARG_CROSSOUT_DNP_FPS_ON_FAB_LAYERS
#define ARG_HIDE_DNP_FPS_ON_FAB_LAYERS
#define ARG_DRILL_SHAPE_OPTION_DESC
#define ARG_HIDE_DNP_FPS_ON_FAB_LAYERS_DESC
#define ARG_SKETCH_DNP_FPS_ON_FAB_LAYERS
#define ARG_DRILL_SHAPE_OPTION
#define ARG_NEGATIVE_DESC
#define ARG_MODE_MULTIPAGE
#define ARG_MODE_SEPARATE
static const int ERR_ARGS
static const int ERR_INVALID_INPUT_FILE
std::vector< FAB_LAYER_COLOR > dummy
wxString From_UTF8(const char *cstring)
int doPerform(KIWAY &aKiway) override
The internal handler that should be overloaded to implement command specific processing and work.
void addLayerArg(bool aRequire)