Fwd: Dumping the rendering process in JavaFX

Alexandre (Shura) Iline alexandre.iline at oracle.com
Fri Jun 7 06:55:16 PDT 2013


Hi.


FWIW, with JemmyFX you can do:
new SceneDock().asParent().lookup().dump(System.out);

What you get is (full output is attached):
| +-javafx.scene.layout.VBox <- javafx.scene.layout.Pane <- 
javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| |   isFocused=false
...
| |   getLayoutX=0.0
| | +-javafx.scene.layout.GridPane <- javafx.scene.layout.Pane <- 
javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | |   isFocused=false
| | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, 
width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0]
...
| | |   getStyleClass=
| | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- 
javafx.scene.control.Control <- javafx.scene.layout.Region <- 
javafx.scene.Parent <- javafx.scene.Node
...
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- 
javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
...
...

See more on JemmyFX lookup:
http://hg.openjdk.java.net/openjfx/8/master/tests/raw-file/tip/tools/Jemmy/JemmyFX/samples/org/jemmy/samples/index.html

Shura

On 06/07/2013 05:42 PM, Richard Bair wrote:

> Begin forwarded message:
>
>> *From:* Hervé Girod <herve.girod at gmail.com <mailto:herve.girod at gmail.com>>
>> *Date:* June 7, 2013, 5:34:09 AM PDT
>> *To:* "openjfx-dev at openjdk.java.net
>> <mailto:openjfx-dev at openjdk.java.net> List"
>> <openjfx-dev at openjdk.java.net <mailto:openjfx-dev at openjdk.java.net>>
>> *Subject:* *Dumping the rendering process in JavaFX*
>>
>> Hello,
>>
>> We are porting a swing application in JavaFX, and we had various unit
>> tests where we created for testing purposes a dummy Graphics2D which
>> stored the list of its shapes and transformations.
>>
>> This allowed us to perform unit tests for the rendering of some of our
>> graphic components or Look and Feels.
>>
>> We tried to do the same thing in JavaFX by using the swing -JavaFX
>> bridge and forcing a j2d prism rendering. It works, but JavaFX nodes
>> are rendered as images, so it's not the right way to do it ;)
>>
>> Is there a way to dump some kind of list of graphic orders in the
>> current state of JavaFX (2.2 or 8) ?
>>
>> Hervé
>>
>> Sent from my iPhone
-------------- next part --------------
| +-javafx.scene.layout.VBox <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| |   isFocused=false
| |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0]
| |   isPressed=false
| |   getScaleY=1.0
| |   getScaleX=1.0
| |   isHover=true
| |   isManaged=true
| |   getScaleZ=1.0
| |   getClip=null
| |   getRotate=0.0
| |   getTransforms=[]
| |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0]
| |   isVisible=true
| |   hasProperties=false
| |   isCache=false
| |   getEffect=null
| |   getCacheHint=DEFAULT
| |   wrapper.class=class org.jemmy.fx.NodeWrap
| |   getOpacity=1.0
| |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| |   getId=null
| |   getContentBias=null
| |   control=VBox at 7110d0b1[styleClass=root]
| |   getParent=null
| |   getStyle=
| |   getProperties={}
| |   isResizable=true
| |   control.class=class javafx.scene.layout.VBox
| |   isDisable=false
| |   isDisabled=false
| |   getTranslateZ=0.0
| |   bounds=org.jemmy.Rectangle[x=913,y=371,width=93,height=64]
| |   getUserData=null
| |   getTranslateX=0.0
| |   getTranslateY=0.0
| |   getCursor=null
| |   clickPoint=org.jemmy.Point[x=46,y=32]
| |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| |   isPickOnBounds=true
| |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:64.0, depth:0.0, maxX:93.0, maxY:64.0, maxZ:0.0]
| |   getBaselineOffset=13.0
| |   isMouseTransparent=false
| |   getLayoutY=0.0
| |   getStyleClass=root
| |   getLayoutX=0.0
| | +-javafx.scene.layout.GridPane <- javafx.scene.layout.Pane <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | |   isFocused=false
| | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0]
| | |   isPressed=false
| | |   getScaleY=1.0
| | |   getScaleX=1.0
| | |   isHover=true
| | |   isManaged=true
| | |   getScaleZ=1.0
| | |   getClip=null
| | |   getRotate=0.0
| | |   getTransforms=[]
| | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0]
| | |   isVisible=true
| | |   hasProperties=false
| | |   isCache=false
| | |   getEffect=null
| | |   getCacheHint=DEFAULT
| | |   wrapper.class=class org.jemmy.fx.NodeWrap
| | |   getOpacity=1.0
| | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | |   getId=null
| | |   getContentBias=null
| | |   control=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | |   getParent=VBox at 7110d0b1[styleClass=root]
| | |   getStyle=
| | |   getProperties={}
| | |   isResizable=true
| | |   control.class=class javafx.scene.layout.GridPane
| | |   isDisable=false
| | |   isDisabled=false
| | |   getTranslateZ=0.0
| | |   bounds=org.jemmy.Rectangle[x=913,y=371,width=93,height=48]
| | |   getUserData=null
| | |   getTranslateX=0.0
| | |   getTranslateY=0.0
| | |   getCursor=null
| | |   clickPoint=org.jemmy.Point[x=46,y=24]
| | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | |   isPickOnBounds=true
| | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:93.0, height:48.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0]
| | |   getBaselineOffset=13.0
| | |   isMouseTransparent=false
| | |   getLayoutY=0.0
| | |   getStyleClass=
| | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_00
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_00, styleClass=label]
| | | |   text=(0,0)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=0, gridpane-row=0}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=913,y=371,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=0.0
| | | |   getStyleClass=label
| | | |   getLayoutX=0.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(0,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(0,0)
| | | | |   getParent=Label[id=lbl_00, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=913,y=371,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_01
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_01, styleClass=label]
| | | |   text=(0,1)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=0, gridpane-row=1}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=913,y=387,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:32.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=16.0
| | | |   getStyleClass=label
| | | |   getLayoutX=0.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(0,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(0,1)
| | | | |   getParent=Label[id=lbl_01, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=913,y=387,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_02
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_02, styleClass=label]
| | | |   text=(0,2)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=0, gridpane-row=2}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=913,y=403,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:48.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=32.0
| | | |   getStyleClass=label
| | | |   getLayoutX=0.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(0,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(0,2)
| | | | |   getParent=Label[id=lbl_02, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=913,y=403,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_10
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_10, styleClass=label]
| | | |   text=(1,0)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=1, gridpane-row=0}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=944,y=371,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:31.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:16.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=0.0
| | | |   getStyleClass=label
| | | |   getLayoutX=31.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(1,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(1,0)
| | | | |   getParent=Label[id=lbl_10, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=944,y=371,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_11
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_11, styleClass=label]
| | | |   text=(1,1)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=1, gridpane-row=1}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=944,y=387,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:31.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:32.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=16.0
| | | |   getStyleClass=label
| | | |   getLayoutX=31.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(1,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(1,1)
| | | | |   getParent=Label[id=lbl_11, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=944,y=387,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=true
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_12
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_12, styleClass=label]
| | | |   text=(1,2)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=1, gridpane-row=2}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=944,y=403,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:31.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:62.0, maxY:48.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=32.0
| | | |   getStyleClass=label
| | | |   getLayoutX=31.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=true
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(1,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(1,2)
| | | | |   getParent=Label[id=lbl_12, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=944,y=403,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_20
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_20, styleClass=label]
| | | |   text=(2,0)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=2, gridpane-row=0}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=975,y=371,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:62.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:16.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=0.0
| | | |   getStyleClass=label
| | | |   getLayoutX=62.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(2,0)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(2,0)
| | | | |   getParent=Label[id=lbl_20, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=975,y=371,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_21
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_21, styleClass=label]
| | | |   text=(2,1)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=2, gridpane-row=1}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=975,y=387,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:62.0, minY:16.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:32.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=16.0
| | | |   getStyleClass=label
| | | |   getLayoutX=62.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(2,1)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(2,1)
| | | | |   getParent=Label[id=lbl_21, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=975,y=387,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=null
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=true
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=lbl_22
| | | |   getContentBias=null
| | | |   control=Label[id=lbl_22, styleClass=label]
| | | |   text=(2,2)
| | | |   getParent=Grid hgap=0.0, vgap=0.0, alignment=TOP_LEFT
| | | |   getStyle=
| | | |   getProperties={gridpane-column=2, gridpane-row=2}
| | | |   isResizable=true
| | | |   control.class=class javafx.scene.control.Label
| | | |   isDisable=false
| | | |   getTooltip=null
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=975,y=403,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:62.0, minY:32.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:93.0, maxY:48.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=32.0
| | | |   getStyleClass=label
| | | |   getLayoutX=62.0
| | | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | | |   isFocused=false
| | | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isPressed=false
| | | | |   getScaleY=1.0
| | | | |   getScaleX=1.0
| | | | |   isHover=false
| | | | |   isManaged=true
| | | | |   getScaleZ=1.0
| | | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | | |   getRotate=0.0
| | | | |   getTransforms=[]
| | | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | | |   isVisible=true
| | | | |   hasProperties=false
| | | | |   isCache=false
| | | | |   getEffect=null
| | | | |   getCacheHint=DEFAULT
| | | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | | |   getOpacity=1.0
| | | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | | |   getId=null
| | | | |   getContentBias=null
| | | | |   control=Text[text="(2,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | | |   text=(2,2)
| | | | |   getParent=Label[id=lbl_22, styleClass=label]
| | | | |   getStyle=
| | | | |   getProperties={}
| | | | |   isResizable=false
| | | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | | |   isDisable=false
| | | | |   isDisabled=false
| | | | |   getTranslateZ=0.0
| | | | |   bounds=org.jemmy.Rectangle[x=975,y=403,width=31,height=16]
| | | | |   getUserData=null
| | | | |   getTranslateX=0.0
| | | | |   getTranslateY=0.0
| | | | |   getCursor=null
| | | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | | |   isPickOnBounds=true
| | | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | | |   getBaselineOffset=13.0
| | | | |   isMouseTransparent=false
| | | | |   getLayoutY=13.0
| | | | |   getStyleClass=text
| | | | |   getLayoutX=0.0
| | +-javafx.scene.control.Label <- javafx.scene.control.Labeled <- javafx.scene.control.Control <- javafx.scene.layout.Region <- javafx.scene.Parent <- javafx.scene.Node
| | |   isFocused=false
| | |   getLayoutBounds=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | |   isPressed=false
| | |   getScaleY=1.0
| | |   getScaleX=1.0
| | |   isHover=false
| | |   isManaged=true
| | |   getScaleZ=1.0
| | |   getClip=null
| | |   getRotate=0.0
| | |   getTransforms=[]
| | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:16.0, maxZ:0.0]
| | |   isVisible=true
| | |   hasProperties=false
| | |   isCache=false
| | |   getEffect=null
| | |   getCacheHint=DEFAULT
| | |   wrapper.class=class org.jemmy.fx.control.TextControlWrap
| | |   getOpacity=1.0
| | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | |   getId=null
| | |   getContentBias=null
| | |   control=Label at 588a4b96[styleClass=label]
| | |   text=(1,2)
| | |   getParent=VBox at 7110d0b1[styleClass=root]
| | |   getStyle=
| | |   getProperties={}
| | |   isResizable=true
| | |   control.class=class javafx.scene.control.Label
| | |   isDisable=false
| | |   getTooltip=null
| | |   isDisabled=false
| | |   getTranslateZ=0.0
| | |   bounds=org.jemmy.Rectangle[x=913,y=419,width=31,height=16]
| | |   getUserData=null
| | |   getTranslateX=0.0
| | |   getTranslateY=0.0
| | |   getCursor=null
| | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | |   isPickOnBounds=true
| | |   getBoundsInParent=BoundingBox [minX:0.0, minY:48.0, minZ:0.0, width:31.0, height:16.0, depth:0.0, maxX:31.0, maxY:64.0, maxZ:0.0]
| | |   getBaselineOffset=13.0
| | |   isMouseTransparent=false
| | |   getLayoutY=48.0
| | |   getStyleClass=label
| | |   getLayoutX=0.0
| | | +-com.sun.javafx.scene.control.skin.LabeledText <- javafx.scene.text.Text <- javafx.scene.shape.Shape <- javafx.scene.Node
| | | |   isFocused=false
| | | |   getLayoutBounds=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | |   isPressed=false
| | | |   getScaleY=1.0
| | | |   getScaleX=1.0
| | | |   isHover=false
| | | |   isManaged=true
| | | |   getScaleZ=1.0
| | | |   getClip=Rectangle[x=0.0, y=-13.0, width=31.0, height=16.0, fill=0x000000ff]
| | | |   getRotate=0.0
| | | |   getTransforms=[]
| | | |   getBoundsInLocal=BoundingBox [minX:0.0, minY:-13.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:3.0, maxZ:0.0]
| | | |   isVisible=true
| | | |   hasProperties=false
| | | |   isCache=false
| | | |   getEffect=null
| | | |   getCacheHint=DEFAULT
| | | |   wrapper.class=class org.jemmy.fx.TextWrap
| | | |   getOpacity=1.0
| | | |   getRotationAxis=Point3D [x = 0.0, y = 0.0, z = 1.0]
| | | |   getId=null
| | | |   getContentBias=null
| | | |   control=Text[text="(1,2)", x=0.0, y=0.0, alignment=LEFT, origin=BASELINE, boundsType=LOGICAL_VERTICAL_CENTER, font=Font[name=System Regular, family=System, style=Regular, size=13.0], fontSmoothingType=LCD, fill=0x333333ff]
| | | |   text=(1,2)
| | | |   getParent=Label at 588a4b96[styleClass=label]
| | | |   getStyle=
| | | |   getProperties={}
| | | |   isResizable=false
| | | |   control.class=class com.sun.javafx.scene.control.skin.LabeledText
| | | |   isDisable=false
| | | |   isDisabled=false
| | | |   getTranslateZ=0.0
| | | |   bounds=org.jemmy.Rectangle[x=913,y=419,width=31,height=16]
| | | |   getUserData=null
| | | |   getTranslateX=0.0
| | | |   getTranslateY=0.0
| | | |   getCursor=null
| | | |   clickPoint=org.jemmy.Point[x=15,y=8]
| | | |   scene=org.jemmy.samples.lookup.LookupApp$MyScene at 1efb880e
| | | |   isPickOnBounds=true
| | | |   getBoundsInParent=BoundingBox [minX:0.0, minY:0.0, minZ:0.0, width:30.81787109375, height:16.0, depth:0.0, maxX:30.81787109375, maxY:16.0, maxZ:0.0]
| | | |   getBaselineOffset=13.0
| | | |   isMouseTransparent=false
| | | |   getLayoutY=13.0
| | | |   getStyleClass=text
| | | |   getLayoutX=0.0


More information about the openjfx-dev mailing list