Put repetitive code into separate function. No change in functionality.

This commit is contained in:
Marek Bel 2018-09-18 17:15:13 +02:00
parent 6ee97468ee
commit a7fdfdd258
4 changed files with 15 additions and 7 deletions

View File

@ -683,13 +683,18 @@ ShortTimer longPressTimer;
LongTimer lcd_timeoutToStatus; LongTimer lcd_timeoutToStatus;
//! @brief Was button clicked?
//!
//! Consume click event, following call would return 0.
//!
//! @retval 0 not clicked
//! @retval nonzero clicked
uint8_t lcd_clicked(void) uint8_t lcd_clicked(void)
{ {
bool clicked = LCD_CLICKED; bool clicked = LCD_CLICKED;
if(clicked) if(clicked)
{ {
lcd_button_pressed = 0; lcd_consume_click();
lcd_buttons &= 0xff^EN_C;
} }
return clicked; return clicked;
} }

View File

@ -131,7 +131,6 @@ extern lcd_lcdupdate_func_t lcd_lcdupdate_func;
extern uint8_t lcd_clicked(void); extern uint8_t lcd_clicked(void);
extern void lcd_beeper_quick_feedback(void); extern void lcd_beeper_quick_feedback(void);
//Cause an LCD refresh, and give the user visual or audible feedback that something has happened //Cause an LCD refresh, and give the user visual or audible feedback that something has happened
@ -221,6 +220,12 @@ extern void lcd_set_custom_characters_progress(void);
extern void lcd_set_custom_characters_nextpage(void); extern void lcd_set_custom_characters_nextpage(void);
extern void lcd_set_custom_characters_degree(void); extern void lcd_set_custom_characters_degree(void);
//! @brief Consume click event
inline void lcd_consume_click()
{
lcd_button_pressed = 0;
lcd_buttons &= 0xff^EN_C;
}
#endif //_LCD_H #endif //_LCD_H

View File

@ -236,8 +236,7 @@ uint8_t menu_item_function_P(const char* str, menu_func_t func)
if (menu_clicked && (lcd_encoder == menu_item)) if (menu_clicked && (lcd_encoder == menu_item))
{ {
menu_clicked = false; menu_clicked = false;
lcd_button_pressed = 0; lcd_consume_click();
lcd_buttons &= 0xff^EN_C;
lcd_update_enabled = 0; lcd_update_enabled = 0;
if (func) func(); if (func) func();
lcd_update_enabled = 1; lcd_update_enabled = 1;

View File

@ -463,8 +463,7 @@ static uint8_t menu_item_sdfile(const char*
} }
if (menu_clicked && (lcd_encoder == menu_item)) if (menu_clicked && (lcd_encoder == menu_item))
{ {
lcd_button_pressed = 0; lcd_consume_click();
lcd_buttons &= 0xff^EN_C;
menu_action_sdfile(str_fn); menu_action_sdfile(str_fn);
return menu_item_ret(); return menu_item_ret();
} }