|  |  |  | @ -199,19 +199,25 @@ static void lcd_status_screen(); | 
			
		
	
		
			
				
					|  |  |  |  |    *     menu_action_setting_edit_int3(PSTR(MSG_SPEED), &feedrate_multiplier, 10, 999) | 
			
		
	
		
			
				
					|  |  |  |  |    * | 
			
		
	
		
			
				
					|  |  |  |  |    */ | 
			
		
	
		
			
				
					|  |  |  |  |   #define MENU_ITEM(type, label, args...) do { \ | 
			
		
	
		
			
				
					|  |  |  |  |   #define _MENU_ITEM_PART_1(type, label, args...) \ | 
			
		
	
		
			
				
					|  |  |  |  |     if (_menuItemNr == _lineNr) { \ | 
			
		
	
		
			
				
					|  |  |  |  |       itemSelected = encoderLine == _menuItemNr; \ | 
			
		
	
		
			
				
					|  |  |  |  |       if (lcdDrawUpdate) \ | 
			
		
	
		
			
				
					|  |  |  |  |         lcd_implementation_drawmenu_ ## type(itemSelected, _drawLineNr, PSTR(label), ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |       if (wasClicked && itemSelected) { \ | 
			
		
	
		
			
				
					|  |  |  |  |         lcd_quick_feedback(); \ | 
			
		
	
		
			
				
					|  |  |  |  |         lcd_quick_feedback() | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   #define _MENU_ITEM_PART_2(type, args...) \ | 
			
		
	
		
			
				
					|  |  |  |  |         menu_action_ ## type(args); \ | 
			
		
	
		
			
				
					|  |  |  |  |         return; \ | 
			
		
	
		
			
				
					|  |  |  |  |       } \ | 
			
		
	
		
			
				
					|  |  |  |  |     } \ | 
			
		
	
		
			
				
					|  |  |  |  |     _menuItemNr++; \ | 
			
		
	
		
			
				
					|  |  |  |  |   } while(0) | 
			
		
	
		
			
				
					|  |  |  |  |     _menuItemNr++ | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   #define MENU_ITEM(type, label, args...) do { \ | 
			
		
	
		
			
				
					|  |  |  |  |       _MENU_ITEM_PART_1(type, label, ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |       _MENU_ITEM_PART_2(type, ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |     } while(0) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   #if ENABLED(ENCODER_RATE_MULTIPLIER) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
	
		
			
				
					|  |  |  | @ -221,20 +227,12 @@ static void lcd_status_screen(); | 
			
		
	
		
			
				
					|  |  |  |  |      * MENU_MULTIPLIER_ITEM generates drawing and handling code for a multiplier menu item | 
			
		
	
		
			
				
					|  |  |  |  |      */ | 
			
		
	
		
			
				
					|  |  |  |  |     #define MENU_MULTIPLIER_ITEM(type, label, args...) do { \ | 
			
		
	
		
			
				
					|  |  |  |  |       if (_menuItemNr == _lineNr) { \ | 
			
		
	
		
			
				
					|  |  |  |  |         itemSelected = encoderLine == _menuItemNr; \ | 
			
		
	
		
			
				
					|  |  |  |  |         if (lcdDrawUpdate) \ | 
			
		
	
		
			
				
					|  |  |  |  |           lcd_implementation_drawmenu_ ## type(itemSelected, _drawLineNr, PSTR(label), ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |         if (wasClicked && itemSelected) { \ | 
			
		
	
		
			
				
					|  |  |  |  |           lcd_quick_feedback(); \ | 
			
		
	
		
			
				
					|  |  |  |  |           encoderRateMultiplierEnabled = true; \ | 
			
		
	
		
			
				
					|  |  |  |  |           lastEncoderMovementMillis = 0; \ | 
			
		
	
		
			
				
					|  |  |  |  |           menu_action_ ## type(args); \ | 
			
		
	
		
			
				
					|  |  |  |  |           return; \ | 
			
		
	
		
			
				
					|  |  |  |  |         } \ | 
			
		
	
		
			
				
					|  |  |  |  |       } \ | 
			
		
	
		
			
				
					|  |  |  |  |       _menuItemNr++; \ | 
			
		
	
		
			
				
					|  |  |  |  |     } while(0) | 
			
		
	
		
			
				
					|  |  |  |  |         _MENU_ITEM_PART_1(type, label, ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |         encoderRateMultiplierEnabled = true; \ | 
			
		
	
		
			
				
					|  |  |  |  |         lastEncoderMovementMillis = 0; \ | 
			
		
	
		
			
				
					|  |  |  |  |         _MENU_ITEM_PART_2(type, ## args); \ | 
			
		
	
		
			
				
					|  |  |  |  |       } while(0) | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   #endif //ENCODER_RATE_MULTIPLIER
 | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   #define MENU_ITEM_DUMMY() do { _menuItemNr++; } while(0) | 
			
		
	
	
		
			
				
					|  |  |  | 
 |