LibrePCB Developers Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
CmdAddDeviceToBoard Class Referencefinal

The CmdAddDeviceToBoard class. More...

#include <cmdadddevicetoboard.h>

+ Inheritance diagram for CmdAddDeviceToBoard:
+ Collaboration diagram for CmdAddDeviceToBoard:

Public Member Functions

 CmdAddDeviceToBoard (workspace::Workspace &workspace, Board &board, ComponentInstance &cmpInstance, const Uuid &deviceUuid, const tl::optional< Uuid > &footprintUuid, const Point &position=Point(), const Angle &rotation=Angle(), bool mirror=false) noexcept
 
 ~CmdAddDeviceToBoard () noexcept
 
BI_DevicegetDeviceInstance () const noexcept
 
- Public Member Functions inherited from UndoCommandGroup
 UndoCommandGroup ()=delete
 
 UndoCommandGroup (const UndoCommandGroup &other)=delete
 
 UndoCommandGroup (const QString &text) noexcept
 
virtual ~UndoCommandGroup () noexcept
 
int getChildCount () const noexcept
 
void appendChild (UndoCommand *cmd)
 Append a new command to the list of child commands. More...
 
UndoCommandGroupoperator= (const UndoCommandGroup &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...
 

Private Attributes

workspace::WorkspacemWorkspace
 
BoardmBoard
 
ComponentInstancemComponentInstance
 
Uuid mDeviceUuid
 
tl::optional< UuidmFootprintUuid
 
Point mPosition
 
Angle mRotation
 
bool mMirror
 
BI_DevicemDeviceInstance
 

Additional Inherited Members

- Protected Member Functions inherited from UndoCommandGroup
virtual void performUndo () override
 Undo the command. More...
 
virtual void performRedo () override
 Redo the command. More...
 
void execNewChildCmd (UndoCommand *cmd)
 Helper method for derived classes to execute and add new child commands. More...
 

Detailed Description

Constructor & Destructor Documentation

CmdAddDeviceToBoard ( workspace::Workspace workspace,
Board board,
ComponentInstance cmpInstance,
const Uuid deviceUuid,
const tl::optional< Uuid > &  footprintUuid,
const Point position = Point(),
const Angle rotation = Angle(),
bool  mirror = false 
)
noexcept
~CmdAddDeviceToBoard ( )
noexcept

Member Function Documentation

BI_Device* getDeviceInstance ( ) const
inlinenoexcept

+ Here is the caller graph for this function:

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 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)

Reimplemented from UndoCommandGroup.

+ Here is the call graph for this function:

Member Data Documentation

workspace::Workspace& mWorkspace
private
Board& mBoard
private
ComponentInstance& mComponentInstance
private
Uuid mDeviceUuid
private
tl::optional<Uuid> mFootprintUuid
private
Point mPosition
private
Angle mRotation
private
bool mMirror
private
BI_Device* mDeviceInstance
private

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