28#include <wx/tokenzr.h>
43 .default_value( std::string(
"" ) )
48 .default_value( std::string(
"" ) )
49 .metavar(
"FMT_PRESET" );
54 .default_value( std::string(
"Reference,Value,Footprint,${QUANTITY},${DNP}" ) )
59 .default_value( std::string(
"Refs,Value,Footprint,Qty,DNP" ) )
64 .default_value( std::string(
"" ) )
65 .metavar(
"GROUP_BY" );
69 .default_value( std::string(
"Reference" ) )
70 .metavar(
"SORT_BY" );
74 .default_value(
true );
78 .default_value( std::string(
"" ) )
92 .default_value( std::string(
"," ) )
93 .metavar(
"FIELD_DELIM" );
97 .default_value( std::string(
"\"" ) )
98 .metavar(
"STR_DELIM" );
102 .default_value( std::string(
"," ) )
103 .metavar(
"REF_DELIM" );
107 .default_value( std::string(
"-" ) )
108 .metavar(
"REF_RANGE_DELIM" );
122 std::vector<wxString> v;
124 if( !aList.IsEmpty() )
126 wxStringTokenizer layerTokens( aList,
"," );
128 while( layerTokens.HasMoreTokens() )
129 v.emplace_back( layerTokens.GetNextToken() );
137 std::unique_ptr<JOB_EXPORT_SCH_BOM> bomJob = std::make_unique<JOB_EXPORT_SCH_BOM>();
162 bomJob->m_fieldsLabels.clear();
174 if( !wxFile::Exists( bomJob->m_filename ) )
176 wxFprintf( stderr,
_(
"Schematic file does not exist or is not accessible\n" ) );
void addVariantsArg()
Set up the list of variants to output arguement.
argparse::ArgumentParser m_argParser
COMMAND(const std::string &aName)
Define a new COMMAND instance.
void addCommonArgs(bool aInput, bool aOutput, INPUT_TYPE aInputType, bool aOutputIsDir)
Set up the most common of args used across cli.
wxString m_argOutput
Value of the output arg if configured.
wxString m_argInput
Value of the common input arg if configured.
std::vector< wxString > m_argVariantNames
The list of variant names to output.
int doPerform(KIWAY &aKiway) override
The internal handler that should be overloaded to implement command specific processing and work.
std::vector< wxString > convertStringList(const wxString &aList)
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, PROGRESS_REPORTER *aProgressReporter=nullptr)
#define ARG_STRING_DELIMITER
#define ARG_GROUP_BY_DESC
#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM_DESC
#define ARG_KEEP_LINE_BREAKS_DESC
#define ARG_EXCLUDE_DNP_DESC
#define ARG_SORT_FIELD_DESC
#define ARG_REF_DELIMITER_DESC
#define ARG_KEEP_TABS_DESC
#define ARG_STRING_DELIMITER_DESC
#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM
#define ARG_KEEP_LINE_BREAKS
#define ARG_FMT_PRESET_DESC
#define ARG_FIELD_DELIMITER_DESC
#define ARG_FIELD_DELIMITER
#define ARG_REF_DELIMITER
#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM_WARNING
#define ARG_REF_RANGE_DELIMITER
#define ARG_SORT_ASC_DESC
#define ARG_REF_RANGE_DELIMITER_DESC
This file contains miscellaneous commonly used macros and functions.
static const int ERR_INVALID_INPUT_FILE
wxString From_UTF8(const char *cstring)