diff options
author | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2013-06-17 18:58:06 +0200 |
---|---|---|
committer | Jocelyn Turcotte <jocelyn.turcotte@digia.com> | 2013-06-19 12:19:11 +0200 |
commit | bbeaf3278de08da00f56aba3511951aaf6a8d233 (patch) | |
tree | f59de9808a942a2668f2bb73d0b03a1bebcd4b0f /lib/render_widget_host_view_qt_delegate_widget.h | |
parent | 2d2da7d717d6bd354f5febe3deb8615685ca3280 (diff) |
Allow the API class to provide the page widget rendering implementation.
- Rename NativeViewQt to RenderWidgetHostViewQtDelegate to keep the
context obvious.
- Use an interface to handle the parenting instead of the
NativeViewContainerQt mechanism that was needed with the Shell.
Diffstat (limited to 'lib/render_widget_host_view_qt_delegate_widget.h')
-rw-r--r-- | lib/render_widget_host_view_qt_delegate_widget.h | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/lib/render_widget_host_view_qt_delegate_widget.h b/lib/render_widget_host_view_qt_delegate_widget.h new file mode 100644 index 000000000..9087ba017 --- /dev/null +++ b/lib/render_widget_host_view_qt_delegate_widget.h @@ -0,0 +1,41 @@ +#ifndef RENDER_WIDGET_HOST_VIEW_QT_DELEGATE_WIDGET_H +#define RENDER_WIDGET_HOST_VIEW_QT_DELEGATE_WIDGET_H + +#include "shared/render_widget_host_view_qt_delegate.h" + +#include <QWidget> + +class BackingStoreQt; +class QWindow; + +namespace content { + class RenderWidgetHostViewQt; +} + +class RenderWidgetHostViewQtDelegateWidget : public QWidget, public RenderWidgetHostViewQtDelegate +{ +public: + RenderWidgetHostViewQtDelegateWidget(content::RenderWidgetHostViewQt* view, QWidget *parent = 0); + + virtual void setBackingStore(BackingStoreQt* backingStore); + virtual QRectF screenRect() const; + virtual void show(); + virtual void hide(); + virtual bool isVisible() const; + virtual QWindow* window() const; + virtual void update(const QRect& rect = QRect()); + + QPainter* painter(); + +protected: + void paintEvent(QPaintEvent * event); + bool event(QEvent *event); + void resizeEvent(QResizeEvent *resizeEvent); + +private: + BackingStoreQt* m_backingStore; + QPainter* m_painter; + content::RenderWidgetHostViewQt *m_view; +}; + +#endif |