33 p_impl->undoStack()->push(adapter);
40 return p_impl->undoStack()->isActive();
45 return p_impl->undoStack()->canUndo();
50 return p_impl->undoStack()->canRedo();
55 return p_impl->undoStack()->index();
60 return p_impl->undoStack()->count();
65 return p_impl->undoStack()->undo();
70 return p_impl->undoStack()->redo();
75 return p_impl->undoStack()->clear();
80 return p_impl->undoStack()->setUndoLimit(limit);
89 if (
auto stack =
dynamic_cast<UndoStack*
>(stack_interface); stack)
90 return stack->p_impl->undoStack();
96 p_impl->undoStack()->beginMacro(QString::fromStdString(
name));
101 p_impl->undoStack()->endMacro();
Adapter to execute our commands within Qt undo/redo framework.
Interface class for undo/redo stack.
Default undo stack implementation.
bool canRedo() const override
void beginMacro(const std::string &name) override
std::unique_ptr< UndoStackImpl > p_impl
int index() const override
void execute(std::shared_ptr< AbstractItemCommand > command) override
Executes the command, then pushes it in the stack for possible undo.
void setUndoLimit(int limit) override
static QUndoStack * qtUndoStack(UndoStackInterface *stack_interface)
Returns underlying QUndoStack if given object can be casted to UndoStack instance.
bool canUndo() const override
bool isActive() const override
int count() const override
materialitems.h Collection of materials to populate MaterialModel.
QString const & name(EShape k)
std::unique_ptr< QUndoStack > m_undoStack