use adw::{ActionRow, ComboRow}; use dbus::Path; use gtk::subclass::prelude::*; use gtk::{glib, CompositeTemplate, ListBox, Switch, Button}; use gtk::{prelude::*, StringList}; use std::cell::RefCell; use std::collections::HashMap; use std::sync::{Arc, RwLock}; use ReSet_Lib::bluetooth::bluetooth::{BluetoothAdapter, BluetoothDevice}; use crate::components::base::listEntry::ListEntry; use crate::components::bluetooth::bluetoothBox; use crate::components::bluetooth::bluetoothEntry::BluetoothEntry; type BluetoothMap = RefCell, (Arc, Arc, BluetoothDevice)>>; #[allow(non_snake_case)] #[derive(Default, CompositeTemplate)] #[template(resource = "/org/Xetibo/ReSet/resetBluetooth.ui")] pub struct BluetoothBox { #[template_child] pub resetBluetoothSwitch: TemplateChild, #[template_child] pub resetBluetoothAvailableDevices: TemplateChild, #[template_child] pub resetBluetoothRefreshButton: TemplateChild