diff options
author | Giulio Camuffo <giulio.camuffo@jollamobile.com> | 2014-03-31 17:18:43 +0300 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-04-29 11:17:45 +0200 |
commit | bb37532f36862eb29e033508d1c6c5dbc8c2be13 (patch) | |
tree | fa9d2e8300bf07f07e2c49b35e1bb936fbe8bc90 /src/compositor/compositor_api/qwaylandquickcompositor.cpp | |
parent | 96ab8abe0b0faea7f63f0477025fe0649e410362 (diff) |
Split QWaylandSurface in a model and view fashion
QtQuick compositors already use a view class (QWaylandSurfaceItem),
so add a new QWaylandSurfaceView, which is subclassed by
QWaylandSurfaceItem, and move the view related methods of QWaylandSurface
there. A QWaylandSurface can have many views.
Change-Id: I7e92fe1f7e9d252f5f40a3097feabb5f3318b03a
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
Diffstat (limited to 'src/compositor/compositor_api/qwaylandquickcompositor.cpp')
-rw-r--r-- | src/compositor/compositor_api/qwaylandquickcompositor.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/compositor/compositor_api/qwaylandquickcompositor.cpp b/src/compositor/compositor_api/qwaylandquickcompositor.cpp index bc475f1c5..8b3467c98 100644 --- a/src/compositor/compositor_api/qwaylandquickcompositor.cpp +++ b/src/compositor/compositor_api/qwaylandquickcompositor.cpp @@ -82,7 +82,7 @@ QWaylandQuickCompositor::QWaylandQuickCompositor(QQuickWindow *window, const cha { window->connect(window, &QQuickWindow::beforeSynchronizing, d_ptr(), &QWaylandQuickCompositorPrivate::updateStarted, Qt::DirectConnection); - qmlRegisterType<QWaylandSurfaceItem>("QtCompositor", 1, 0, "WaylandSurfaceItem"); + qmlRegisterUncreatableType<QWaylandSurfaceItem>("QtCompositor", 1, 0, "WaylandSurfaceItem", QObject::tr("Cannot create instance of WaylandSurfaceItem")); qmlRegisterUncreatableType<QWaylandQuickSurface>("QtCompositor", 1, 0, "WaylandQuickSurface", QObject::tr("Cannot create instance of WaylandQuickSurface")); } @@ -99,4 +99,9 @@ void QWaylandQuickCompositor::update() } } +QWaylandSurfaceView *QWaylandQuickCompositor::createView(QWaylandSurface *surf) +{ + return new QWaylandSurfaceItem(static_cast<QWaylandQuickSurface *>(surf)); +} + QT_END_NAMESPACE |