LibrePCB Developers Documentation
Loading...
Searching...
No Matches
BoardEditor Class Referencefinal

The BoardEditor class. More...

#include <boardeditor.h>

Inherits QObject.

+ Collaboration diagram for BoardEditor:

Signals

void uiIndexChanged ()
 
void planesRebuildStatusChanged ()
 
void planesUpdated ()
 
void drcMessageHighlightRequested (std::shared_ptr< const RuleCheckMessage > msg, bool zoomTo)
 
void aboutToBeDestroyed ()
 

Public Member Functions

 BoardEditor ()=delete
 
 BoardEditor (const BoardEditor &other)=delete
 
 BoardEditor (ProjectEditor &prjEditor, Board &board, int uiIndex, QObject *parent=nullptr) noexcept
 
 ~BoardEditor () noexcept
 
ProjectEditorgetProjectEditor () noexcept
 
BoardgetBoard () noexcept
 
int getUiIndex () const noexcept
 
void setUiIndex (int index) noexcept
 
ui::BoardData getUiData () const noexcept
 
void setUiData (const ui::BoardData &data) noexcept
 
bool isRebuildingPlanes () const noexcept
 
void schedulePlanesRebuild ()
 
void startPlanesRebuild (bool force=false) noexcept
 
void startDrc (bool quick) noexcept
 
void registerActiveTab (Board2dTab *tab) noexcept
 
void unregisterActiveTab (Board2dTab *tab) noexcept
 
void registerActiveTab (Board3dTab *tab) noexcept
 
void unregisterActiveTab (Board3dTab *tab) noexcept
 
void execBoardSetupDialog (bool switchToDrcSettings=false) noexcept
 
void execStepExportDialog () noexcept
 
void prepareOrderPcb () noexcept
 Prepare the "Order PCB" feature (request server status)
 
void startOrderPcbUpload (bool openBrowser) noexcept
 Start the "Order PCB" upload.
 
BoardEditoroperator= (const BoardEditor &rhs)=delete
 

Public Attributes

Signal< BoardEditoronUiDataChanged
 

Private Member Functions

void setDrcResult (const BoardDesignRuleCheck::Result &result) noexcept
 
void registeredTabsModified () noexcept
 
void planesRebuildTimerTimeout () noexcept
 

Private Attributes

ProjectEditormProjectEditor
 
ProjectmProject
 
BoardmBoard
 
int mUiIndex
 
std::unique_ptr< BoardPlaneFragmentsBuildermPlanesBuilder
 
std::unique_ptr< QTimer > mPlanesRebuildTimer
 
qint64 mTimestampOfLastPlaneRebuild
 
std::unique_ptr< BoardDesignRuleCheckmDrc
 
std::shared_ptr< NotificationmDrcNotification
 
uint mDrcUndoStackState
 
std::shared_ptr< RuleCheckMessagesModelmDrcMessages
 
std::unique_ptr< OrderPcbApiRequestmOrderRequest
 May be nullptr
 
QString mOrderStatus
 Either error or status.
 
int mOrderUploadProgressPercent
 -1 means "not in progress"
 
bool mOrderOpenBrowser
 
QString mDrcExecutionError
 
QVector< QPointer< Board2dTab > > mActive2dTabs
 
QVector< QPointer< Board3dTab > > mActive3dTabs
 

Detailed Description

The BoardEditor class.

Constructor & Destructor Documentation

◆ BoardEditor() [1/3]

BoardEditor ( )
delete

◆ BoardEditor() [2/3]

BoardEditor ( const BoardEditor other)
delete

◆ BoardEditor() [3/3]

BoardEditor ( ProjectEditor prjEditor,
Board board,
int  uiIndex,
QObject *  parent = nullptr 
)
explicitnoexcept
+ Here is the call graph for this function:

◆ ~BoardEditor()

~BoardEditor ( )
noexcept

Member Function Documentation

◆ getProjectEditor()

ProjectEditor & getProjectEditor ( )
inlinenoexcept

◆ getBoard()

Board & getBoard ( )
inlinenoexcept

◆ getUiIndex()

int getUiIndex ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ setUiIndex()

void setUiIndex ( int  index)
noexcept

◆ getUiData()

ui::BoardData getUiData ( ) const
noexcept
+ Here is the call graph for this function:

◆ setUiData()

void setUiData ( const ui::BoardData &  data)
noexcept

◆ isRebuildingPlanes()

bool isRebuildingPlanes ( ) const
noexcept
+ Here is the caller graph for this function:

◆ schedulePlanesRebuild()

void schedulePlanesRebuild ( )
+ Here is the caller graph for this function:

◆ startPlanesRebuild()

void startPlanesRebuild ( bool  force = false)
noexcept
+ Here is the call graph for this function:

◆ startDrc()

void startDrc ( bool  quick)
noexcept

◆ registerActiveTab() [1/2]

void registerActiveTab ( Board2dTab tab)
noexcept
+ Here is the caller graph for this function:

◆ unregisterActiveTab() [1/2]

void unregisterActiveTab ( Board2dTab tab)
noexcept
+ Here is the caller graph for this function:

◆ registerActiveTab() [2/2]

void registerActiveTab ( Board3dTab tab)
noexcept

◆ unregisterActiveTab() [2/2]

void unregisterActiveTab ( Board3dTab tab)
noexcept

◆ execBoardSetupDialog()

void execBoardSetupDialog ( bool  switchToDrcSettings = false)
noexcept
+ Here is the call graph for this function:

◆ execStepExportDialog()

void execStepExportDialog ( )
noexcept
+ Here is the call graph for this function:

◆ prepareOrderPcb()

void prepareOrderPcb ( )
noexcept

Prepare the "Order PCB" feature (request server status)

◆ startOrderPcbUpload()

void startOrderPcbUpload ( bool  openBrowser)
noexcept

Start the "Order PCB" upload.

Parameters
openBrowserWhether to open the web browser after the upload or not.
+ Here is the call graph for this function:

◆ operator=()

BoardEditor & operator= ( const BoardEditor rhs)
delete

◆ uiIndexChanged

void uiIndexChanged ( )
signal
+ Here is the caller graph for this function:

◆ planesRebuildStatusChanged

void planesRebuildStatusChanged ( )
signal
+ Here is the caller graph for this function:

◆ planesUpdated

void planesUpdated ( )
signal
+ Here is the caller graph for this function:

◆ drcMessageHighlightRequested

void drcMessageHighlightRequested ( std::shared_ptr< const RuleCheckMessage msg,
bool  zoomTo 
)
signal

◆ aboutToBeDestroyed

void aboutToBeDestroyed ( )
signal
+ Here is the caller graph for this function:

◆ setDrcResult()

void setDrcResult ( const BoardDesignRuleCheck::Result result)
privatenoexcept

◆ registeredTabsModified()

void registeredTabsModified ( )
privatenoexcept

◆ planesRebuildTimerTimeout()

void planesRebuildTimerTimeout ( )
privatenoexcept

Member Data Documentation

◆ onUiDataChanged

Signal<BoardEditor> onUiDataChanged

◆ mProjectEditor

ProjectEditor& mProjectEditor
private

◆ mProject

Project& mProject
private

◆ mBoard

Board& mBoard
private

◆ mUiIndex

int mUiIndex
private

◆ mPlanesBuilder

std::unique_ptr<BoardPlaneFragmentsBuilder> mPlanesBuilder
private

◆ mPlanesRebuildTimer

std::unique_ptr<QTimer> mPlanesRebuildTimer
private

◆ mTimestampOfLastPlaneRebuild

qint64 mTimestampOfLastPlaneRebuild
private

◆ mDrc

std::unique_ptr<BoardDesignRuleCheck> mDrc
private

◆ mDrcNotification

std::shared_ptr<Notification> mDrcNotification
private

◆ mDrcUndoStackState

uint mDrcUndoStackState
private

◆ mDrcMessages

std::shared_ptr<RuleCheckMessagesModel> mDrcMessages
private

◆ mOrderRequest

std::unique_ptr<OrderPcbApiRequest> mOrderRequest
private

May be nullptr

◆ mOrderStatus

QString mOrderStatus
private

Either error or status.

◆ mOrderUploadProgressPercent

int mOrderUploadProgressPercent
private

-1 means "not in progress"

◆ mOrderOpenBrowser

bool mOrderOpenBrowser
private

◆ mDrcExecutionError

QString mDrcExecutionError
private

◆ mActive2dTabs

QVector<QPointer<Board2dTab> > mActive2dTabs
private

◆ mActive3dTabs

QVector<QPointer<Board3dTab> > mActive3dTabs
private

The documentation for this class was generated from the following files: