use crate::*; #[tengri_proc::expose] impl Browser { fn _todo_stub_path_buf (&self) -> PathBuf { todo!() } fn _todo_stub_usize (&self) -> usize { todo!() } fn _todo_stub_arc_str (&self) -> Arc { todo!() } } #[tengri_proc::command(Browser)] impl BrowserCommand { fn set_visible (browser: &mut Browser) -> Perhaps { Ok(None) } fn set_path (browser: &mut Browser, address: PathBuf) -> Perhaps { Ok(None) } fn set_search (browser: &mut Browser, filter: Arc) -> Perhaps { Ok(None) } fn set_cursor (browser: &mut Browser, cursor: usize) -> Perhaps { Ok(None) } } // Commands supported by [Browser] //#[derive(Debug, Clone, PartialEq)] //pub enum BrowserCommand { //Begin, //Cancel, //Confirm, //Select(usize), //Chdir(PathBuf), //Filter(Arc), //} //fn begin (browser: &mut Browser) -> Perhaps { //unreachable!(); //} //fn cancel (browser: &mut Browser) -> Perhaps { //todo!() ////browser.mode = None; ////Ok(None) //} //fn confirm (browser: &mut Browser) -> Perhaps { //todo!() ////Ok(match browser.mode { ////Some(PoolMode::Import(index, ref mut browser)) => { ////if browser.is_file() { ////let path = browser.path(); ////browser.mode = None; ////let _undo = PoolClipCommand::import(browser, index, path)?; ////None ////} else if browser.is_dir() { ////browser.mode = Some(PoolMode::Import(index, browser.chdir()?)); ////None ////} else { ////None ////} ////}, ////Some(PoolMode::Export(index, ref mut browser)) => { ////todo!() ////}, ////_ => unreachable!(), ////}) //} //fn select (browser: &mut Browser, index: usize) -> Perhaps { //todo!() ////Ok(match browser.mode { ////Some(PoolMode::Import(index, ref mut browser)) => { ////browser.index = index; ////None ////}, ////Some(PoolMode::Export(index, ref mut browser)) => { ////browser.index = index; ////None ////}, ////_ => unreachable!(), ////}) //} //fn chdir (browser: &mut Browser, dir: PathBuf) -> Perhaps { //todo!() ////Ok(match browser.mode { ////Some(PoolMode::Import(index, ref mut browser)) => { ////browser.mode = Some(PoolMode::Import(index, Browser::new(Some(dir))?)); ////None ////}, ////Some(PoolMode::Export(index, ref mut browser)) => { ////browser.mode = Some(PoolMode::Export(index, Browser::new(Some(dir))?)); ////None ////}, ////_ => unreachable!(), ////}) //} //fn filter (browser: &mut Browser, filter: Arc) -> Perhaps { //todo!() //}