21#ifndef COMMAND_EXPORT_BOM_H
22#define COMMAND_EXPORT_BOM_H
29#define ARG_PRESET "--preset"
30#define ARG_PRESET_DESC "Use a named BOM preset setting from this editor, e.g. \"Grouped By Value\"."
32#define ARG_FMT_PRESET "--format-preset"
33#define ARG_FMT_PRESET_DESC "Use a named BOM format preset setting from this editor, e.g. CSV."
36#define ARG_FIELD_DELIMITER "--field-delimiter"
37#define ARG_FIELD_DELIMITER_DESC "Separator between output fields/columns."
39#define ARG_STRING_DELIMITER "--string-delimiter"
40#define ARG_STRING_DELIMITER_DESC "Character to surround fields with."
42#define ARG_REF_DELIMITER "--ref-delimiter"
43#define ARG_REF_DELIMITER_DESC "Character to place between individual references."
45#define ARG_REF_RANGE_DELIMITER "--ref-range-delimiter"
46#define ARG_REF_RANGE_DELIMITER_DESC "Character to place in ranges of references. Leave blank for no ranges."
48#define ARG_KEEP_TABS "--keep-tabs"
49#define ARG_KEEP_TABS_DESC "Keep tab characters from input fields. Stripped by default."
51#define ARG_KEEP_LINE_BREAKS "--keep-line-breaks"
52#define ARG_KEEP_LINE_BREAKS_DESC "Keep line break characters from input fields. Stripped by default."
54#define ARG_INCLUDE_BYTE_ORDER_MARK "--include-byte-order-mark"
55#define ARG_INCLUDE_BYTE_ORDER_MARK_DESC "Include a UTF-8 byte order mark at the start of the exported file."
58#define ARG_FIELDS "--fields"
59#define ARG_FIELDS_DESC "An ordered list of fields to export. Generated fields such as " \
60 "QUANTITY, ITEM_NUMBER, DNP, EXCLUDE_FROM_BOM, EXCLUDE_FROM_BOARD, " \
61 "and EXCLUDE_FROM_SIM can be specified with or without ${} delimiters."
63#define ARG_LABELS "--labels"
64#define ARG_LABELS_DESC "An ordered list of labels to apply the exported fields."
66#define ARG_GROUP_BY "--group-by"
67#define ARG_GROUP_BY_DESC "Fields to group references by when field values match."
69#define ARG_SORT_FIELD "--sort-field"
70#define ARG_SORT_FIELD_DESC "Field name to sort by."
72#define ARG_SORT_ASC "--sort-asc"
73#define ARG_SORT_ASC_DESC "Sort ascending (true) or descending (false)."
75#define ARG_FILTER "--filter"
76#define ARG_FILTER_DESC "Filter string to remove output lines."
78#define ARG_EXCLUDE_DNP "--exclude-dnp"
79#define ARG_EXCLUDE_DNP_DESC "Exclude components marked Do-Not-Populate."
81#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM "--include-excluded-from-bom"
82#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM_DESC "Deprecated. Has no effect."
83#define DEPRECATED_ARG_INCLUDE_EXCLUDED_FROM_BOM_WARNING "--include-excluded-from-bom has been deprecated as of " \
84 "KiCad 10.0.0. It will have no effect."
COMMAND(const std::string &aName)
Define a new COMMAND instance.
EXPORT_BOM_COMMAND(KIWAY::FACE_T aFaceId)
std::vector< wxString > convertStringList(const wxString &aList)
int doPerform(KIWAY &aKiway) override
The internal handler that should be overloaded to implement command specific processing and work.
A minimalistic software bus for communications between various DLLs/DSOs (DSOs) within the same KiCad...
FACE_T
Known KIFACE implementations.