class FeedSourceList : Document() {
val feeds = this.sourcelist("feeds")
- val groups: MutableList<FeedGroup>
+ var groups: MutableList<FeedGroup>
init {
groups = Database.getFeedTree(this)
+ initTree()
+ }
+
+ fun initTree() {
groups.forEach {
val sublist = SubList<Feed>()
sublist.header = it.name
}
}
+ fun reloadTree() {
+ feeds.clear()
+ groups = Database.getFeedTree(this)
+ initTree()
+ feeds.update()
+ }
+
fun updateFeeds() {
val selection = feeds.selectedIndex
feeds.update()
height = 450,
onClick = { ev ->
if(ev.intValue == 4) {
+ var prevGroupId = feedConfig?.feed?.groupId
feedConfig?.updateFeed()
+ if(feedConfig?.feed?.groupId != prevGroupId) {
+ sourceList.reloadTree()
+ } else {
+ sourceList.updateFeeds()
+ }
}
ev.`object`.close()
- sourceList.updateFeeds()
},
ui = null)
feedConfig = FeedConfig(w)
srclist_insert = linker.downcallHandle(ui_srclist_insert_addr, sigv_mim);
srclist_remove = linker.downcallHandle(ui_srclist_remove_addr, sigv_mi);
srclist_swap = linker.downcallHandle(ui_srclist_swap_addr, sigv_mii);
- srclist_clear = linker.downcallHandle(ui_srclist_remove_addr, sigv_m);
+ srclist_clear = linker.downcallHandle(ui_srclist_clear_addr, sigv_m);
srclist_size = linker.downcallHandle(ui_srclist_size_addr, sigi_m);
srclist_generate_sublist_num_data = linker.downcallHandle(ui_srclist_generate_sublist_num_data_addr, sigv_m);