use windows::Win32::Foundation::HWND;
use windows::core::{GUID, HSTRING};
use crate::file_filter::WinFileFilter;
#[repr(C)]
#[derive(Debug, Copy, Clone, PartialEq, Eq, Default)]
pub enum ChoosingMode {
Saving = 0,
#[default]
FilesOnly = 1,
DirectoriesOnly = 2,
FilesAndDirectories = 3,
}
#[derive(Debug, Default)]
pub struct WinChooserDialogParams {
pub id: Option<GUID>,
pub title: Option<HSTRING>,
pub filters: Vec<WinFileFilter>,
pub mode: ChoosingMode,
pub multiple: bool,
pub initial_directory: Option<HSTRING>,
pub suggested_name: Option<HSTRING>,
pub owner: Option<HWND>,
}