use std::path::PathBuf;
use std::sync::Mutex;
use std::sync::atomic::AtomicBool;
pub(crate) struct DialogSharedState {
pub pending_model: Mutex<Option<PathBuf>>,
pub active: AtomicBool,
}
pub(crate) fn dialog_cancelled_sentinel() -> PathBuf {
PathBuf::from("\x00__DIALOG_CANCELLED__")
}
pub(crate) fn dialog_timedout_sentinel() -> PathBuf {
PathBuf::from("\x00__DIALOG_TIMEDOUT__")
}
pub(crate) struct IrDialogSharedState {
pub pending_ir: Mutex<Option<PathBuf>>,
pub active: AtomicBool,
}
impl DialogSharedState {
pub fn new() -> Self {
Self {
pending_model: Mutex::new(None),
active: AtomicBool::new(false),
}
}
}
impl IrDialogSharedState {
pub fn new() -> Self {
Self {
pending_ir: Mutex::new(None),
active: AtomicBool::new(false),
}
}
}