mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-31 07:03:55 +00:00 
			
		
		
		
	graphical_display_menu requires a Display, not DisplayBuffer (#6614)
				
					
				
			This commit is contained in:
		| @@ -38,7 +38,7 @@ CONFIG_SCHEMA = DISPLAY_MENU_BASE_SCHEMA.extend( | |||||||
|     cv.Schema( |     cv.Schema( | ||||||
|         { |         { | ||||||
|             cv.GenerateID(): cv.declare_id(GraphicalDisplayMenu), |             cv.GenerateID(): cv.declare_id(GraphicalDisplayMenu), | ||||||
|             cv.Optional(CONF_DISPLAY): cv.use_id(display.DisplayBuffer), |             cv.Optional(CONF_DISPLAY): cv.use_id(display.Display), | ||||||
|             cv.Required(CONF_FONT): cv.use_id(font.Font), |             cv.Required(CONF_FONT): cv.use_id(font.Font), | ||||||
|             cv.Optional(CONF_MENU_ITEM_VALUE): cv.templatable(cv.string), |             cv.Optional(CONF_MENU_ITEM_VALUE): cv.templatable(cv.string), | ||||||
|             cv.Optional(CONF_FOREGROUND_COLOR): cv.use_id(color.ColorStruct), |             cv.Optional(CONF_FOREGROUND_COLOR): cv.use_id(color.ColorStruct), | ||||||
|   | |||||||
| @@ -229,7 +229,8 @@ inline void GraphicalDisplayMenu::draw_item(display::Display *display, const dis | |||||||
|     label.append(this->menu_item_value_.value(&args)); |     label.append(this->menu_item_value_.value(&args)); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   display->print(bounds->x, bounds->y, this->font_, foreground_color, display::TextAlign::TOP_LEFT, label.c_str()); |   display->print(bounds->x, bounds->y, this->font_, foreground_color, display::TextAlign::TOP_LEFT, label.c_str(), | ||||||
|  |                  ~foreground_color); | ||||||
| } | } | ||||||
|  |  | ||||||
| void GraphicalDisplayMenu::draw_item(const display_menu_base::MenuItem *item, const uint8_t row, const bool selected) { | void GraphicalDisplayMenu::draw_item(const display_menu_base::MenuItem *item, const uint8_t row, const bool selected) { | ||||||
|   | |||||||
| @@ -62,6 +62,7 @@ struct Color { | |||||||
|     return Color(esp_scale8(this->red, scale), esp_scale8(this->green, scale), esp_scale8(this->blue, scale), |     return Color(esp_scale8(this->red, scale), esp_scale8(this->green, scale), esp_scale8(this->blue, scale), | ||||||
|                  esp_scale8(this->white, scale)); |                  esp_scale8(this->white, scale)); | ||||||
|   } |   } | ||||||
|  |   inline Color operator~() const ALWAYS_INLINE { return Color(255 - this->red, 255 - this->green, 255 - this->blue); } | ||||||
|   inline Color &operator*=(uint8_t scale) ALWAYS_INLINE { |   inline Color &operator*=(uint8_t scale) ALWAYS_INLINE { | ||||||
|     this->red = esp_scale8(this->red, scale); |     this->red = esp_scale8(this->red, scale); | ||||||
|     this->green = esp_scale8(this->green, scale); |     this->green = esp_scale8(this->green, scale); | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user