10 std::vector<ChooserFilter> filters,
11 std::filesystem::path start_dir)
16 "Chooser::open_file: Portal::System not initialized");
20 backend->open_file(std::move(callback), std::move(filters), std::move(start_dir));
25 std::string suggested_name,
26 std::vector<ChooserFilter> filters,
27 std::filesystem::path start_dir)
32 "Chooser::save_file: Portal::System not initialized");
36 backend->save_file(std::move(callback), std::move(suggested_name), std::move(filters), std::move(start_dir));
#define MF_ERROR(comp, ctx,...)
@ BackendError
Platform backend failed to open or communicate.
@ API
API calls from external code.
@ Portal
High-level user-facing API layer.
Core::FileDialogCallback ChooserCallback
Callback type for the primitive callback overload.
void open_file(ChooserCallback callback, std::vector< ChooserFilter > filters, std::filesystem::path start_dir)
Present a native open-file dialog, delivering the result via callback.
void save_file(ChooserCallback callback, std::string suggested_name, std::vector< ChooserFilter > filters, std::filesystem::path start_dir)
Present a native save-file dialog, delivering the result via callback.
Core::SystemBackend * get_backend()
Access the active platform backend.