20 #ifndef LIBREPCB_EDITOR_BOMGENERATORDIALOG_H 21 #define LIBREPCB_EDITOR_BOMGENERATORDIALOG_H 27 #include <optional/tl/optional.hpp> 39 class AssemblyVariant;
44 class WorkspaceSettings;
49 class BomGeneratorDialog;
67 const Board* board =
nullptr,
68 QWidget* parent =
nullptr) noexcept;
75 void projectSettingsModified();
78 void cbxBoardCurrentIndexChanged(
int index) noexcept;
79 void btnChooseOutputPathClicked() noexcept;
80 void btnOpenOutputDirectoryClicked() noexcept;
81 void btnGenerateClicked() noexcept;
84 void updateAttributes() noexcept;
85 void updateBom() noexcept;
86 void updateTable() noexcept;
87 std::shared_ptr<AssemblyVariant> getAssemblyVariant()
const noexcept;
88 tl::optional<Uuid> getAssemblyVariantUuid(
bool throwIfNullopt)
const;
89 FilePath getOutputFilePath()
const noexcept;
95 QScopedPointer<Ui::BomGeneratorDialog>
mUi;
const WorkspaceSettings & mSettings
Definition: bomgeneratordialog.h:92
Definition: occmodel.cpp:76
Container for all workspace related settings.
Definition: workspacesettings.h:60
QScopedPointer< Ui::BomGeneratorDialog > mUi
Definition: bomgeneratordialog.h:95
Project & mProject
Definition: bomgeneratordialog.h:93
The Board class represents a PCB of a project and is always part of a circuit.
Definition: board.h:73
The BomGeneratorDialog class.
Definition: bomgeneratordialog.h:59
QPointer< QPushButton > mBtnGenerate
Definition: bomgeneratordialog.h:96
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:127
std::shared_ptr< Bom > mBom
Definition: bomgeneratordialog.h:94
The Project class represents a whole (opened) project with all its content.
Definition: project.h:71