diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-05-27 17:50:22 +0200 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-05-27 17:50:22 +0200 |
commit | 8221037c77be1f7c256b2575d4a9a4a9d58a9c0d (patch) | |
tree | d2e70f9603207dbebeb0238bf15af56e24af18dd /src/forms/profilesdialog.cpp | |
parent | Filter code refactoring (diff) | |
download | smolbote-8221037c77be1f7c256b2575d4a9a4a9d58a9c0d.tar.xz |
Profile improvements
* Some code refactoring
* Profile dialog UI is now only created when needed
* Profile selector dialog
Diffstat (limited to 'src/forms/profilesdialog.cpp')
-rw-r--r-- | src/forms/profilesdialog.cpp | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/forms/profilesdialog.cpp b/src/forms/profilesdialog.cpp new file mode 100644 index 0000000..c77208d --- /dev/null +++ b/src/forms/profilesdialog.cpp @@ -0,0 +1,54 @@ +/******************************************************************************* + ** + ** smolbote: yet another qute browser + ** Copyright (C) 2017 Xian Nox + ** + ** This program is free software: you can redistribute it and/or modify + ** it under the terms of the GNU General Public License as published by + ** the Free Software Foundation, either version 3 of the License, or + ** (at your option) any later version. + ** + ** This program is distributed in the hope that it will be useful, + ** but WITHOUT ANY WARRANTY; without even the implied warranty of + ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + ** GNU General Public License for more details. + ** + ** You should have received a copy of the GNU General Public License + ** along with this program. If not, see <http://www.gnu.org/licenses/>. + ** + ******************************************************************************/ + +#include "profilesdialog.h" +#include "ui_profilesdialog.h" + +#include "browser.h" +#include <QListWidget> + +ProfilesDialog::ProfilesDialog(MainWindow *window, QWidget *parent) : + QDialog(parent), + ui(new Ui::ProfilesDialog) +{ + ui->setupUi(this); + m_window = window; + + connect(this, SIGNAL(accepted()), this, SLOT(loadSelectedProfile())); +} + +ProfilesDialog::~ProfilesDialog() +{ + delete ui; +} + +int ProfilesDialog::exec() +{ + qDebug("Showing..."); + for(QString name : qApp->profiles()) { + ui->listWidget->addItem(name); + } + return QDialog::exec(); +} + +void ProfilesDialog::loadSelectedProfile() +{ + m_window->setProfile(qApp->profile(ui->listWidget->currentItem()->text())); +} |