+ Fix transaction issues

This commit is contained in:
wmayer
2013-10-09 12:28:25 +02:00
parent d31a047095
commit 6389cc1d69
2 changed files with 18 additions and 0 deletions

View File

@@ -35,6 +35,7 @@
#include <Mod/Raytracing/App/LuxProject.h>
#include <Mod/Raytracing/App/RayProject.h>
#include <App/Application.h>
#include <App/Document.h>
#include <Gui/Application.h>
#include <Gui/Document.h>
#include <Gui/MainWindow.h>
@@ -90,8 +91,12 @@ bool ViewProviderLux::setEdit(int ModNum)
bool ok;
QString file = QInputDialog::getItem(Gui::getMainWindow(), tr("Template"), tr("Select a template"), items, current, false, &ok);
if (ok) {
App::Document* doc = getObject()->getDocument();
doc->openTransaction("Edit Lux project");
QString fn = QString::fromAscii("%1%2.lxs").arg(dataDir).arg(file);
static_cast<Raytracing::LuxProject*>(getObject())->Template.setValue((const char*)fn.toUtf8());
doc->commitTransaction();
doc->recompute();
}
return false;
}
@@ -158,8 +163,12 @@ bool ViewProviderPovray::setEdit(int ModNum)
bool ok;
QString file = QInputDialog::getItem(Gui::getMainWindow(), tr("Template"), tr("Select a template"), items, current, false, &ok);
if (ok) {
App::Document* doc = getObject()->getDocument();
doc->openTransaction("Edit Povray project");
QString fn = QString::fromAscii("%1%2.pov").arg(dataDir).arg(file);
static_cast<Raytracing::RayProject*>(getObject())->Template.setValue((const char*)fn.toUtf8());
doc->commitTransaction();
doc->recompute();
}
return false;
}