EasyGUI  Version v1.0
Configuration

Default configuration setup. More...

Macros

#define GUI_CFG_OS   1
 Enables (1) or disables (0) OS support for library.
 
#define GUI_CFG_USE_TOUCH   1
 Enables (1) or disables (0) touch support.
 
#define GUI_CFG_USE_KEYBOARD   0
 Enables (1) or disables (0) keyboard support.
 
#define GUI_CFG_USE_UNICODE   0
 Enables (1) or disabled (0) unicode strings. More...
 
#define GUI_CFG_TOUCH_BUFFER_SIZE   10
 Maximal number of touch entries in buffer.
 
#define GUI_CFG_TOUCH_MAX_PRESSES   2
 Number of touch presses available at a time. More...
 
#define GUI_CFG_KEYBOARD_BUFFER_SIZE   10
 Maximal number of keyboard entries in buffer.
 
#define GUI_CFG_WIDGET_GRAPH_DATA_AUTO_INVALIDATE   1
 Enables (1) or disables (0) automatic invalidation of graph widgets when graph dataset changes. More...
 
#define GUI_CFG_WIDGET_INSIDE_PARENT   0
 Enables (1) or disables (0) widget mode inside parent only. More...
 
#define GUI_CFG_USE_TRANSLATE   1
 Enables (1) or disables (0) automatic translations on widget text. More...
 
#define GUI_CFG_USE_MEM   1
 Enables (1) or disables (0) library custom allocation algorithm. More...
 
#define GUI_CFG_MEM_ALIGNMENT   4
 Memory alignment setup, used for memory allocation in systems where unaligned memory access is not allowed. More...
 
#define GUI_CFG_USE_TRANSPARENCY   0
 Enables (1) or disables (0) transparency option for widgets. More...
 
#define GUI_CFG_USE_POS_SIZE_CACHE   1
 Enables (1) or disables (0) widgets' position and size cache. More...
 
#define GUI_CFG_SYS_PORT   GUI_SYS_PORT_CMSIS_OS
 

Detailed Description

Default configuration setup.

Macro Definition Documentation

◆ GUI_CFG_MEM_ALIGNMENT

#define GUI_CFG_MEM_ALIGNMENT   4

Memory alignment setup, used for memory allocation in systems where unaligned memory access is not allowed.

Note
Value must be power of 2, in most cases number 4 will be ok.
             1: No memory alignment
             2: align memory to 2 bytes
             4: align memory to 4 bytes
             8: align memory to 8 bytes

◆ GUI_CFG_TOUCH_MAX_PRESSES

#define GUI_CFG_TOUCH_MAX_PRESSES   2

Number of touch presses available at a time.

Specifies how many fingers can be detected by touch

◆ GUI_CFG_USE_MEM

#define GUI_CFG_USE_MEM   1

Enables (1) or disables (0) library custom allocation algorithm.

When set to 0, malloc and free functions must be provided by system and sufficient dynamic memory must be resolved by user.

◆ GUI_CFG_USE_POS_SIZE_CACHE

#define GUI_CFG_USE_POS_SIZE_CACHE   1

Enables (1) or disables (0) widgets' position and size cache.

All position/size values are relative to parent which means that when drawing is in process, first step is to calculate absolute coordinates on screen. This may take time as there might be many parent widgets in tree and in case of many widgets on same level, we can enter into huge loop calculations.

To prevent calculation each time and to save time, cache is introduced. In this case, every widget change in position/size values will immediately calculate absolute values and save into additional information fields.

Note
When modifying widget position/size, all children widgets must be modified too as absolute position/size may change on them aswell
Enabling this feature significantly reduces calculation time, but requires more memory for 4 dimension values (usually 8 bytes) per widget

◆ GUI_CFG_USE_TRANSLATE

#define GUI_CFG_USE_TRANSLATE   1

Enables (1) or disables (0) automatic translations on widget text.

Note
When enabled, source and active languages must be set in Translation engine module

◆ GUI_CFG_USE_TRANSPARENCY

#define GUI_CFG_USE_TRANSPARENCY   0

Enables (1) or disables (0) transparency option for widgets.

When enabled, widgets can overlay each other and bottom widget can be visible below top one

◆ GUI_CFG_USE_UNICODE

#define GUI_CFG_USE_UNICODE   0

Enables (1) or disabled (0) unicode strings.

Note
UTF-8 encoding can be used for unicode characters

◆ GUI_CFG_WIDGET_GRAPH_DATA_AUTO_INVALIDATE

#define GUI_CFG_WIDGET_GRAPH_DATA_AUTO_INVALIDATE   1

Enables (1) or disables (0) automatic invalidation of graph widgets when graph dataset changes.

Note
It requires additional memory because each grpah data saves reference to parent graph widget for invalidation

◆ GUI_CFG_WIDGET_INSIDE_PARENT

#define GUI_CFG_WIDGET_INSIDE_PARENT   0

Enables (1) or disables (0) widget mode inside parent only.

When enabled, widget can only be inside parent widget's visible area, otherwise widget with width,height = 100,100 may be at x,y = -10,-10 relative to parent and only part of widget will be visible

Note
This can be used for scrolling mode when necessary