On 2/17/15 8:02 AM, Tom Eugelink wrote:
I have a skin (of a control) that centers a Text node. This Text node
can be styled via CSS, so this styling is a factor when centering.
because larger font means wider text.
The centering works perfectly, the only problem is figuring out when
to center the node. At the moment I'm centering the node on every
layoutChildren call of the skin, but this is way to often, because
after applying the CSS chances are very low that the node will need to
be repositioned.
Basically I would like to be informed when the styling of a node has
been applied or changed. Is there some place that can provide this
information?
Not in general, no. But you can add a listener to a property that is
styled by CSS and react to the change. You might add a listener to the
Text node's fontProperty, for example. Clearly this isn't an all-purpose
solution. Another approach is to hold onto the bounds (or maybe just the
pref width and height) of the child node. If the old bounds doesn't
equal the new bounds, then recenter.