diff options
author | Marco Bubke <marco.bubke@nokia.com> | 2011-08-24 15:47:35 +0200 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2011-08-25 08:26:20 +0200 |
commit | 59440312401f7fc26d4b60a5c3966154c8b43f27 (patch) | |
tree | 73f63de10bd0ad334204293b37e4cd58b70166a9 /src | |
parent | 15e62e98ad6fa73f052113c158b24549b7b28e4f (diff) |
Move QSGViewPrivate to qsgview_p.h
For the qml designer we need access to the private class.
Change-Id: I2f368daf8e79baa433d11b69a29ef37d53a18a36
Reviewed-on: http://codereview.qt.nokia.com/3508
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@nokia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@nokia.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/declarative/items/items.pri | 1 | ||||
-rw-r--r-- | src/declarative/items/qsgview.cpp | 33 | ||||
-rw-r--r-- | src/declarative/items/qsgview_p.h | 106 |
3 files changed, 109 insertions, 31 deletions
diff --git a/src/declarative/items/items.pri b/src/declarative/items/items.pri index 848c782a6e..9880dd8dc6 100644 --- a/src/declarative/items/items.pri +++ b/src/declarative/items/items.pri @@ -53,6 +53,7 @@ HEADERS += \ $$PWD/qsgtranslate_p.h \ $$PWD/qsgclipnode_p.h \ $$PWD/qsgview.h \ + $$PWD/qsgview_p.h \ $$PWD/qsganimation_p.h \ $$PWD/qsganimation_p_p.h \ $$PWD/qsgstateoperations_p.h \ diff --git a/src/declarative/items/qsgview.cpp b/src/declarative/items/qsgview.cpp index 416b803814..e2fb42e22b 100644 --- a/src/declarative/items/qsgview.cpp +++ b/src/declarative/items/qsgview.cpp @@ -40,6 +40,7 @@ ****************************************************************************/ #include "qsgview.h" +#include "qsgview_p.h" #include "qsgcanvas_p.h" #include "qsgitem_p.h" @@ -52,43 +53,13 @@ #include <private/qdeclarativeengine_p.h> #include <QtCore/qbasictimer.h> + // XXX todo - This whole class should probably be merged with QDeclarativeView for // maximum seamlessness QT_BEGIN_NAMESPACE DEFINE_BOOL_CONFIG_OPTION(frameRateDebug, QML_SHOW_FRAMERATE) -class QSGViewPrivate : public QSGCanvasPrivate, - public QSGItemChangeListener -{ - Q_DECLARE_PUBLIC(QSGView) -public: - QSGViewPrivate(); - ~QSGViewPrivate(); - - void execute(); - void itemGeometryChanged(QSGItem *item, const QRectF &newGeometry, const QRectF &oldGeometry); - void initResize(); - void updateSize(); - void setRootObject(QObject *); - - void init(); - - QSize rootObjectSize() const; - - QPointer<QSGItem> root; - - QUrl source; - - QDeclarativeEngine engine; - QDeclarativeComponent *component; - QBasicTimer resizetimer; - - QSGView::ResizeMode resizeMode; - QSize initialSize; - QElapsedTimer frameTimer; -}; - void QSGViewPrivate::init() { q_func()->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred); diff --git a/src/declarative/items/qsgview_p.h b/src/declarative/items/qsgview_p.h new file mode 100644 index 0000000000..8b2ee88ee8 --- /dev/null +++ b/src/declarative/items/qsgview_p.h @@ -0,0 +1,106 @@ +/**************************************************************************** +** +** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). +** All rights reserved. +** Contact: Nokia Corporation (qt-info@nokia.com) +** +** This file is part of the QtDeclarative module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** GNU Lesser General Public License Usage +** This file may be used under the terms of the GNU Lesser General Public +** License version 2.1 as published by the Free Software Foundation and +** appearing in the file LICENSE.LGPL included in the packaging of this +** file. Please review the following information to ensure the GNU Lesser +** General Public License version 2.1 requirements will be met: +** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. +** +** In addition, as a special exception, Nokia gives you certain additional +** rights. These rights are described in the Nokia Qt LGPL Exception +** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU General +** Public License version 3.0 as published by the Free Software Foundation +** and appearing in the file LICENSE.GPL included in the packaging of this +** file. Please review the following information to ensure the GNU General +** Public License version 3.0 requirements will be met: +** http://www.gnu.org/copyleft/gpl.html. +** +** Other Usage +** Alternatively, this file may be used in accordance with the terms and +** conditions contained in a signed written agreement between you and Nokia. +** +** +** +** +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QSGVIEW_P_H +#define QSGVIEW_P_H + +#include "qsgview.h" + +#include <QtCore/qurl.h> +#include <QtCore/qelapsedtimer.h> +#include <QtCore/qtimer.h> +#include <QtCore/qpointer.h> +#include <QtDeclarative/qsgview.h> +#include <QtDeclarative/qdeclarativeengine.h> +#include <QtDeclarative/private/qsgcanvas_p.h> + +#include "qsgitemchangelistener_p.h" + +QT_BEGIN_HEADER + +QT_BEGIN_NAMESPACE + +QT_MODULE(Declarative) + +class QDeclarativeContext; +class QDeclarativeError; +class QSGItem; +class QDeclarativeComponent; + +class QSGViewPrivate : public QSGCanvasPrivate, + public QSGItemChangeListener +{ + Q_DECLARE_PUBLIC(QSGView) +public: + static QSGViewPrivate* get(QSGView *view) { return view->d_func(); } + static const QSGViewPrivate* get(const QSGView *view) { return view->d_func(); } + + QSGViewPrivate(); + ~QSGViewPrivate(); + + void execute(); + void itemGeometryChanged(QSGItem *item, const QRectF &newGeometry, const QRectF &oldGeometry); + void initResize(); + void updateSize(); + void setRootObject(QObject *); + + void init(); + + QSize rootObjectSize() const; + + QPointer<QSGItem> root; + + QUrl source; + + QDeclarativeEngine engine; + QDeclarativeComponent *component; + QBasicTimer resizetimer; + + QSGView::ResizeMode resizeMode; + QSize initialSize; + QElapsedTimer frameTimer; +}; + +QT_END_NAMESPACE + +QT_END_HEADER + +#endif // QSGVIEW_P_H |