From 791eba80696fd491e087afb0e15b31f4aa3719d3 Mon Sep 17 00:00:00 2001 From: focus Date: Thu, 18 Mar 2010 17:19:06 +0000 Subject: [PATCH] Show tuner locked or not using green or red radar, experimental git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@503 e54a6e83-5905-42d5-8d5c-058d10e6a962 --- data/icons/Makefile.am | 2 +- data/icons/radar_red.pal | Bin 0 -> 768 bytes src/gui/infoviewer.cpp | 5 +++-- src/gui/movieplayer.cpp | 3 ++- src/gui/scan.cpp | 10 ++++++++-- src/gui/scan.h | 1 + src/zapit/src/frontend.cpp | 12 ++++++++---- 7 files changed, 23 insertions(+), 10 deletions(-) create mode 100644 data/icons/radar_red.pal diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am index b42f0e970..25a254eaf 100644 --- a/data/icons/Makefile.am +++ b/data/icons/Makefile.am @@ -17,7 +17,7 @@ install_DATA = \ mounted.png movie.png \ mp3.png mute.png mute_small.png mute_zap_gray.png mute_zap_green.png \ network.png not_mounted.png notyet.png numericpad.png ok.png power.png \ - radar.pal radar0.raw radar1.raw radar2.raw radar3.raw radar4.raw \ + radar_red.pal radar.pal radar0.raw radar1.raw radar2.raw radar3.raw radar4.raw \ radar5.raw radar6.raw radar7.raw radar8.raw radar9.raw movieplayer.raw \ recording.png settings.png shell.png softupdate.png streaming.png \ subt.png subt_gray.png timer.png video.png \ diff --git a/data/icons/radar_red.pal b/data/icons/radar_red.pal new file mode 100644 index 0000000000000000000000000000000000000000..5b20dcb39768dc51f871aaa1c2392a15f09bb924 GIT binary patch literal 768 zcmezW9|#zL@IM0skN}ZD9s|RC9-ew09(x`hd2a6gf;{`Vxh-wPi}O@=EVTG~-s6QR Q6I3lo{U{g>fuR}#08#)LssI20 literal 0 HcmV?d00001 diff --git a/src/gui/infoviewer.cpp b/src/gui/infoviewer.cpp index fb7589549..610132610 100644 --- a/src/gui/infoviewer.cpp +++ b/src/gui/infoviewer.cpp @@ -914,14 +914,15 @@ void CInfoViewer::showFailure () void CInfoViewer::showMotorMoving (int duration) { char text[256]; +#if 0 char buffer[10]; - sprintf (buffer, "%d", duration); strcpy (text, g_Locale->getText (LOCALE_INFOVIEWER_MOTOR_MOVING)); strcat (text, " ("); strcat (text, buffer); strcat (text, " s)"); - +#endif + sprintf(text, "%s (%ds)", g_Locale->getText (LOCALE_INFOVIEWER_MOTOR_MOVING), duration); ShowHintUTF (LOCALE_MESSAGEBOX_INFO, text, g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth (text, true) + 10, duration); // UTF-8 } diff --git a/src/gui/movieplayer.cpp b/src/gui/movieplayer.cpp index ec7b077ab..d9fb63dce 100644 --- a/src/gui/movieplayer.cpp +++ b/src/gui/movieplayer.cpp @@ -800,7 +800,7 @@ void CMoviePlayerGui::PlayFile(void) case 6: /*DTS*/ apidtitle.append(" (DTS)"); enabled = false; - break; + break; case 7: /*MLP*/ apidtitle.append(" (MLP)"); break; @@ -1231,6 +1231,7 @@ void CMoviePlayerGui::PlayFile(void) } if (exit) { +printf("Exit, isMovieBrowser %d p_movie_info %x\n", isMovieBrowser, p_movie_info); if (isMovieBrowser == true && p_movie_info != NULL) { // if we have a movie information, try to save the stop position ftime(¤t_time); diff --git a/src/gui/scan.cpp b/src/gui/scan.cpp index 0dbd1724a..4d82d264f 100644 --- a/src/gui/scan.cpp +++ b/src/gui/scan.cpp @@ -193,6 +193,7 @@ int CScanTs::exec(CMenuTarget* /*parent*/, const std::string & actionKey) /* send scantype to zapit */ g_Zapit->setScanType((CZapitClient::scanType) CNeutrinoApp::getInstance()->getScanSettings().scanType ); + tuned = frontend->getStatus(); paint(test); /* go */ if(test) { @@ -310,6 +311,7 @@ int CScanTs::handleMsg(neutrino_msg_t msg, neutrino_msg_data_t data) sprintf(buffer, "%u", data); xpos_frequency = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth(buffer, true); paintLine(xpos2, ypos_frequency, xpos_frequency, buffer); + paintRadar(); break; case NeutrinoMessages::EVT_SCAN_REPORT_FREQUENCYP: @@ -377,6 +379,11 @@ void CScanTs::paintRadar(void) { char filename[30]; + if(tuned != frontend->getStatus()) { + tuned = frontend->getStatus(); + frameBuffer->loadPal(tuned ? "radar.pal" : "radar_red.pal", 18, 38); + } + sprintf(filename, "radar%d.raw", radar); radar = (radar + 1) % 10; frameBuffer->paintIcon8(filename, xpos_radar, ypos_radar, 18); @@ -416,7 +423,7 @@ void CScanTs::paint(bool fortest) //frameBuffer->paintBoxRel(x, ypos + hheight, width, height - hheight, COL_MENUCONTENT_PLUS_0); frameBuffer->paintBoxRel(x, ypos + hheight, width, height - hheight, COL_MENUCONTENT_PLUS_0, RADIUS_LARGE, CORNER_BOTTOM); - frameBuffer->loadPal("radar.pal", 18, 38); + frameBuffer->loadPal(tuned ? "radar.pal" : "radar_red.pal", 18, 38); ypos = y + hheight + (mheight >> 1); @@ -479,7 +486,6 @@ void CScanTs::showSNR () ssig = frontend->getSignalStrength(); ssnr = frontend->getSignalNoiseRatio(); - snr = (ssnr & 0xFFFF) * 100 / 65535; sig = (ssig & 0xFFFF) * 100 / 65535; diff --git a/src/gui/scan.h b/src/gui/scan.h index ff832efc1..c24264a12 100644 --- a/src/gui/scan.h +++ b/src/gui/scan.h @@ -65,6 +65,7 @@ class CScanTs : public CMenuTarget uint32_t total; uint32_t done; int lastsnr, lastsig; + int tuned; CProgressBar *snrscale, *sigscale; void paint(bool fortest = false); diff --git a/src/zapit/src/frontend.cpp b/src/zapit/src/frontend.cpp index 138783d22..8d4dad067 100644 --- a/src/zapit/src/frontend.cpp +++ b/src/zapit/src/frontend.cpp @@ -345,7 +345,12 @@ uint32_t CFrontend::getRate() fe_status_t CFrontend::getStatus(void) const { - fe_status_t status = (fe_status_t) 0; +#if 0 // FIXME FE_READ_STATUS should be fixed in drivers ! + struct dvb_frontend_event event; + fop(ioctl, FE_READ_STATUS, &event.status); + printf("CFrontend::getStatus: %d\n", event.status); +#endif + fe_status_t status = (fe_status_t) tuned; return status; } @@ -567,6 +572,8 @@ int CFrontend::setFrontend(const struct dvb_frontend_parameters *feparams, bool int fec; fe_code_rate_t fec_inner; + tuned = false; + /* Decode the needed settings */ switch (info.type) { case FE_QPSK: @@ -717,8 +724,6 @@ int CFrontend::setFrontend(const struct dvb_frontend_parameters *feparams, bool } printf("[fe0] DEMOD: FEC %s system %s modulation %s pilot %s\n", f, s, m, pilot == PILOT_ON ? "on" : "off"); - tuned = false; - { TIMER_INIT(); TIMER_START(); @@ -732,7 +737,6 @@ int CFrontend::setFrontend(const struct dvb_frontend_parameters *feparams, bool TIMER_INIT(); TIMER_START(); - //tuned = true; getEvent(); TIMER_STOP("[fe0] tuning took");