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
This commit is contained in:
focus
2010-03-18 17:19:06 +00:00
parent 6fe4fbf407
commit 791eba8069
7 changed files with 23 additions and 10 deletions

View File

@@ -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 \

BIN
data/icons/radar_red.pal Normal file

Binary file not shown.

View File

@@ -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
}

View File

@@ -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(&current_time);

View File

@@ -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;

View File

@@ -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);

View File

@@ -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");