MD_Menu Library  2.1
Library for 1 or 2 line display menu management
MD_Menu_lib.h File Reference

Contains internal library definitions. More...

This graph shows which files directly or indirectly include this file:

Macros

#define MD_DEBUG   0
 set to 1 to enable library debugging mode
 
#define MD_PRINTS(s)
 Library debugging output macro.
 
#define MD_PRINT(s, v)
 Library debugging output macro.
 
#define MD_PRINTX(s, v)
 Library debugging output macro.
 
#define INP_PRE_SIZE(mi)   (strlen(mi->label) + strlen(FLD_PROMPT) + strlen(FLD_DELIM_L))
 Size of text pre variable display.
 
#define INP_POST_SIZE(mi)   (strlen(FLD_DELIM_R))
 Size of text after variable display.
 
#define SET_FLAG(f)   { _options |= (1<<f); MD_PRINTX("\nSet Flag ",_options); }
 Set a flag.
 
#define CLEAR_FLAG(f)   { _options &= ~(1<<f); MD_PRINTX("\nClr Flag ", _options); }
 Reset a flag.
 
#define TEST_FLAG(f)   ((_options>>f) & 1)
 Test a flag.
 
#define F_INMENU   0
 Flag currently running a menu.
 
#define F_INEDIT   1
 Flag currently editing a value.
 
#define F_MENUWRAP   2
 Flag to wrap around ends of menu and list selections.
 
#define F_AUTOSTART   3
 Flag auto start the menu system opn SEL.
 

Variables

const char FLD_PROMPT [] = ":"
 Prompt separator between input field label and left delimiter.
 
const char FLD_DELIM_L [] = "["
 Left delimiter for variable field input.
 
const char FLD_DELIM_R [] = "]"
 Right delimiter for variable field input.
 
const char MNU_DELIM_L [] = "<"
 Left delimiter for menu option label.
 
const char MNU_DELIM_R [] = ">"
 Right delimiter for menu option label.
 
const char INP_BOOL_T [] = "Y"
 Boolean input True display value. Length should be same as INP_BOOL_F.
 
const char INP_BOOL_F [] = "N"
 Boolean input False display value. Length should be same as INP_BOOL_T.
 
const char INP_NUMERIC_OFLOW = '#'
 Indicator for numeric overflow.
 
const char LIST_SEPARATOR = '|'
 Separator character for list items.
 
const char DECIMAL_POINT = '.'
 Decimal point character for floating point input.
 
const char FLOAT_DECIMALS = 2
 Number of float decimals implied in uint32_t value.
 
const char ENGU_DECIMALS = 3
 Number of engineering units decimals implied in uint32_t value.
 
const uint8_t ENGU_RANGE = 18
 Symmetrical range of power prefixes from 10^-ENGU_RANGE to 10^+ENGU_RANGE.
 

Detailed Description

Contains internal library definitions.