LibrePCB Developers Documentation
CmdFootprintEdit Class Referencefinal

The CmdFootprintEdit class. More...

#include <cmdfootprintedit.h>

+ Inheritance diagram for CmdFootprintEdit:
+ Collaboration diagram for CmdFootprintEdit:

Public Member Functions

 CmdFootprintEdit ()=delete
 
 CmdFootprintEdit (const CmdFootprintEdit &other)=delete
 
 CmdFootprintEdit (Footprint &fpt) noexcept
 
 ~CmdFootprintEdit () noexcept
 
void setName (const ElementName &name) noexcept
 
void setModelPosition (const Point3D &pos) noexcept
 
void setModelRotation (const Angle3D &rot) noexcept
 
void setModels (const QSet< Uuid > &models) noexcept
 
CmdFootprintEditoperator= (const CmdFootprintEdit &rhs)=delete
 
- Public Member Functions inherited from UndoCommand
 UndoCommand ()=delete
 
 UndoCommand (const UndoCommand &other)=delete
 
 UndoCommand (const QString &text) noexcept
 
virtual ~UndoCommand () noexcept
 
const QString & getText () const noexcept
 
bool wasEverExecuted () const noexcept
 This method shows whether that command was ever executed (execute() called successfully) More...
 
bool wasEverReverted () const noexcept
 This method shows whether that command was ever reverted (undo() called at least one time) More...
 
bool isCurrentlyExecuted () const noexcept
 This method shows whether that command is currently executed (redo() called one time more than undo()) More...
 
virtual bool execute () final
 Execute the command (must only be called once) More...
 
virtual void undo () final
 Undo the command. More...
 
virtual void redo () final
 Redo the command. More...
 
UndoCommandoperator= (const UndoCommand &rhs)=delete
 

Private Member Functions

bool performExecute () override
 Execute the command the first time. More...
 
void performUndo () override
 Undo the command. More...
 
void performRedo () override
 Redo the command. More...
 

Private Attributes

FootprintmFootprint
 
ElementName mOldName
 
ElementName mNewName
 
Point3D mOldModelPosition
 
Point3D mNewModelPosition
 
Angle3D mOldModelRotation
 
Angle3D mNewModelRotation
 
QSet< UuidmOldModels
 
QSet< UuidmNewModels
 

Additional Inherited Members

virtual bool performExecute ()=0
 Execute the command the first time. More...
 
virtual void performUndo ()=0
 Undo the command. More...
 
virtual void performRedo ()=0
 Redo the command. More...
 

Detailed Description

The CmdFootprintEdit class.

Constructor & Destructor Documentation

◆ CmdFootprintEdit() [1/3]

CmdFootprintEdit ( )
delete

◆ CmdFootprintEdit() [2/3]

CmdFootprintEdit ( const CmdFootprintEdit other)
delete

◆ CmdFootprintEdit() [3/3]

CmdFootprintEdit ( Footprint fpt)
explicitnoexcept

◆ ~CmdFootprintEdit()

~CmdFootprintEdit ( )
noexcept

Member Function Documentation

◆ setName()

void setName ( const ElementName name)
noexcept

◆ setModelPosition()

void setModelPosition ( const Point3D pos)
noexcept

◆ setModelRotation()

void setModelRotation ( const Angle3D rot)
noexcept

◆ setModels()

void setModels ( const QSet< Uuid > &  models)
noexcept

◆ operator=()

CmdFootprintEdit & operator= ( const CmdFootprintEdit rhs)
delete

◆ performExecute()

bool performExecute ( )
overrideprivatevirtual

Execute the command the first time.

Note
This method must be implemented in all derived classes. If the first time execution is exactly identical to an "redo" action, you can simple call librepcb::editor::UndoCommand::performRedo() in the implementation of this method.
Return values
trueIf the command has done some changes
falseIf the command has done nothing (the command can be deleted)

Implements UndoCommand.

+ Here is the call graph for this function:

◆ performUndo()

void performUndo ( )
overrideprivatevirtual

Undo the command.

Note
This method must be implemented in all derived classes.

Implements UndoCommand.

+ Here is the call graph for this function:

◆ performRedo()

void performRedo ( )
overrideprivatevirtual

Redo the command.

Note
This method must be implemented in all derived classes.

Implements UndoCommand.

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

Member Data Documentation

◆ mFootprint

Footprint& mFootprint
private

◆ mOldName

ElementName mOldName
private

◆ mNewName

ElementName mNewName
private

◆ mOldModelPosition

Point3D mOldModelPosition
private

◆ mNewModelPosition

Point3D mNewModelPosition
private

◆ mOldModelRotation

Angle3D mOldModelRotation
private

◆ mNewModelRotation

Angle3D mNewModelRotation
private

◆ mOldModels

QSet<Uuid> mOldModels
private

◆ mNewModels

QSet<Uuid> mNewModels
private

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