[sailfish] Added RemorseItem to markAllAboveAsRead()

This commit is contained in:
Michael Käufl 2014-11-09 15:19:52 +01:00
parent 16d8811cfd
commit 00bfa9cc35
2 changed files with 37 additions and 2 deletions

View file

@ -24,6 +24,7 @@ import Sailfish.Silica 1.0
ListItem {
id: listItem
signal remorseRunning(bool running)
contentHeight: content.height + contentRow.anchors.topMargin
+ contentRow.anchors.bottomMargin
@ -163,8 +164,7 @@ ListItem {
text: qsTr("Mark all above read")
enabled: index > 0
onClicked: {
var index = feedItemModel.selectedIndex
feedItemModel.markAllAboveAsRead(index)
markAllAboveAsRead()
} }
MenuItem {
id: openInBrowserMenuItem
@ -180,4 +180,23 @@ ListItem {
}
}
}
RemorseItem {
id: remorse
onCanceled: {
listItem.remorseRunning(false)
}
onTriggered: {
listItem.remorseRunning(false)
}
}
function markAllAboveAsRead() {
listItem.remorseRunning(true)
remorse.execute(listItem,
qsTr("Marking all above as read"),
function() {
feedItemModel.markAllAboveAsRead(index)
})
}
}

View file

@ -27,6 +27,13 @@ Page {
id: feeditemsPage
property var feed
property int remorseCounter: 0
onRemorseCounterChanged: {
// Disallow model changes while a RemorseItem is running.
pullmenu.visible = remorseCounter === 0
pushmenu.visible = remorseCounter === 0
}
Component.onCompleted: {
feedItemModel.feed = feeditemsPage.feed
feedItemModel.hasMoreItems = false
@ -43,6 +50,7 @@ Page {
model: feedItemModel
PullDownMenu {
id: pullmenu
MenuItem {
text: qsTr("Update")
enabled: !network.loading
@ -68,6 +76,7 @@ Page {
}
PushUpMenu {
id: pushmenu
MenuItem {
text: qsTr('Mark all read')
onClicked: markAllRead()
@ -97,6 +106,13 @@ Page {
pageStack.push(Qt.resolvedUrl("FeedItem.qml"),
{ isCat: feed.isCat })
}
onRemorseRunning: {
if (running) {
++feeditemsPage.remorseCounter
} else {
--feeditemsPage.remorseCounter
}
}
}
footer: Button {