20#ifndef LIBREPCB_EDITOR_BOARDEDITOR_H
21#define LIBREPCB_EDITOR_BOARDEDITOR_H
39class BoardPlaneFragmentsBuilder;
40class OrderPcbApiRequest;
49class RuleCheckMessagesModel;
69 QObject* parent =
nullptr) noexcept;
78 void setUiData(const ui::BoardData& data) noexcept;
The BoardDesignRuleCheck class checks a librepcb::Board for design rule violations.
Definition boarddesignrulecheck.h:47
The Board class represents a PCB of a project and is always part of a circuit.
Definition board.h:73
Plane fragments builder working on a librepcb::Board.
Definition boardplanefragmentsbuilder.h:55
Order a PCB via a LibrePCB API server.
Definition orderpcbapirequest.h:42
The Project class represents a whole (opened) project with all its content.
Definition project.h:71
The RuleCheckMessage class.
Definition rulecheckmessage.h:45
The Signal class is used to emit signals on non-QObject derived classes.
Definition signalslot.h:65
The Board2dTab class.
Definition board2dtab.h:68
The Board3dTab class.
Definition board3dtab.h:55
The BoardEditor class.
Definition boardeditor.h:58
void startDrc(bool quick) noexcept
Definition boardeditor.cpp:214
void registeredTabsModified() noexcept
Definition boardeditor.cpp:472
std::unique_ptr< OrderPcbApiRequest > mOrderRequest
May be nullptr
Definition boardeditor.h:137
void startOrderPcbUpload(bool openBrowser) noexcept
Start the "Order PCB" upload.
Definition boardeditor.cpp:364
std::unique_ptr< BoardDesignRuleCheck > mDrc
Definition boardeditor.h:131
void schedulePlanesRebuild()
Definition boardeditor.cpp:161
void drcMessageHighlightRequested(std::shared_ptr< const RuleCheckMessage > msg, bool zoomTo)
QString mOrderStatus
Either error or status.
Definition boardeditor.h:138
void execStepExportDialog() noexcept
Definition boardeditor.cpp:264
void execBoardSetupDialog(bool switchToDrcSettings=false) noexcept
Definition boardeditor.cpp:254
std::shared_ptr< Notification > mDrcNotification
Definition boardeditor.h:132
ProjectEditor & getProjectEditor() noexcept
Definition boardeditor.h:73
bool isRebuildingPlanes() const noexcept
Definition boardeditor.cpp:157
std::unique_ptr< BoardPlaneFragmentsBuilder > mPlanesBuilder
Definition boardeditor.h:126
void setDrcResult(const BoardDesignRuleCheck::Result &result) noexcept
Definition boardeditor.cpp:444
void registerActiveTab(Board2dTab *tab) noexcept
Definition boardeditor.cpp:230
Board & getBoard() noexcept
Definition boardeditor.h:74
void prepareOrderPcb() noexcept
Prepare the "Order PCB" feature (request server status)
Definition boardeditor.cpp:305
QString mDrcExecutionError
Definition boardeditor.h:141
ProjectEditor & mProjectEditor
Definition boardeditor.h:120
void unregisterActiveTab(Board2dTab *tab) noexcept
Definition boardeditor.cpp:237
int mOrderUploadProgressPercent
-1 means "not in progress"
Definition boardeditor.h:139
int mUiIndex
Definition boardeditor.h:123
bool mOrderOpenBrowser
Definition boardeditor.h:140
BoardEditor(const BoardEditor &other)=delete
Board & mBoard
Definition boardeditor.h:122
void setUiIndex(int index) noexcept
Definition boardeditor.cpp:113
void planesRebuildTimerTimeout() noexcept
Definition boardeditor.cpp:487
uint mDrcUndoStackState
Definition boardeditor.h:133
Project & mProject
Definition boardeditor.h:121
qint64 mTimestampOfLastPlaneRebuild
Definition boardeditor.h:128
int getUiIndex() const noexcept
Definition boardeditor.h:75
QVector< QPointer< Board3dTab > > mActive3dTabs
Definition boardeditor.h:145
void planesRebuildStatusChanged()
Signal< BoardEditor > onUiDataChanged
Definition boardeditor.h:63
void setUiData(const ui::BoardData &data) noexcept
Definition boardeditor.cpp:153
ui::BoardData getUiData() const noexcept
Definition boardeditor.cpp:120
std::unique_ptr< QTimer > mPlanesRebuildTimer
Definition boardeditor.h:127
QVector< QPointer< Board2dTab > > mActive2dTabs
Definition boardeditor.h:144
void startPlanesRebuild(bool force=false) noexcept
Definition boardeditor.cpp:165
std::shared_ptr< RuleCheckMessagesModel > mDrcMessages
Definition boardeditor.h:134
void aboutToBeDestroyed()
The Notification class.
Definition notification.h:43
The ProjectEditor class.
Definition projecteditor.h:63
The RuleCheckMessagesModel class.
Definition rulecheckmessagesmodel.h:46
Definition occmodel.cpp:77