Add undo/redo action for dialogEdit
This commit is contained in:
+11
-1
@@ -65,6 +65,16 @@ MainWindow::MainWindow(QWidget *parent)
|
||||
}
|
||||
});
|
||||
|
||||
connect(ui->dialogEdit, &QPlainTextEdit::textChanged, this, [this]() {
|
||||
static QString previousText = ui->dialogEdit->toPlainText();
|
||||
if (m_handlingUndoRedo) return;
|
||||
QString currentText = ui->dialogEdit->toPlainText();
|
||||
if (currentText != previousText) {
|
||||
undoStack->push(new PlainTextEditCommand(ui->dialogEdit, previousText, currentText, this));
|
||||
previousText = currentText;
|
||||
}
|
||||
});
|
||||
|
||||
connect(ui->actionEditUndo, &QAction::triggered, undoStack, &QUndoStack::undo);
|
||||
connect(ui->actionEditRedo, &QAction::triggered, undoStack, &QUndoStack::redo);
|
||||
currentPath->getStep().append(Step());
|
||||
@@ -997,4 +1007,4 @@ void MainWindow::on_actionFont_color_triggered()
|
||||
void MainWindow::on_addStep_clicked()
|
||||
{
|
||||
this->addNewStep();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user