diff options
author | Bent Bisballe Nyeng <deva@aasimon.org> | 2012-09-07 11:08:05 +0200 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2012-09-07 11:08:05 +0200 |
commit | a105650f7520d4762c83ff6af52e80581fd1ab3d (patch) | |
tree | 4c1886292ca1bfbd891ba1e5a0481a58b9ca966c /client/mainwindow.cc | |
parent | 813b50f0c91805b22941bfb28758b49f8e00cb22 (diff) | |
parent | 39777a9f5ea2b0761028f6db6dbc071ea2ad7c60 (diff) |
Merge branch 'master' of http://git.aasimon.org/public/pracro
Diffstat (limited to 'client/mainwindow.cc')
-rw-r--r-- | client/mainwindow.cc | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/client/mainwindow.cc b/client/mainwindow.cc index 2345644..7bf4116 100644 --- a/client/mainwindow.cc +++ b/client/mainwindow.cc @@ -161,14 +161,27 @@ bool MainWindow::hasOpen(void *me) return false; } +void MainWindow::enableEntities(bool enable) +{ + Entities::iterator i = entities.begin(); + while(i != entities.end()) { + i.value()->widget()->setEnabled(enable); + i++; + } +} void MainWindow::closeCommit() { + if(closing) return; + if(hasOpen(NULL)) { MessageBox::warning(this, tr("Close first."), tr("Close open macros first.")); return; } + + enableEntities(false); + netcom.commit(); // isStored = true; closing = true; @@ -176,11 +189,16 @@ void MainWindow::closeCommit() void MainWindow::closeNoCommit() { + if(closing) return; + if(hasOpen(NULL)) { MessageBox::warning(this, tr("Close first."), tr("Close open macros first.")); return; } + + enableEntities(false); + netcom.nocommit(); // isStored = true; closing = true; @@ -188,6 +206,8 @@ void MainWindow::closeNoCommit() void MainWindow::closeDiscard() { + if(closing) return; + if(hasOpen(NULL)) { MessageBox::warning(this, tr("Close first."), tr("Close open macros first.")); @@ -203,6 +223,8 @@ void MainWindow::closeDiscard() MessageBox::Yes | MessageBox::No); if(res == MessageBox::Yes) { + enableEntities(false); + netcom.discard(); // isStored = true; closing = true; @@ -388,6 +410,8 @@ void MainWindow::setTemplate(QString name) void MainWindow::handle(QDomDocument &doc) { + enableEntities(true); + DEBUG(mainwindow, "Handle %s\n", doc.toString().toStdString().c_str()); |