LibrePCB Developers Documentation
PackageEditorState_AddHoles Class Referencefinal

The PackageEditorState_AddHoles class. More...

#include <packageeditorstate_addholes.h>

+ Inheritance diagram for PackageEditorState_AddHoles:
+ Collaboration diagram for PackageEditorState_AddHoles:

Public Member Functions

 PackageEditorState_AddHoles ()=delete
 
 PackageEditorState_AddHoles (const PackageEditorState_AddHoles &other)=delete
 
 PackageEditorState_AddHoles (Context &context) noexcept
 
 ~PackageEditorState_AddHoles () noexcept
 
bool entry () noexcept override
 
bool exit () noexcept override
 
QSet< EditorWidgetBase::FeaturegetAvailableFeatures () const noexcept override
 
bool processGraphicsSceneMouseMoved (QGraphicsSceneMouseEvent &e) noexcept override
 
bool processGraphicsSceneLeftMouseButtonPressed (QGraphicsSceneMouseEvent &e) noexcept override
 
PackageEditorState_AddHolesoperator= (const PackageEditorState_AddHoles &rhs)=delete
 
- Public Member Functions inherited from PackageEditorState
 PackageEditorState ()=delete
 
 PackageEditorState (const PackageEditorState &other)=delete
 
 PackageEditorState (Context &context) noexcept
 
virtual ~PackageEditorState () noexcept
 
virtual bool entry () noexcept
 
virtual bool exit () noexcept
 
virtual QSet< EditorWidgetBase::FeaturegetAvailableFeatures () const noexcept=0
 
virtual bool processKeyPressed (const QKeyEvent &e) noexcept
 
virtual bool processKeyReleased (const QKeyEvent &e) noexcept
 
virtual bool processGraphicsSceneMouseMoved (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processGraphicsSceneLeftMouseButtonPressed (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processGraphicsSceneLeftMouseButtonReleased (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processGraphicsSceneLeftMouseButtonDoubleClicked (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processGraphicsSceneRightMouseButtonReleased (QGraphicsSceneMouseEvent &e) noexcept
 
virtual bool processSelectAll () noexcept
 
virtual bool processCut () noexcept
 
virtual bool processCopy () noexcept
 
virtual bool processPaste () noexcept
 
virtual bool processMove (Qt::ArrowType direction)
 
virtual bool processRotate (const Angle &rotation) noexcept
 
virtual bool processMirror (Qt::Orientation orientation) noexcept
 
virtual bool processMoveAlign () noexcept
 
virtual bool processSnapToGrid () noexcept
 
virtual bool processFlip (Qt::Orientation orientation) noexcept
 
virtual bool processRemove () noexcept
 
virtual bool processEditProperties () noexcept
 
virtual bool processGenerateOutline () noexcept
 
virtual bool processGenerateCourtyard () noexcept
 
virtual bool processImportDxf () noexcept
 
virtual bool processAbortCommand () noexcept
 
PackageEditorStateoperator= (const PackageEditorState &rhs)=delete
 

Private Member Functions

bool startAddHole (const Point &pos) noexcept
 
bool finishAddHole (const Point &pos) noexcept
 
bool abortAddHole () noexcept
 
void diameterEditValueChanged (const PositiveLength &value) noexcept
 

Private Attributes

QScopedPointer< CmdHoleEditmEditCmd
 
std::shared_ptr< HolemCurrentHole
 
std::shared_ptr< HoleGraphicsItemmCurrentGraphicsItem
 
PositiveLength mLastDiameter
 

Additional Inherited Members

- Public Types inherited from PackageEditorState
using Context = PackageEditorFsm::Context
 
- Signals inherited from PackageEditorState
void abortRequested ()
 
void availableFeaturesChanged ()
 
void statusBarMessageChanged (const QString &message, int timeoutMs=-1)
 
- Protected Member Functions inherited from PackageEditorState
const PositiveLengthgetGridInterval () const noexcept
 
const LengthUnitgetLengthUnit () const noexcept
 
- Static Protected Member Functions inherited from PackageEditorState
static const QSet< const Layer * > & getAllowedTextLayers () noexcept
 
static const QSet< const Layer * > & getAllowedCircleAndPolygonLayers () noexcept
 
- Protected Attributes inherited from PackageEditorState
ContextmContext
 

Detailed Description

Constructor & Destructor Documentation

◆ PackageEditorState_AddHoles() [1/3]

◆ PackageEditorState_AddHoles() [2/3]

◆ PackageEditorState_AddHoles() [3/3]

PackageEditorState_AddHoles ( Context context)
explicitnoexcept

◆ ~PackageEditorState_AddHoles()

Member Function Documentation

◆ entry()

bool entry ( )
overridevirtualnoexcept

Reimplemented from PackageEditorState.

+ Here is the call graph for this function:

◆ exit()

bool exit ( )
overridevirtualnoexcept

Reimplemented from PackageEditorState.

+ Here is the call graph for this function:

◆ getAvailableFeatures()

QSet< EditorWidgetBase::Feature > getAvailableFeatures ( ) const
overridevirtualnoexcept

Implements PackageEditorState.

◆ processGraphicsSceneMouseMoved()

bool processGraphicsSceneMouseMoved ( QGraphicsSceneMouseEvent &  e)
overridevirtualnoexcept

Reimplemented from PackageEditorState.

+ Here is the call graph for this function:

◆ processGraphicsSceneLeftMouseButtonPressed()

bool processGraphicsSceneLeftMouseButtonPressed ( QGraphicsSceneMouseEvent &  e)
overridevirtualnoexcept

Reimplemented from PackageEditorState.

+ Here is the call graph for this function:

◆ operator=()

PackageEditorState_AddHoles & operator= ( const PackageEditorState_AddHoles rhs)
delete

◆ startAddHole()

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

◆ finishAddHole()

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

◆ abortAddHole()

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

◆ diameterEditValueChanged()

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

Member Data Documentation

◆ mEditCmd

QScopedPointer<CmdHoleEdit> mEditCmd
private

◆ mCurrentHole

std::shared_ptr<Hole> mCurrentHole
private

◆ mCurrentGraphicsItem

std::shared_ptr<HoleGraphicsItem> mCurrentGraphicsItem
private

◆ mLastDiameter

PositiveLength mLastDiameter
private

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