summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Docs/Reference.txt4
-rw-r--r--HISTORY2
-rw-r--r--display.c26
-rw-r--r--render.c12
-rw-r--r--xml/string.c2
-rw-r--r--xml/string.h4
6 files changed, 48 insertions, 2 deletions
diff --git a/Docs/Reference.txt b/Docs/Reference.txt
index d0bc1ad..48816f6 100644
--- a/Docs/Reference.txt
+++ b/Docs/Reference.txt
@@ -610,6 +610,10 @@ Defines an item for the list.
| FreeDiskSpace | | Remaining free disk space in MB
| | | Attribute: return as formatted time.
-----------------------------------------------------------------------------
+| UsedDiskSpace | | Used disk space in MB
+-----------------------------------------------------------------------------
+| TotalDiskSpace | | Total disk space in MB
+-----------------------------------------------------------------------------
| CanScrollUp | | True, if scrollable text can be scrolled up
-----------------------------------------------------------------------------
| CanScrollDown | | True, if scrollable text can be scrolled down
diff --git a/HISTORY b/HISTORY
index 9e0430b..cbcfba0 100644
--- a/HISTORY
+++ b/HISTORY
@@ -3,6 +3,8 @@ VDR Plugin 'text2skin' Revision History
201x-xx-xx: Version x.x.x
+- New tokens: UsedDiskSpace, TotalDiskSpace, VideoSizeWidth, VideoSizeHeight
+ (closes #465, thanks to NemoN).
- Documentation fixes.
2011-11-06: Version 1.3.2
diff --git a/display.c b/display.c
index 577f2a6..93086e5 100644
--- a/display.c
+++ b/display.c
@@ -243,7 +243,31 @@ cxType cText2SkinDisplayChannel::GetTokenData(const txToken &Token)
return (cxType)false;
}
return false;
-
+
+ case tVideoSizeWidth: {
+#if VDRVERSNUM >= 10707
+ int width, height;
+ double aspect;
+ cDevice *dev = cDevice::PrimaryDevice();
+ dev->GetVideoSize(width, height, aspect);
+ return (cxType)width;
+#else
+ return 0;
+#endif
+ }
+
+ case tVideoSizeHeight: {
+#if VDRVERSNUM >= 10707
+ int width, height;
+ double aspect;
+ cDevice *dev = cDevice::PrimaryDevice();
+ dev->GetVideoSize(width, height, aspect);
+ return (cxType)height;
+#else
+ return 0;
+#endif
+ }
+
case tHasTeletext:
case tChannelHasTeletext:
return mChannel != NULL && mChannel->Tpid() != 0;
diff --git a/render.c b/render.c
index 49e5fdc..20b6976 100644
--- a/render.c
+++ b/render.c
@@ -821,6 +821,18 @@ cxType cText2SkinRender::GetTokenData(const txToken &Token)
: (cxType)FreeMB;
}
+ case tUsedDiskSpace: {
+ int FreeMB, UsedMB;
+ VideoDiskSpace(&FreeMB, &UsedMB);
+ return (cxType)UsedMB;
+ }
+
+ case tTotalDiskSpace: {
+ int FreeMB, UsedMB;
+ VideoDiskSpace(&FreeMB, &UsedMB);
+ return (cxType)FreeMB+UsedMB;
+ }
+
case tDateTime: return TimeType(time(NULL), Token.Attrib.Text);
case tCanScrollUp:
diff --git a/xml/string.c b/xml/string.c
index 230a8f3..dda65bb 100644
--- a/xml/string.c
+++ b/xml/string.c
@@ -4,7 +4,7 @@
#include "render.h"
static const char *Tokens[__COUNT_TOKEN__] = {
- "DateTime", "FreeDiskSpace", "AudioTrack", "AudioChannel",
+ "DateTime", "FreeDiskSpace", "UsedDiskSpace", "TotalDiskSpace", "VideoSizeWidth", "VideoSizeHeight", "AudioTrack", "AudioChannel",
// Channel Display
"ChannelNumber", "ChannelName", "ChannelShortName", "ChannelBouquet", "ChannelPortal",
diff --git a/xml/string.h b/xml/string.h
index 3fd6361..2bc1388 100644
--- a/xml/string.h
+++ b/xml/string.h
@@ -10,6 +10,10 @@
enum exToken {
tDateTime,
tFreeDiskSpace,
+ tUsedDiskSpace,
+ tTotalDiskSpace,
+ tVideoSizeWidth,
+ tVideoSizeHeight,
tAudioTrack,
tAudioChannel,