[FL-935] Queue-based SD app cycle. File select widget. (#388)
* SD App: more specific sd api * Gui: view dispatcher fix api documentation * Gui: view holder thingy * SD App: do not sleep when working with sd card bus * SD App: queue-based lifecycle * Assets: sd-card assets * SD App: init file select api Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
@@ -7,47 +7,55 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* ViewDispatcher view_port placement */
|
||||
/**
|
||||
* @brief ViewDispatcher view_port placement
|
||||
*/
|
||||
typedef enum {
|
||||
ViewDispatcherTypeNone, /* Special layer for internal use only */
|
||||
ViewDispatcherTypeWindow, /* Main view_port layer, status bar is shown */
|
||||
ViewDispatcherTypeFullscreen /* Fullscreen view_port layer */
|
||||
ViewDispatcherTypeNone, /**< Special layer for internal use only */
|
||||
ViewDispatcherTypeWindow, /**< Main view_port layer, status bar is shown */
|
||||
ViewDispatcherTypeFullscreen /**< Fullscreen view_port layer */
|
||||
} ViewDispatcherType;
|
||||
|
||||
typedef struct ViewDispatcher ViewDispatcher;
|
||||
|
||||
/* Allocate ViewDispatcher
|
||||
/**
|
||||
* @brief Allocate ViewDispatcher
|
||||
* @return pointer to ViewDispatcher instance
|
||||
*/
|
||||
ViewDispatcher* view_dispatcher_alloc();
|
||||
|
||||
/* Free ViewDispatcher
|
||||
* @param pointer to View
|
||||
/**
|
||||
* @brief Free ViewDispatcher
|
||||
* @param view_dispatcher pointer to ViewDispatcher
|
||||
*/
|
||||
void view_dispatcher_free(ViewDispatcher* view_dispatcher);
|
||||
|
||||
/* Add view to ViewDispatcher
|
||||
/**
|
||||
* @brief Add view to ViewDispatcher
|
||||
* @param view_dispatcher, ViewDispatcher instance
|
||||
* @param view_id, View id to register
|
||||
* @param view, View instance
|
||||
* @param view_id View id to register
|
||||
* @param view View instance
|
||||
*/
|
||||
void view_dispatcher_add_view(ViewDispatcher* view_dispatcher, uint32_t view_id, View* view);
|
||||
|
||||
/* Remove view from ViewDispatcher
|
||||
* @param view_dispatcher, ViewDispatcher instance
|
||||
* @param view_id, View id to remove
|
||||
/**
|
||||
* @brief Remove view from ViewDispatcher
|
||||
* @param view_dispatcher ViewDispatcher instance
|
||||
* @param view_id View id to remove
|
||||
*/
|
||||
void view_dispatcher_remove_view(ViewDispatcher* view_dispatcher, uint32_t view_id);
|
||||
|
||||
/* Switch to View
|
||||
* @param view_dispatcher, ViewDispatcher instance
|
||||
* @param view_id, View id to register
|
||||
/**
|
||||
* @brief Switch to View
|
||||
* @param view_dispatcher ViewDispatcher instance
|
||||
* @param view_id View id to register
|
||||
*/
|
||||
void view_dispatcher_switch_to_view(ViewDispatcher* view_dispatcher, uint32_t view_id);
|
||||
|
||||
/* Attach ViewDispatcher to GUI
|
||||
* @param view_dispatcher, ViewDispatcher instance
|
||||
* @param gui, GUI instance to attach to
|
||||
/**
|
||||
* @brief Attach ViewDispatcher to GUI
|
||||
* @param view_dispatcher ViewDispatcher instance
|
||||
* @param gui GUI instance to attach to
|
||||
*/
|
||||
void view_dispatcher_attach_to_gui(
|
||||
ViewDispatcher* view_dispatcher,
|
||||
|
Reference in New Issue
Block a user