file_browser.h 808 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /**
  2. * @file file_browser.h
  3. * GUI: FileBrowser view module API
  4. */
  5. #pragma once
  6. #include "m-string.h"
  7. #include <gui/view.h>
  8. #ifdef __cplusplus
  9. extern "C" {
  10. #endif
  11. typedef struct FileBrowser FileBrowser;
  12. typedef void (*FileBrowserCallback)(void* context);
  13. FileBrowser* file_browser_alloc(string_ptr result_path);
  14. void file_browser_free(FileBrowser* browser);
  15. View* file_browser_get_view(FileBrowser* browser);
  16. void file_browser_configure(
  17. FileBrowser* browser,
  18. const char* extension,
  19. bool skip_assets,
  20. const Icon* file_icon,
  21. bool hide_ext);
  22. void file_browser_start(FileBrowser* browser, string_t path);
  23. void file_browser_stop(FileBrowser* browser);
  24. void file_browser_set_callback(FileBrowser* browser, FileBrowserCallback callback, void* context);
  25. #ifdef __cplusplus
  26. }
  27. #endif