PD: [skip ci] open a transaction when creating a new body with DlgActiveBody

This commit is contained in:
wmayer
2021-11-04 23:21:14 +01:00
parent 1c7ece5e14
commit ce95ed8047

View File

@@ -28,6 +28,7 @@
# include <QMessageBox>
#endif
#include <App/Application.h>
#include <Gui/Application.h>
#include "DlgActiveBody.h"
@@ -92,10 +93,15 @@ void DlgActiveBody::accept()
App::DocumentObject* selectedBody =
selectedItems[0]->data(Qt::UserRole).value<App::DocumentObject*>();
if (selectedBody)
if (selectedBody) {
activeBody = makeBodyActive(selectedBody, _doc);
else
}
else {
// A transaction must be created as otherwise the undo/redo is broken
App::GetApplication().setActiveTransaction(QT_TRANSLATE_NOOP("Command", "Add a Body"), true);
activeBody = makeBody(_doc);
App::GetApplication().closeActiveTransaction();
}
QDialog::accept();
}