2 import com.nokia.meego 1.0
6 initialPage: categoryPage
8 signal longPressCategory(string catid)
9 signal longPressFeed(string key)
10 signal categoryReloadRequest()
11 signal feedReloadRequest()
12 signal articlesReloadRequest()
13 signal addFileSignal(string fullname, string filename)
15 property string feedid
18 property bool isUpdateInProgress: false
19 property int updateProgressValue: 0
21 function addFileNotification(fullname, filename) {
22 window.addFileSignal(fullname,filename)
25 function updateStarted() {
26 banner.show(qsTr("Update Started"))
27 updateProgressValue = 0
28 isUpdateInProgress = true
31 function updateFinished() {
32 categoryReloadRequest()
34 banner.show(qsTr("Updated Completed"))
35 isUpdateInProgress = false
38 function updateProgress(total, completed) {
40 updateProgressValue = Math.round(100*completed/total);
42 updateProgressValue = 0
47 unsubscribeFeedMenu.key = key
48 unsubscribeFeedMenu.open()
51 onLongPressCategory: {
52 unsubscribeCategoryMenu.catid = catid
53 unsubscribeCategoryMenu.open()
59 ToolIcon { iconId: "toolbar-back"; onClicked: { myMenu.close(); pageStack.pop(); }
60 visible: pageStack.depth>1 }
62 platformIconId: "toolbar-view-menu"
63 anchors.right: (parent === undefined) ? undefined : parent.right
64 onClicked: (myMenu.status == DialogStatus.Closed) ? myMenu.open() : myMenu.close()
70 visualParent: pageStack
72 MenuItem { text: qsTr("Settings"); onClicked: {pageStack.push(settingsPage)} }
73 MenuItem { text: qsTr("Manage Subscriptions"); onClicked: { pageStack.push(addFeedPage) } }
74 MenuItem { text: qsTr("Update All Categories"); onClicked: controller.updateAll(); }
75 MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
81 visualParent: pageStack
83 MenuItem { text: qsTr("Update All Feeds"); onClicked: controller.updateCategory(catid); }
84 //MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
90 visualParent: pageStack
92 MenuItem { text: qsTr("Mark All As Read"); onClicked: {
93 controller.markAllAsRead(feedid);
94 articlesReloadRequest()
97 MenuItem { text: qsTr("Update Feed"); onClicked: controller.updateFeed(feedid); }
98 //MenuItem { text: qsTr("About FeedingIt"); onClicked: query.open(); }
103 id: unsubscribeFeedMenu
104 visualParent: pageStack
107 //MenuItem { text: qsTr("Update"); onClicked: controller.updateFeed(parent.feedid); }
108 MenuItem { text: qsTr("Delete");
111 unsubscribeFeedMenu.close()
117 //icon: "common/images/feedingit.png"
118 //titleText: "Delete Feed?"
119 message: "Delete this feed?"
120 acceptButtonText: "OK"
121 rejectButtonText: "Cancel"
123 controller.removeFeed(unsubscribeFeedMenu.key);
124 window.feedReloadRequest()
130 id: unsubscribeCategoryMenu
131 visualParent: pageStack
132 property string catid
134 //MenuItem { text: qsTr("Update"); onClicked: controller.updateFeed(parent.feedid); }
135 MenuItem { text: qsTr("Delete");
137 categoryConfirm.open()
138 unsubscribeFeedMenu.close()
144 //icon: "common/images/feedingit.png"
145 //titleText: "Delete Feed?"
146 message: "Delete this category?"
147 acceptButtonText: "OK"
148 rejectButtonText: "Cancel"
150 controller.removeCategory(unsubscribeCategoryMenu.catid);
151 window.categoryReloadRequest()
158 icon: "common/images/feedingit.png"
159 titleText: "Feedingit RSS Reader"
160 message: "Version: 0.0.9"
161 +"<br><br>FeedingIt RSS Reader.<br>"
162 +"<br>© 2011 feedingit.marcoz.org"
163 +"<br>http://feedingit.marcoz.org"
164 acceptButtonText: "OK"
175 pageStack.push(feedsPage)
181 onCategoryReloadRequest: {
182 console.log("category reloaded")
183 categoriesItem.reload()
195 property string catid: window.catid
199 window.feedid = feedid
200 pageStack.push(articlesPage)
207 ToolIcon { iconId: "toolbar-back";
209 myArticlesMenu.close();
210 window.categoryReloadRequest()
215 platformIconId: "toolbar-view-menu"
216 anchors.right: (parent === undefined) ? undefined : parent.right
217 onClicked: (myFeedsMenu.status == DialogStatus.Closed) ? myFeedsMenu.open() : myFeedsMenu.close()
222 onFeedReloadRequest: feedsItem.reload()
231 property string feedid: window.feedid
239 ToolIcon { iconId: "toolbar-back";
241 myArticlesMenu.close();
242 if (flipper.articleShown) {
244 flipper.articleShown = false;
246 window.feedReloadRequest();
253 platformIconId: "toolbar-previous"
254 visible: flipper.articleShown
255 //anchors.right: (parent === undefined) ? undefined : parent.right
256 onClicked: flipper.prev();
260 platformIconId: "toolbar-next"
261 visible: flipper.articleShown
262 //anchors.right: (parent === undefined) ? undefined : parent.right
263 onClicked: flipper.next()
267 platformIconId: "toolbar-view-menu"
268 anchors.right: (parent === undefined) ? undefined : parent.right
269 onClicked: (myArticlesMenu.status == DialogStatus.Closed) ? myArticlesMenu.open() : myArticlesMenu.close()
274 onArticlesReloadRequest: flipper.reload()
286 onAddFileSignal: addFeedItem.addFileToDialog(fullname, filename)
306 width: parent.width - 20
307 height: bannerText.height + 20
313 border.color: "white"
318 anchors.centerIn: parent
322 wrapMode: Text.WordWrap;
330 onTriggered: banner.visible = false
334 bannerText.text = str;
335 banner.visible = true
343 banner.visible= false
347 //text: "This is an info banner with no icon"
357 onAutoUpdateEnabledChanged: {
358 if (!settings.autoUpdateEnabled) {