pub trait IFrnStorageProviderImpl: IUnknownImpl {
// Required methods
fn select_folder_dialog(
&self,
parent_top_level: Option<&IFrnTopLevel>,
events: Option<&IFrnSystemDialogEvents>,
allow_multiple: bool,
title: Option<&CStr>,
initial_path: Option<&CStr>,
);
fn open_file_dialog(
&self,
parent_top_level: Option<&IFrnTopLevel>,
events: Option<&IFrnSystemDialogEvents>,
allow_multiple: bool,
title: Option<&CStr>,
initial_directory: Option<&CStr>,
initial_file: Option<&CStr>,
filters: Option<&IFrnFilePickerFileTypes>,
);
fn save_file_dialog(
&self,
parent_top_level: Option<&IFrnTopLevel>,
events: Option<&IFrnSystemDialogEvents>,
title: Option<&CStr>,
initial_directory: Option<&CStr>,
initial_file: Option<&CStr>,
filters: Option<&IFrnFilePickerFileTypes>,
);
fn save_bookmark_to_bytes(
&self,
file_uri: Option<&IFrnString>,
err: *mut *mut c_void,
) -> Result<Option<ComPtr<IFrnString>>, HResult>;
fn read_bookmark_from_bytes(
&self,
ptr: *mut c_void,
len: i32,
) -> Result<Option<ComPtr<IFrnString>>, HResult>;
fn release_bookmark(&self, file_uri: Option<&IFrnString>);
fn open_security_scope(&self, file_uri: Option<&IFrnString>) -> bool;
fn close_security_scope(&self, file_uri: Option<&IFrnString>);
fn try_resolve_file_reference_uri(
&self,
file_uri: Option<&IFrnString>,
) -> Result<Option<ComPtr<IFrnString>>, HResult>;
}Expand description
Implement this to provide IFrnStorageProvider to native code (see IFrnStorageProvider::from_impl).
Required Methods§
fn select_folder_dialog( &self, parent_top_level: Option<&IFrnTopLevel>, events: Option<&IFrnSystemDialogEvents>, allow_multiple: bool, title: Option<&CStr>, initial_path: Option<&CStr>, )
fn open_file_dialog( &self, parent_top_level: Option<&IFrnTopLevel>, events: Option<&IFrnSystemDialogEvents>, allow_multiple: bool, title: Option<&CStr>, initial_directory: Option<&CStr>, initial_file: Option<&CStr>, filters: Option<&IFrnFilePickerFileTypes>, )
fn save_file_dialog( &self, parent_top_level: Option<&IFrnTopLevel>, events: Option<&IFrnSystemDialogEvents>, title: Option<&CStr>, initial_directory: Option<&CStr>, initial_file: Option<&CStr>, filters: Option<&IFrnFilePickerFileTypes>, )
fn save_bookmark_to_bytes( &self, file_uri: Option<&IFrnString>, err: *mut *mut c_void, ) -> Result<Option<ComPtr<IFrnString>>, HResult>
fn read_bookmark_from_bytes( &self, ptr: *mut c_void, len: i32, ) -> Result<Option<ComPtr<IFrnString>>, HResult>
fn release_bookmark(&self, file_uri: Option<&IFrnString>)
fn open_security_scope(&self, file_uri: Option<&IFrnString>) -> bool
fn close_security_scope(&self, file_uri: Option<&IFrnString>)
fn try_resolve_file_reference_uri( &self, file_uri: Option<&IFrnString>, ) -> Result<Option<ComPtr<IFrnString>>, HResult>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".