~loic.molinari/+junk/qtdeclarative-shadereffectsource-changes

« back to all changes in this revision

Viewing changes to examples/demos/rssnews/rssnews.qml

  • Committer: Loïc Molinari
  • Date: 2012-04-21 17:59:51 UTC
  • Revision ID: loic.molinari@canonical.com-20120421175951-bqx68caaf5zrp76l
Initial import

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/****************************************************************************
 
2
**
 
3
** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
 
4
** Contact: http://www.qt-project.org/
 
5
**
 
6
** This file is part of the QtQml module of the Qt Toolkit.
 
7
**
 
8
** $QT_BEGIN_LICENSE:LGPL$
 
9
** GNU Lesser General Public License Usage
 
10
** This file may be used under the terms of the GNU Lesser General Public
 
11
** License version 2.1 as published by the Free Software Foundation and
 
12
** appearing in the file LICENSE.LGPL included in the packaging of this
 
13
** file. Please review the following information to ensure the GNU Lesser
 
14
** General Public License version 2.1 requirements will be met:
 
15
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
 
16
**
 
17
** In addition, as a special exception, Nokia gives you certain additional
 
18
** rights. These rights are described in the Nokia Qt LGPL Exception
 
19
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
 
20
**
 
21
** GNU General Public License Usage
 
22
** Alternatively, this file may be used under the terms of the GNU General
 
23
** Public License version 3.0 as published by the Free Software Foundation
 
24
** and appearing in the file LICENSE.GPL included in the packaging of this
 
25
** file. Please review the following information to ensure the GNU General
 
26
** Public License version 3.0 requirements will be met:
 
27
** http://www.gnu.org/copyleft/gpl.html.
 
28
**
 
29
** Other Usage
 
30
** Alternatively, this file may be used in accordance with the terms and
 
31
** conditions contained in a signed written agreement between you and Nokia.
 
32
**
 
33
**
 
34
**
 
35
**
 
36
**
 
37
**
 
38
** $QT_END_LICENSE$
 
39
**
 
40
****************************************************************************/
 
41
 
 
42
import QtQuick 2.0
 
43
import QtQuick.XmlListModel 2.0
 
44
import "content"
 
45
 
 
46
Rectangle {
 
47
    id: window
 
48
    width: 800; height: 480
 
49
 
 
50
    property string currentFeed: "rss.news.yahoo.com/rss/topstories"
 
51
    property bool loading: feedModel.status == XmlListModel.Loading
 
52
 
 
53
    RssFeeds { id: rssFeeds }
 
54
 
 
55
    XmlListModel {
 
56
        id: feedModel
 
57
        source: "http://" + window.currentFeed
 
58
        query: "/rss/channel/item"
 
59
 
 
60
        XmlRole { name: "title"; query: "title/string()" }
 
61
        XmlRole { name: "link"; query: "link/string()" }
 
62
        XmlRole { name: "description"; query: "description/string()" }
 
63
    }
 
64
 
 
65
    Row {
 
66
        Rectangle {
 
67
            width: 220; height: window.height
 
68
            color: "#efefef"
 
69
 
 
70
            ListView {
 
71
                focus: true
 
72
                id: categories
 
73
                anchors.fill: parent
 
74
                model: rssFeeds
 
75
                footer: quitButtonDelegate
 
76
                delegate: CategoryDelegate {}
 
77
                highlight: Rectangle { color: "steelblue" }
 
78
                highlightMoveSpeed: 9999999
 
79
            }
 
80
            ScrollBar {
 
81
                scrollArea: categories; height: categories.height; width: 8
 
82
                anchors.right: categories.right
 
83
            }
 
84
        }
 
85
        ListView {
 
86
            id: list
 
87
            width: window.width - 220; height: window.height
 
88
            model: feedModel
 
89
            delegate: NewsDelegate {}
 
90
        }
 
91
    }
 
92
    Component {
 
93
        id: quitButtonDelegate
 
94
        Item {
 
95
            width: categories.width; height: 60
 
96
            Text {
 
97
                text: "Quit"
 
98
                font { family: "Helvetica"; pixelSize: 16; bold: true }
 
99
                anchors {
 
100
                    left: parent.left; leftMargin: 15
 
101
                    verticalCenter: parent.verticalCenter
 
102
                }
 
103
            }
 
104
            MouseArea {
 
105
                anchors.fill: parent
 
106
                onClicked: Qt.quit()
 
107
            }
 
108
        }
 
109
    }
 
110
    ScrollBar { scrollArea: list; height: list.height; width: 8; anchors.right: window.right }
 
111
    Rectangle { x: 220; height: window.height; width: 1; color: "#cccccc" }
 
112
}