[Label] allow token.tile to be a function
@ -46,6 +46,7 @@ changelog.txt uses a syntax similar to RST, with a few special sequences:
- Gui focus strings will no longer get the "dfhack/" prefix if the string "dfhack/" already exists in the focus string
## Lua
- ``widgets.Label``: token ``tile`` properties can now be functions that return a value
-@ ``gui.INTERIOR_FRAME``: a panel frame style for use in highlighting off interior areas of a UI
## Removed
@ -4706,8 +4706,8 @@ containing newlines, or a table with the following possible fields:
* ``token.tile = pen``
Specifies a pen or texture index to paint as one tile before the main part of
Specifies a pen or texture index (or a function that returns a pen or texture
the token.
index) to paint as one tile before the main part of the token.
* ``token.width = ...``
@ -1124,8 +1124,8 @@ function render_text(obj,dc,x0,y0,pen,dpen,disabled,hpen,hovered)
if token.tile then
x = x + 1
if dc then
local tile_pen = tonumber(token.tile) and
local tile = getval(token.tile)
to_pen{tile=token.tile} or token.tile
local tile_pen = tonumber(tile) and to_pen{tile=tile} or tile
dc:char(nil, tile_pen)
if token.width then
dc:advance(token.width-1)