LibrePCB Developers Documentation
BoardEditorState_AddVia Class Referencefinal

The "add via" state/tool of the board editor. More...

#include <boardeditorstate_addvia.h>

+ Inheritance diagram for BoardEditorState_AddVia:
+ Collaboration diagram for BoardEditorState_AddVia:

Public Member Functions

 BoardEditorState_AddVia ()=delete
 
 BoardEditorState_AddVia (const BoardEditorState_AddVia &other)=delete
 
 BoardEditorState_AddVia (const Context &context) noexcept
 
virtual ~BoardEditorState_AddVia () noexcept
 
virtual bool entry () noexcept override
 
virtual bool exit () noexcept override
 
virtual bool processGraphicsSceneMouseMoved (QGraphicsSceneMouseEvent &e) noexcept override
 
virtual bool processGraphicsSceneLeftMouseButtonPressed (QGraphicsSceneMouseEvent &e) noexcept override
 
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked (QGraphicsSceneMouseEvent &e) noexcept override
 
BoardEditorState_AddViaoperator= (const BoardEditorState_AddVia &rhs)=delete
 
- Public Member Functions inherited from BoardEditorState
 BoardEditorState ()=delete
 
 BoardEditorState (const BoardEditorState &other)=delete
 
 BoardEditorState (const Context &context, QObject *parent=nullptr) noexcept
 
virtual ~BoardEditorState () noexcept
 
virtual bool processAddDevice (ComponentInstance &component, const Uuid &device, const Uuid &footprint) noexcept
 
virtual bool processImportDxf () noexcept
 
virtual bool processSelectAll () noexcept
 
virtual bool processCut () noexcept
 
virtual bool processCopy () noexcept
 
virtual bool processPaste () noexcept
 
virtual bool processMove (const Point &delta) noexcept
 
virtual bool processRotate (const Angle &rotation) noexcept
 
virtual bool processFlip (Qt::Orientation orientation) noexcept
 
virtual bool processSnapToGrid () noexcept
 
virtual bool processSetLocked (bool locked) noexcept
 
virtual bool processChangeLineWidth (int step) noexcept
 
virtual bool processResetAllTexts () noexcept
 
virtual bool processRemove () noexcept
 
virtual bool processEditProperties () noexcept
 
virtual bool processAbortCommand () noexcept
 
virtual bool processKeyPressed (const QKeyEvent &e) noexcept
 
virtual bool processKeyReleased (const QKeyEvent &e) noexcept
 
virtual bool processGraphicsSceneLeftMouseButtonReleased (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processGraphicsSceneRightMouseButtonReleased (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processSwitchToBoard (int index) noexcept
 
BoardEditorStateoperator= (const BoardEditorState &rhs)=delete
 

Private Member Functions

bool addVia (const Point &pos) noexcept
 
bool updatePosition (BoardGraphicsScene &scene, const Point &pos) noexcept
 
void setNetSignal (NetSignal *netsignal) noexcept
 
bool fixPosition (const Point &pos) noexcept
 
bool abortCommand (bool showErrMsgBox) noexcept
 
void sizeEditValueChanged (const PositiveLength &value) noexcept
 
void drillDiameterEditValueChanged (const PositiveLength &value) noexcept
 
void applySelectedNetSignal () noexcept
 
void updateClosestNetSignal (BoardGraphicsScene &scene, const Point &pos) noexcept
 
NetSignalgetCurrentNetSignal () const noexcept
 

Private Attributes

bool mIsUndoCmdActive
 
Via mLastViaProperties
 
bool mUseAutoNetSignal
 Whether the net signal is determined automatically or not. More...
 
tl::optional< UuidmCurrentNetSignal
 The current net signal of the via. More...
 
bool mClosestNetSignalIsUpToDate
 Whether mCurrentNetSignal contains an up-to-date closest net signal. More...
 
BI_ViamCurrentViaToPlace
 
QScopedPointer< CmdBoardViaEditmCurrentViaEditCmd
 
QPointer< QComboBox > mNetSignalComboBox
 

Additional Inherited Members

- Public Types inherited from BoardEditorState
enum  FindFlag
 
using Context = BoardEditorFsm::Context
 
- Signals inherited from BoardEditorState
void requestLeavingState ()
 Signal to indicate that the current tool should be exited. More...
 
void statusBarMessageChanged (const QString &message, int timeoutMs=-1)
 
- Protected Member Functions inherited from BoardEditorState
BoardgetActiveBoard () noexcept
 
BoardGraphicsScenegetActiveBoardScene () noexcept
 
bool getIgnoreLocks () const noexcept
 
PositiveLength getGridInterval () const noexcept
 
const LengthUnitgetLengthUnit () const noexcept
 
QSet< const Layer * > getAllowedGeometryLayers () noexcept
 
void makeLayerVisible (const QString &layer) noexcept
 
void abortBlockingToolsInOtherEditors () noexcept
 
bool execCmd (UndoCommand *cmd)
 
QWidget * parentWidget () noexcept
 
QList< std::shared_ptr< QGraphicsItem > > findItemsAtPos (const Point &pos, FindFlags flags, const tl::optional< const Layer &> cuLayer=tl::nullopt, const QSet< const NetSignal *> &netsignals={}, const QVector< std::shared_ptr< QGraphicsItem >> &except={}) noexcept
 
template<typename T = QGraphicsItem>
std::shared_ptr< T > findItemAtPos (const Point &pos, FindFlags flags, const tl::optional< const Layer &> cuLayer=tl::nullopt, const QSet< const NetSignal *> &netsignals={}, const QVector< std::shared_ptr< QGraphicsItem >> &except={}) noexcept
 
- Protected Attributes inherited from BoardEditorState
Context mContext
 

Detailed Description

The "add via" state/tool of the board editor.

Constructor & Destructor Documentation

◆ BoardEditorState_AddVia() [1/3]

◆ BoardEditorState_AddVia() [2/3]

◆ BoardEditorState_AddVia() [3/3]

BoardEditorState_AddVia ( const Context context)
explicitnoexcept

◆ ~BoardEditorState_AddVia()

~BoardEditorState_AddVia ( )
virtualnoexcept

Member Function Documentation

◆ entry()

bool entry ( )
overridevirtualnoexcept

Reimplemented from BoardEditorState.

+ Here is the call graph for this function:

◆ exit()

bool exit ( )
overridevirtualnoexcept

Reimplemented from BoardEditorState.

+ Here is the call graph for this function:

◆ processGraphicsSceneMouseMoved()

bool processGraphicsSceneMouseMoved ( QGraphicsSceneMouseEvent &  e)
overridevirtualnoexcept

Reimplemented from BoardEditorState.

+ Here is the call graph for this function:

◆ processGraphicsSceneLeftMouseButtonPressed()

bool processGraphicsSceneLeftMouseButtonPressed ( QGraphicsSceneMouseEvent &  e)
overridevirtualnoexcept

Reimplemented from BoardEditorState.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ processGraphicsSceneLeftMouseButtonDoubleClicked()

bool processGraphicsSceneLeftMouseButtonDoubleClicked ( QGraphicsSceneMouseEvent &  e)
overridevirtualnoexcept

Reimplemented from BoardEditorState.

+ Here is the call graph for this function:

◆ operator=()

BoardEditorState_AddVia& operator= ( const BoardEditorState_AddVia rhs)
delete

◆ addVia()

bool addVia ( const Point pos)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updatePosition()

bool updatePosition ( BoardGraphicsScene scene,
const Point pos 
)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setNetSignal()

void setNetSignal ( NetSignal netsignal)
privatenoexcept

◆ fixPosition()

bool fixPosition ( const Point pos)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ abortCommand()

bool abortCommand ( bool  showErrMsgBox)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sizeEditValueChanged()

void sizeEditValueChanged ( const PositiveLength value)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ drillDiameterEditValueChanged()

void drillDiameterEditValueChanged ( const PositiveLength value)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ applySelectedNetSignal()

void applySelectedNetSignal ( )
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateClosestNetSignal()

void updateClosestNetSignal ( BoardGraphicsScene scene,
const Point pos 
)
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getCurrentNetSignal()

NetSignal * getCurrentNetSignal ( ) const
privatenoexcept
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ mIsUndoCmdActive

bool mIsUndoCmdActive
private

◆ mLastViaProperties

Via mLastViaProperties
private

◆ mUseAutoNetSignal

bool mUseAutoNetSignal
private

Whether the net signal is determined automatically or not.

◆ mCurrentNetSignal

tl::optional<Uuid> mCurrentNetSignal
private

The current net signal of the via.

◆ mClosestNetSignalIsUpToDate

bool mClosestNetSignalIsUpToDate
private

Whether mCurrentNetSignal contains an up-to-date closest net signal.

◆ mCurrentViaToPlace

BI_Via* mCurrentViaToPlace
private

◆ mCurrentViaEditCmd

QScopedPointer<CmdBoardViaEdit> mCurrentViaEditCmd
private

◆ mNetSignalComboBox

QPointer<QComboBox> mNetSignalComboBox
private

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