Contains definitions of menu items that can be fully defined at runtime with no need for prog mem structures. More...
Go to the source code of this file.
Classes | |
| class | RuntimeMenuItem |
| class | BackMenuItem |
| class | SubMenuItem |
| class | ListRuntimeMenuItem |
| class | EditableMultiPartMenuItem |
| class | TextMenuItem |
| class | IpAddressStorage |
| class | IpAddressMenuItem |
| struct | TimeStorage |
| struct | DateStorage |
| class | TimeFormattedMenuItem |
| class | DateFormattedMenuItem |
Enumerations | |
| enum | MultiEditWireType : uint8_t { EDITMODE_PLAIN_TEXT = 0 , EDITMODE_IP_ADDRESS = 1 , EDITMODE_TIME_24H = 2 , EDITMODE_TIME_12H = 3 , EDITMODE_TIME_HUNDREDS_24H = 4 , EDITMODE_GREGORIAN_DATE = 5 , EDITMODE_TIME_DURATION_SECONDS = 6 , EDITMODE_TIME_DURATION_HUNDREDS = 7 , EDITMODE_TIME_24H_HHMM = 8 , EDITMODE_TIME_12H_HHMM = 9 } |
Functions | |
| menuid_t | nextRandomId () |
| int | textItemRenderFn (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| int | ipAddressRenderFn (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| int | backSubItemRenderFn (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| int | timeItemRenderFn (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| int | dateItemRenderFn (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| int | findPositionInEditorSet (char ch) |
| int | defaultRtListCallback (RuntimeMenuItem *item, uint8_t row, RenderFnMode mode, char *buffer, int bufferSize) |
| long | parseIntUntilSeparator (const char *ptr, int &offset, size_t maxDigits=10) |
| void | invokeIfSafe (MenuCallbackFn cb, MenuItem *pItem) |
Contains definitions of menu items that can be fully defined at runtime with no need for prog mem structures.
| enum MultiEditWireType : uint8_t |
Defines the filter that should be applied to values of multi edit menu items on the UI
| Enumerator | |
|---|---|
| EDITMODE_PLAIN_TEXT | plain text - zero terminated text data |
| EDITMODE_IP_ADDRESS | an ipV4 address |
| EDITMODE_TIME_24H | a time in the 24 hour clock HH:MM:SS |
| EDITMODE_TIME_12H | a time in the 12 hour clock HH:MM:SS[AM/PM] |
| EDITMODE_TIME_HUNDREDS_24H | a time in the 24 hour clock with hundreds HH:MM:SS.ss |
| EDITMODE_GREGORIAN_DATE | a date in gregorian format, see DateFormattedMenuItem for global locale formatting |
| EDITMODE_TIME_DURATION_SECONDS | a duration that optionally shows hours when needed, to the second |
| EDITMODE_TIME_DURATION_HUNDREDS | a duration that optionally shows hours when needed, to the hundredth of second |
| EDITMODE_TIME_24H_HHMM | a time in the 24 hour clock HH:MM |
| EDITMODE_TIME_12H_HHMM | a time in the 12 hour clock HH:MM[AM/PM] |
| menuid_t nextRandomId | ( | ) |
For items that dont need to have the same id each time (such as back menu items), we just randomly give them an ID
| int textItemRenderFn | ( | RuntimeMenuItem * | item, |
| uint8_t | row, | ||
| RenderFnMode | mode, | ||
| char * | buffer, | ||
| int | bufferSize | ||
| ) |
This is the standard renderering function used for editable text items, for use with TextMenuItem
| int ipAddressRenderFn | ( | RuntimeMenuItem * | item, |
| uint8_t | row, | ||
| RenderFnMode | mode, | ||
| char * | buffer, | ||
| int | bufferSize | ||
| ) |
This is the standard rendering function used for editable IP addresses, for use with IpAddressMenuItem
| int backSubItemRenderFn | ( | RuntimeMenuItem * | item, |
| uint8_t | row, | ||
| RenderFnMode | mode, | ||
| char * | buffer, | ||
| int | bufferSize | ||
| ) |
The default rendering function for back menu items
| int timeItemRenderFn | ( | RuntimeMenuItem * | item, |
| uint8_t | row, | ||
| RenderFnMode | mode, | ||
| char * | buffer, | ||
| int | bufferSize | ||
| ) |
The default rendering function for time menu items
| int dateItemRenderFn | ( | RuntimeMenuItem * | item, |
| uint8_t | row, | ||
| RenderFnMode | mode, | ||
| char * | buffer, | ||
| int | bufferSize | ||
| ) |
The default rendering function for time menu items
| int findPositionInEditorSet | ( | char | ch | ) |
helper function for text items that finds the position of a char in the allowable set of editable chars
finds the position of the character in the editor set
| ch | the character to find. |
| long parseIntUntilSeparator | ( | const char * | ptr, |
| int & | offset, | ||
| size_t | maxDigits = 10 |
||
| ) |
Utility function to parse a string from a given offset to obtain an integer
| ptr | the pointer to the text |
| offset | a ref to an integer that starts as the offset and is updated |
|
inline |
Invokes a menu callback if it is safe to do so
| cb | callback to make |
| id | menuId |