1 // case - file manager for N900
2 // Copyright (C) 2010 Lukas Hrazky <lukkash@email.cz>
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
14 // You should have received a copy of the GNU General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
20 #include <QHBoxLayout>
23 Dialog::Dialog(QWidget *parent) :
27 buttons1(new QDialogButtonBox(Qt::Vertical)),
28 buttons2(new QDialogButtonBox(Qt::Vertical))
30 text->setWordWrap(true);
31 text->setAlignment(Qt::AlignTop | Qt::AlignLeft);
33 QHBoxLayout *layout = new QHBoxLayout();
35 layout->addWidget(text);
37 connect(buttons1, SIGNAL(clicked(QAbstractButton*)), this, SLOT(finishUp(QAbstractButton*)));
38 connect(buttons2, SIGNAL(clicked(QAbstractButton*)), this, SLOT(finishUp(QAbstractButton*)));
42 QPushButton *Dialog::addButtonFirst(const QString &text, QDialogButtonBox::ButtonRole role) {
43 return buttons1->addButton(text, role);
47 QPushButton *Dialog::addButtonFirst(const QDialogButtonBox::StandardButton button) {
48 return buttons1->addButton(button);
52 QPushButton *Dialog::addButtonSecond(const QString &text, QDialogButtonBox::ButtonRole role) {
53 return buttons2->addButton(text, role);
57 QPushButton *Dialog::addButtonSecond(const QDialogButtonBox::StandardButton button) {
58 return buttons2->addButton(button);
62 void Dialog::setText(const QString &t) {
67 void Dialog::finishUp(QAbstractButton *button) {
68 clickedButton = button;
74 QHBoxLayout *l = qobject_cast<QHBoxLayout*>(layout());
75 if (buttons1->buttons().size()) {
76 l->addWidget(buttons1, 0, Qt::AlignTop);
78 if (buttons2->buttons().size()) {
79 l->addWidget(buttons2, 0, Qt::AlignTop);
81 return QDialog::exec();