New GUI/View ASCII input API

This commit is contained in:
Willy-JL
2024-01-17 22:41:28 +00:00
parent cc6805891a
commit 9d877eb59d
16 changed files with 326 additions and 1 deletions

View File

@@ -12,6 +12,7 @@ extern "C" {
#endif
#define RECORD_INPUT_EVENTS "input_events"
#define RECORD_ASCII_EVENTS "ascii_events"
#define INPUT_SEQUENCE_SOURCE_HARDWARE (0u)
#define INPUT_SEQUENCE_SOURCE_SOFTWARE (1u)
@@ -40,6 +41,48 @@ typedef struct {
InputType type;
} InputEvent;
typedef enum {
AsciiValueNUL = 0x00, // NULL
_AsciiValueSOH = 0x01, // Start of Heading
_AsciiValueSTX = 0x02, // Start of Text
_AsciiValueETX = 0x03, // End of Text
_AsciiValueEOT = 0x04, // End of Transmission
_AsciiValueENQ = 0x05, // Enquiry
_AsciiValueACK = 0x06, // Acknowledgement
_AsciiValueBEL = 0x07, // Bell
AsciiValueBS = 0x08, // Backspace
_AsciiValueTAB = 0x09, // Horizontal Tab
_AsciiValueLF = 0x0A, // Line Feed
_AsciiValueVT = 0x0B, // Vertical Tab
_AsciiValueFF = 0x0C, // Form Feed
AsciiValueCR = 0x0D, // Carriage Return
_AsciiValueSO = 0x0E, // Shift Out
_AsciiValueSI = 0x0F, // Shift In
_AsciiValueDLE = 0x10, // Data Link Escape
AsciiValueDC1 = 0x11, // Device Control 1
AsciiValueDC2 = 0x12, // Device Control 2
AsciiValueDC3 = 0x13, // Device Control 3
AsciiValueDC4 = 0x14, // Device Control 4
_AsciiValueNAK = 0x15, // Negative Acknowledgement
_AsciiValueSYN = 0x16, // Synchronous Idle
_AsciiValueETB = 0x17, // End of Transmission Block
_AsciiValueCAN = 0x18, // Cancel
_AsciiValueEM = 0x19, // End of Medium
_AsciiValueSUB = 0x1A, // Substitute
AsciiValueESC = 0x1B, // Escape
_AsciiValueSF = 0x1C, // File Separator
_AsciiValueGS = 0x1D, // Group Separator
_AsciiValueRS = 0x1E, // Record Separator
_AsciiValueUS = 0x1F, // Unit Separator
// Printable Ascii 0x20-0x7E
_AsciiValueDEL = 0x7F, // Delete
} AsciiValue;
/** Ascii Event, dispatches with FuriPubSub */
typedef struct {
uint8_t value;
} AsciiEvent;
/** Get human readable input key name
* @param key - InputKey
* @return string