| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- #pragma once
- #include <furi.h>
- #include <api-hal.h>
- #include <generic-scene.hpp>
- #include <scene-controller.hpp>
- #include <view-controller.hpp>
- #include <record-controller.hpp>
- #include <text-store.h>
- #include <view-modules/submenu-vm.h>
- #include <view-modules/popup-vm.h>
- #include <view-modules/dialog-ex-vm.h>
- #include <view-modules/text-input-vm.h>
- #include <view-modules/byte-input-vm.h>
- #include "view/container-vm.h"
- #include <sd-card-api.h>
- #include <filesystem-api.h>
- #include <notification/notification-messages.h>
- #include "helpers/rfid-worker.h"
- class LfRfidApp {
- public:
- enum class EventType : uint8_t {
- GENERIC_EVENT_ENUM_VALUES,
- Next,
- MenuSelected,
- };
- enum class SceneType : uint8_t {
- GENERIC_SCENE_ENUM_VALUES,
- Read,
- ReadSuccess,
- ReadedMenu,
- Write,
- WriteSuccess,
- Emulate,
- SaveName,
- SaveSuccess,
- SelectKey,
- SavedKeyMenu,
- SaveData,
- SaveType,
- SavedInfo,
- DeleteConfirm,
- DeleteSuccess,
- };
- class Event {
- public:
- union {
- int32_t menu_index;
- } payload;
- EventType type;
- };
- SceneController<GenericScene<LfRfidApp>, LfRfidApp> scene_controller;
- ViewController<LfRfidApp, SubmenuVM, PopupVM, DialogExVM, TextInputVM, ByteInputVM, ContainerVM>
- view_controller;
- ~LfRfidApp();
- LfRfidApp();
- RecordController<FS_Api> fs_api;
- RecordController<SdCard_Api> sd_ex_api;
- RecordController<NotificationApp> notification;
- RfidWorker worker;
- TextStore text_store;
- void run(void* args);
- static const char* app_folder;
- static const char* app_extension;
- bool save_key(RfidKey* key);
- bool load_key_from_file_select(bool need_restore);
- bool delete_key(RfidKey* key);
- bool load_key_data(const char* path, RfidKey* key);
- bool save_key_data(const char* path, RfidKey* key);
- void make_app_folder();
- };
|