mirror of
https://github.com/tuxbox-fork-migrations/recycled-ni-neutrino.git
synced 2025-08-28 07:51:11 +02:00
gui/motorcontrol, gui/scan: switch to CSignalBox
Signed-off-by: Thilo Graf <dbt@novatux.de>
Conflicts:
src/gui/scan.cpp
Origin commit data
------------------
Branch: ni/coolstream
Commit: 5b5fed3bd7
Author: martii <m4rtii@gmx.de>
Date: 2013-12-18 (Wed, 18 Dec 2013)
------------------
This commit was generated by Migit
This commit is contained in:
@@ -65,8 +65,6 @@ CMotorControl::CMotorControl(int tnum)
|
||||
CMotorControl::~CMotorControl()
|
||||
{
|
||||
printf("CMotorControl::~CMotorControl\n");
|
||||
delete sigscale;
|
||||
delete snrscale;
|
||||
}
|
||||
|
||||
void CMotorControl::Init(void)
|
||||
@@ -91,10 +89,7 @@ void CMotorControl::Init(void)
|
||||
motorPosition = 1;
|
||||
satellitePosition = 0;
|
||||
stepDelay = 10;
|
||||
sigscale = new CProgressBar(/*true, BAR_WIDTH, BAR_HEIGHT*/);
|
||||
sigscale->setBlink();
|
||||
snrscale = new CProgressBar(/*true, BAR_WIDTH, BAR_HEIGHT*/);
|
||||
snrscale->setBlink();
|
||||
signalbox = NULL;
|
||||
}
|
||||
|
||||
int CMotorControl::exec(CMenuTarget* parent, const std::string &)
|
||||
@@ -313,6 +308,8 @@ int CMotorControl::exec(CMenuTarget* parent, const std::string &)
|
||||
}
|
||||
}
|
||||
|
||||
delete signalbox;
|
||||
signalbox = NULL;
|
||||
hide();
|
||||
frontend->setTsidOnid(0);
|
||||
|
||||
@@ -456,10 +453,6 @@ void CMotorControl::paintHead()
|
||||
|
||||
void CMotorControl::paintMenu()
|
||||
{
|
||||
sigscale->reset();
|
||||
snrscale->reset();
|
||||
lastsnr = lastsig = -1;
|
||||
|
||||
frameBuffer->paintBoxRel(x, y + hheight, width, height - hheight, COL_MENUCONTENT_PLUS_0, RADIUS_LARGE, CORNER_BOTTOM);
|
||||
|
||||
ypos = y + hheight + (mheight >> 1) - 10;
|
||||
@@ -586,53 +579,17 @@ void CMotorControl::stopSatFind(void)
|
||||
|
||||
void CMotorControl::showSNR ()
|
||||
{
|
||||
char percent[10];
|
||||
int barwidth = 100;
|
||||
uint16_t ssig, ssnr;
|
||||
int sig, snr;
|
||||
int posx_sig, posx_snr, posy;
|
||||
|
||||
int sw;
|
||||
|
||||
ssig = frontend->getSignalStrength();
|
||||
ssnr = frontend->getSignalNoiseRatio();
|
||||
|
||||
snr = (ssnr & 0xFFFF) * 100 / 65535;
|
||||
sig = (ssig & 0xFFFF) * 100 / 65535;
|
||||
if(sig < 5)
|
||||
return;
|
||||
g_sig = ssig & 0xFFFF;
|
||||
g_snr = snr;
|
||||
|
||||
posy = y + height - mheight - 5;
|
||||
//TODO: move sig/snr display into its own class, similar or same code also to find in scan.cpp
|
||||
if (lastsig != sig) {
|
||||
lastsig = sig;
|
||||
posx_sig = x + 10;
|
||||
sprintf(percent, "%d%% SIG", sig);
|
||||
sw = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth ("100% SIG");
|
||||
|
||||
sigscale->setProgress(posx_sig-1, posy, BAR_WIDTH, BAR_HEIGHT, sig, 100);
|
||||
sigscale->paint();
|
||||
|
||||
posx_sig += barwidth + 3;
|
||||
frameBuffer->paintBoxRel(posx_sig, posy - 2, sw+4, mheight, COL_MENUCONTENT_PLUS_0);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx_sig+2, posy + mheight, sw, percent, COL_MENUCONTENT_TEXT);
|
||||
if (signalbox == NULL){
|
||||
int xpos1 = x + 10;
|
||||
signalbox = new CSignalBox(xpos1, y + height - mheight - 5, width - 2*(xpos1-x), g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight(), frontend, false);
|
||||
signalbox->setScaleWidth(60); /*%*/
|
||||
signalbox->setColorBody(COL_MENUCONTENT_PLUS_0);
|
||||
signalbox->setTextColor(COL_MENUCONTENT_TEXT);
|
||||
signalbox->doPaintBg(true);
|
||||
}
|
||||
|
||||
if (lastsnr != snr) {
|
||||
lastsnr = snr;
|
||||
posx_snr = x + 10 + 210;
|
||||
sprintf(percent, "%d%% SNR", snr);
|
||||
sw = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth ("100% SNR");
|
||||
|
||||
snrscale->setProgress(posx_snr-1, posy, BAR_WIDTH, BAR_HEIGHT, snr, 100);
|
||||
snrscale->paint();
|
||||
|
||||
posx_snr += barwidth + 3;
|
||||
frameBuffer->paintBoxRel(posx_snr, posy - 2, sw+4, mheight, COL_MENUCONTENT_PLUS_0);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx_snr+2, posy + mheight, sw, percent, COL_MENUCONTENT_TEXT);
|
||||
}
|
||||
signalbox->paint(false);
|
||||
g_snr = signalbox->getSNRValue();
|
||||
}
|
||||
|
||||
void CMotorControl::readNetwork()
|
||||
|
@@ -66,10 +66,9 @@ class CMotorControl : public CMenuTarget
|
||||
uint8_t motorPosition;
|
||||
int32_t satellitePosition;
|
||||
int satfindpid;
|
||||
int lastsnr, lastsig;
|
||||
int g_sig, g_snr, last_snr, moving;
|
||||
std::string network;
|
||||
CProgressBar *snrscale, *sigscale;
|
||||
CSignalBox *signalbox;
|
||||
void paintHead(void);
|
||||
void paintMenu(void);
|
||||
void paintStatus(void);
|
||||
|
@@ -80,20 +80,13 @@ CScanTs::CScanTs(int dtype)
|
||||
radar = 0;
|
||||
total = done = 0;
|
||||
freqready = 0;
|
||||
|
||||
deltype = dtype;
|
||||
sigscale = new CProgressBar();
|
||||
sigscale->setBlink();
|
||||
|
||||
snrscale = new CProgressBar();
|
||||
snrscale->setBlink();
|
||||
signalbox = NULL;
|
||||
memset(&TP, 0, sizeof(TP)); // valgrind
|
||||
}
|
||||
|
||||
CScanTs::~CScanTs()
|
||||
{
|
||||
delete sigscale;
|
||||
delete snrscale;
|
||||
}
|
||||
|
||||
void CScanTs::prev_next_TP( bool up)
|
||||
@@ -201,10 +194,6 @@ int CScanTs::exec(CMenuTarget* /*parent*/, const std::string & actionKey)
|
||||
ypos_radar = y + hheight + (mheight >> 1);
|
||||
xpos1 = x + 10;
|
||||
|
||||
sigscale->reset();
|
||||
snrscale->reset();
|
||||
lastsig = lastsnr = -1;
|
||||
|
||||
if (!frameBuffer->getActive())
|
||||
return menu_return::RETURN_EXIT_ALL;
|
||||
|
||||
@@ -349,6 +338,8 @@ int CScanTs::exec(CMenuTarget* /*parent*/, const std::string & actionKey)
|
||||
} while (!(msg == CRCInput::RC_timeout));
|
||||
}
|
||||
|
||||
delete signalbox;
|
||||
signalbox = NULL;
|
||||
hide();
|
||||
|
||||
CZapit::getInstance()->scanPids(scan_pids);
|
||||
@@ -558,51 +549,14 @@ int CScanTs::greater_xpos(int xpos, const neutrino_locale_t txt)
|
||||
|
||||
void CScanTs::showSNR ()
|
||||
{
|
||||
char percent[10];
|
||||
int barwidth = 150;
|
||||
uint16_t ssig, ssnr;
|
||||
int sig, snr;
|
||||
int posx, posy;
|
||||
int sw;
|
||||
|
||||
if (signalbox == NULL){
|
||||
CFrontend * frontend = CServiceScan::getInstance()->GetFrontend();
|
||||
ssig = frontend->getSignalStrength();
|
||||
ssnr = frontend->getSignalNoiseRatio();
|
||||
snr = (ssnr & 0xFFFF) * 100 / 65535;
|
||||
sig = (ssig & 0xFFFF) * 100 / 65535;
|
||||
|
||||
posy = y + height - mheight - 5;
|
||||
//TODO: move sig/snr display into its own class, similar or same code also to find in motorcontrol
|
||||
if (lastsig != sig) {
|
||||
lastsig = sig;
|
||||
posx = x + 20;
|
||||
sprintf(percent, "%d%%", sig);
|
||||
sw = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth ("100%");
|
||||
sigscale->setProgress(posx - 1, posy+2, BAR_WIDTH, BAR_HEIGHT, sig, 100);
|
||||
sigscale->paint();
|
||||
|
||||
posx = posx + barwidth + 3;
|
||||
frameBuffer->paintBoxRel(posx, posy -1, sw, mheight-8, COL_MENUCONTENT_PLUS_0);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx+2, posy + mheight-(mheight-BAR_HEIGHT)/4, sw, percent, COL_MENUCONTENTDARK_TEXT);
|
||||
|
||||
frameBuffer->paintBoxRel(posx+(4*fw), posy - 2, 4*fw, mheight, COL_MENUCONTENT_PLUS_0);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx+2+(4*fw), posy + mheight-(mheight-BAR_HEIGHT)/4, 4*fw, "SIG", COL_MENUCONTENT_TEXT);
|
||||
|
||||
signalbox = new CSignalBox(xpos1, y + height - mheight - 5, width - 2*(xpos1-x), g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight(), frontend, false);
|
||||
signalbox->setScaleWidth(60); /*%*/
|
||||
signalbox->setColorBody(COL_MENUCONTENT_PLUS_0);
|
||||
signalbox->setTextColor(COL_MENUCONTENT_TEXT);
|
||||
signalbox->doPaintBg(true);
|
||||
}
|
||||
if (lastsnr != snr) {
|
||||
lastsnr = snr;
|
||||
posx = x + 20 + (20 * fw);
|
||||
sprintf(percent, "%d%%", snr);
|
||||
sw = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getRenderWidth ("100%");
|
||||
snrscale->setProgress(posx - 1, posy+2, BAR_WIDTH, BAR_HEIGHT, snr, 100);
|
||||
snrscale->paint();
|
||||
|
||||
posx = posx + barwidth + 3;
|
||||
frameBuffer->paintBoxRel(posx, posy - 1, sw, mheight-8, COL_MENUCONTENT_PLUS_0, 0, true);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx + 2, posy + mheight-(mheight-BAR_HEIGHT)/4, sw, percent, COL_MENUCONTENTDARK_TEXT, 0, true);
|
||||
|
||||
frameBuffer->paintBoxRel(posx+(4*fw), posy - 2, 4*fw, mheight, COL_MENUCONTENT_PLUS_0);
|
||||
g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->RenderString (posx+2+(4*fw), posy + mheight-(mheight-BAR_HEIGHT)/4, 4*fw, "SNR", COL_MENUCONTENT_TEXT);
|
||||
|
||||
}
|
||||
signalbox->paint(false);
|
||||
}
|
||||
|
@@ -65,9 +65,8 @@ class CScanTs : public CMenuTarget
|
||||
bool istheend;
|
||||
uint32_t total;
|
||||
uint32_t done;
|
||||
int lastsnr, lastsig;
|
||||
int tuned;
|
||||
CProgressBar *snrscale, *sigscale;
|
||||
CSignalBox *signalbox;
|
||||
|
||||
void paint(bool fortest = false);
|
||||
void paintLineLocale(int x, int * y, int width, const neutrino_locale_t l);
|
||||
|
Reference in New Issue
Block a user