fix smaller bugs in Menu code and implement first test of main menu with one functional sunbmenu for the safety parameters

This commit is contained in:
2020-06-12 01:35:37 +02:00
parent d6e489bb61
commit e627cb67a5
6 changed files with 187 additions and 50 deletions

View File

@@ -21,4 +21,12 @@
#ifndef __LCD_MENU_H__
#define __LCD_MENU_H__
/**
* @brief Handle the reflow controller's LCD Menu
* @return 0 if a delay is requested, 1 if no delay is requested
*/
int reflow_menu_handle(void);
void reflow_menu_init(void);
#endif /* __LCD_MENU_H__ */

View File

@@ -48,7 +48,7 @@ struct lcd_menu {
struct menu_list {
void (*update_display)(uint8_t row, const char *data);
const char **entry_names;
const char * const * entry_names;
uint32_t entry_count;
uint32_t currently_selected;
const menu_func_t *submenu_list;
@@ -58,9 +58,13 @@ void menu_handle(struct lcd_menu *menu, int16_t rotary_encoder_delta, enum butto
void menu_init(struct lcd_menu *menu, menu_func_t root_node, void (*display_update)(uint8_t row, const char *data));
void menu_ack_rotary_delta(struct lcd_menu *menu);
void menu_display_clear(struct lcd_menu *menu);
void menu_entry_dropback(struct lcd_menu *menu, menu_func_t parent_func);
void menu_entry_enter(struct lcd_menu *menu, menu_func_t parent_func, bool handle_immediately);
void menu_entry_enter(struct lcd_menu *menu, menu_func_t entry, bool handle_immediately);
void menu_override_lcd_output(struct lcd_menu *menu, uint8_t row_num, const char *text);