summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAntti Määttä <antti.maatta@qt.io>2016-11-22 16:50:45 +0200
committerAntti Määttä <antti.maatta@qt.io>2017-01-26 16:00:04 +0000
commit09364817fa76d9aee92bbc24d93e3e523cd2f853 (patch)
treef69444c6d221445a10b9acabec95c906f99c18a0
parent28c0ea55ea77747c0a396537b40a0078f94c95df (diff)
Enable mouse events for the render-qml-to-texture-qml test
This makes the rendered Quick controls interactive. Change-Id: I887ca9dd779c8333491e04430717e9b86ba74eda Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--tests/manual/render-qml-to-texture-qml/InteractiveGui.qml97
-rw-r--r--tests/manual/render-qml-to-texture-qml/main.qml32
-rw-r--r--tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.pro4
-rw-r--r--tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.qrc1
4 files changed, 125 insertions, 9 deletions
diff --git a/tests/manual/render-qml-to-texture-qml/InteractiveGui.qml b/tests/manual/render-qml-to-texture-qml/InteractiveGui.qml
new file mode 100644
index 000000000..65e5f27de
--- /dev/null
+++ b/tests/manual/render-qml-to-texture-qml/InteractiveGui.qml
@@ -0,0 +1,97 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: http://www.qt.io/licensing/
+**
+** This file is part of the Qt3D module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL3$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see http://www.qt.io/terms-conditions. For further
+** information use the contact form at http://www.qt.io/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 3 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPLv3 included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 3 requirements
+** will be met: https://www.gnu.org/licenses/lgpl.html.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 2.0 or later 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 2.0 requirements will be
+** met: http://www.gnu.org/licenses/gpl-2.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.0
+import QtQuick.Controls 1.2
+import QtQuick.Controls.Styles 1.3
+
+Rectangle {
+ width: 1024
+ height: 1024
+ color: "white"
+ focus: true
+
+ Rectangle {
+ id: rect
+ x: 0
+ y: 0
+ width: 200
+ height: 200
+ color: "red"
+ }
+
+ Rectangle {
+ id: rect2
+ width: 300
+ height: 100
+ anchors.right: parent.right
+ anchors.bottom: parent.bottom
+ color: "blue"
+ }
+
+ Button {
+ id: button
+ width: 100
+ height: 80
+ anchors.top: rect.bottom
+ anchors.left: parent.left
+ text: "button"
+ scale: 2.0
+ }
+ CheckBox {
+ id: checkbox
+ width: 200
+ height: 180
+ scale: 2.0
+ text: "checkbox"
+ checked: true
+ anchors.top: parent.top
+ anchors.right: parent.right
+ }
+ Slider {
+ anchors.bottom: parent.bottom
+ anchors.left: parent.left
+ width: 400
+ value: 1
+ minimumValue: 0
+ maximumValue: 1
+
+ onValueChanged: {
+ rect.color = Qt.rgba(value, 0, 0, 1)
+ rect2.color = Qt.rgba(0, 0, value, 1)
+ }
+ }
+}
diff --git a/tests/manual/render-qml-to-texture-qml/main.qml b/tests/manual/render-qml-to-texture-qml/main.qml
index 3c1ee61d8..23ff823e1 100644
--- a/tests/manual/render-qml-to-texture-qml/main.qml
+++ b/tests/manual/render-qml-to-texture-qml/main.qml
@@ -35,7 +35,7 @@
****************************************************************************/
import Qt3D.Core 2.0
-import Qt3D.Render 2.0
+import Qt3D.Render 2.2
import Qt3D.Input 2.0
import QtQuick 2.0 as QQ2
import QtQuick.Scene3D 2.0
@@ -79,31 +79,33 @@ QQ2.Item {
width: 1024
height: 1024
format: Texture.RGBA8_UNorm
- generateMipMaps: false
+ generateMipMaps: true
magnificationFilter: Texture.Linear
- minificationFilter: Texture.Linear
+ minificationFilter: Texture.LinearMipMapLinear
wrapMode {
x: WrapMode.ClampToEdge
y: WrapMode.ClampToEdge
}
}
- }
- OffscreenGui {
+ }
+ InteractiveGui {
}
}
FirstPersonCameraController {
+ id: controller
camera: camera
}
components: [
RenderSettings {
+ pickingSettings.pickMethod: PickingSettings.TrianglePicking
activeFrameGraph:
ForwardRenderer {
camera: camera
- }
+ }
},
InputSettings {}
]
@@ -127,7 +129,23 @@ QQ2.Item {
texture: offscreenTexture
}
- components: [planeMesh, material, transform]
+ property ObjectPicker picker: ObjectPicker {
+ hoverEnabled: true
+ dragEnabled: true
+ eventForward: EventForward {
+ id: eventForward
+ target: qmlTexture
+ focus: true
+ }
+ onPressed: {
+ controller.enabled = false
+ }
+ onReleased: {
+ controller.enabled = true
+ }
+ }
+
+ components: [planeMesh, material, transform, picker]
}
}
}
diff --git a/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.pro b/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.pro
index 402378f87..8155840d3 100644
--- a/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.pro
+++ b/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.pro
@@ -16,6 +16,6 @@ RESOURCES += \
OTHER_FILES += \
main.qml
-DISTFILES += \
- PlaneMaterial.qml \
+HEADERS +=
+
diff --git a/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.qrc b/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.qrc
index 6b2a1aef6..51ec4790c 100644
--- a/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.qrc
+++ b/tests/manual/render-qml-to-texture-qml/render-qml-to-texture-qml.qrc
@@ -2,5 +2,6 @@
<qresource prefix="/">
<file>main.qml</file>
<file>PlaneMaterial.qml</file>
+ <file>InteractiveGui.qml</file>
</qresource>
</RCC>