49af516ec7
* nfc: remove mifare read debug view and scene * nfc: change mifare ultralight data structure * mifare_ultralight: add more commands * nfc: add emulate mifare ul scene * nfc: rework data structures, remove debug scenes and views * nfc: add read emv scenes * nfc: mifare emulation wip * nfc cli: increase detecting time * nfc: save nfc files with new format * nfc: store Mifare Ultralight * nfc: start loading mifare ultralight * nfc: add delete scenes * nfc: add edit UID and name * nfc: finish parsing uid and mifare ul data * nfc: delete success fix * gui_widget: introduce GuiWidget * gui_widget: add string element * gui_widget: add button element * gui_widget: move free elements into gui_widget * nfc: rework info scene with GuiWidget * nfc: rework device info scene * nfc: rework delete scene gui * nfc: add compatible script support * nfc: rework emv reading scenes * nfc: rework bank card save * nfc: add bank card custom view * gui_widget: add icon element * nfc: add icon to bank card * nfc: start worker after switching view Co-authored-by: あく <alleteam@gmail.com>
21 lines
483 B
C
21 lines
483 B
C
#pragma once
|
|
#include <furi.h>
|
|
#include <gui/view.h>
|
|
|
|
typedef struct GuiElement GuiElement;
|
|
typedef struct GuiWidget GuiWidget;
|
|
|
|
struct GuiElement {
|
|
// generic draw and input callbacks
|
|
void (*draw)(Canvas* canvas, GuiElement* element);
|
|
bool (*input)(InputEvent* event, GuiElement* element);
|
|
|
|
// free callback
|
|
void (*free)(GuiElement* element);
|
|
|
|
// generic model holder
|
|
void* model;
|
|
|
|
// pointer to widget that hold our element
|
|
GuiWidget* parent;
|
|
}; |