summaryrefslogtreecommitdiff
path: root/schist_desktop_gui/src/gui/components/button.rs
blob: bc9e5f9b5490e5f4ebf9c326cb7bb4b8e6553ed5 (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
use iced::{widget::Button, Element};

pub fn active_button<'a, Content: Into<Element<'a, Message>>, Message>(
    content: Content,
) -> Button<'a, Message> {
    iced::widget::button(content)
        .style(|theme: &iced::Theme, _status| iced::widget::button::Style {
            background: Some(iced::Background::Color(
                theme.extended_palette().primary.base.text,
            )),
            text_color: theme.extended_palette().primary.base.color,
            ..Default::default()
        })
        .width(iced::Length::Fill)
}

pub fn inactive_button<'a, Content: Into<Element<'a, Message>>, Message>(
    content: Content,
    on_press: Message,
) -> Button<'a, Message> {
    iced::widget::button(content)
        .on_press(on_press)
        .width(iced::Length::Fill)
}