From 5c6355dd5db97f0543423e2fbbfcc20860f4c3d7 Mon Sep 17 00:00:00 2001 From: Olaf Wintermann Date: Tue, 19 Aug 2025 12:32:13 +0200 Subject: [PATCH] simplify FeedSourceList and add UiSourceList update method --- .../src/main/kotlin/de/unixwork/rssreader/Database.kt | 1 - .../main/kotlin/de/unixwork/rssreader/FeedSourceList.kt | 6 +----- .../src/main/kotlin/de/unixwork/rssreader/MainWindow.kt | 2 +- ui-java/src/main/java/de/unixwork/ui/UiSourceList.java | 9 +++++++++ 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/rss-application/src/main/kotlin/de/unixwork/rssreader/Database.kt b/rss-application/src/main/kotlin/de/unixwork/rssreader/Database.kt index 8f10f42..79a0d06 100644 --- a/rss-application/src/main/kotlin/de/unixwork/rssreader/Database.kt +++ b/rss-application/src/main/kotlin/de/unixwork/rssreader/Database.kt @@ -177,7 +177,6 @@ object Database { } } parent.feeds.add(feedCol) - parent.feeds.update() return feedCol } } diff --git a/rss-application/src/main/kotlin/de/unixwork/rssreader/FeedSourceList.kt b/rss-application/src/main/kotlin/de/unixwork/rssreader/FeedSourceList.kt index 1d21ba4..e19d291 100644 --- a/rss-application/src/main/kotlin/de/unixwork/rssreader/FeedSourceList.kt +++ b/rss-application/src/main/kotlin/de/unixwork/rssreader/FeedSourceList.kt @@ -14,11 +14,7 @@ class FeedSourceList : Document() { groups.forEach { val sublist = SubList() sublist.header = it.name - val feedlist = list() - it.feeds.forEach { fc -> - feedlist.add(fc) - } - sublist.value = feedlist + sublist.value = it.feeds feeds.add(sublist) } } diff --git a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt index 9686222..5a2fe38 100644 --- a/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt +++ b/rss-application/src/main/kotlin/de/unixwork/rssreader/MainWindow.kt @@ -74,7 +74,7 @@ class MainWindow { println("groupSel: ${groups?.selectedIndex}, feedName: $feedName, urlStr: $urlStr") parent?.let { val feedCol = Database.newFeeds(it, feedName, uris, user.toString(), password.toString(), cert.toString()) - parent.feeds.add(feedCol) + parent.feeds.update() } } ev.`object`.close() diff --git a/ui-java/src/main/java/de/unixwork/ui/UiSourceList.java b/ui-java/src/main/java/de/unixwork/ui/UiSourceList.java index 69218a8..a5cf117 100644 --- a/ui-java/src/main/java/de/unixwork/ui/UiSourceList.java +++ b/ui-java/src/main/java/de/unixwork/ui/UiSourceList.java @@ -50,6 +50,15 @@ public class UiSourceList { } } + public void update() { + ListFuncs ui = ListFuncs.getInstance(); + try { + ui.list_update_row.invoke(valuePtr, -1); + } catch (Throwable e) { + throw new RuntimeException(e); + } + } + public void remove(int index) { ListFuncs ui = ListFuncs.getInstance(); try { -- 2.47.3