Wakeup Light with touch user interface, anti-aliased Font, SD card access and RTC usage on STM32F746NG-DISCO board
Dependencies: BSP_DISCO_F746NG_patch_fixed LCD_DISCO_F746NG TS_DISCO_F746NG FATFileSystem TinyJpgDec_interwork mbed-src
UI.h
- Committer:
- the_sz
- Date:
- 2015-10-29
- Revision:
- 3:ecf7f1f8d749
- Parent:
- 2:80026d18fcf3
- Child:
- 5:13c70bcde7f6
File content as of revision 3:ecf7f1f8d749:
#ifndef __UI_h #define __UI_h #define UI_FLAG_TYPE_BOX_LIST (0x01 | UI_FLAG_NEEDS_CHROME) #define UI_FLAG_TYPE_MESSAGE_BOX (0x02 | UI_FLAG_NEEDS_CHROME) #define UI_FLAG_TYPE_CLOCK 0x04 #define UI_FLAG_TYPE_CLOCK_IN_WORDS (0x08 | UI_FLAG_NEEDS_CHROME) #define UI_FLAG_TYPE_TIMER_ADJUST (0x10 | UI_FLAG_NEEDS_CHROME) #define UI_FLAG_NEEDS_CHROME 0x20 typedef enum { UR_CLICK, UR_TIMER, UR_SHOW, } UI_REASON_ENUM; struct UI_STRUCT_; typedef void (*UI_HANDLER_CALLBACK)(UI_REASON_ENUM reason,uint32_t index,UI_STRUCT_ *ui); typedef struct { char *name; } UI_BOX_LIST_ITEM_STRUCT; typedef struct UI_STRUCT_ { int8_t flags; // UI_FLAG_... UI_HANDLER_CALLBACK handler; union { struct { UI_BOX_LIST_ITEM_STRUCT *items; uint8_t count; } boxList; struct { } messageBox; struct { } timerAdjust; } data; } UI_STRUCT; extern UI_STRUCT uiClock; extern UI_STRUCT uiClockInWords; extern UI_STRUCT uiWakeup; extern UI_STRUCT uiMain; void UI_Init(void); void UI_Poll(void); void UI_Show(UI_STRUCT *ui); void UI_MainHandler(UI_REASON_ENUM reason,uint32_t index,UI_STRUCT *ui); void UI_WakeupHandler(UI_REASON_ENUM reason,uint32_t index,UI_STRUCT *ui); #endif