summaryrefslogtreecommitdiff
path: root/apps/gui/skin_engine/skin_tokens.c
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2011-03-27 08:01:58 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2011-03-27 08:01:58 +0000
commit87aa86cedd27445e51b0ad38dbc7cf2bdaa42364 (patch)
tree09d19881a5a48bbd3979877bfd08e5a109e6fa56 /apps/gui/skin_engine/skin_tokens.c
parent969381322d080a636d961a2e4505a9d88f04147d (diff)
downloadrockbox-87aa86cedd27445e51b0ad38dbc7cf2bdaa42364.tar.gz
rockbox-87aa86cedd27445e51b0ad38dbc7cf2bdaa42364.zip
Skin variables for touchscreen targets (origional implementation by Jens Theeß)
%vs(name, [set|inc|dec], value [,max]) - name is the id, set sets the value, inc increments by value, dec decrements by value %vg(name) - get the current value %vl(name [,timeout]) - 'has it changed in [timeout]'? values start at 1 and are all reset to 1 on skin load git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29655 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/skin_engine/skin_tokens.c')
-rw-r--r--apps/gui/skin_engine/skin_tokens.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/apps/gui/skin_engine/skin_tokens.c b/apps/gui/skin_engine/skin_tokens.c
index cf71014a62..a315bae609 100644
--- a/apps/gui/skin_engine/skin_tokens.c
+++ b/apps/gui/skin_engine/skin_tokens.c
@@ -1772,6 +1772,28 @@ const char *get_token_value(struct gui_wps *gwps,
1772 case SKIN_TOKEN_LANG_IS_RTL: 1772 case SKIN_TOKEN_LANG_IS_RTL:
1773 return lang_is_rtl() ? "r" : NULL; 1773 return lang_is_rtl() ? "r" : NULL;
1774 1774
1775#ifdef HAVE_SKIN_VARIABLES
1776 case SKIN_TOKEN_VAR_GETVAL:
1777 {
1778 struct skin_var* var = token->value.data;
1779 if (intval)
1780 *intval = var->value;
1781 snprintf(buf, buf_size, "%d", var->value);
1782 return buf;
1783 }
1784 break;
1785 case SKIN_TOKEN_VAR_TIMEOUT:
1786 {
1787 struct skin_var_lastchange *data = token->value.data;
1788 unsigned int last_change = data->var->last_changed;
1789
1790 if (last_change != 0xffff &&
1791 TIME_BEFORE(current_tick, data->timeout + last_change))
1792 return "t";
1793 }
1794 return NULL;
1795#endif
1796
1775 default: 1797 default:
1776 return NULL; 1798 return NULL;
1777 } 1799 }