* Makefile, Scripts: new linter * About: remove ID from IC * Firmware: remove double define for DIVC/DIVR * Scripts: check folder names too. Docker: replace syntax check with make lint. * Reformat Sources and Migrate to new file naming convention * Docker: symlink clang-format-12 to clang-format * Add coding style guide
		
			
				
	
	
		
			90 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
#pragma once
 | 
						|
#include <furi.h>
 | 
						|
#include <furi_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 <notification/notification_messages.h>
 | 
						|
#include <storage/storage.h>
 | 
						|
#include <dialogs/dialogs.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<NotificationApp> notification;
 | 
						|
    RecordController<Storage> storage;
 | 
						|
    RecordController<DialogsApp> dialogs;
 | 
						|
 | 
						|
    RfidWorker worker;
 | 
						|
 | 
						|
    TextStore text_store;
 | 
						|
 | 
						|
    void run(void* args);
 | 
						|
 | 
						|
    static const char* app_folder;
 | 
						|
    static const char* app_extension;
 | 
						|
    static const char* app_filetype;
 | 
						|
 | 
						|
    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();
 | 
						|
};
 |