summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swift/QtUI/QtMUCConfigurationWindow.cpp')
-rw-r--r--Swift/QtUI/QtMUCConfigurationWindow.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/Swift/QtUI/QtMUCConfigurationWindow.cpp b/Swift/QtUI/QtMUCConfigurationWindow.cpp
index a8dec2a..6fdfd43 100644
--- a/Swift/QtUI/QtMUCConfigurationWindow.cpp
+++ b/Swift/QtUI/QtMUCConfigurationWindow.cpp
@@ -2,22 +2,23 @@
* Copyright (c) 2011 Kevin Smith
* Licensed under the GNU General Public License v3.
* See Documentation/Licenses/GPLv3.txt for more information.
*/
#include <Swift/QtUI/QtMUCConfigurationWindow.h>
#include <boost/bind.hpp>
#include <QBoxLayout>
+#include <QCloseEvent>
#include <Swift/QtUI/QtFormWidget.h>
namespace Swift {
-QtMUCConfigurationWindow::QtMUCConfigurationWindow(Form::ref form) {
+QtMUCConfigurationWindow::QtMUCConfigurationWindow(Form::ref form) : closed_(false) {
setAttribute(Qt::WA_DeleteOnClose);
QBoxLayout* layout = new QBoxLayout(QBoxLayout::TopToBottom, this);
layout->setContentsMargins(0,0,0,0);
layout->setSpacing(2);
//QLabel* label = new QLabel(this);
//label->setText(tr("Room configuration"));
//layout->addWidget(label);
@@ -37,20 +38,27 @@ QtMUCConfigurationWindow::QtMUCConfigurationWindow(Form::ref form) {
buttonsLayout->addWidget(okButton_);
connect(okButton_, SIGNAL(clicked()), this, SLOT(handleOKClicked()));
show();
}
QtMUCConfigurationWindow::~QtMUCConfigurationWindow() {
}
+void QtMUCConfigurationWindow::closeEvent(QCloseEvent* event) {
+ if (!closed_) {
+ onFormCancelled();
+ }
+}
+
void QtMUCConfigurationWindow::handleCancelClicked() {
close();
}
void QtMUCConfigurationWindow::handleOKClicked() {
onFormComplete(formWidget_->getCompletedForm());
+ closed_ = true;
close();
}
}