I think SceneBuilder would like this, and I know printing would love it :-)

-phil.

On 7/3/13 7:03 AM, Kevin Rushforth wrote:
+1

This would allow apps to dispense with the following workaround when taking a snapshot:

   // create a dummy scene so layout and CSS will work
   new Scene(new Group(node));

   node.shapshot(...)

-- Kevin


David Grieve wrote:
Hi Martin,

With regard to having this work without a Sceneā€¦

I think having a method that would layout a node without the node actually having to be part of the scene-graph would be _very_ useful. Often times, developers will do the show-hide trick or add-remove trick to get a node's bounds before the node is shown for real. SceneBuilder has to do tricks like these to deal with popup controls, like tooltip. What styles are applied from CSS depends on where the node is in the scene-graph, so the method would need to be 'if I add this node to this parent, what will be the node's bounds?'. To make this work on the CSS side would require decoupling the 'css graph' from the scene-graph. RT-30894 touches on that. On Jul 3, 2013, at 8:33 AM, Martin Sladecek <martin.slade...@oracle.com> wrote:

Hi,

JIRA: https://javafx-jira.kenai.com/browse/RT-31133

I propose a single method "public final void validate()" to be added to Node class. The validate method would ensure that the metrics (layout bounds) of the Node are valid with regards to the current scenegraph (CSS & layout).

Together with this change, Parent.layout() will be deprecated.

In my current implementation, validate() method works only if the Node is in a Scene. To make it work without a Scene, we'd need to do do some small adjustments to CSS (doesn't work with getScene() == null). But I'm not sure if such feature would be useful.

Regards,
-Martin


Reply via email to