summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2014-10-07 16:51:33 +0200
committerlouis <louis.braun@gmx.de>2014-10-07 16:51:33 +0200
commit82f2bbd5c4cfb6304b6dd52f8852495555f3ce3c (patch)
tree65516782635772ab0f8ac51ad6d3084b450cc92f
parent797e33441e1026c5d71ac824700207dd6464348f (diff)
downloadvdr-plugin-skindesigner-82f2bbd5c4cfb6304b6dd52f8852495555f3ce3c.tar.gz
vdr-plugin-skindesigner-82f2bbd5c4cfb6304b6dd52f8852495555f3ce3c.tar.bz2
added discusage icons to menu header view element
-rw-r--r--HISTORY1
-rw-r--r--skins/metrixhd/xmlfiles/displaymenu.xml6
-rw-r--r--skinskeleton/xmlfiles/displaymenu.xml6
-rw-r--r--views/displaymenurootview.c15
-rw-r--r--views/displaymenuview.c14
5 files changed, 42 insertions, 0 deletions
diff --git a/HISTORY b/HISTORY
index 7d41cab..319bfe9 100644
--- a/HISTORY
+++ b/HISTORY
@@ -14,3 +14,4 @@ Version 0.0.2
- added Theme support, each skin can now have various themes
- fixed a crash if no skindesigner skins are found and plugin setup menu is called from another skin
- added {durationhours} and {durationminutes} tokens in several view elements
+- added discusage icons to menu header view element so that it discusage can be displayed in every menu view
diff --git a/skins/metrixhd/xmlfiles/displaymenu.xml b/skins/metrixhd/xmlfiles/displaymenu.xml
index ed8f7a0..d51cfbf 100644
--- a/skins/metrixhd/xmlfiles/displaymenu.xml
+++ b/skins/metrixhd/xmlfiles/displaymenu.xml
@@ -33,6 +33,12 @@
{vdrversion} running VDR Version
{hasicon} true if a menu icon is available
{icon} path of menu icon
+ {freetime} available disc capacity in hh:mm
+ {freepercent} available disc capacity in percent
+ {usedpercent} used disc capacity in percent
+ {freegb} available disc capacity in gigabytes
+ {discalert} true if disc usage is > 95%
+ {vdrusagestring} localized VDR internal usage string
-->
<header>
<area x="0" y="0" width="41%" height="10%" layer="2">
diff --git a/skinskeleton/xmlfiles/displaymenu.xml b/skinskeleton/xmlfiles/displaymenu.xml
index fdd2d00..1174ff6 100644
--- a/skinskeleton/xmlfiles/displaymenu.xml
+++ b/skinskeleton/xmlfiles/displaymenu.xml
@@ -25,6 +25,12 @@
{vdrversion} running VDR Version
{hasicon} true if a menu icon is available
{icon} path of menu icon
+ {freetime} available disc capacity in hh:mm
+ {freepercent} available disc capacity in percent
+ {usedpercent} used disc capacity in percent
+ {freegb} available disc capacity in gigabytes
+ {discalert} true if disc usage is > 95%
+ {vdrusagestring} localized VDR internal usage string
-->
<header>
</header>
diff --git a/views/displaymenurootview.c b/views/displaymenurootview.c
index 9ee1bcf..2d878ee 100644
--- a/views/displaymenurootview.c
+++ b/views/displaymenurootview.c
@@ -1,5 +1,6 @@
#define __STL_CONFIG_H
#include <vdr/menu.h>
+#include <vdr/videodir.h>
#include "displaymenurootview.h"
#include "../config.h"
#include "../libcore/helpers.h"
@@ -380,6 +381,20 @@ void cDisplayMenuRootView::DrawHeader(void) {
stringTokens.insert(pair<string,string>("icon", icon));
intTokens.insert(pair<string,int>("hasicon", hasIcon));
+ //Disc Usage
+ string vdrUsageString = *cVideoDiskUsage::String();
+ int discUsage = cVideoDiskUsage::UsedPercent();
+ bool discAlert = (discUsage > 95) ? true : false;
+ string freeTime = *cString::sprintf("%02d:%02d", cVideoDiskUsage::FreeMinutes() / 60, cVideoDiskUsage::FreeMinutes() % 60);
+ int freeGB = cVideoDiskUsage::FreeMB() / 1024;
+
+ intTokens.insert(pair<string, int>("usedpercent", discUsage));
+ intTokens.insert(pair<string, int>("freepercent", 100-discUsage));
+ intTokens.insert(pair<string, int>("discalert", discAlert));
+ intTokens.insert(pair<string, int>("freegb", freeGB));
+ stringTokens.insert(pair<string,string>("freetime", freeTime));
+ stringTokens.insert(pair<string,string>("vdrusagestring", vdrUsageString));
+
ClearViewElement(veHeader);
DrawViewElement(veHeader, &stringTokens, &intTokens);
}
diff --git a/views/displaymenuview.c b/views/displaymenuview.c
index 3b8c657..8ed9a3d 100644
--- a/views/displaymenuview.c
+++ b/views/displaymenuview.c
@@ -46,6 +46,20 @@ bool cDisplayMenuView::DrawHeader(void) {
stringTokens.insert(pair<string,string>("icon", icon));
intTokens.insert(pair<string,int>("hasicon", hasIcon));
+ //Disc Usage
+ string vdrUsageString = *cVideoDiskUsage::String();
+ int discUsage = cVideoDiskUsage::UsedPercent();
+ bool discAlert = (discUsage > 95) ? true : false;
+ string freeTime = *cString::sprintf("%02d:%02d", cVideoDiskUsage::FreeMinutes() / 60, cVideoDiskUsage::FreeMinutes() % 60);
+ int freeGB = cVideoDiskUsage::FreeMB() / 1024;
+
+ intTokens.insert(pair<string, int>("usedpercent", discUsage));
+ intTokens.insert(pair<string, int>("freepercent", 100-discUsage));
+ intTokens.insert(pair<string, int>("discalert", discAlert));
+ intTokens.insert(pair<string, int>("freegb", freeGB));
+ stringTokens.insert(pair<string,string>("freetime", freeTime));
+ stringTokens.insert(pair<string,string>("vdrusagestring", vdrUsageString));
+
ClearViewElement(veHeader);
DrawViewElement(veHeader, &stringTokens, &intTokens);
return true;