Audio settings pop-up

This commit is contained in:
Aleksander
2025-12-04 21:04:52 +01:00
parent f54c5decb6
commit 9767940923
22 changed files with 442 additions and 99 deletions

View File

@@ -64,7 +64,7 @@ fn on_app_click(
let state = state.clone();
let entry = entry.clone();
let globals = globals.clone();
Box::new(move |data| {
Rc::new(move |data| {
let view = app_launcher::View::new(app_launcher::Params {
entry: entry.clone(),
globals: globals.clone(),

View File

@@ -9,6 +9,7 @@ use wgui::{
};
use crate::{
frontend::{Frontend, FrontendTask},
settings,
tab::{Tab, TabParams, TabType},
various,
@@ -66,11 +67,15 @@ impl TabHome {
let btn_settings = state.fetch_component_as::<ComponentButton>("btn_settings")?;
let frontend = params.frontend;
TabType::register_button(frontend.clone(), &btn_apps, TabType::Apps);
TabType::register_button(frontend.clone(), &btn_games, TabType::Games);
TabType::register_button(frontend.clone(), &btn_monado, TabType::Monado);
TabType::register_button(frontend.clone(), &btn_processes, TabType::Processes);
TabType::register_button(frontend.clone(), &btn_settings, TabType::Settings);
Frontend::register_button_task(frontend.clone(), &btn_apps, FrontendTask::SetTab(TabType::Apps));
Frontend::register_button_task(frontend.clone(), &btn_games, FrontendTask::SetTab(TabType::Games));
Frontend::register_button_task(frontend.clone(), &btn_monado, FrontendTask::SetTab(TabType::Monado));
Frontend::register_button_task(
frontend.clone(),
&btn_processes,
FrontendTask::SetTab(TabType::Processes),
);
Frontend::register_button_task(frontend.clone(), &btn_settings, FrontendTask::SetTab(TabType::Settings));
Ok(Self { state })
}

View File

@@ -38,14 +38,3 @@ pub trait Tab {
#[allow(dead_code)]
fn get_type(&self) -> TabType;
}
impl TabType {
pub fn register_button(this_rc: RcFrontend, btn: &Rc<ComponentButton>, tab: TabType) {
btn.on_click({
Box::new(move |_common, _evt| {
this_rc.borrow_mut().tasks.push(FrontendTask::SetTab(tab));
Ok(())
})
});
}
}