use std::path::{Path, PathBuf};
use dear_imgui_rs::Ui;
use crate::core::{DialogMode, FileFilter};
use crate::dialog_core::{ConfirmGate, EntryId};
#[derive(Clone, Copy, Debug)]
pub struct CustomPaneCtx<'a> {
pub mode: DialogMode,
pub cwd: &'a Path,
pub selected_entry_ids: &'a [EntryId],
pub selected_paths: &'a [PathBuf],
pub selected_files_count: usize,
pub selected_dirs_count: usize,
pub save_name: &'a str,
pub active_filter: Option<&'a FileFilter>,
}
pub trait CustomPane {
fn draw(&mut self, ui: &Ui, ctx: CustomPaneCtx<'_>) -> ConfirmGate;
}