zoodex/src/ui/components/media_details/series_details.rs

41 lines
951 B
Rust
Raw Normal View History

use gtk4::prelude::{BoxExt, OrientableExt, WidgetExt};
use gtk4::{Label, Orientation};
use relm4::{ComponentParts, ComponentSender, RelmWidgetExt, SimpleComponent, component};
use crate::views::overview::SeriesOverview;
pub struct SeriesDetails {
series_overview: SeriesOverview,
}
#[component(pub)]
impl SimpleComponent for SeriesDetails {
type Init = SeriesOverview;
type Input = ();
type Output = ();
view! {
gtk4::Box {
set_orientation: Orientation::Vertical,
set_spacing: 40,
set_margin_all: 100,
Label {
set_css_classes: &["title-1"],
set_label: model.series_overview.name.as_str(),
}
}
}
fn init(
series_overview: SeriesOverview,
root: gtk4::Box,
_sender: ComponentSender<SeriesDetails>,
) -> ComponentParts<SeriesDetails> {
let model = SeriesDetails { series_overview };
let widgets = view_output!();
ComponentParts { model, widgets }
}
}