pnmixer-rust/src/ui_entry.rs

30 lines
697 B
Rust
Raw Normal View History

2017-06-29 12:55:07 +00:00
use app_state::*;
2017-07-01 22:03:21 +00:00
use audio::{AudioSignal, AudioUser};
2017-06-29 12:55:07 +00:00
use std::rc::Rc;
2017-07-01 14:55:35 +00:00
use ui_popup_menu::*;
2017-06-29 12:55:07 +00:00
use ui_popup_window::*;
use ui_tray_icon::*;
2017-07-02 16:11:56 +00:00
use ui_prefs_dialog::*;
2017-06-29 12:55:07 +00:00
2017-06-30 15:24:26 +00:00
pub fn init(appstate: Rc<AppS>) {
2017-06-30 19:10:33 +00:00
{
let apps = appstate.clone();
2017-07-01 22:03:21 +00:00
appstate.audio.connect_handler(Box::new(move |s, u| {
2017-06-30 15:24:26 +00:00
match (s, u) {
2017-06-30 19:10:33 +00:00
(AudioSignal::AudioValuesChanged,
AudioUser::AudioUserUnknown) => {
2017-06-30 20:08:08 +00:00
debug!("External volume change!");
2017-06-30 19:10:33 +00:00
}
2017-06-30 20:08:08 +00:00
_ => debug!("Nix"),
2017-06-30 15:24:26 +00:00
}
2017-06-30 19:10:33 +00:00
}));
}
2017-06-30 15:24:26 +00:00
2017-06-30 19:10:33 +00:00
init_tray_icon(appstate.clone());
init_popup_window(appstate.clone());
2017-07-01 14:55:35 +00:00
init_popup_menu(appstate.clone());
2017-06-29 12:55:07 +00:00
}