From f39edfa165b00d85833bb2ca9c3952bf6eae8d6d Mon Sep 17 00:00:00 2001 From: =?utf8?q?Wilfried=20G=C3=B6esgens?= Date: Sun, 28 Feb 2010 19:27:30 +0000 Subject: [PATCH] * add handler to get the value or string representation of a define --- webcit/subst.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/webcit/subst.c b/webcit/subst.c index 6f02936d1..07a0c7af3 100644 --- a/webcit/subst.c +++ b/webcit/subst.c @@ -2456,7 +2456,24 @@ long GetTokenDefine(const char *Name, long len, { return DefValue; } - } +} + +void tmplput_DefStr(StrBuf *Target, WCTemplputParams *TP) +{ + const char *Str; + long len; + GetTemplateTokenString(Target, TP, 2, &Str, &len); + + StrBufAppendBufPlain(Target, Str, len, 0); +} + +void tmplput_DefVal(StrBuf *Target, WCTemplputParams *TP) +{ + int val; + + val = GetTemplateTokenNumber(Target, TP, 0, 0); + StrBufAppendPrintf(Target, "%d", val); +} HashList *Defines; @@ -3015,6 +3032,10 @@ InitModule_SUBST RegisterControlNS(HKEY("ITERATE:KEY"), 0, 0, tmplput_ITERATE_KEY, CTX_ITERATE); RegisterControlNS(HKEY("ITERATE:N"), 0, 0, tmplput_ITERATE_LASTN, CTX_ITERATE); RegisterNamespace("CURRENTFILE", 0, 1, tmplput_CURRENT_FILE, NULL, CTX_NONE); + RegisterNamespace("DEF:STR", 0, 0, tmplput_DefStr, NULL, CTX_NONE); + RegisterNamespace("DEF:VAL", 0, 0, tmplput_DefVal, NULL, CTX_NONE); + + } -- 2.30.2