mirror of
https://github.com/DarkFlippers/unleashed-firmware
synced 2024-11-10 15:04:19 +00:00
[FL-1371][FL-1502] Lfrfid app: fixes. (#555)
* Gui module byte-input: changed api * Gui: changed font height in multiline text according to guideline * Apps lrfid, nfc: changed send and receive icon * App lfrfid: fix text, fix scene switсh * Elements: multiline text framed, fix paddings * Gui: remove duplicate definition of elements_multiline_text_framed * App NFC: update byte_input callback signature * App subghz: fix text lines in capture scene * App subghz: position of the text is aligned with the guidelines and other scenes * App subghz: removed mockup Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
parent
f82a4a2260
commit
7734fb4018
33 changed files with 725 additions and 726 deletions
|
@ -181,7 +181,7 @@ void dolphin_view_hw_mismatch_draw(Canvas* canvas, void* model) {
|
|||
canvas_set_font(canvas, FontSecondary);
|
||||
snprintf(buffer, 64, "HW target: F%d", api_hal_version_get_hw_target());
|
||||
canvas_draw_str(canvas, 5, 27, buffer);
|
||||
canvas_draw_str(canvas, 5, 37, "FW target: " TARGET);
|
||||
canvas_draw_str(canvas, 5, 38, "FW target: " TARGET);
|
||||
}
|
||||
|
||||
uint32_t dolphin_view_idle_back(void* context) {
|
||||
|
|
|
@ -122,7 +122,7 @@ static void text_input_callback(void* context) {
|
|||
next_view(context);
|
||||
}
|
||||
|
||||
static void byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
static void byte_input_callback(void* context) {
|
||||
next_view(context);
|
||||
}
|
||||
|
||||
|
|
|
@ -81,7 +81,13 @@ uint8_t canvas_height(Canvas* canvas) {
|
|||
|
||||
uint8_t canvas_current_font_height(Canvas* canvas) {
|
||||
furi_assert(canvas);
|
||||
return u8g2_GetMaxCharHeight(&canvas->fb);
|
||||
uint8_t font_height = u8g2_GetMaxCharHeight(&canvas->fb);
|
||||
|
||||
if(canvas->fb.font == u8g2_font_haxrcorp4089_tr) {
|
||||
font_height += 1;
|
||||
}
|
||||
|
||||
return font_height;
|
||||
}
|
||||
|
||||
void canvas_clear(Canvas* canvas) {
|
||||
|
|
|
@ -196,7 +196,7 @@ void elements_multiline_text_aligned(
|
|||
furi_assert(canvas);
|
||||
furi_assert(text);
|
||||
|
||||
uint8_t font_height = canvas_current_font_height(canvas) + 2;
|
||||
uint8_t font_height = canvas_current_font_height(canvas);
|
||||
string_t str;
|
||||
string_init(str);
|
||||
const char* start = text;
|
||||
|
@ -298,10 +298,10 @@ void elements_multiline_text_framed(Canvas* canvas, uint8_t x, uint8_t y, const
|
|||
}
|
||||
|
||||
canvas_set_color(canvas, ColorWhite);
|
||||
canvas_draw_box(canvas, x, y - font_y, str_width + 8, font_y * lines + 6);
|
||||
canvas_draw_box(canvas, x, y - font_y, str_width + 8, font_y * lines + 4);
|
||||
canvas_set_color(canvas, ColorBlack);
|
||||
elements_multiline_text(canvas, x + 4, y + 1, text);
|
||||
elements_frame(canvas, x, y - font_y, str_width + 8, font_y * lines + 6);
|
||||
elements_multiline_text(canvas, x + 4, y - 1, text);
|
||||
elements_frame(canvas, x, y - font_y, str_width + 8, font_y * lines + 4);
|
||||
}
|
||||
|
||||
void elements_slightly_rounded_frame(
|
||||
|
|
|
@ -101,14 +101,6 @@ void elements_multiline_text(Canvas* canvas, uint8_t x, uint8_t y, const char* t
|
|||
*/
|
||||
void elements_multiline_text_framed(Canvas* canvas, uint8_t x, uint8_t y, const char* text);
|
||||
|
||||
/*
|
||||
* Draw framed multiline text
|
||||
* @param x, y - top left corner coordinates
|
||||
* @param text - string (possible multiline)
|
||||
*/
|
||||
|
||||
void elements_multiline_text_framed(Canvas* canvas, uint8_t x, uint8_t y, const char* text);
|
||||
|
||||
/*
|
||||
* Draw slightly rounded frame
|
||||
* @param x, y - top left corner coordinates
|
||||
|
|
|
@ -397,7 +397,7 @@ static void byte_input_dec_selected_byte(ByteInputModel* model) {
|
|||
*/
|
||||
static void byte_input_call_input_callback(ByteInputModel* model) {
|
||||
if(model->input_callback != NULL) {
|
||||
model->input_callback(model->callback_context, model->bytes, model->bytes_count);
|
||||
model->input_callback(model->callback_context);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -408,7 +408,7 @@ static void byte_input_call_input_callback(ByteInputModel* model) {
|
|||
*/
|
||||
static void byte_input_call_changed_callback(ByteInputModel* model) {
|
||||
if(model->changed_callback != NULL) {
|
||||
model->changed_callback(model->callback_context, model->bytes, model->bytes_count);
|
||||
model->changed_callback(model->callback_context);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -15,13 +15,13 @@ typedef struct ByteInput ByteInput;
|
|||
* @brief callback that is executed on save button press
|
||||
*
|
||||
*/
|
||||
typedef void (*ByteInputCallback)(void* context, uint8_t* bytes, uint8_t bytes_count);
|
||||
typedef void (*ByteInputCallback)(void* context);
|
||||
|
||||
/**
|
||||
* @brief callback that is executed when byte buffer is changed
|
||||
*
|
||||
*/
|
||||
typedef void (*ByteChangedCallback)(void* context, uint8_t* bytes, uint8_t bytes_count);
|
||||
typedef void (*ByteChangedCallback)(void* context);
|
||||
|
||||
/**
|
||||
* @brief Allocate and initialize byte input. This byte input is used to enter bytes.
|
||||
|
|
|
@ -40,7 +40,7 @@ void iButtonSceneAddValue::on_exit(iButtonApp* app) {
|
|||
byte_input_set_header_text(byte_input, {0});
|
||||
}
|
||||
|
||||
void iButtonSceneAddValue::byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void iButtonSceneAddValue::byte_input_callback(void* context) {
|
||||
iButtonApp* app = static_cast<iButtonApp*>(context);
|
||||
iButtonEvent event;
|
||||
|
||||
|
|
|
@ -8,5 +8,5 @@ public:
|
|||
void on_exit(iButtonApp* app) final;
|
||||
|
||||
private:
|
||||
void byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count);
|
||||
void byte_input_callback(void* context);
|
||||
};
|
|
@ -11,13 +11,13 @@ void LfRfidAppSceneEmulate::on_enter(LfRfidApp* app, bool need_restore) {
|
|||
|
||||
auto popup = app->view_controller.get<PopupVM>();
|
||||
|
||||
popup->set_header("LF emulating", 89, 30, AlignCenter, AlignTop);
|
||||
popup->set_header("Emulating", 89, 30, AlignCenter, AlignTop);
|
||||
if(strlen(app->worker.key.get_name())) {
|
||||
popup->set_text(app->worker.key.get_name(), 89, 43, AlignCenter, AlignTop);
|
||||
} else {
|
||||
popup->set_text(string_get_cstr(data_string), 89, 43, AlignCenter, AlignTop);
|
||||
}
|
||||
popup->set_icon(0, 4, I_RFIDDolphinSend_98x60);
|
||||
popup->set_icon(0, 3, I_RFIDDolphinSend_97x61);
|
||||
|
||||
app->view_controller.switch_to<PopupVM>();
|
||||
app->worker.start_emulate();
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
void LfRfidAppSceneRead::on_enter(LfRfidApp* app, bool need_restore) {
|
||||
auto popup = app->view_controller.get<PopupVM>();
|
||||
|
||||
popup->set_header("Reading\nLF RFID", 70, 34, AlignLeft, AlignTop);
|
||||
popup->set_icon(0, 4, I_RFIDDolphinReceive_98x60);
|
||||
popup->set_header("Reading\nLF RFID", 89, 34, AlignCenter, AlignTop);
|
||||
popup->set_icon(0, 3, I_RFIDDolphinReceive_97x61);
|
||||
|
||||
app->view_controller.switch_to<PopupVM>();
|
||||
app->worker.start_read();
|
||||
|
|
|
@ -50,7 +50,7 @@ void LfRfidAppSceneSaveData::on_exit(LfRfidApp* app) {
|
|||
app->view_controller.get<ByteInputVM>()->clean();
|
||||
}
|
||||
|
||||
void LfRfidAppSceneSaveData::save_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void LfRfidAppSceneSaveData::save_callback(void* context) {
|
||||
LfRfidApp* app = static_cast<LfRfidApp*>(context);
|
||||
LfRfidApp::Event event;
|
||||
event.type = LfRfidApp::EventType::Next;
|
||||
|
|
|
@ -8,7 +8,7 @@ public:
|
|||
void on_exit(LfRfidApp* app) final;
|
||||
|
||||
private:
|
||||
static void save_callback(void* context, uint8_t* bytes, uint8_t bytes_count);
|
||||
static void save_callback(void* context);
|
||||
uint8_t old_key_data[LFRFID_KEY_SIZE] = {
|
||||
0xAA,
|
||||
0xAA,
|
||||
|
|
|
@ -18,7 +18,7 @@ bool LfRfidAppSceneWriteSuccess::on_event(LfRfidApp* app, LfRfidApp::Event* even
|
|||
|
||||
if(event->type == LfRfidApp::EventType::Back) {
|
||||
app->scene_controller.search_and_switch_to_previous_scene(
|
||||
{LfRfidApp::SceneType::ReadedMenu});
|
||||
{LfRfidApp::SceneType::ReadedMenu, LfRfidApp::SceneType::SelectKey});
|
||||
consumed = true;
|
||||
}
|
||||
|
||||
|
|
|
@ -12,13 +12,13 @@ void LfRfidAppSceneWrite::on_enter(LfRfidApp* app, bool need_restore) {
|
|||
|
||||
auto popup = app->view_controller.get<PopupVM>();
|
||||
|
||||
popup->set_header("LF writing", 89, 30, AlignCenter, AlignTop);
|
||||
popup->set_header("Writing", 89, 30, AlignCenter, AlignTop);
|
||||
if(strlen(app->worker.key.get_name())) {
|
||||
popup->set_text(app->worker.key.get_name(), 89, 43, AlignCenter, AlignTop);
|
||||
} else {
|
||||
popup->set_text(string_get_cstr(data_string), 89, 43, AlignCenter, AlignTop);
|
||||
}
|
||||
popup->set_icon(0, 4, I_RFIDDolphinSend_98x60);
|
||||
popup->set_icon(0, 3, I_RFIDDolphinSend_97x61);
|
||||
|
||||
app->view_controller.switch_to<PopupVM>();
|
||||
app->worker.start_write();
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "string-element.h"
|
||||
#include <gui/elements.h>
|
||||
|
||||
StringElement::StringElement() {
|
||||
}
|
||||
|
@ -9,7 +10,7 @@ StringElement::~StringElement() {
|
|||
void StringElement::draw(Canvas* canvas) {
|
||||
if(text) {
|
||||
canvas_set_font(canvas, font);
|
||||
canvas_draw_str_aligned(canvas, x, y, horizontal, vertical, text);
|
||||
elements_multiline_text_aligned(canvas, x, y, horizontal, vertical, text);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ const void nfc_scene_emulate_uid_on_enter(void* context) {
|
|||
data->uid[6]);
|
||||
}
|
||||
|
||||
popup_set_icon(popup, 0, 4, I_RFIDDolphinSend_98x60);
|
||||
popup_set_icon(popup, 0, 3, I_RFIDDolphinSend_97x61);
|
||||
popup_set_header(popup, "Emulating UID", 56, 31, AlignLeft, AlignTop);
|
||||
popup_set_text(popup, nfc->text_store, 56, 43, AlignLeft, AlignTop);
|
||||
|
||||
|
|
|
@ -18,7 +18,7 @@ const void nfc_scene_read_card_on_enter(void* context) {
|
|||
// Setup view
|
||||
Popup* popup = nfc->popup;
|
||||
popup_set_header(popup, "Detecting\nNFC card", 70, 34, AlignLeft, AlignTop);
|
||||
popup_set_icon(popup, 0, 4, I_RFIDDolphinReceive_98x60);
|
||||
popup_set_icon(popup, 0, 3, I_RFIDDolphinReceive_97x61);
|
||||
|
||||
// Start worker
|
||||
nfc_worker_start(
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
#define SCENE_SET_ATQA_CUSTOM_EVENT (0UL)
|
||||
|
||||
void nfc_scene_set_atqa_byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void nfc_scene_set_atqa_byte_input_callback(void* context) {
|
||||
Nfc* nfc = (Nfc*)context;
|
||||
|
||||
view_dispatcher_send_custom_event(
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
#define SCENE_SET_SAK_CUSTOM_EVENT (0UL)
|
||||
|
||||
void nfc_scene_set_sak_byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void nfc_scene_set_sak_byte_input_callback(void* context) {
|
||||
Nfc* nfc = (Nfc*)context;
|
||||
|
||||
view_dispatcher_send_custom_event(nfc->nfc_common.view_dispatcher, SCENE_SET_SAK_CUSTOM_EVENT);
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
|
||||
#define SCENE_SET_UID_CUSTOM_EVENT (0UL)
|
||||
|
||||
void nfc_scene_set_uid_byte_input_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void nfc_scene_set_uid_byte_input_callback(void* context) {
|
||||
Nfc* nfc = (Nfc*)context;
|
||||
|
||||
view_dispatcher_send_custom_event(nfc->nfc_common.view_dispatcher, SCENE_SET_UID_CUSTOM_EVENT);
|
||||
|
|
|
@ -25,7 +25,7 @@ void ScenedAppSceneByteInput::on_exit(ScenedApp* app) {
|
|||
app->view_controller.get<ByteInputVM>()->clean();
|
||||
}
|
||||
|
||||
void ScenedAppSceneByteInput::result_callback(void* context, uint8_t* bytes, uint8_t bytes_count) {
|
||||
void ScenedAppSceneByteInput::result_callback(void* context) {
|
||||
ScenedApp* app = static_cast<ScenedApp*>(context);
|
||||
ScenedApp::Event event;
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ public:
|
|||
void on_exit(ScenedApp* app) final;
|
||||
|
||||
private:
|
||||
void result_callback(void* context, uint8_t* bytes, uint8_t bytes_count);
|
||||
void result_callback(void* context);
|
||||
|
||||
uint8_t data[4] = {
|
||||
0x01,
|
||||
|
|
|
@ -39,10 +39,10 @@ void subghz_capture_draw(Canvas* canvas, SubghzCaptureModel* model) {
|
|||
model->real_frequency / 1000000 % 1000,
|
||||
model->real_frequency / 1000 % 1000,
|
||||
subghz_symbols[model->counter % 4]);
|
||||
canvas_draw_str(canvas, 2, 12, buffer);
|
||||
canvas_draw_str(canvas, 0, 8, buffer);
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
elements_multiline_text(canvas, 0, 24, string_get_cstr(model->text));
|
||||
elements_multiline_text(canvas, 0, 20, string_get_cstr(model->text));
|
||||
}
|
||||
|
||||
bool subghz_capture_input(InputEvent* event, void* context) {
|
||||
|
|
|
@ -38,7 +38,7 @@ void subghz_static_draw(Canvas* canvas, SubghzStaticModel* model) {
|
|||
|
||||
canvas_set_color(canvas, ColorBlack);
|
||||
canvas_set_font(canvas, FontPrimary);
|
||||
canvas_draw_str(canvas, 2, 12, "CC1101 Static");
|
||||
canvas_draw_str(canvas, 0, 8, "CC1101 Static");
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
// Frequency
|
||||
|
@ -49,9 +49,9 @@ void subghz_static_draw(Canvas* canvas, SubghzStaticModel* model) {
|
|||
model->real_frequency / 1000000 % 1000,
|
||||
model->real_frequency / 1000 % 1000,
|
||||
model->real_frequency % 1000);
|
||||
canvas_draw_str(canvas, 2, 24, buffer);
|
||||
canvas_draw_str(canvas, 0, 20, buffer);
|
||||
snprintf(buffer, sizeof(buffer), "Key: %d", model->button);
|
||||
canvas_draw_str(canvas, 2, 36, buffer);
|
||||
canvas_draw_str(canvas, 0, 31, buffer);
|
||||
}
|
||||
|
||||
bool subghz_static_input(InputEvent* event, void* context) {
|
||||
|
|
|
@ -29,7 +29,7 @@ void subghz_test_basic_draw(Canvas* canvas, SubghzTestBasicModel* model) {
|
|||
|
||||
canvas_set_color(canvas, ColorBlack);
|
||||
canvas_set_font(canvas, FontPrimary);
|
||||
canvas_draw_str(canvas, 2, 12, "CC1101 Basic Test");
|
||||
canvas_draw_str(canvas, 0, 8, "CC1101 Basic Test");
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
// Frequency
|
||||
|
@ -40,7 +40,7 @@ void subghz_test_basic_draw(Canvas* canvas, SubghzTestBasicModel* model) {
|
|||
model->real_frequency / 1000000 % 1000,
|
||||
model->real_frequency / 1000 % 1000,
|
||||
model->real_frequency % 1000);
|
||||
canvas_draw_str(canvas, 2, 24, buffer);
|
||||
canvas_draw_str(canvas, 0, 20, buffer);
|
||||
// Path
|
||||
char* path_name = "Unknown";
|
||||
if(model->path == ApiHalSubGhzPathIsolate) {
|
||||
|
@ -53,7 +53,7 @@ void subghz_test_basic_draw(Canvas* canvas, SubghzTestBasicModel* model) {
|
|||
path_name = "868MHz";
|
||||
}
|
||||
snprintf(buffer, sizeof(buffer), "Path: %d - %s", model->path, path_name);
|
||||
canvas_draw_str(canvas, 2, 36, buffer);
|
||||
canvas_draw_str(canvas, 0, 31, buffer);
|
||||
if(model->status == SubghzTestBasicModelStatusRx) {
|
||||
snprintf(
|
||||
buffer,
|
||||
|
@ -61,9 +61,9 @@ void subghz_test_basic_draw(Canvas* canvas, SubghzTestBasicModel* model) {
|
|||
"RSSI: %ld.%ld dBm",
|
||||
(int32_t)(model->rssi),
|
||||
(int32_t)fabs(model->rssi * 10) % 10);
|
||||
canvas_draw_str(canvas, 2, 48, buffer);
|
||||
canvas_draw_str(canvas, 0, 42, buffer);
|
||||
} else {
|
||||
canvas_draw_str(canvas, 2, 48, "TX");
|
||||
canvas_draw_str(canvas, 0, 42, "TX");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -37,7 +37,7 @@ void subghz_test_packet_draw(Canvas* canvas, SubghzTestPacketModel* model) {
|
|||
|
||||
canvas_set_color(canvas, ColorBlack);
|
||||
canvas_set_font(canvas, FontPrimary);
|
||||
canvas_draw_str(canvas, 2, 12, "CC1101 Packet Test");
|
||||
canvas_draw_str(canvas, 0, 8, "CC1101 Packet Test");
|
||||
|
||||
canvas_set_font(canvas, FontSecondary);
|
||||
// Frequency
|
||||
|
@ -48,7 +48,7 @@ void subghz_test_packet_draw(Canvas* canvas, SubghzTestPacketModel* model) {
|
|||
model->real_frequency / 1000000 % 1000,
|
||||
model->real_frequency / 1000 % 1000,
|
||||
model->real_frequency % 1000);
|
||||
canvas_draw_str(canvas, 2, 24, buffer);
|
||||
canvas_draw_str(canvas, 0, 20, buffer);
|
||||
// Path
|
||||
char* path_name = "Unknown";
|
||||
if(model->path == ApiHalSubGhzPathIsolate) {
|
||||
|
@ -61,7 +61,7 @@ void subghz_test_packet_draw(Canvas* canvas, SubghzTestPacketModel* model) {
|
|||
path_name = "868MHz";
|
||||
}
|
||||
snprintf(buffer, sizeof(buffer), "Path: %d - %s", model->path, path_name);
|
||||
canvas_draw_str(canvas, 2, 36, buffer);
|
||||
canvas_draw_str(canvas, 0, 31, buffer);
|
||||
if(model->status == SubghzTestPacketModelStatusRx) {
|
||||
snprintf(
|
||||
buffer,
|
||||
|
@ -69,9 +69,9 @@ void subghz_test_packet_draw(Canvas* canvas, SubghzTestPacketModel* model) {
|
|||
"RSSI: %ld.%ld dBm",
|
||||
(int32_t)(model->rssi),
|
||||
(int32_t)fabs(model->rssi * 10) % 10);
|
||||
canvas_draw_str(canvas, 2, 48, buffer);
|
||||
canvas_draw_str(canvas, 0, 42, buffer);
|
||||
} else {
|
||||
canvas_draw_str(canvas, 2, 48, "TX");
|
||||
canvas_draw_str(canvas, 0, 42, "TX");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -3,150 +3,150 @@
|
|||
#include <gui/icon.h>
|
||||
|
||||
typedef enum {
|
||||
I_KeyBackspaceSelected_16x9,
|
||||
I_KeySave_24x11,
|
||||
I_KeySaveSelected_24x11,
|
||||
I_KeyBackspace_16x9,
|
||||
I_Battery_26x8,
|
||||
I_PlaceholderL_11x13,
|
||||
I_Bluetooth_5x8,
|
||||
I_BadUsb_9x8,
|
||||
I_PlaceholderR_30x13,
|
||||
I_USBConnected_15x8,
|
||||
I_Battery_19x8,
|
||||
I_Lock_8x8,
|
||||
I_Background_128x11,
|
||||
I_Background_128x8,
|
||||
I_SDcardFail_11x8,
|
||||
I_SDcardMounted_11x8,
|
||||
I_Nfc_10px,
|
||||
I_ir_10px,
|
||||
I_ble_10px,
|
||||
I_sub1_10px,
|
||||
I_dir_10px,
|
||||
I_unknown_10px,
|
||||
I_ibutt_10px,
|
||||
A_FX_Sitting_40x27,
|
||||
A_MDIB_32x32,
|
||||
A_MDI_32x32,
|
||||
A_MDWLB_32x32,
|
||||
A_MDWL_32x32,
|
||||
A_MDWRB_32x32,
|
||||
A_MDWR_32x32,
|
||||
A_WatchingTV_128x64,
|
||||
A_Wink_128x64,
|
||||
I_125_10px,
|
||||
A_iButton_14,
|
||||
A_Plugins_14,
|
||||
A_Bluetooth_14,
|
||||
A_Games_14,
|
||||
A_Infrared_14,
|
||||
A_NFC_14,
|
||||
A_FileManager_14,
|
||||
A_Passport_14,
|
||||
A_Settings_14,
|
||||
A_Power_14,
|
||||
A_125khz_14,
|
||||
A_GPIO_14,
|
||||
A_Tamagotchi_14,
|
||||
A_U2F_14,
|
||||
A_Sub1ghz_14,
|
||||
I_ButtonLeft_4x7,
|
||||
I_ButtonRight_4x7,
|
||||
I_ButtonRightSmall_3x5,
|
||||
I_Empty_1x1,
|
||||
I_ble_10px,
|
||||
I_dir_10px,
|
||||
I_ibutt_10px,
|
||||
I_ir_10px,
|
||||
I_Nfc_10px,
|
||||
I_sub1_10px,
|
||||
I_unknown_10px,
|
||||
I_ButtonCenter_7x7,
|
||||
I_ButtonLeftSmall_3x5,
|
||||
I_Vol_up_25x27,
|
||||
I_Fill_marker_7x7,
|
||||
I_IrdaArrowUp_4x8,
|
||||
I_Down_hvr_25x27,
|
||||
I_Vol_up_hvr_25x27,
|
||||
I_Power_25x27,
|
||||
I_Vol_down_25x27,
|
||||
I_IrdaSend_128x64,
|
||||
I_Up_hvr_25x27,
|
||||
I_Back_15x10,
|
||||
I_IrdaSendShort_128x34,
|
||||
I_Mute_hvr_25x27,
|
||||
I_IrdaLearnShort_128x31,
|
||||
I_Down_25x27,
|
||||
I_Up_25x27,
|
||||
I_Mute_25x27,
|
||||
I_Vol_down_hvr_25x27,
|
||||
I_Power_hvr_25x27,
|
||||
I_IrdaLearn_128x64,
|
||||
I_IrdaArrowDown_4x8,
|
||||
A_MDWRB_32x32,
|
||||
A_MDWL_32x32,
|
||||
A_WatchingTV_128x64,
|
||||
A_MDWR_32x32,
|
||||
A_FX_Sitting_40x27,
|
||||
A_MDI_32x32,
|
||||
A_Wink_128x64,
|
||||
A_MDIB_32x32,
|
||||
A_MDWLB_32x32,
|
||||
I_RFIDBigChip_37x36,
|
||||
I_RFIDDolphinReceive_98x60,
|
||||
I_RFIDDolphinSuccess_108x57,
|
||||
I_RFIDDolphinSend_98x60,
|
||||
I_DoorRight_70x55,
|
||||
I_DoorLocked_10x56,
|
||||
I_ButtonLeft_4x7,
|
||||
I_ButtonRightSmall_3x5,
|
||||
I_ButtonRight_4x7,
|
||||
I_Empty_1x1,
|
||||
I_BigBurger_24x24,
|
||||
I_BigGames_24x24,
|
||||
I_BigProfile_24x24,
|
||||
I_DolphinFirstStart0_70x53,
|
||||
I_DolphinFirstStart1_59x53,
|
||||
I_DolphinFirstStart2_59x51,
|
||||
I_DolphinFirstStart3_57x48,
|
||||
I_DolphinFirstStart4_67x53,
|
||||
I_DolphinFirstStart5_45x53,
|
||||
I_DolphinFirstStart6_58x54,
|
||||
I_DolphinFirstStart7_61x51,
|
||||
I_DolphinFirstStart8_56x51,
|
||||
I_DolphinOkay_41x43,
|
||||
I_Flipper_young_80x60,
|
||||
I_FX_Bang_32x6,
|
||||
I_FX_SittingB_40x27,
|
||||
I_DolphinExcited_64x63,
|
||||
I_DolphinMafia_115x62,
|
||||
I_DolphinNice_96x59,
|
||||
I_DolphinWait_61x59,
|
||||
I_iButtonDolphinSuccess_109x60,
|
||||
I_iButtonDolphinVerySuccess_108x52,
|
||||
I_iButtonKey_49x44,
|
||||
I_DoorLeft_70x55,
|
||||
I_PassportLeft_6x47,
|
||||
I_DoorRight_8x56,
|
||||
I_DoorLeft_8x56,
|
||||
I_DoorLocked_10x56,
|
||||
I_DoorRight_70x55,
|
||||
I_DoorRight_8x56,
|
||||
I_LockPopup_100x49,
|
||||
I_PassportBottom_128x17,
|
||||
I_Medium_chip_22x21,
|
||||
I_PassportLeft_6x47,
|
||||
I_Back_15x10,
|
||||
I_Down_25x27,
|
||||
I_Down_hvr_25x27,
|
||||
I_Fill_marker_7x7,
|
||||
I_IrdaArrowDown_4x8,
|
||||
I_IrdaArrowUp_4x8,
|
||||
I_IrdaLearnShort_128x31,
|
||||
I_IrdaLearn_128x64,
|
||||
I_IrdaSendShort_128x34,
|
||||
I_IrdaSend_128x64,
|
||||
I_Mute_25x27,
|
||||
I_Mute_hvr_25x27,
|
||||
I_Power_25x27,
|
||||
I_Power_hvr_25x27,
|
||||
I_Up_25x27,
|
||||
I_Up_hvr_25x27,
|
||||
I_Vol_down_25x27,
|
||||
I_Vol_down_hvr_25x27,
|
||||
I_Vol_up_25x27,
|
||||
I_Vol_up_hvr_25x27,
|
||||
I_KeyBackspaceSelected_16x9,
|
||||
I_KeyBackspace_16x9,
|
||||
I_KeySaveSelected_24x11,
|
||||
I_KeySave_24x11,
|
||||
A_125khz_14,
|
||||
A_Bluetooth_14,
|
||||
A_FileManager_14,
|
||||
A_Games_14,
|
||||
A_GPIO_14,
|
||||
A_iButton_14,
|
||||
A_Infrared_14,
|
||||
A_NFC_14,
|
||||
A_Passport_14,
|
||||
A_Plugins_14,
|
||||
A_Power_14,
|
||||
A_Settings_14,
|
||||
A_Sub1ghz_14,
|
||||
A_Tamagotchi_14,
|
||||
A_U2F_14,
|
||||
I_EMV_Chip_14x11,
|
||||
I_iButtonDolphinVerySuccess_108x52,
|
||||
I_DolphinMafia_115x62,
|
||||
I_iButtonDolphinSuccess_109x60,
|
||||
I_DolphinExcited_64x63,
|
||||
I_DolphinNice_96x59,
|
||||
I_iButtonKey_49x44,
|
||||
I_DolphinWait_61x59,
|
||||
I_passport_bad2_43x45,
|
||||
I_passport_okay1_43x45,
|
||||
I_passport_happy3_43x45,
|
||||
I_Medium_chip_22x21,
|
||||
I_passport_bad1_43x45,
|
||||
I_passport_happy2_43x45,
|
||||
I_passport_okay2_43x45,
|
||||
I_passport_happy1_43x45,
|
||||
I_passport_okay3_43x45,
|
||||
I_passport_bad2_43x45,
|
||||
I_passport_bad3_43x45,
|
||||
I_SDQuestion_35x43,
|
||||
I_SDError_43x35,
|
||||
I_WalkLB1_32x32,
|
||||
I_PC_22x29,
|
||||
I_Home_painting_17x20,
|
||||
I_Sofa_40x13,
|
||||
I_WalkRB1_32x32,
|
||||
I_WalkL1_32x32,
|
||||
I_WalkR1_32x32,
|
||||
I_WalkL2_32x32,
|
||||
I_WalkR2_32x32,
|
||||
I_TV_20x24,
|
||||
I_WalkLB2_32x32,
|
||||
I_TV_20x20,
|
||||
I_WalkRB2_32x32,
|
||||
I_Health_16x16,
|
||||
I_FaceNopower_29x14,
|
||||
I_Battery_16x16,
|
||||
I_passport_happy1_43x45,
|
||||
I_passport_happy2_43x45,
|
||||
I_passport_happy3_43x45,
|
||||
I_passport_okay1_43x45,
|
||||
I_passport_okay2_43x45,
|
||||
I_passport_okay3_43x45,
|
||||
I_BatteryBody_52x28,
|
||||
I_FaceConfused_29x14,
|
||||
I_Battery_16x16,
|
||||
I_FaceCharging_29x14,
|
||||
I_FaceConfused_29x14,
|
||||
I_FaceNopower_29x14,
|
||||
I_FaceNormal_29x14,
|
||||
I_Voltage_16x16,
|
||||
I_Health_16x16,
|
||||
I_Temperature_16x16,
|
||||
I_DolphinOkay_41x43,
|
||||
I_DolphinFirstStart7_61x51,
|
||||
I_DolphinFirstStart4_67x53,
|
||||
I_DolphinFirstStart3_57x48,
|
||||
I_FX_Bang_32x6,
|
||||
I_Flipper_young_80x60,
|
||||
I_DolphinFirstStart0_70x53,
|
||||
I_DolphinFirstStart2_59x51,
|
||||
I_DolphinFirstStart6_58x54,
|
||||
I_FX_SittingB_40x27,
|
||||
I_BigProfile_24x24,
|
||||
I_DolphinFirstStart5_45x53,
|
||||
I_BigGames_24x24,
|
||||
I_DolphinFirstStart8_56x51,
|
||||
I_BigBurger_24x24,
|
||||
I_DolphinFirstStart1_59x53,
|
||||
I_Voltage_16x16,
|
||||
I_RFIDBigChip_37x36,
|
||||
I_RFIDDolphinReceive_97x61,
|
||||
I_RFIDDolphinSend_97x61,
|
||||
I_RFIDDolphinSuccess_108x57,
|
||||
I_Home_painting_17x20,
|
||||
I_PC_22x29,
|
||||
I_Sofa_40x13,
|
||||
I_TV_20x20,
|
||||
I_TV_20x24,
|
||||
I_WalkL1_32x32,
|
||||
I_WalkL2_32x32,
|
||||
I_WalkLB1_32x32,
|
||||
I_WalkLB2_32x32,
|
||||
I_WalkR1_32x32,
|
||||
I_WalkR2_32x32,
|
||||
I_WalkRB1_32x32,
|
||||
I_WalkRB2_32x32,
|
||||
I_SDError_43x35,
|
||||
I_SDQuestion_35x43,
|
||||
I_Background_128x11,
|
||||
I_Background_128x8,
|
||||
I_BadUsb_9x8,
|
||||
I_Battery_19x8,
|
||||
I_Battery_26x8,
|
||||
I_Bluetooth_5x8,
|
||||
I_Lock_8x8,
|
||||
I_PlaceholderL_11x13,
|
||||
I_PlaceholderR_30x13,
|
||||
I_SDcardFail_11x8,
|
||||
I_SDcardMounted_11x8,
|
||||
I_USBConnected_15x8,
|
||||
} IconName;
|
||||
|
||||
Icon * assets_icons_get(IconName name);
|
||||
|
|
BIN
assets/icons/RFID/RFIDDolphinReceive_97x61.png
Normal file
BIN
assets/icons/RFID/RFIDDolphinReceive_97x61.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3 KiB |
BIN
assets/icons/RFID/RFIDDolphinSend_97x61.png
Normal file
BIN
assets/icons/RFID/RFIDDolphinSend_97x61.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 KiB |
Binary file not shown.
Before Width: | Height: | Size: 3 KiB |
Loading…
Reference in a new issue