2021-05-18 21:54:56 +03:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "archive.h"
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <furi.h>
|
|
|
|
#include <gui/gui_i.h>
|
|
|
|
#include <gui/view_dispatcher.h>
|
2021-09-10 03:57:43 +03:00
|
|
|
#include <gui/scene_manager.h>
|
2021-05-18 21:54:56 +03:00
|
|
|
#include <gui/modules/text_input.h>
|
2022-02-10 16:01:49 +03:00
|
|
|
#include <gui/modules/widget.h>
|
2022-09-16 01:21:10 +03:00
|
|
|
#include <gui/view_stack.h>
|
2022-09-15 21:00:51 +03:00
|
|
|
#include <dialogs/dialogs.h>
|
|
|
|
#include <gui/modules/loading.h>
|
2021-07-18 21:09:00 +03:00
|
|
|
#include <loader/loader.h>
|
2021-05-18 21:54:56 +03:00
|
|
|
|
2021-09-21 13:56:33 +03:00
|
|
|
#include "views/archive_browser_view.h"
|
2021-09-10 03:57:43 +03:00
|
|
|
#include "scenes/archive_scene.h"
|
|
|
|
|
2021-05-18 21:54:56 +03:00
|
|
|
typedef enum {
|
2021-09-10 03:57:43 +03:00
|
|
|
ArchiveViewBrowser,
|
2021-05-18 21:54:56 +03:00
|
|
|
ArchiveViewTextInput,
|
2022-02-10 16:01:49 +03:00
|
|
|
ArchiveViewWidget,
|
2021-05-18 21:54:56 +03:00
|
|
|
ArchiveViewTotal,
|
2022-09-16 01:21:10 +03:00
|
|
|
ArchiveViewStack,
|
2021-05-18 21:54:56 +03:00
|
|
|
} ArchiveViewEnum;
|
|
|
|
|
|
|
|
struct ArchiveApp {
|
|
|
|
Gui* gui;
|
|
|
|
ViewDispatcher* view_dispatcher;
|
2022-09-16 01:21:10 +03:00
|
|
|
ViewStack* view_stack;
|
2021-09-10 03:57:43 +03:00
|
|
|
SceneManager* scene_manager;
|
2021-09-21 13:56:33 +03:00
|
|
|
ArchiveBrowserView* browser;
|
2021-05-18 21:54:56 +03:00
|
|
|
TextInput* text_input;
|
2022-02-10 16:01:49 +03:00
|
|
|
Widget* widget;
|
2022-09-15 21:00:51 +03:00
|
|
|
DialogsApp* dialogs;
|
|
|
|
Loading* loading;
|
2022-09-16 02:16:46 +03:00
|
|
|
NotificationApp* notifications;
|
|
|
|
|
2022-04-27 19:34:37 +03:00
|
|
|
FuriPubSubSubscription* loader_stop_subscription;
|
2022-09-16 01:21:10 +03:00
|
|
|
|
2022-06-09 10:09:52 +03:00
|
|
|
string_t fav_move_str;
|
2021-09-10 03:57:43 +03:00
|
|
|
char text_store[MAX_NAME_LEN];
|
2022-01-29 12:39:10 +03:00
|
|
|
char file_extension[MAX_EXT_LEN + 1];
|
2021-05-18 21:54:56 +03:00
|
|
|
};
|
2022-09-15 21:00:51 +03:00
|
|
|
|
2022-09-16 02:16:46 +03:00
|
|
|
void archive_text_store_set(iButton* ibutton, const char* text, ...);
|
|
|
|
void archive_text_store_clear(iButton* ibutton);
|
|
|
|
void archive_notification_message(iButton* ibutton, uint32_t message);
|
2022-09-16 01:21:10 +03:00
|
|
|
void archive_show_loading_popup(ArchiveApp* context, bool show);
|