source: trunk/examples/declarative/modelviews/pathview/pathview-example.qml@ 846

Last change on this file since 846 was 846, checked in by Dmitry A. Kuminov, 14 years ago

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

File size: 4.0 KB
Line 
1/****************************************************************************
2**
3** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
4** All rights reserved.
5** Contact: Nokia Corporation ([email protected])
6**
7** This file is part of the examples of the Qt Toolkit.
8**
9** $QT_BEGIN_LICENSE:BSD$
10** You may use this file under the terms of the BSD license as follows:
11**
12** "Redistribution and use in source and binary forms, with or without
13** modification, are permitted provided that the following conditions are
14** met:
15** * Redistributions of source code must retain the above copyright
16** notice, this list of conditions and the following disclaimer.
17** * Redistributions in binary form must reproduce the above copyright
18** notice, this list of conditions and the following disclaimer in
19** the documentation and/or other materials provided with the
20** distribution.
21** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor
22** the names of its contributors may be used to endorse or promote
23** products derived from this software without specific prior written
24** permission.
25**
26** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
27** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
28** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
29** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
32** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
34** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
35** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
36** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
37** $QT_END_LICENSE$
38**
39****************************************************************************/
40
41import QtQuick 1.0
42
43Rectangle {
44 width: 400; height: 240
45 color: "white"
46
47 ListModel {
48 id: appModel
49 ListElement { name: "Music"; icon: "pics/AudioPlayer_48.png" }
50 ListElement { name: "Movies"; icon: "pics/VideoPlayer_48.png" }
51 ListElement { name: "Camera"; icon: "pics/Camera_48.png" }
52 ListElement { name: "Calendar"; icon: "pics/DateBook_48.png" }
53 ListElement { name: "Messaging"; icon: "pics/EMail_48.png" }
54 ListElement { name: "Todo List"; icon: "pics/TodoList_48.png" }
55 ListElement { name: "Contacts"; icon: "pics/AddressBook_48.png" }
56 }
57
58 Component {
59 id: appDelegate
60 Item {
61 width: 100; height: 100
62 scale: PathView.iconScale
63
64 Image {
65 id: myIcon
66 y: 20; anchors.horizontalCenter: parent.horizontalCenter
67 source: icon
68 smooth: true
69 }
70 Text {
71 anchors { top: myIcon.bottom; horizontalCenter: parent.horizontalCenter }
72 text: name
73 smooth: true
74 }
75
76 MouseArea {
77 anchors.fill: parent
78 onClicked: view.currentIndex = index
79 }
80 }
81 }
82
83 Component {
84 id: appHighlight
85 Rectangle { width: 80; height: 80; color: "lightsteelblue" }
86 }
87
88 PathView {
89 id: view
90 anchors.fill: parent
91 highlight: appHighlight
92 preferredHighlightBegin: 0.5
93 preferredHighlightEnd: 0.5
94 focus: true
95 model: appModel
96 delegate: appDelegate
97 path: Path {
98 startX: 10
99 startY: 50
100 PathAttribute { name: "iconScale"; value: 0.5 }
101 PathQuad { x: 200; y: 150; controlX: 50; controlY: 200 }
102 PathAttribute { name: "iconScale"; value: 1.0 }
103 PathQuad { x: 390; y: 50; controlX: 350; controlY: 200 }
104 PathAttribute { name: "iconScale"; value: 0.5 }
105 }
106 }
107}
Note: See TracBrowser for help on using the repository browser.