From 8aaf25de04ad32070f6c737d2d46e40d13238bd6 Mon Sep 17 00:00:00 2001 From: doitux Date: Thu, 17 May 2012 00:17:45 +0200 Subject: [PATCH] add mymessagebox to handle messageboxes for android --- src/gui/qt/mymessagebox/mymessagebox.cpp | 65 ++++++++++++++++++++++++ src/gui/qt/mymessagebox/mymessagebox.h | 36 +++++++++++++ 2 files changed, 101 insertions(+) create mode 100644 src/gui/qt/mymessagebox/mymessagebox.cpp create mode 100644 src/gui/qt/mymessagebox/mymessagebox.h diff --git a/src/gui/qt/mymessagebox/mymessagebox.cpp b/src/gui/qt/mymessagebox/mymessagebox.cpp new file mode 100644 index 00000000..8407552c --- /dev/null +++ b/src/gui/qt/mymessagebox/mymessagebox.cpp @@ -0,0 +1,65 @@ +#include "mymessagebox.h" +#include + +MyMessageBox::MyMessageBox(QWidget *parent) +{ + QMessageBox box(parent); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.exec(); +} + +MyMessageBox::MyMessageBox(Icon icon, const QString &title, const QString &text, QFlags buttons, QWidget *parent, Qt::WindowFlags flags) +{ + QMessageBox box(icon, title, text, buttons, parent, flags); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.exec(); +} + +MyMessageBox::~MyMessageBox() +{ + +} + +QMessageBox::StandardButton MyMessageBox::information(QWidget *parent, const QString &title, const QString &text, QFlags buttons, QMessageBox::StandardButton defaultButton) +{ + QMessageBox box(QMessageBox::Information, title, text, buttons, parent); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.setDefaultButton(defaultButton); + return static_cast(box.exec()); +} + +QMessageBox::StandardButton MyMessageBox::question(QWidget *parent, const QString &title, const QString &text, QFlags buttons, QMessageBox::StandardButton defaultButton) +{ + QMessageBox box(QMessageBox::Question, title, text, buttons, parent); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.setDefaultButton(defaultButton); + return static_cast(box.exec()); +} + +QMessageBox::StandardButton MyMessageBox::warning(QWidget *parent, const QString &title, const QString &text, QFlags buttons, QMessageBox::StandardButton defaultButton) +{ + QMessageBox box(QMessageBox::Warning, title, text, buttons, parent); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.setDefaultButton(defaultButton); + return static_cast(box.exec()); +} + +QMessageBox::StandardButton MyMessageBox::critical(QWidget *parent, const QString &title, const QString &text, QFlags buttons, QMessageBox::StandardButton defaultButton) +{ + QMessageBox box(QMessageBox::Critical, title, text, buttons, parent); + box.setWindowModality(Qt::WindowModal); + box.setWindowFlags(Qt::ToolTip); + box.setStyleSheet("QDialog{ border: 1px solid black; border-style: solid; border-radius: 4px; }"); + box.setDefaultButton(defaultButton); + return static_cast(box.exec()); +} diff --git a/src/gui/qt/mymessagebox/mymessagebox.h b/src/gui/qt/mymessagebox/mymessagebox.h new file mode 100644 index 00000000..95a45c5c --- /dev/null +++ b/src/gui/qt/mymessagebox/mymessagebox.h @@ -0,0 +1,36 @@ +#ifndef MYMESSAGEBOX_H +#define MYMESSAGEBOX_H + +#include + +class MyMessageBox : public QMessageBox +{ + Q_OBJECT +public: + MyMessageBox(QWidget *parent = 0); + + MyMessageBox(Icon icon, const QString &title, const QString &text, + QFlags buttons = QMessageBox::NoButton, QWidget *parent = 0, + Qt::WindowFlags flags = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint); + + ~MyMessageBox(); + + static QMessageBox::StandardButton information(QWidget *parent, const QString &title, + const QString &text, QFlags buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton); + + static QMessageBox::StandardButton question(QWidget *parent, const QString &title, + const QString &text, QFlags buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton); + + static QMessageBox::StandardButton warning(QWidget *parent, const QString &title, + const QString &text, QFlags buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton); + + static QMessageBox::StandardButton critical(QWidget *parent, const QString &title, + const QString &text, QFlags buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton); + +signals: + +public slots: + +}; + +#endif // MYMESSAGEBOX_H