LibrePCB Developers Documentation
CmdZoneEdit Class Referencefinal

The CmdZoneEdit class. More...

#include <cmdzoneedit.h>

+ Inheritance diagram for CmdZoneEdit:
+ Collaboration diagram for CmdZoneEdit:

Public Member Functions

 CmdZoneEdit ()=delete
 
 CmdZoneEdit (const CmdZoneEdit &other)=delete
 
 CmdZoneEdit (Zone &zone) noexcept
 
 ~CmdZoneEdit () noexcept
 
void setLayers (Zone::Layers layers, bool immediate) noexcept
 
void setRules (Zone::Rules rules, bool immediate) noexcept
 
void setOutline (const Path &path, bool immediate) noexcept
 
void translate (const Point &deltaPos, bool immediate) noexcept
 
void snapToGrid (const PositiveLength &gridInterval, bool immediate) noexcept
 
void rotate (const Angle &angle, const Point &center, bool immediate) noexcept
 
void mirrorGeometry (Qt::Orientation orientation, const Point &center, bool immediate) noexcept
 
void mirrorLayers (bool immediate) noexcept
 
CmdZoneEditoperator= (const CmdZoneEdit &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

ZonemZone
 
Zone::Layers mOldLayers
 
Zone::Layers mNewLayers
 
Zone::Rules mOldRules
 
Zone::Rules mNewRules
 
Path mOldOutline
 
Path mNewOutline
 

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 CmdZoneEdit class.

Constructor & Destructor Documentation

◆ CmdZoneEdit() [1/3]

CmdZoneEdit ( )
delete

◆ CmdZoneEdit() [2/3]

CmdZoneEdit ( const CmdZoneEdit other)
delete

◆ CmdZoneEdit() [3/3]

CmdZoneEdit ( Zone zone)
explicitnoexcept

◆ ~CmdZoneEdit()

~CmdZoneEdit ( )
noexcept
+ Here is the call graph for this function:

Member Function Documentation

◆ setLayers()

void setLayers ( Zone::Layers  layers,
bool  immediate 
)
noexcept

◆ setRules()

void setRules ( Zone::Rules  rules,
bool  immediate 
)
noexcept

◆ setOutline()

void setOutline ( const Path path,
bool  immediate 
)
noexcept

◆ translate()

void translate ( const Point deltaPos,
bool  immediate 
)
noexcept

◆ snapToGrid()

void snapToGrid ( const PositiveLength gridInterval,
bool  immediate 
)
noexcept

◆ rotate()

void rotate ( const Angle angle,
const Point center,
bool  immediate 
)
noexcept

◆ mirrorGeometry()

void mirrorGeometry ( Qt::Orientation  orientation,
const Point center,
bool  immediate 
)
noexcept

◆ mirrorLayers()

void mirrorLayers ( bool  immediate)
noexcept

◆ operator=()

CmdZoneEdit & operator= ( const CmdZoneEdit 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:
+ Here is the caller 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

◆ mZone

Zone& mZone
private

◆ mOldLayers

Zone::Layers mOldLayers
private

◆ mNewLayers

Zone::Layers mNewLayers
private

◆ mOldRules

Zone::Rules mOldRules
private

◆ mNewRules

Zone::Rules mNewRules
private

◆ mOldOutline

Path mOldOutline
private

◆ mNewOutline

Path mNewOutline
private

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