LibrePCB Developers Documentation
CmdDragSelectedBoardItems Class Referencefinal

The CmdDragSelectedBoardItems class. More...

#include <cmddragselectedboarditems.h>

+ Inheritance diagram for CmdDragSelectedBoardItems:
+ Collaboration diagram for CmdDragSelectedBoardItems:

Public Member Functions

 CmdDragSelectedBoardItems (Board &board, const Point &startPos=Point()) noexcept
 ~CmdDragSelectedBoardItems () noexcept
void setCurrentPosition (const Point &pos, const bool gridIncrement=true) noexcept
void rotate (const Angle &angle, bool aroundItemsCenter=false) 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
bool 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

Point mStartPos
Point mDeltaPos
Point mCenterPos
Angle mDeltaAngle
QList< CmdDeviceInstanceEdit * > mDeviceEditCmds
QList< CmdBoardViaEdit * > mViaEditCmds
QList< CmdBoardNetPointEdit * > mNetPointEditCmds
QList< CmdBoardPlaneEdit * > mPlaneEditCmds
QList< CmdPolygonEdit * > mPolygonEditCmds
QList< CmdStrokeTextEdit * > mStrokeTextEditCmds
QList< CmdHoleEdit * > mHoleEditCmds

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

◆ CmdDragSelectedBoardItems()

CmdDragSelectedBoardItems ( Board board,
const Point startPos = Point() 
+ Here is the call graph for this function:

◆ ~CmdDragSelectedBoardItems()

Member Function Documentation

◆ setCurrentPosition()

void setCurrentPosition ( const Point pos,
const bool  gridIncrement = true 
+ Here is the call graph for this function:

◆ rotate()

void rotate ( const Angle angle,
bool  aroundItemsCenter = false 
+ Here is the call graph for this function:

◆ performExecute()

bool performExecute ( )

Execute the command the first time.

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

◆ mBoard

Board& mBoard

◆ mStartPos

Point mStartPos

◆ mDeltaPos

Point mDeltaPos

◆ mCenterPos

Point mCenterPos

◆ mDeltaAngle

Angle mDeltaAngle

◆ mDeviceEditCmds

QList<CmdDeviceInstanceEdit*> mDeviceEditCmds

◆ mViaEditCmds

QList<CmdBoardViaEdit*> mViaEditCmds

◆ mNetPointEditCmds

QList<CmdBoardNetPointEdit*> mNetPointEditCmds

◆ mPlaneEditCmds

QList<CmdBoardPlaneEdit*> mPlaneEditCmds

◆ mPolygonEditCmds

QList<CmdPolygonEdit*> mPolygonEditCmds

◆ mStrokeTextEditCmds

QList<CmdStrokeTextEdit*> mStrokeTextEditCmds

◆ mHoleEditCmds

QList<CmdHoleEdit*> mHoleEditCmds

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