[FL-2491] File browser GUI module (#1237)

* File browser module and test app
* nfc: Add support for saved files in subdirectories
* nfc: Use helper function to get shadow path when loading data
* File browser dialog integration pt.1
* File browser dialog integration pt.2
* Gui,Dialogs: drop file select
* Correct use of dynamic string_t(string_ptr)

Co-authored-by: Yukai Li <yukaili.geek@gmail.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
Nikolay Minaylov
2022-05-27 14:19:21 +03:00
committed by GitHub
parent 533f12af15
commit 79920a3522
82 changed files with 2025 additions and 1007 deletions

View File

@@ -1,6 +1,7 @@
#pragma once
#include <furi.h>
#include <gui/canvas.h>
#include "m-string.h"
#ifdef __cplusplus
extern "C" {
@@ -10,25 +11,27 @@ extern "C" {
typedef struct DialogsApp DialogsApp;
/****************** FILE SELECT ******************/
/****************** FILE BROWSER ******************/
/**
* Shows and processes the file selection dialog
* Shows and processes the file browser dialog
* @param context api pointer
* @param path path to directory
* @param result_path selected file path string pointer
* @param path preselected file path string pointer
* @param extension file extension to be offered for selection
* @param selected_filename buffer where the selected filename will be saved
* @param selected_filename_size and the size of this buffer
* @param preselected_filename filename to be preselected
* @param skip_assets true - do not show assets folders
* @param icon file icon pointer, NULL for default icon
* @param hide_ext true - hide extensions for files
* @return bool whether a file was selected
*/
bool dialog_file_select_show(
bool dialog_file_browser_show(
DialogsApp* context,
const char* path,
string_ptr result_path,
string_ptr path,
const char* extension,
char* result,
uint8_t result_size,
const char* preselected_filename);
bool skip_assets,
const Icon* icon,
bool hide_ext);
/****************** MESSAGE ******************/