utextDynamic <- function(label,
                         x=.5, y=.5, default.units="npc",
                         just="centre", name="utext") {
    if (!is.unit(x)) x <- unit(x, default.units)
    if (!is.unit(y)) y <- unit(y, default.units)
    gTree(label=label, x=x, y=y, just=just, 
          cl="utextDynamic", name=name)
}

makeContent.utextDynamic <- function(x) {
    kids <- utextChildren(x$label, x$x, x$y, 
                          just=x$just, x$name) 
    setChildren(x, kids) 
}


ug <- utextDynamic("underlined text")
grid.draw(ug)


grid.edit("utext", gp=gpar(col="grey"))


