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) :
26 buttons1(new QDialogButtonBox(Qt::Vertical)),
27 buttons2(new QDialogButtonBox(Qt::Vertical))
29 text->setWordWrap(true);
30 text->setAlignment(Qt::AlignTop | Qt::AlignLeft);
32 QHBoxLayout *layout = new QHBoxLayout();
34 layout->addWidget(text);
36 connect(buttons1, SIGNAL(clicked(QAbstractButton*)), this, SLOT(finishUp(QAbstractButton*)));
37 connect(buttons2, SIGNAL(clicked(QAbstractButton*)), this, SLOT(finishUp(QAbstractButton*)));
41 QPushButton *Dialog::addButtonFirst(const QString &text, QDialogButtonBox::ButtonRole role) {
42 return buttons1->addButton(text, role);
46 QPushButton *Dialog::addButtonFirst(const QDialogButtonBox::StandardButton button) {
47 return buttons1->addButton(button);
51 QPushButton *Dialog::addButtonSecond(const QString &text, QDialogButtonBox::ButtonRole role) {
52 return buttons2->addButton(text, role);
56 QPushButton *Dialog::addButtonSecond(const QDialogButtonBox::StandardButton button) {
57 return buttons2->addButton(button);
61 void Dialog::setText(const QString &t) {
66 void Dialog::finishUp(QAbstractButton *button) {
67 clickedButton = button;
73 QHBoxLayout *l = qobject_cast<QHBoxLayout*>(layout());
74 if (buttons1->buttons().size()) {
75 l->addWidget(buttons1, 0, Qt::AlignTop);
77 if (buttons2->buttons().size()) {
78 l->addWidget(buttons2, 0, Qt::AlignTop);
80 return QDialog::exec();