psa: made text more readable for n950
[feedingit] / psa_harmattan / feedingit / qml / main.qml
1 import QtQuick 1.0
2 import com.nokia.meego 1.0
3
4
5 PageStackWindow {
6     id: window
7     initialPage: categoryPage
8
9     signal articleClosed()
10     property string feedid
11     property string catid
12
13     Component.onCompleted: theme.inverted= true
14
15     ToolBarLayout {
16         id: commonTools
17         visible: false
18         ToolIcon { iconId: "toolbar-back"; onClicked: { myMenu.close(); pageStack.pop(); }
19             visible: pageStack.depth>1 }
20         ToolIcon {
21             platformIconId: "toolbar-view-menu"
22             anchors.right: (parent === undefined) ? undefined : parent.right
23             onClicked: (myMenu.status == DialogStatus.Closed) ? myMenu.open() : myMenu.close()
24         }
25     }
26
27     Menu {
28         id: myMenu
29         visualParent: pageStack
30         MenuLayout {
31             MenuItem { text: qsTr("Settings"); onClicked: {}  }
32             MenuItem { text: qsTr("Add Feeds"); onClicked: { pageStack.push(addFeedPage)  } }
33             MenuItem { text: qsTr("Update All Categories"); onClicked: controller.updateAll(); }
34             MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
35         }
36     }
37
38     Menu {
39         id: myFeedsMenu
40         visualParent: pageStack
41         MenuLayout {
42             MenuItem { text: qsTr("Update All Feeds"); onClicked: controller.updateAll(); }
43             MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
44         }
45     }
46
47     Menu {
48         id: myArticlesMenu
49         visualParent: pageStack
50         MenuLayout {
51             MenuItem { text: qsTr("Mark All As Read"); onClicked: controller.markAllAsRead(feedid); }
52             MenuItem { text: qsTr("Update Feed"); onClicked: controller.updateFeed(feedid); }
53             MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
54         }
55     }
56
57     QueryDialog {
58         id: query
59         icon: "common/images/feedingit.png"
60         titleText: "Feedingit RSS Reader"
61         message: "Version: 0.0.9"
62         +"<br><br>FeedingIt RSS Reader.<br>"
63         +"<br>&copy; 2011 feedingit.marcoz.org"
64         +"<br>http://feedingit.marcoz.org"
65         acceptButtonText: "OK"
66     }
67
68 //    Page{
69 //        id: mainPage
70 //        Component.onCompleted: {
71 //            var main = Qt.createComponent("FeedingIt.qml");
72 //            main.createObject(mainPage);
73 //        }
74 //    }
75
76     Component {
77         id: categoryPage
78         Page {
79             tools: commonTools
80             Categories {
81                 onCategoryClicked: {
82                     window.catid = cat
83                     pageStack.push(feedsPage)
84                 }
85             }
86         }
87     }
88
89     Component {
90         id: feedsPage
91
92         Page {
93             tools: feedsTools
94             anchors.fill: parent
95             property string catid: window.catid
96             Feeds {
97                 id: feedsItem
98                 onFeedClicked: {
99                     window.feedid = feedid
100                     pageStack.push(articlesPage)
101                 }
102             }
103             ToolBarLayout {
104                 id: feedsTools
105                 visible: false
106                 ToolIcon { iconId: "toolbar-back";
107                     onClicked: {
108                         myArticlesMenu.close();
109                         pageStack.pop();
110                     }
111                 }
112                 ToolIcon {
113                     platformIconId: "toolbar-view-menu"
114                     anchors.right: (parent === undefined) ? undefined : parent.right
115                     onClicked: (myFeedsMenu.status == DialogStatus.Closed) ? myFeedsMenu.open() : myFeedsMenu.close()
116                 }
117             }
118             Connections {
119                  target: window
120                  onArticleClosed: feedsItem.reload()
121              }
122         }
123     }
124
125     Component {
126         id: articlesPage
127         Page {
128             tools: articleTools
129             property string feedid: window.feedid
130             ArticleViewer {
131                 id: flipper
132             }
133
134             ToolBarLayout {
135                 id: articleTools
136                 visible: false
137                 ToolIcon { iconId: "toolbar-back";
138                     onClicked: {
139                         myArticlesMenu.close();
140                         if (flipper.articleShown) {
141                             flipper.articleShown = false;
142                             flipper.reload()
143                         } else {
144                             window.articleClosed();
145                             pageStack.pop();
146                         }
147                     }
148                 }
149
150                 ToolIcon {
151                     platformIconId: "toolbar-previous"
152                     visible: flipper.articleShown
153                     //anchors.right: (parent === undefined) ? undefined : parent.right
154                     onClicked: flipper.prev();
155                 }
156
157                 ToolIcon {
158                     platformIconId: "toolbar-next"
159                     visible: flipper.articleShown
160                     //anchors.right: (parent === undefined) ? undefined : parent.right
161                     onClicked: flipper.next()
162                 }
163
164                 ToolIcon {
165                     platformIconId: "toolbar-view-menu"
166                     anchors.right: (parent === undefined) ? undefined : parent.right
167                     onClicked: (myArticlesMenu.status == DialogStatus.Closed) ? myArticlesMenu.open() : myArticlesMenu.close()
168                 }
169             }
170         }
171     }
172
173     Component {
174         id: addFeedPage
175         AddFeed {}
176     }
177 }