WebNotificationPresenter.h [plain text]
#ifndef WebNotificationPresenter_h
#define WebNotificationPresenter_h
#include "qwebkitplatformplugin.h"
#include <QBitmap>
#include <QEvent>
#include <QGridLayout>
#include <QLabel>
#include <QPainter>
#include <QWidget>
class WebNotificationWidget : public QWidget
{
Q_OBJECT
public:
WebNotificationWidget();
virtual ~WebNotificationWidget();
void showNotification(const QWebNotificationData*);
bool event(QEvent*);
Q_SIGNALS:
void notificationClosed();
void notificationClicked();
};
class WebNotificationPresenter : public QWebNotificationPresenter
{
Q_OBJECT
public:
WebNotificationPresenter()
: QWebNotificationPresenter()
{
m_widget = new WebNotificationWidget();
connect(m_widget, SIGNAL(notificationClosed()), this, SIGNAL(notificationClosed()));
connect(m_widget, SIGNAL(notificationClicked()), this, SIGNAL(notificationClicked()));
}
virtual ~WebNotificationPresenter() { m_widget->close(); delete m_widget; }
void showNotification(const QWebNotificationData* data) { m_widget->showNotification(data); }
private:
WebNotificationWidget* m_widget;
};
#endif // WebNotificationsUi_h