FuncDoodle
Loading...
Searching...
No Matches
FuncDoodle::FillAction Class Reference

Represents a bucket fill operation for undo/redo. More...

#include <Core.h>

Inheritance diagram for FuncDoodle::FillAction:
FuncDoodle::Action

Public Member Functions

 FillAction (Col prev, Col next, unsigned long frameI, const SharedPtr< ProjectFile > &proj, std::vector< std::pair< int, int > > affected)
 Creates a fill action from a flood-fill operation.
 FillAction (const FillAction &other)=default
 Copy constructor.
 ~FillAction () override=default
 Destructor.
void Undo () override
 Reverts the fill operation.
void Redo () override
 Reapplies the fill operation.
Public Member Functions inherited from FuncDoodle::Action
virtual ~Action ()=default
 Virtual destructor for safe polymorphic destruction.

Private Attributes

Col m_Prev
Col m_Next
unsigned long m_FrameIndex
WeakPtr< ProjectFilem_Proj
std::vector< std::pair< int, int > > m_Pixels

Detailed Description

Represents a bucket fill operation for undo/redo.

Stores all affected pixels so the fill can be reversed or reapplied.

Constructor & Destructor Documentation

◆ FillAction() [1/2]

FuncDoodle::FillAction::FillAction ( Col prev,
Col next,
unsigned long frameI,
const SharedPtr< ProjectFile > & proj,
std::vector< std::pair< int, int > > affected )
inline

Creates a fill action from a flood-fill operation.

◆ FillAction() [2/2]

FuncDoodle::FillAction::FillAction ( const FillAction & other)
default

Copy constructor.

◆ ~FillAction()

FuncDoodle::FillAction::~FillAction ( )
overridedefault

Destructor.

Member Function Documentation

◆ Redo()

void FuncDoodle::FillAction::Redo ( )
overridevirtual

Reapplies the fill operation.

Implements FuncDoodle::Action.

◆ Undo()

void FuncDoodle::FillAction::Undo ( )
overridevirtual

Reverts the fill operation.

Implements FuncDoodle::Action.

Member Data Documentation

◆ m_FrameIndex

unsigned long FuncDoodle::FillAction::m_FrameIndex
private

◆ m_Next

Col FuncDoodle::FillAction::m_Next
private

◆ m_Pixels

std::vector<std::pair<int, int> > FuncDoodle::FillAction::m_Pixels
private

◆ m_Prev

Col FuncDoodle::FillAction::m_Prev
private

◆ m_Proj

WeakPtr<ProjectFile> FuncDoodle::FillAction::m_Proj
private

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