KiCad PCB EDA Suite
Loading...
Searching...
No Matches
job_export_bom.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2023 Mike Williams <[email protected]>
5 * Copyright The KiCad Developers, see AUTHORS.txt for contributors.
6 *
7 * This program is free software: you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the
9 * Free Software Foundation, either version 3 of the License, or (at your
10 * option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful, but
13 * WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <https://www.gnu.org/licenses/>.
19 */
20
21#ifndef JOB_EXPORT_BOM_H
22#define JOB_EXPORT_BOM_H
23
24#include <kicommon.h>
26#include <vector>
27#include "job.h"
28
30{
31public:
33 void FromJson( const nlohmann::json& aJson ) override;
34 wxString GetDefaultDescription() const override;
35 wxString GetSettingsDialogTitle() const override;
36
37 // The variant the dialog works with. First list entry, or empty for default.
38 wxString GetSelectedVariant() const;
39
40 // Store a single dialog selection. Replaces the list so it cannot grow.
41 void SetSelectedVariant( const wxString& aVariant );
42
43 // Basic options
44 wxString m_filename;
45
46 // Existing Preset, for that editor, e.g. sch and pcb will potentially have different presets
49
50 // Format options
58
59 // Fields options
60 std::vector<wxString> m_fieldsOrdered;
61 std::vector<wxString> m_fieldsLabels;
62 std::vector<wxString> m_fieldsGroupBy;
63 wxString m_sortField;
69
70 // Variant names to export. Empty vector means default variant only.
71 std::vector<wxString> m_variantNames;
72};
73
74#endif
BOM_FILTER_SCOPE
wxString GetSelectedVariant() const
std::vector< wxString > m_variantNames
wxString m_stringDelimiter
wxString m_fieldDelimiter
bool m_includeByteOrderMark
wxString m_filename
wxString m_filterString
std::vector< wxString > m_fieldsOrdered
wxString m_refRangeDelimiter
std::vector< wxString > m_fieldsLabels
wxString m_refDelimiter
void SetSelectedVariant(const wxString &aVariant)
std::vector< wxString > m_fieldsGroupBy
wxString m_bomFmtPresetName
wxString m_sortField
wxString m_bomPresetName
BOM_FILTER_SCOPE m_filterScope
virtual void FromJson(const nlohmann::json &j)
Definition job.cpp:60
JOB(const std::string &aType, bool aOutputIsDirectory)
Definition job.cpp:26
virtual wxString GetDefaultDescription() const
Definition job.cpp:74
virtual wxString GetSettingsDialogTitle() const
Definition job.cpp:80
#define KICOMMON_API
Definition kicommon.h:27