summaryrefslogtreecommitdiff
path: root/src/util/dialogutil.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/util/dialogutil.cpp')
-rw-r--r--src/util/dialogutil.cpp85
1 files changed, 52 insertions, 33 deletions
diff --git a/src/util/dialogutil.cpp b/src/util/dialogutil.cpp
index b2169c4..2d84a8b 100644
--- a/src/util/dialogutil.cpp
+++ b/src/util/dialogutil.cpp
@@ -1,58 +1,77 @@
-//
-// C++ Interface: dialogutil
-//
-// Description:
-//
-//
-// Author: The BibleTime team <info@bibletime.info>, (C) 2009
-//
-// Copyright: See COPYING file that comes with this distribution
-//
-//
-#include "dialogutil.h"
-#include <QtGui/QDialogButtonBox>
-#include <QtGui/QPushButton>
+/*********
+*
+* This file is part of BibleTime's source code, http://www.bibletime.info/.
+*
+* Copyright 1999-2009 by the BibleTime developers.
+* The BibleTime source code is licensed under the GNU General Public License version 2.0.
+*
+**********/
+
+#include "util/dialogutil.h"
+
+#include <QMessageBox>
+#include <QDialogButtonBox>
+#include <QPushButton>
+#include <QDebug>
namespace util {
-static void replaceText(QDialogButtonBox* box, QDialogButtonBox::StandardButton flag, const QString& text) {
- QPushButton* button = box->button(flag);
- if (button != 0)
+namespace {
+
+void replaceText(QDialogButtonBox *box, QDialogButtonBox::StandardButton flag,
+ const QString &text) {
+ QPushButton *button(box->button(flag));
+ if (button != 0) {
button->setText(text);
+ }
}
-void prepareDialogBox(QDialogButtonBox* box) {
- //: Standard button
+QMessageBox::StandardButton bt_messageBox(QMessageBox::Icon icon, QWidget * parent, const QString & title, const QString & text, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) {
+ qDebug() << "BT message box warning/information/critical";
+ QMessageBox messageBox(icon, title, text, QMessageBox::Ok, parent);
+ //We need the button box to translate the strings (the idea of this whole function)
+ QDialogButtonBox* box = dynamic_cast<QDialogButtonBox*>(messageBox.button(QMessageBox::Ok)->parent());
+ Q_ASSERT(box);
+ messageBox.setStandardButtons(buttons);
+ messageBox.setDefaultButton(defaultButton);
+ prepareDialogBox(box);
+ return (QMessageBox::StandardButton)messageBox.exec();
+}
+
+} // anonymous namespace
+
+void prepareDialogBox(QDialogButtonBox *box) {
replaceText(box, QDialogButtonBox::Ok , QPushButton::tr("OK" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Open , QPushButton::tr("Open" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Save , QPushButton::tr("Save" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Cancel , QPushButton::tr("Cancel" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Close , QPushButton::tr("Close" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Discard , QPushButton::tr("Discard" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Apply , QPushButton::tr("Apply" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Reset , QPushButton::tr("Reset" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::RestoreDefaults, QPushButton::tr("Restore defaults", "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Help , QPushButton::tr("Help" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::SaveAll , QPushButton::tr("Save All" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::Yes , QPushButton::tr("Yes" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::YesToAll, QPushButton::tr("Yes to all", "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::No , QPushButton::tr("No" , "Dialog Button"));
- //: Standard button
replaceText(box, QDialogButtonBox::NoToAll , QPushButton::tr("No to all" , "Dialog Button"));
}
+QMessageBox::StandardButton showWarning(QWidget * parent, const QString & title, const QString & text, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) {
+ return bt_messageBox(QMessageBox::Warning, parent, title, text, buttons, defaultButton);
+}
+
+QMessageBox::StandardButton showInformation(QWidget * parent, const QString & title, const QString & text, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) {
+ return bt_messageBox(QMessageBox::Information, parent, title, text, buttons, defaultButton);
+}
+
+QMessageBox::StandardButton showCritical(QWidget * parent, const QString & title, const QString & text, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) {
+ return bt_messageBox(QMessageBox::Critical, parent, title, text, buttons, defaultButton);
+}
+
+QMessageBox::StandardButton showQuestion(QWidget * parent, const QString & title, const QString & text, QMessageBox::StandardButtons buttons, QMessageBox::StandardButton defaultButton) {
+ return bt_messageBox(QMessageBox::Question, parent, title, text, buttons, defaultButton);
}
+} // namespace util