mirror of
https://projects.vdr-developer.org/git/vdr-plugin-skindesigner.git
synced 2023-10-19 17:58:31 +02:00
46 lines
1.4 KiB
C
46 lines
1.4 KiB
C
#define __STL_CONFIG_H
|
|
#include <vdr/menu.h>
|
|
#include "displayvolumeview.h"
|
|
|
|
cDisplayVolumeView::cDisplayVolumeView(cTemplateView *tmplView) : cView(tmplView) {
|
|
volumeLast = -1;
|
|
muteLast = false;
|
|
DeleteOsdOnExit();
|
|
}
|
|
|
|
cDisplayVolumeView::~cDisplayVolumeView() {
|
|
}
|
|
|
|
bool cDisplayVolumeView::createOsd(void) {
|
|
cRect osdSize = tmplView->GetOsdSize();
|
|
bool ok = CreateOsd(cOsd::OsdLeft() + osdSize.X(),
|
|
cOsd::OsdTop() + osdSize.Y(),
|
|
osdSize.Width(),
|
|
osdSize.Height());
|
|
return ok;
|
|
}
|
|
|
|
void cDisplayVolumeView::DrawBackground(void) {
|
|
map < string, string > stringTokens;
|
|
map < string, int > intTokens;
|
|
DrawViewElement(veBackground, &stringTokens, &intTokens);
|
|
}
|
|
|
|
void cDisplayVolumeView::DrawVolume(int current, int total, bool mute) {
|
|
if ((volumeLast == current) && (muteLast == mute))
|
|
return;
|
|
volumeLast = current;
|
|
muteLast = mute;
|
|
|
|
map < string, string > stringTokens;
|
|
map < string, int > intTokens;
|
|
|
|
intTokens.insert(pair<string,int>("volume", current));
|
|
intTokens.insert(pair<string,int>("maxvolume", total));
|
|
intTokens.insert(pair<string,int>("volpercent", (double)current *100 / (double)total));
|
|
intTokens.insert(pair<string,int>("mute", mute));
|
|
|
|
ClearViewElement(veVolume);
|
|
DrawViewElement(veVolume, &stringTokens, &intTokens);
|
|
}
|