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
|
|
|
|
2022-12-30 17:40:16 +01:00
|
|
|
#[derive(Clone, Copy, Debug)]
|
|
|
|
|
pub enum Message {
|
2023-01-03 21:35:35 +01:00
|
|
|
Enable(bool),
|
2022-12-30 17:40:16 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Default)]
|
|
|
|
|
pub struct State {
|
2023-01-03 21:35:35 +01:00
|
|
|
enabled: bool,
|
2022-12-30 17:40:16 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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![
|
2022-12-30 17:40:16 +01:00
|
|
|
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",
|
2026-03-18 15:54:07 +01:00
|
|
|
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(),
|
2026-03-18 15:54:07 +01:00
|
|
|
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
|
|
|
}
|
|
|
|
|
}
|