From 981f8b3acf7e76f27c02f4ced80d55b424cc7497 Mon Sep 17 00:00:00 2001 From: Tannin Date: Sun, 3 Feb 2013 12:49:25 +0100 Subject: initial commit to mercurial repository. Corresponds to MO version 0.12.6 --- src/questionboxmemory.cpp | 72 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 src/questionboxmemory.cpp (limited to 'src/questionboxmemory.cpp') diff --git a/src/questionboxmemory.cpp b/src/questionboxmemory.cpp new file mode 100644 index 00000000..a7bb72b6 --- /dev/null +++ b/src/questionboxmemory.cpp @@ -0,0 +1,72 @@ +/* +Copyright (C) 2012 Sebastian Herbord. All rights reserved. + +This file is part of Mod Organizer. + +Mod Organizer 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. + +Mod Organizer 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 Mod Organizer. If not, see . +*/ + +#include "questionboxmemory.h" +#include "ui_questionboxmemory.h" + +#include +#include + +QuestionBoxMemory::QuestionBoxMemory(QWidget *parent, const QString &title, const QString &text, + const QDialogButtonBox::StandardButtons buttons, QDialogButtonBox::StandardButton defaultButton) + : QDialog(parent), ui(new Ui::QuestionBoxMemory) +{ + ui->setupUi(this); + + this->setWindowTitle(title); + + QIcon icon = QApplication::style()->standardIcon(QStyle::SP_MessageBoxQuestion); + ui->iconLabel->setPixmap(icon.pixmap(128)); + ui->messageLabel->setText(text); + ui->buttonBox->setStandardButtons(buttons); + if (defaultButton != QDialogButtonBox::NoButton) { + ui->buttonBox->button(defaultButton)->setDefault(true); + } + connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*))); +} + + +QuestionBoxMemory::~QuestionBoxMemory() +{ + delete ui; +} + + +void QuestionBoxMemory::buttonClicked(QAbstractButton *button) +{ + m_Button = ui->buttonBox->standardButton(button); +} + + +QDialogButtonBox::StandardButton QuestionBoxMemory::query(QWidget *parent, + QSettings &settings, const QString &name, + const QString &title, const QString &text, QDialogButtonBox::StandardButtons buttons, + QDialogButtonBox::StandardButton defaultButton) +{ + if (settings.contains(QString("DialogChoices/") + name)) { + return static_cast(settings.value(QString("DialogChoices/") + name).toInt()); + } else { + QuestionBoxMemory dialog(parent, title, text, buttons, defaultButton); + dialog.exec(); + if (dialog.ui->rememberCheckBox->isChecked()) { + settings.setValue(QString("DialogChoices/") + name, dialog.m_Button); + } + return dialog.m_Button; + } +} -- cgit v1.3.1