KDEUI
kmessageboxmessagehandler.cpp
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "kmessageboxmessagehandler.h"
00020
00021 #include <kmessagebox.h>
00022
00023 class KMessageBoxMessageHandlerPrivate
00024 {
00025 public:
00026 KMessageBoxMessageHandlerPrivate(KMessageBoxMessageHandler *q)
00027 : q(q)
00028 {
00029 }
00030
00031 void showMessageBox(KMessage::MessageType messageType, const QString &text, const QString &caption);
00032 QWidget *parentWidget();
00033
00034 KMessageBoxMessageHandler *q;
00035 };
00036
00037
00038 KMessageBoxMessageHandler::KMessageBoxMessageHandler(QWidget *parent)
00039 : QObject(parent), d(new KMessageBoxMessageHandlerPrivate(this))
00040 {
00041 }
00042
00043 KMessageBoxMessageHandler::~KMessageBoxMessageHandler()
00044 {
00045 delete d;
00046 }
00047
00048 void KMessageBoxMessageHandler::message(KMessage::MessageType messageType, const QString &text, const QString &caption)
00049 {
00050 d->showMessageBox(messageType, text, caption);
00051 }
00052
00053 void KMessageBoxMessageHandlerPrivate::showMessageBox(KMessage::MessageType messageType,
00054 const QString &text, const QString &caption)
00055 {
00056 KMessageBox::DialogType dlgType;
00057
00058 switch (messageType)
00059 {
00060 case KMessage::Information:
00061 default:
00062 dlgType = KMessageBox::Information;
00063 break;
00064 case KMessage::Error:
00065 case KMessage::Fatal:
00066 dlgType = KMessageBox::Error;
00067 break;
00068 case KMessage::Warning:
00069 case KMessage::Sorry:
00070 dlgType = KMessageBox::Sorry;
00071 break;
00072 }
00073
00074 KMessageBox::queuedMessageBox(parentWidget(), dlgType, text, caption);
00075 }
00076
00077 QWidget *KMessageBoxMessageHandlerPrivate::parentWidget()
00078 {
00079 return qobject_cast<QWidget*>(q->parent());
00080 }
00081
00082 #include "kmessageboxmessagehandler.moc"
00083