libcosmic-yoda/examples/cosmic/src/window/bluetooth.rs

43 lines
1.1 KiB
Rust
Raw Normal View History

2023-01-03 21:35:35 +01:00
use super::{Page, Window};
2026-04-30 16:07:25 +02:00
use cosmic::iced::widget::{column, text};
use cosmic::widget::{list_column, settings, toggler};
use cosmic::Element;
2022-12-21 13:11:32 -07:00
#[derive(Clone, Copy, Debug)]
pub enum Message {
2023-01-03 21:35:35 +01:00
Enable(bool),
}
#[derive(Default)]
pub struct State {
2023-01-03 21:35:35 +01:00
enabled: bool,
}
impl State {
pub(super) fn update(&mut self, message: Message) {
match message {
Message::Enable(value) => self.enabled = value,
}
}
pub(super) fn view<'a>(&'a self, window: &'a Window) -> Element<'a, Message> {
2022-12-21 13:11:32 -07:00
settings::view_column(vec![
window.page_title(Page::Bluetooth),
2022-12-21 13:11:32 -07:00
column!(
2023-01-03 21:35:35 +01:00
list_column().add(settings::item(
"Bluetooth",
toggler(self.enabled).on_toggle(Message::Enable)
2023-01-03 21:35:35 +01:00
)),
2022-12-21 13:11:32 -07:00
text("Now visible as \"TODO\", just kidding")
2023-01-03 21:35:35 +01:00
)
.spacing(8)
.into(),
settings::section()
.title("Devices")
2022-12-21 13:11:32 -07:00
.add(settings::item("No devices found", text("")))
2023-01-03 21:35:35 +01:00
.into(),
])
.into()
2022-12-21 13:11:32 -07:00
}
}