rss-tool/src/widgets.rs

35 lines
No EOL
829 B
Rust

use super::db;
use super::ui;
use ui::Message;
use iced::{
widget::{button, column, container, text},
Element,
Length::Fill,
};
pub fn list_feeds() -> iced::widget::Column<'static, Message> {
let feeds = db::get_feeds();
column(
feeds
.iter()
.map(|f| {
button(text(f.title.clone())).on_press(Message::LoadFeed(f.feed_id))
})
.map(Element::from),
)
.align_x(iced::Alignment::Start)
.spacing(5)
}
pub fn list_items(feed_id: usize) -> iced::widget::Column<'static,Message> {
let items: Vec<db::FeedItem> = db::get_feed_items(feed_id);
column(
items.iter()
.map(|i| {
text(i.title.clone())
})
.map(Element::from),
)
.align_x(iced::Alignment::Start)
.spacing(5)
}