LibrePCB Developers Documentation
CmdPackageModelEdit Class Reference

The CmdPackageModelEdit class. More...

#include <cmdpackagemodeledit.h>

+ Inheritance diagram for CmdPackageModelEdit:
+ Collaboration diagram for CmdPackageModelEdit:

Public Member Functions

 CmdPackageModelEdit ()=delete
 
 CmdPackageModelEdit (const CmdPackageModelEdit &other)=delete
 
 CmdPackageModelEdit (Package &package, PackageModel &model) noexcept
 
virtual ~CmdPackageModelEdit () noexcept
 
void setName (const ElementName &name) noexcept
 
void setStepContent (const QByteArray &content) noexcept
 
CmdPackageModelEditoperator= (const CmdPackageModelEdit &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
 

Protected Member Functions

virtual bool performExecute () override
 Execute the command the first time. More...
 
virtual void performUndo () override
 Undo the command. More...
 
virtual void performRedo () override
 Redo the command. More...
 
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...
 

Private Attributes

PackagemPackage
 
PackageModelmModel
 
ElementName mOldName
 
ElementName mNewName
 
QByteArray mOldStepContent
 
QByteArray mNewStepContent
 

Detailed Description

Constructor & Destructor Documentation

◆ CmdPackageModelEdit() [1/3]

CmdPackageModelEdit ( )
delete

◆ CmdPackageModelEdit() [2/3]

CmdPackageModelEdit ( const CmdPackageModelEdit other)
delete

◆ CmdPackageModelEdit() [3/3]

CmdPackageModelEdit ( Package package,
PackageModel model 
)
explicitnoexcept

◆ ~CmdPackageModelEdit()

~CmdPackageModelEdit ( )
virtualnoexcept

Member Function Documentation

◆ setName()

void setName ( const ElementName name)
noexcept

◆ setStepContent()

void setStepContent ( const QByteArray &  content)
noexcept

◆ operator=()

CmdPackageModelEdit & operator= ( const CmdPackageModelEdit rhs)
delete

◆ performExecute()

bool performExecute ( )
overrideprotectedvirtual

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

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

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

◆ mPackage

Package& mPackage
private

◆ mModel

PackageModel& mModel
private

◆ mOldName

ElementName mOldName
private

◆ mNewName

ElementName mNewName
private

◆ mOldStepContent

QByteArray mOldStepContent
private

◆ mNewStepContent

QByteArray mNewStepContent
private

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