diff options
author | Kevin Smith <git@kismith.co.uk> | 2012-04-26 15:39:33 (GMT) |
---|---|---|
committer | Kevin Smith <git@kismith.co.uk> | 2012-04-26 15:39:33 (GMT) |
commit | 4a1f206b0f8d4926b3a61cc8d7aad217761e52f6 (patch) | |
tree | 925d09e455b80fb3f5fa29d82a3397894cae8d64 | |
parent | 2305f69ba32813e4e7aa255c3c310a88493a0c12 (diff) | |
download | swift-contrib-4a1f206b0f8d4926b3a61cc8d7aad217761e52f6.zip swift-contrib-4a1f206b0f8d4926b3a61cc8d7aad217761e52f6.tar.bz2 |
Size AdHoc dialogs by the first form received.
Resolves: #954
-rw-r--r-- | Swift/QtUI/QtAdHocCommandWindow.cpp | 22 | ||||
-rw-r--r-- | Swift/QtUI/QtAdHocCommandWindow.h | 4 |
2 files changed, 13 insertions, 13 deletions
diff --git a/Swift/QtUI/QtAdHocCommandWindow.cpp b/Swift/QtUI/QtAdHocCommandWindow.cpp index f8a3cd6..b148560 100644 --- a/Swift/QtUI/QtAdHocCommandWindow.cpp +++ b/Swift/QtUI/QtAdHocCommandWindow.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2011 Kevin Smith + * Copyright (c) 2010-2012 Kevin Smith * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ @@ -11,6 +11,8 @@ #include <Swift/QtUI/QtFormWidget.h> #include <Swiften/Elements/Command.h> +const int FormLayoutIndex = 1; + namespace Swift { QtAdHocCommandWindow::QtAdHocCommandWindow(boost::shared_ptr<OutgoingAdHocCommandSession> command) : command_(command) { @@ -21,17 +23,14 @@ QtAdHocCommandWindow::QtAdHocCommandWindow(boost::shared_ptr<OutgoingAdHocComman command->onError.connect(boost::bind(&QtAdHocCommandWindow::handleError, this, _1)); command->start(); - QBoxLayout* layout = new QBoxLayout(QBoxLayout::TopToBottom, this); - layout->setContentsMargins(0,0,0,0); - layout->setSpacing(2); + layout_ = new QBoxLayout(QBoxLayout::TopToBottom, this); + layout_->setContentsMargins(0,0,0,0); + layout_->setSpacing(2); label_ = new QLabel(this); label_->setTextFormat(Qt::PlainText); - layout->addWidget(label_); - QWidget* formContainer = new QWidget(this); - layout->addWidget(formContainer); - formLayout_ = new QBoxLayout(QBoxLayout::TopToBottom, formContainer); + layout_->addWidget(label_); QWidget* buttonsWidget = new QWidget(this); - layout->addWidget(buttonsWidget); + layout_->addWidget(buttonsWidget); QBoxLayout* buttonsLayout = new QBoxLayout(QBoxLayout::LeftToRight, buttonsWidget); cancelButton_ = new QPushButton(tr("Cancel"), buttonsWidget); @@ -53,7 +52,6 @@ QtAdHocCommandWindow::QtAdHocCommandWindow(boost::shared_ptr<OutgoingAdHocComman actions_[Command::Prev] = backButton_; actions_[Command::Complete] = completeButton_; actions_[Command::Cancel] = cancelButton_; - show(); } QtAdHocCommandWindow::~QtAdHocCommandWindow() { @@ -109,11 +107,13 @@ void QtAdHocCommandWindow::handleError(ErrorPayload::ref /*error*/) { void QtAdHocCommandWindow::setForm(Form::ref form) { delete formWidget_; formWidget_ = new QtFormWidget(form, this); - formLayout_->addWidget(formWidget_); + layout_->insertWidget(FormLayoutIndex, formWidget_); + show(); } void QtAdHocCommandWindow::setNoForm() { delete formWidget_; + show(); } typedef std::pair<Command::Action, QPushButton*> ActionButton; diff --git a/Swift/QtUI/QtAdHocCommandWindow.h b/Swift/QtUI/QtAdHocCommandWindow.h index adeb3e6..42e3b1c 100644 --- a/Swift/QtUI/QtAdHocCommandWindow.h +++ b/Swift/QtUI/QtAdHocCommandWindow.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2010-2011 Kevin Smith + * Copyright (c) 2010-2012 Kevin Smith * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. */ @@ -36,7 +36,6 @@ namespace Swift { private: boost::shared_ptr<OutgoingAdHocCommandSession> command_; QtFormWidget* formWidget_; - QBoxLayout* formLayout_; Form::ref form_; QLabel* label_; QPushButton* backButton_; @@ -44,5 +43,6 @@ namespace Swift { QPushButton* completeButton_; QPushButton* cancelButton_; std::map<Command::Action, QPushButton*> actions_; + QBoxLayout* layout_; }; } |