Added callback to togglePublished()

Regards #119
This commit is contained in:
Michael Käufl 2014-10-30 16:17:04 +01:00
parent 544317acf8
commit 29513896f2
3 changed files with 34 additions and 16 deletions

View file

@ -229,11 +229,16 @@ Page {
}
ToolIcon {
iconSource: "../resources/ic_rss_"+(rss?"enabled":"disabled")+".png"
iconSource: "../resources/ic_rss_"
+ (rss ? "enabled" : "disabled") + ".png"
onClicked: {
feedItems.togglePublished()
rss = !rss
} }
feedItems.togglePublished(function(successful, errorMessage,
state) {
rss = state
// TODO make use of errorMessage
})
}
}
ToolIcon {
iconSource: "../resources/ic_"

View file

@ -223,18 +223,26 @@ ListModel {
})
}
function togglePublished() {
/**
* Toggle published/unpublished of currently selected item.
* @param {function} A callback function with parameters boolean (indicating
* success), string (an optional error message) and boolean (true if
* published; false if unpublished).
*/
function togglePublished(callback) {
var ttrss = rootWindow.getTTRSS()
var sel = root.selectedIndex
var m = getSelectedItem()
ttrss.updateFeedRSS(m.id, !m.rss, function(successful, errorMessage) {
var index = root.selectedIndex
var item = getSelectedItem()
var newState = !item.rss
ttrss.updateFeedRSS(item.id, newState, function(successful,
errorMessage) {
if (successful) {
root.setProperty(sel, "rss", !m.rss)
root.itemPublishedChanged(m)
root.setProperty(index, "rss", newState)
root.itemPublishedChanged(item)
}
// TODO Add a callback to tooglePublished() which can be used to display
// errorMessage.
callback(successful, errorMessage, item.rss)
})
}

View file

@ -187,13 +187,18 @@ Page {
//showFeedItem()
}
}
IconButton {
id: rssSwitch
icon.source: "qrc:///images/ic_rss_"+(rss?"enabled":"disabled")+".png"
//checked: rss
icon.source: "qrc:///images/ic_rss_"
+ (rss ? "enabled" : "disabled") + ".png"
onClicked: {
feedItemModel.togglePublished()
rss = !rss
feedItemModel.togglePublished(function(successful,
errorMessage,
state) {
rss = state
// TODO make use of errorMessage
})
}
}