Index: apps/plugins/vu_meter.c =================================================================== --- apps/plugins/vu_meter.c (révision 18342) +++ apps/plugins/vu_meter.c (copie de travail) @@ -298,6 +298,9 @@ int last_num_right_leds; int i; +#ifdef HAVE_LCD_COLOR +int screen_foreground; +#endif #define MAX_PEAK 0x8000 @@ -510,6 +513,9 @@ } void draw_digital_minimeters(void) { +#ifdef HAVE_LCD_COLOR + rb->lcd_set_foreground(LCD_RGBPACK(255, 255 - 23 * num_left_leds, 0)); +#endif rb->lcd_mono_bitmap(sound_speaker, 34, half_height-8, 4, 8); rb->lcd_set_drawmode(DRMODE_FG); if(1lcd_mono_bitmap(sound_max_level, 46, half_height-8, 3, 8); +#ifdef HAVE_LCD_COLOR + rb->lcd_set_foreground(LCD_RGBPACK(255, 255 - 23 * num_right_leds, 0)); +#endif rb->lcd_set_drawmode(DRMODE_SOLID); rb->lcd_mono_bitmap(sound_speaker, 34, half_height+8, 4, 8); rb->lcd_set_drawmode(DRMODE_FG); @@ -533,6 +542,10 @@ if(8<(num_right_leds)) rb->lcd_mono_bitmap(sound_max_level, 46, half_height+8, 3, 8); rb->lcd_set_drawmode(DRMODE_SOLID); + +#ifdef HAVE_LCD_COLOR + rb->lcd_set_foreground(screen_foreground); +#endif } void analog_meter(void) { @@ -621,15 +634,26 @@ rb->lcd_set_drawmode(DRMODE_FG); /* LEDS */ - for(i=0; ilcd_set_foreground(LCD_RGBPACK(255, 255 - 23 * i, 0)); +#endif rb->lcd_fillrect((digital_lead + (i*digital_block_width)), 14, digital_block_width - digital_block_gap, digital_block_height); + } - for(i=0; ilcd_set_foreground(LCD_RGBPACK(255, 255 - 23 * i, 0)); +#endif rb->lcd_fillrect((digital_lead + (i*digital_block_width)), (half_height + 20), digital_block_width - digital_block_gap, digital_block_height); - + } + +#ifdef HAVE_LCD_COLOR + rb->lcd_set_foreground(screen_foreground); +#endif rb->lcd_set_drawmode(DRMODE_SOLID); if(vumeter_settings.digital_minimeters) @@ -661,6 +685,9 @@ load_settings(); rb->lcd_setfont(FONT_SYSFIXED); +#ifdef HAVE_LCD_COLOR + screen_foreground = rb->lcd_get_foreground(); +#endif while (1) {