GUIButtonList
TODO
/*
* @name GUIButtonList
* @brief - TODO
*/
typedef struct
{
/* Basic information about the object */
GUIObject object;
/* Colors */
guiColor backgroundColor;
guiColor titleBackgroundColor;
guiColor titleTextColor[2];
guiColor buttonsState1TextColor;
guiColor buttonsState1BackgroundColor;
guiColor buttonsState2TextColor;
guiColor buttonsState2BackgroundColor;
guiColor buttonsPressedTextColor;
guiColor buttonsPressedBackgroundColor;
/*
* Pointer to callback functions that are called when a button has been
* pressed
* Parameters: uint32_t ButtonListId, uint32_t ButtonIndex
*/
void (*actionButtonPressed)(uint32_t, uint32_t);
/* Title text, one for each page */
char* title[GUI_BUTTON_LIST_MAX_PAGES][2];
bool titleEnabled;
FONT* titleFont;
/* A button with the text set to 0 will be considered empty in the list */
char* buttonText[GUI_BUTTON_LIST_MAX_BUTTONS][2];
bool buttonIsStaticText[GUI_BUTTON_LIST_MAX_BUTTONS];
FONT* buttonFont;
/* Pages and item per page */
uint16_t numOfPages;
uint16_t numOfButtonsPerPage;
/*
* Internal stuff - Do not touch!
* The memory for these objects are allocated static to make things more
* deterministic.
* This of course increase the total memory usage.
* TODO: Switch to dynamic memory allocation?
*/
GUILabel titleLabel;
GUIButton button[GUI_BUTTON_LIST_MAX_BUTTONS_PER_PAGE];
GUIButton previousPageButton;
GUIButton nextPageButton;
uint16_t activePage;
uint16_t listItemHeight;
} GUIButtonList;
TODO
Homepage
Pictures
GUI Mockup
Contact
Version 2:
ui-processor-rtos
fpga-config-mcu
fpga-config-over-uart
Version 1:
freertos-serial-monitor
freertos-serial-monitor lcd test
Simple GUI:
General
GUIObject
GUIButton
GUILabel
GUIStaticTextBox
GUIAlertBox
GUIButtonGridBox
GUIButtonList
GUIInfoBox
Tasks:
LCD Task Message
LCD:
LCD ER-TFT070-4
LCD ER-TFTM070-5
LCD HY070CTP-HD
LCD HY101CTP-HD
LCD YL070MY01
Touch Controller
Measurements:
STM32 GPIO Speed
FT5206 Waveform Capture
Version 2:
Revision 2 Mockup
Module IDs
Boards:
Connection Board
UI Processor Board
Data Processor Board
Isolated Power Module
LCD Board
Modules:
1. GPIO Module
3. CAN Module
5. RS-232 Module
15. nRF24L01 Module
Future Module Ideas
FPGA:
FPGA Main Blocks
FPGA Communication
FPGA UART
FPGA GPIO
FPGA Timestamp
FPGA SDRAM
FPGA PLL
[FPGA ID Reader](https://github.com/hampussandberg/HexConnect/wiki/FPGA-ID Reader)
FPGA LVDS
FPGA Monitor
FPGA Tips and Tricks
Learning Quartus II
Version 1:
Requirement Specification
Hardware Design
Hardware Rev 1 Fixes