From 82f2bbd5c4cfb6304b6dd52f8852495555f3ce3c Mon Sep 17 00:00:00 2001 From: louis Date: Tue, 7 Oct 2014 16:51:33 +0200 Subject: [PATCH] added discusage icons to menu header view element --- HISTORY | 1 + skins/metrixhd/xmlfiles/displaymenu.xml | 6 ++++++ skinskeleton/xmlfiles/displaymenu.xml | 6 ++++++ views/displaymenurootview.c | 15 +++++++++++++++ views/displaymenuview.c | 14 ++++++++++++++ 5 files changed, 42 insertions(+) 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 -->
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 -->
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 +#include #include "displaymenurootview.h" #include "../config.h" #include "../libcore/helpers.h" @@ -380,6 +381,20 @@ void cDisplayMenuRootView::DrawHeader(void) { stringTokens.insert(pair("icon", icon)); intTokens.insert(pair("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("usedpercent", discUsage)); + intTokens.insert(pair("freepercent", 100-discUsage)); + intTokens.insert(pair("discalert", discAlert)); + intTokens.insert(pair("freegb", freeGB)); + stringTokens.insert(pair("freetime", freeTime)); + stringTokens.insert(pair("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("icon", icon)); intTokens.insert(pair("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("usedpercent", discUsage)); + intTokens.insert(pair("freepercent", 100-discUsage)); + intTokens.insert(pair("discalert", discAlert)); + intTokens.insert(pair("freegb", freeGB)); + stringTokens.insert(pair("freetime", freeTime)); + stringTokens.insert(pair("vdrusagestring", vdrUsageString)); + ClearViewElement(veHeader); DrawViewElement(veHeader, &stringTokens, &intTokens); return true;