mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-29 00:11:14 +02:00
Merge branch 'pu/cc' into next-cc
Conflicts: acinclude.m4 data/locale/deutsch.locale data/locale/english.locale src/driver/volume.cpp src/eitd/SIlanguage.cpp src/gui/bedit/bouqueteditor_channels.cpp src/gui/bedit/bouqueteditor_chanselect.cpp src/gui/bouquetlist.cpp src/gui/channellist.cpp src/gui/eventlist.cpp src/gui/osd_setup.cpp src/gui/scan.cpp src/gui/scan.h src/gui/test_menu.cpp src/gui/timeosd.cpp src/gui/widget/progressbar.cpp src/gui/widget/progressbar.h src/neutrino.cpp src/nhttpd/yconfig.h
This commit is contained in:
@@ -432,8 +432,20 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
|
||||
static fb_pixel_t oldbgcolor = 0, oldfgcolor = 0;
|
||||
static fb_pixel_t colors[256]={0};
|
||||
|
||||
fb_pixel_t bgcolor = frameBuffer->realcolor[color];
|
||||
fb_pixel_t fgcolor = frameBuffer->realcolor[(((((int)color) + 2) | 7) - 2)];
|
||||
// fb_pixel_t bgcolor = frameBuffer->realcolor[color];
|
||||
uint8_t fgindex = color; /* index of font color in the palette */
|
||||
if (color > COL_BLACK0 && color < 254) /* bigger than 254 would result in > 255 */
|
||||
fgindex = ((((int)color) + 2) | 7) - 2; /* no idea what this does exactly... */
|
||||
fb_pixel_t fgcolor = frameBuffer->realcolor[fgindex];
|
||||
#ifndef USE_NEVIS_GXA
|
||||
/* the GXA seems to do it's job asynchonously, so we need to wait until
|
||||
it's ready, otherwise the font will sometimes "be overwritten" with
|
||||
background color or bgcolor will be wrong */
|
||||
frameBuffer->waitForIdle();
|
||||
#endif
|
||||
/* fetch bgcolor from framebuffer, using lower left edge of the font... */
|
||||
fb_pixel_t bgcolor = *(frameBuffer->getFrameBufferPointer() + x +
|
||||
y * frameBuffer->getStride() / sizeof(fb_pixel_t));
|
||||
|
||||
if((oldbgcolor != bgcolor) || (oldfgcolor != fgcolor)) {
|
||||
|
||||
@@ -478,12 +490,6 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
|
||||
spread_by = 1;
|
||||
}
|
||||
|
||||
/* the GXA seems to do it's job asynchonously, so we need to wait until
|
||||
it's ready, otherwise the font will sometimes "be overwritten" with
|
||||
background color */
|
||||
#ifndef USE_NEVIS_GXA
|
||||
frameBuffer->waitForIdle();
|
||||
#endif
|
||||
for (; *text; text++)
|
||||
{
|
||||
FTC_SBit glyph;
|
||||
|
@@ -59,8 +59,13 @@ int fh_gif_load(const char *name,unsigned char **buffer,int* /*xp*/,int* /*yp*/)
|
||||
GifRecordType rt;
|
||||
ColorMapObject *cmap;
|
||||
int cmaps;
|
||||
#if GIFLIB_MAJOR >= 5
|
||||
int error;
|
||||
|
||||
gft=DGifOpenFileName(name, &error);
|
||||
#else
|
||||
gft=DGifOpenFileName(name);
|
||||
#endif
|
||||
if(gft==NULL) gflush;
|
||||
do
|
||||
{
|
||||
@@ -128,8 +133,13 @@ int fh_gif_getsize(const char *name,int *x,int *y, int /*wanted_width*/, int /*w
|
||||
GifByteType *extension;
|
||||
int extcode;
|
||||
GifRecordType rt;
|
||||
#if GIFLIB_MAJOR >= 5
|
||||
int error;
|
||||
|
||||
gft=DGifOpenFileName(name, &error);
|
||||
#else
|
||||
gft=DGifOpenFileName(name);
|
||||
#endif
|
||||
if(gft==NULL) gflush;
|
||||
do
|
||||
{
|
||||
|
@@ -40,7 +40,7 @@
|
||||
#include <zapit/zapit.h>
|
||||
|
||||
#if HAVE_COOL_HARDWARE
|
||||
#include <gui/widget/progressbar.h>
|
||||
#include <gui/components/cc_item_progressbar.h>
|
||||
#endif
|
||||
|
||||
extern CRemoteControl * g_RemoteControl;
|
||||
@@ -106,12 +106,14 @@ void CVolume::Init()
|
||||
vbar_w = spacer + icon_w + spacer + progress_w + spacer;
|
||||
if (paintDigits) {
|
||||
digit_w = g_Font[VolumeFont]->getRenderWidth("100");
|
||||
progress_h = std::max(icon_h, digit_h) - 2*pB;
|
||||
progress_h = std::max(icon_h, digit_h);
|
||||
vbar_w += digit_w;
|
||||
}
|
||||
if (volscale)
|
||||
delete volscale;
|
||||
volscale = new CProgressBar(true, progress_w, progress_h, 50, 100, 80, true);
|
||||
volscale = new CProgressBar(progress_x, progress_y, progress_w, progress_h, colFrame, colBar, colShadow, COL_MENUCONTENT_PLUS_3, COL_MENUCONTENT_PLUS_1, true);
|
||||
volscale->setInvert();
|
||||
volscale->setFrameThickness(2);
|
||||
|
||||
// mute icon
|
||||
mute_icon_dx = 0;
|
||||
@@ -250,8 +252,6 @@ void CVolume::setVolume(const neutrino_msg_t key, const bool bDoPaint, bool nowa
|
||||
frameBuffer->paintBoxRel(x+ShadowOffset , y+ShadowOffset , (paintDigits) ? vbar_w - vbar_h : vbar_w + 1, vbar_h, colShadow, ROUNDED, (paintDigits) ? CORNER_TOP_LEFT | CORNER_BOTTOM_LEFT : CORNER_ALL);
|
||||
// volumebar
|
||||
frameBuffer->paintBoxRel(x , y , (paintDigits) ? vbar_w - vbar_h : vbar_w + 1, vbar_h, colBar, ROUNDED, (paintDigits) ? CORNER_TOP_LEFT | CORNER_BOTTOM_LEFT : CORNER_ALL);
|
||||
// frame for progress
|
||||
frameBuffer->paintBoxRel(progress_x-pB, progress_y-pB, progress_w+pB*2, progress_h+pB*2, colFrame);
|
||||
// volume icon
|
||||
frameBuffer->paintIcon(NEUTRINO_ICON_VOLUME, icon_x, icon_y, 0, colBar);
|
||||
|
||||
@@ -343,8 +343,6 @@ void CVolume::setVolume(const neutrino_msg_t key, const bool bDoPaint, bool nowa
|
||||
|
||||
void CVolume::refreshVolumebar(int current_volume)
|
||||
{
|
||||
// progressbar
|
||||
volscale->paintProgressBar2(progress_x, progress_y, current_volume);
|
||||
if (paintDigits) {
|
||||
// shadow for erase digits
|
||||
if (paintShadow)
|
||||
@@ -356,6 +354,9 @@ void CVolume::refreshVolumebar(int current_volume)
|
||||
snprintf(buff, 4, "%3d", current_volume);
|
||||
g_Font[VolumeFont]->RenderString(digit_x, digit_y, digit_w, buff, colContent);
|
||||
}
|
||||
// progressbar
|
||||
volscale->setValues(current_volume, 100);
|
||||
volscale->paint();
|
||||
}
|
||||
|
||||
bool CVolume::changeNotify(const neutrino_locale_t OptionName, void * data)
|
||||
|
Reference in New Issue
Block a user