diff -Nru text2skin/common.c text2skin-vdr-1.7.4/common.c --- text2skin/common.c 2009-03-25 21:03:45.000000000 +0100 +++ text2skin-vdr-1.7.4/common.c 2009-03-25 20:52:59.000000000 +0100 @@ -151,8 +151,14 @@ char *res = result; enum { normal, format } state = normal; int n = 0; + #if VDRVERSNUM >= 10703 + int FS = DEFAULTFRAMESPERSECOND; + int f = (Index % FS) + 1; + int s = (Index / FS); + #else int f = (Index % FRAMESPERSEC) + 1; int s = (Index / FRAMESPERSEC); + #endif int m = s / 60 % 60; int h = s / 3600; s %= 60; diff -Nru text2skin/display.c text2skin-vdr-1.7.4/display.c --- text2skin/display.c 2009-03-25 21:03:45.000000000 +0100 +++ text2skin-vdr-1.7.4/display.c 2009-03-25 21:00:01.000000000 +0100 @@ -172,20 +172,34 @@ case tPresentProgress: return mPresent != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType((time(NULL) - mPresent->StartTime()) * DEFAULTFRAMESPERSECOND, + Token.Attrib.Text) + #else ? (cxType)DurationType((time(NULL) - mPresent->StartTime()) * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tPresentDuration: return mPresent != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType(mPresent->Duration() * DEFAULTFRAMESPERSECOND, Token.Attrib.Text) + #else ? (cxType)DurationType(mPresent->Duration() * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tPresentRemaining: if (mPresent != NULL && time(NULL) - mPresent->StartTime() <= mPresent->Duration()) { + #if VDRVERSNUM >= 10703 + return (cxType)DurationType((mPresent->Duration() - (time(NULL) - mPresent->StartTime())) + * DEFAULTFRAMESPERSECOND, Token.Attrib.Text); + #else return (cxType)DurationType((mPresent->Duration() - (time(NULL) - mPresent->StartTime())) * FRAMESPERSEC, Token.Attrib.Text); + #endif } return false; @@ -221,7 +235,11 @@ case tFollowingDuration: return mFollowing != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType(mFollowing->Duration() * DEFAULTFRAMESPERSECOND, Token.Attrib.Text) + #else ? (cxType)DurationType(mFollowing->Duration() * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tFollowingTitle: @@ -1020,19 +1038,33 @@ case tPresentProgress: return mEvent != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType((time(NULL) - mEvent->StartTime()) * DEFAULTFRAMESPERSECOND, + Token.Attrib.Text) + #else ? (cxType)DurationType((time(NULL) - mEvent->StartTime()) * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tPresentDuration: return mEvent != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType(mEvent->Duration() * DEFAULTFRAMESPERSECOND, Token.Attrib.Text) + #else ? (cxType)DurationType(mEvent->Duration() * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tPresentRemaining: return mEvent != NULL + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType((mEvent->Duration() - (time(NULL) - mEvent->StartTime())) + * DEFAULTFRAMESPERSECOND, Token.Attrib.Text) + #else ? (cxType)DurationType((mEvent->Duration() - (time(NULL) - mEvent->StartTime())) * FRAMESPERSEC, Token.Attrib.Text) + #endif : (cxType)false; case tPresentTitle: diff -Nru text2skin/Makefile text2skin-vdr-1.7.4/Makefile --- text2skin/Makefile 2009-03-25 21:03:45.000000000 +0100 +++ text2skin-vdr-1.7.4/Makefile 2009-03-25 20:20:10.000000000 +0100 @@ -40,7 +40,7 @@ ### The version number of VDR (taken from VDR's "config.h"): -VDRVERSION = $(shell grep 'define VDRVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g') +APIVERSION = $(shell grep 'define APIVERSION ' $(VDRDIR)/config.h | awk '{ print $$3 }' | sed -e 's/"//g') ### The name of the distribution archive: @@ -119,9 +119,9 @@ libvdr-$(PLUGIN).so: $(OBJS) $(CXX) $(CXXFLAGS) -shared $(OBJS) $(LIBS) -o $@ - @cp $@ $(LIBDIR)/$@.$(VDRVERSION) + @cp $@ $(LIBDIR)/$@.$(APIVERSION) ifndef DEBUG - strip $(LIBDIR)/$@.$(VDRVERSION) + strip $(LIBDIR)/$@.$(APIVERSION) endif dist: clean diff -Nru text2skin/render.c text2skin-vdr-1.7.4/render.c --- text2skin/render.c 2009-03-25 21:03:45.000000000 +0100 +++ text2skin-vdr-1.7.4/render.c 2009-03-25 21:01:01.000000000 +0100 @@ -648,8 +648,13 @@ VideoDiskSpace(&FreeMB); Dprintf("FreeMB: %d, attrib type is %d\n", FreeMB,Token.Attrib.Type); return Token.Attrib.Type == aString && Token.Attrib.Text.length() > 0 + #if VDRVERSNUM >= 10703 + ? (cxType)DurationType((int)(FreeMB * 60 * DEFAULTFRAMESPERSECOND / MB_PER_MINUTE), + Token.Attrib.Text) + #else ? (cxType)DurationType((int)(FreeMB * 60 * FRAMESPERSEC / MB_PER_MINUTE), Token.Attrib.Text) + #endif : (cxType)FreeMB; }