From e0ef7a0680a6f2192996e8a22699e2c4054b7042 Mon Sep 17 00:00:00 2001 From: focus Date: Tue, 6 Dec 2011 13:07:53 +0000 Subject: [PATCH] Use new class to fade git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-beta@1946 e54a6e83-5905-42d5-8d5c-058d10e6a962 --- src/gui/bouquetlist.cpp | 51 ++++++++--------------------------------- 1 file changed, 10 insertions(+), 41 deletions(-) diff --git a/src/gui/bouquetlist.cpp b/src/gui/bouquetlist.cpp index 27b2c6b7e..1feb279fe 100644 --- a/src/gui/bouquetlist.cpp +++ b/src/gui/bouquetlist.cpp @@ -49,6 +49,7 @@ #include #include #include +#include #include #include @@ -318,16 +319,8 @@ int CBouquetList::show(bool bShowChannelList) while ((i= i/10)!=0) lmaxpos++; - bool fadeIn = g_settings.widget_fade; - bool fadeOut = false; - uint32_t fadeTimer = 0; - int fadeValue = g_settings.menu_Content_alpha; - if ( fadeIn ) { - fadeValue = 100; - frameBuffer->setBlendMode(2); // Global alpha multiplied with pixel alpha - frameBuffer->setBlendLevel(fadeValue, fadeValue); - fadeTimer = g_RCInput->addTimer( FADE_TIME, false ); - } + COSDFader fader(g_settings.menu_Content_alpha); + fader.StartFadeIn(); paintHead(); paint(); @@ -348,39 +341,16 @@ int CBouquetList::show(bool bShowChannelList) if ( msg <= CRCInput::RC_MaxRC ) timeoutEnd = CRCInput::calcTimeoutEnd(g_settings.timing[SNeutrinoSettings::TIMING_CHANLIST]); - if((msg == NeutrinoMessages::EVT_TIMER) && (data == fadeTimer)) { - if (fadeOut) { // disappear - fadeValue += FADE_STEP; - if (fadeValue >= 100) { - fadeValue = g_settings.menu_Content_alpha; - g_RCInput->killTimer (fadeTimer); - loop = false; - } else - frameBuffer->setBlendLevel(fadeValue, fadeValue); - } else { // appears - fadeValue -= FADE_STEP; - if (fadeValue <= g_settings.menu_Content_alpha) { - fadeValue = g_settings.menu_Content_alpha; - g_RCInput->killTimer (fadeTimer); - fadeIn = false; - frameBuffer->setBlendMode(1); // Set back to per pixel alpha - } else - frameBuffer->setBlendLevel(fadeValue, fadeValue); - } + if((msg == NeutrinoMessages::EVT_TIMER) && (data == fader.GetTimer())) { + if(fader.Fade()) + loop = false; } else if ((msg == CRCInput::RC_timeout ) || (msg == (neutrino_msg_t)g_settings.key_channelList_cancel)) { selected = oldselected; - if ( fadeIn ) { - g_RCInput->killTimer(fadeTimer); - fadeIn = false; - } - if ((!fadeOut) && g_settings.widget_fade) { - fadeOut = true; - fadeTimer = g_RCInput->addTimer( FADE_TIME, false ); + if(fader.StartFadeOut()) { timeoutEnd = CRCInput::calcTimeoutEnd( 1 ); - frameBuffer->setBlendMode(2); // Global alpha multiplied with pixel alpha msg = 0; } else loop=false; @@ -544,10 +514,9 @@ int CBouquetList::show(bool bShowChannelList) }; } hide(); - if ( fadeIn || fadeOut ) { - g_RCInput->killTimer(fadeTimer); - frameBuffer->setBlendMode(1); // Set back to per pixel alpha - } + + fader.Stop(); + CVFD::getInstance()->setMode(CVFD::MODE_TVRADIO); if(zapOnExit) { return (selected);