summaryrefslogtreecommitdiff
path: root/coreengine/viewdisplayvolume.c
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2016-01-26 18:32:38 +0100
committerlouis <louis.braun@gmx.de>2016-01-26 18:32:38 +0100
commit809fbda03c5014ba9cd361f5113d1d717cd41ea6 (patch)
tree264bbc5640375f1bcb165fc7f4a3e595adcc26ca /coreengine/viewdisplayvolume.c
parent196dd7eb9965a405bb16b51dc870fbbb31aeef87 (diff)
downloadvdr-plugin-skindesigner-809fbda03c5014ba9cd361f5113d1d717cd41ea6.tar.gz
vdr-plugin-skindesigner-809fbda03c5014ba9cd361f5113d1d717cd41ea6.tar.bz2
Version 0.8.0 beta
Diffstat (limited to 'coreengine/viewdisplayvolume.c')
-rw-r--r--coreengine/viewdisplayvolume.c52
1 files changed, 52 insertions, 0 deletions
diff --git a/coreengine/viewdisplayvolume.c b/coreengine/viewdisplayvolume.c
new file mode 100644
index 0000000..2764a67
--- /dev/null
+++ b/coreengine/viewdisplayvolume.c
@@ -0,0 +1,52 @@
+#include "viewdisplayvolume.h"
+
+/************************************************************************************
+* cViewVolume
+************************************************************************************/
+
+cViewVolume::cViewVolume(void) {
+ viewId = eViewType::DisplayVolume;
+ viewName = strdup("displayvolume");
+ numViewElements = (int)eVeDisplayVolume::count;
+ viewElements = new cViewElement*[numViewElements];
+ for (int i=0; i < numViewElements; i++) {
+ viewElements[i] = NULL;
+ }
+ SetViewElements();
+ ClearVariables();
+ veVolume = NULL;
+}
+
+cViewVolume::~cViewVolume() {
+}
+
+void cViewVolume::SetViewElements(void) {
+ viewElementNames.insert(pair<string, int>("background", (int)eVeDisplayVolume::background));
+ viewElementNames.insert(pair<string, int>("volume", (int)eVeDisplayVolume::volume));
+}
+
+void cViewVolume::SetViewElementObjects(void) {
+ if (!viewElements[(int)eVeDisplayVolume::volume])
+ return;
+ veVolume = dynamic_cast<cVeVolume*>(viewElements[(int)eVeDisplayVolume::volume]);
+}
+
+void cViewVolume::ClearVariables(void) {
+ init = true;
+}
+
+void cViewVolume::SetVolume(int current, int total, bool mute) {
+ if (veVolume)
+ veVolume->Set(current, total, mute);
+}
+
+void cViewVolume::Flush(void) {
+ if (init) {
+ sdOsd.LockFlush();
+ Render((int)eVeDisplayVolume::background);
+ }
+ Render((int)eVeDisplayVolume::volume);
+ cView::Flush();
+}
+
+