summaryrefslogtreecommitdiff
path: root/schist_desktop_gui/src/gui/components/balances_view/view_balances_view.rs
blob: 013a6fb8a3950a356cea925aecac2b879405c499 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
use iced::{
    alignment,
    widget::{column, row, Container},
    Length,
};

use crate::{
    gui::components::{balances_view::Message, BalancesView, Text},
    style::SPACING_LG,
    traits::Viewable,
};

impl<'a> Viewable<'a, Message> for BalancesView {
    fn view(&'a self) -> iced::Element<'a, Message> {
        let balances_view: &'a BalancesView = self;
        let navigation = balances_view
            .navigation
            .view()
            .map(Message::NavigationMessage);
        let main_content = column![Text::default(&balances_view.greeting).as_element()];
        row![
            Container::new(navigation).width(Length::FillPortion(1)),
            Container::new(main_content).width(Length::FillPortion(3)),
        ]
        .align_y(alignment::Vertical::Center)
        .height(Length::Fill)
        .spacing(u32::from(SPACING_LG))
        .into()
    }
}