public class com.sun.javafx.sg.prism.NGText extends com.sun.javafx.sg.prism.NGShape
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.javafx.sg.prism.NGText
super_class: com.sun.javafx.sg.prism.NGShape
{
static final com.sun.javafx.geom.transform.BaseTransform IDENT;
descriptor: Lcom/sun/javafx/geom/transform/BaseTransform;
flags: (0x0018) ACC_STATIC, ACC_FINAL
private com.sun.javafx.scene.text.GlyphList[] runs;
descriptor: [Lcom/sun/javafx/scene/text/GlyphList;
flags: (0x0002) ACC_PRIVATE
private float layoutX;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private float layoutY;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private com.sun.javafx.font.PGFont font;
descriptor: Lcom/sun/javafx/font/PGFont;
flags: (0x0002) ACC_PRIVATE
private int fontSmoothingType;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean underline;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean strikethrough;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.Object selectionPaint;
descriptor: Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
private int selectionStart;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int selectionEnd;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static double EPSILON;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private com.sun.javafx.font.FontStrike fontStrike;
descriptor: Lcom/sun/javafx/font/FontStrike;
flags: (0x0002) ACC_PRIVATE
private com.sun.javafx.font.FontStrike identityStrike;
descriptor: Lcom/sun/javafx/font/FontStrike;
flags: (0x0002) ACC_PRIVATE
private double[] strikeMat;
descriptor: [D
flags: (0x0002) ACC_PRIVATE
private boolean drawingEffect;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static int FILL;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int SHAPE_FILL;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int TEXT;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static int DECORATION;
descriptor: I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
putstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
1: ldc 0.01
putstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
2: iconst_2
putstatic com.sun.javafx.sg.prism.NGText.FILL:I
3: iconst_4
putstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
4: bipush 8
putstatic com.sun.javafx.sg.prism.NGText.TEXT:I
5: bipush 16
putstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.sun.javafx.sg.prism.NGShape.<init>:()V
1: aload 0
aconst_null
putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
2: aload 0
aconst_null
putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
3: aload 0
iconst_4
newarray 7
putfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
4: aload 0
iconst_0
putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/javafx/sg/prism/NGText;
public void setGlyphs(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
checkcast com.sun.javafx.scene.text.GlyphList[]
putfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
1: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/sg/prism/NGText;
0 3 1 glyphs [Ljava/lang/Object;
MethodParameters:
Name Flags
glyphs
public void setLayoutLocation(float, float);
descriptor: (FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
fload 1
putfield com.sun.javafx.sg.prism.NGText.layoutX:F
1: aload 0
fload 2
putfield com.sun.javafx.sg.prism.NGText.layoutY:F
2: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/sg/prism/NGText;
0 4 1 x F
0 4 2 y F
MethodParameters:
Name Flags
x
y
public void setFont(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 2
aload 1
aload 0
getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast com.sun.javafx.font.PGFont
putfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
3: aload 0
aconst_null
putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
4: aload 0
aconst_null
putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
5: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/sg/prism/NGText;
0 7 1 font Ljava/lang/Object;
MethodParameters:
Name Flags
font
public void setFontSmoothingType(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
1: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/sg/prism/NGText;
0 3 1 fontSmoothingType I
MethodParameters:
Name Flags
fontSmoothingType
public void setUnderline(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.javafx.sg.prism.NGText.underline:Z
1: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/sg/prism/NGText;
0 3 1 underline Z
MethodParameters:
Name Flags
underline
public void setStrikethrough(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
1: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/sg/prism/NGText;
0 3 1 strikethrough Z
MethodParameters:
Name Flags
strikethrough
public void setSelection(int, int, java.lang.Object);
descriptor: (IILjava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
putfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
1: aload 0
iload 1
putfield com.sun.javafx.sg.prism.NGText.selectionStart:I
2: aload 0
iload 2
putfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
3: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.geometryChanged:()V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/javafx/sg/prism/NGText;
0 5 1 start I
0 5 2 end I
0 5 3 color Ljava/lang/Object;
MethodParameters:
Name Flags
start
end
color
protected com.sun.javafx.geom.BaseBounds computePadding(com.sun.javafx.geom.BaseBounds);
descriptor: (Lcom/sun/javafx/geom/BaseBounds;)Lcom/sun/javafx/geom/BaseBounds;
flags: (0x0004) ACC_PROTECTED
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
iconst_1
if_icmpne 1
fconst_2
goto 2
StackMap locals:
StackMap stack:
1: fconst_1
StackMap locals:
StackMap stack: float
2: fstore 2
start local 2 3: aload 1
aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
fload 2
fsub
4: aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
fload 2
fsub
5: aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMinZ:()F
6: aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
fload 2
fadd
7: aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
fload 2
fadd
8: aload 1
invokevirtual com.sun.javafx.geom.BaseBounds.getMaxZ:()F
9: invokevirtual com.sun.javafx.geom.BaseBounds.deriveWithNewBounds:(FFFFFF)Lcom/sun/javafx/geom/BaseBounds;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/javafx/sg/prism/NGText;
0 10 1 region Lcom/sun/javafx/geom/BaseBounds;
3 10 2 pad F
MethodParameters:
Name Flags
region
private com.sun.javafx.font.FontStrike getStrike(com.sun.javafx.geom.transform.BaseTransform);
descriptor: (Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.javafx.sg.prism.NGText.fontSmoothingType:I
istore 2
start local 2 1: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.getMode:()Lcom/sun/javafx/sg/prism/NGShape$Mode;
getstatic com.sun.javafx.sg.prism.NGShape$Mode.STROKE_FILL:Lcom/sun/javafx/sg/prism/NGShape$Mode;
if_acmpne 3
2: iconst_0
istore 2
3: StackMap locals: int
StackMap stack:
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.isIdentity:()Z
ifeq 8
4: aload 0
getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
ifnull 6
5: iload 2
aload 0
getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
if_icmpeq 7
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
iload 2
invokeinterface com.sun.javafx.font.PGFont.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;I)Lcom/sun/javafx/font/FontStrike;
putfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
7: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.identityStrike:Lcom/sun/javafx/font/FontStrike;
areturn
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
ifnull 17
9: aload 0
getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getSize:()F
aload 0
getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
fcmpl
ifne 17
10: aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
dconst_0
dcmpl
ifne 11
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_1
daload
dconst_0
dcmpl
ifne 17
11: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
dconst_0
dcmpl
ifne 12
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_2
daload
dconst_0
dcmpl
ifne 17
12: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_0
daload
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxx:()D
dsub
invokestatic java.lang.Math.abs:(D)D
getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
dcmpl
ifgt 17
13: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_1
daload
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
dsub
invokestatic java.lang.Math.abs:(D)D
getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
dcmpl
ifgt 17
14: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_2
daload
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
dsub
invokestatic java.lang.Math.abs:(D)D
getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
dcmpl
ifgt 17
15: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_3
daload
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyy:()D
dsub
invokestatic java.lang.Math.abs:(D)D
getstatic com.sun.javafx.sg.prism.NGText.EPSILON:D
dcmpl
ifgt 17
16: iload 2
aload 0
getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
if_icmpeq 22
17: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.sun.javafx.sg.prism.NGText.font:Lcom/sun/javafx/font/PGFont;
aload 1
iload 2
invokeinterface com.sun.javafx.font.PGFont.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;I)Lcom/sun/javafx/font/FontStrike;
putfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
18: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_0
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxx:()D
dastore
19: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_1
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMxy:()D
dastore
20: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_2
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyx:()D
dastore
21: aload 0
getfield com.sun.javafx.sg.prism.NGText.strikeMat:[D
iconst_3
aload 1
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyy:()D
dastore
22: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.fontStrike:Lcom/sun/javafx/font/FontStrike;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/sun/javafx/sg/prism/NGText;
0 23 1 xform Lcom/sun/javafx/geom/transform/BaseTransform;
1 23 2 smoothingType I
MethodParameters:
Name Flags
xform
public com.sun.javafx.geom.Shape getShape();
descriptor: ()Lcom/sun/javafx/geom/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
ifnonnull 2
1: new com.sun.javafx.geom.Path2D
dup
invokespecial com.sun.javafx.geom.Path2D.<init>:()V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.sg.prism.NGText.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
astore 1
start local 1 3: new com.sun.javafx.geom.Path2D
dup
invokespecial com.sun.javafx.geom.Path2D.<init>:()V
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: goto 31
6: StackMap locals: com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
iload 3
aaload
astore 4
start local 4 7: aload 4
invokeinterface com.sun.javafx.scene.text.GlyphList.getLocation:()Lcom/sun/javafx/geom/Point2D;
astore 5
start local 5 8: aload 5
getfield com.sun.javafx.geom.Point2D.x:F
aload 0
getfield com.sun.javafx.sg.prism.NGText.layoutX:F
fsub
fstore 6
start local 6 9: aload 5
getfield com.sun.javafx.geom.Point2D.y:F
aload 0
getfield com.sun.javafx.sg.prism.NGText.layoutY:F
fsub
fstore 7
start local 7 10: fload 6
f2d
fload 7
f2d
invokestatic com.sun.javafx.geom.transform.BaseTransform.getTranslateInstance:(DD)Lcom/sun/javafx/geom/transform/BaseTransform;
astore 8
start local 8 11: aload 2
aload 1
aload 4
aload 8
invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
iconst_0
invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
12: aconst_null
astore 9
start local 9 13: aload 0
getfield com.sun.javafx.sg.prism.NGText.underline:Z
ifeq 21
14: aload 1
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
astore 9
15: new com.sun.javafx.geom.RoundRectangle2D
dup
invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:()V
astore 10
start local 10 16: aload 10
fload 6
putfield com.sun.javafx.geom.RoundRectangle2D.x:F
17: aload 10
fload 7
aload 9
invokeinterface com.sun.javafx.font.Metrics.getUnderLineOffset:()F
fadd
putfield com.sun.javafx.geom.RoundRectangle2D.y:F
18: aload 10
aload 4
invokeinterface com.sun.javafx.scene.text.GlyphList.getWidth:()F
putfield com.sun.javafx.geom.RoundRectangle2D.width:F
19: aload 10
aload 9
invokeinterface com.sun.javafx.font.Metrics.getUnderLineThickness:()F
putfield com.sun.javafx.geom.RoundRectangle2D.height:F
20: aload 2
aload 10
iconst_0
invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
end local 10 21: StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int com.sun.javafx.scene.text.GlyphList com.sun.javafx.geom.Point2D float float com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.Metrics
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
ifeq 30
22: aload 9
ifnonnull 24
23: aload 1
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
astore 9
24: StackMap locals:
StackMap stack:
new com.sun.javafx.geom.RoundRectangle2D
dup
invokespecial com.sun.javafx.geom.RoundRectangle2D.<init>:()V
astore 10
start local 10 25: aload 10
fload 6
putfield com.sun.javafx.geom.RoundRectangle2D.x:F
26: aload 10
fload 7
aload 9
invokeinterface com.sun.javafx.font.Metrics.getStrikethroughOffset:()F
fadd
putfield com.sun.javafx.geom.RoundRectangle2D.y:F
27: aload 10
aload 4
invokeinterface com.sun.javafx.scene.text.GlyphList.getWidth:()F
putfield com.sun.javafx.geom.RoundRectangle2D.width:F
28: aload 10
aload 9
invokeinterface com.sun.javafx.font.Metrics.getStrikethroughThickness:()F
putfield com.sun.javafx.geom.RoundRectangle2D.height:F
29: aload 2
aload 10
iconst_0
invokevirtual com.sun.javafx.geom.Path2D.append:(Lcom/sun/javafx/geom/Shape;Z)V
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 30: StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.javafx.font.FontStrike com.sun.javafx.geom.Path2D int
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
31: iload 3
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
arraylength
if_icmplt 6
end local 3 32: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lcom/sun/javafx/sg/prism/NGText;
3 33 1 strike Lcom/sun/javafx/font/FontStrike;
4 33 2 outline Lcom/sun/javafx/geom/Path2D;
5 32 3 i I
7 30 4 run Lcom/sun/javafx/scene/text/GlyphList;
8 30 5 pt Lcom/sun/javafx/geom/Point2D;
9 30 6 x F
10 30 7 y F
11 30 8 t Lcom/sun/javafx/geom/transform/BaseTransform;
13 30 9 metrics Lcom/sun/javafx/font/Metrics;
16 21 10 rect Lcom/sun/javafx/geom/RoundRectangle2D;
25 30 10 rect Lcom/sun/javafx/geom/RoundRectangle2D;
protected void renderEffect(com.sun.prism.Graphics);
descriptor: (Lcom/sun/prism/Graphics;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
ifne 2
1: aload 0
iconst_1
putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial com.sun.javafx.sg.prism.NGShape.renderEffect:(Lcom/sun/prism/Graphics;)V
3: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
4: astore 2
5: aload 0
iconst_0
putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
6: aload 2
athrow
7: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/javafx/sg/prism/NGText;
0 9 1 g Lcom/sun/prism/Graphics;
Exception table:
from to target type
2 4 4 any
MethodParameters:
Name Flags
g
protected void renderContent2D(com.sun.prism.Graphics, boolean);
descriptor: (Lcom/sun/prism/Graphics;Z)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
getstatic com.sun.javafx.sg.prism.NGShape$Mode.EMPTY:Lcom/sun/javafx/sg/prism/NGShape$Mode;
if_acmpne 1
return
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
ifnull 2
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
arraylength
ifne 3
StackMap locals:
StackMap stack:
2: return
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
astore 3
start local 3 4: aload 0
aload 3
invokevirtual com.sun.javafx.sg.prism.NGText.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/font/FontStrike;
astore 4
start local 4 5: aload 4
invokeinterface com.sun.javafx.font.FontStrike.getAAMode:()I
iconst_1
if_icmpeq 8
6: aload 0
getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
ifnull 7
aload 0
getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
ifne 8
7: StackMap locals: com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
ifnull 10
aload 0
getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
invokevirtual com.sun.prism.paint.Paint.isProportional:()Z
ifeq 10
8: StackMap locals:
StackMap stack:
aload 0
new com.sun.javafx.geom.RectBounds
dup
invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.sg.prism.NGText.getContentBounds:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/BaseBounds;
astore 5
start local 5 9: aload 1
aload 5
checkcast com.sun.javafx.geom.RectBounds
invokeinterface com.sun.prism.Graphics.setNodeBounds:(Lcom/sun/javafx/geom/RectBounds;)V
end local 5 10: StackMap locals:
StackMap stack:
aconst_null
astore 5
start local 5 11: aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionStart:I
aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
if_icmpeq 13
aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
instanceof com.sun.prism.paint.Color
ifeq 13
12: aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionPaint:Ljava/lang/Object;
checkcast com.sun.prism.paint.Color
astore 5
13: StackMap locals: com.sun.prism.paint.Color
StackMap stack:
aconst_null
astore 6
start local 6 14: aload 0
invokevirtual com.sun.javafx.sg.prism.NGText.getClipNode:()Lcom/sun/javafx/sg/prism/NGNode;
ifnull 16
15: aload 0
new com.sun.javafx.geom.RectBounds
dup
invokespecial com.sun.javafx.geom.RectBounds.<init>:()V
getstatic com.sun.javafx.sg.prism.NGText.IDENT:Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.sg.prism.NGText.getClippedBounds:(Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/BaseBounds;
astore 6
16: StackMap locals: com.sun.javafx.geom.BaseBounds
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
getstatic com.sun.javafx.sg.prism.NGShape$Mode.STROKE:Lcom/sun/javafx/sg/prism/NGShape$Mode;
if_acmpeq 27
17: aload 1
aload 0
getfield com.sun.javafx.sg.prism.NGText.fillPaint:Lcom/sun/prism/paint/Paint;
invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
18: getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
istore 7
start local 7 19: iload 7
aload 4
invokeinterface com.sun.javafx.font.FontStrike.drawAsShapes:()Z
ifne 20
aload 0
getfield com.sun.javafx.sg.prism.NGText.drawingEffect:Z
ifeq 21
StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics int com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike com.sun.prism.paint.Color com.sun.javafx.geom.BaseBounds int
StackMap stack: int
20: getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
goto 22
StackMap locals:
StackMap stack: int
21: getstatic com.sun.javafx.sg.prism.NGText.FILL:I
StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics int com.sun.javafx.geom.transform.BaseTransform com.sun.javafx.font.FontStrike com.sun.prism.paint.Color com.sun.javafx.geom.BaseBounds int
StackMap stack: int int
22: ior
istore 7
23: aload 0
aload 1
aload 4
aload 6
aload 5
iload 7
invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
24: aload 0
getfield com.sun.javafx.sg.prism.NGText.underline:Z
ifne 25
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
ifeq 27
25: StackMap locals:
StackMap stack:
getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
ior
istore 7
26: aload 0
aload 1
aload 4
aload 6
aload 5
iload 7
invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
end local 7 27: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.mode:Lcom/sun/javafx/sg/prism/NGShape$Mode;
getstatic com.sun.javafx.sg.prism.NGShape$Mode.FILL:Lcom/sun/javafx/sg/prism/NGShape$Mode;
if_acmpeq 34
28: aload 1
aload 0
getfield com.sun.javafx.sg.prism.NGText.drawPaint:Lcom/sun/prism/paint/Paint;
invokeinterface com.sun.prism.Graphics.setPaint:(Lcom/sun/prism/paint/Paint;)V
29: aload 1
aload 0
getfield com.sun.javafx.sg.prism.NGText.drawStroke:Lcom/sun/prism/BasicStroke;
invokeinterface com.sun.prism.Graphics.setStroke:(Lcom/sun/prism/BasicStroke;)V
30: getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
istore 7
start local 7 31: aload 0
getfield com.sun.javafx.sg.prism.NGText.underline:Z
ifne 32
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
ifeq 33
32: StackMap locals: int
StackMap stack:
iload 7
getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
ior
istore 7
33: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 4
aload 6
aload 5
iload 7
invokevirtual com.sun.javafx.sg.prism.NGText.renderText:(Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
end local 7 34: StackMap locals:
StackMap stack:
aload 1
aconst_null
invokeinterface com.sun.prism.Graphics.setNodeBounds:(Lcom/sun/javafx/geom/RectBounds;)V
35: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lcom/sun/javafx/sg/prism/NGText;
0 36 1 g Lcom/sun/prism/Graphics;
0 36 2 printing Z
4 36 3 tx Lcom/sun/javafx/geom/transform/BaseTransform;
5 36 4 strike Lcom/sun/javafx/font/FontStrike;
9 10 5 bds Lcom/sun/javafx/geom/BaseBounds;
11 36 5 selectionColor Lcom/sun/prism/paint/Color;
14 36 6 clipBds Lcom/sun/javafx/geom/BaseBounds;
19 27 7 op I
31 34 7 op I
MethodParameters:
Name Flags
g
printing
private void renderText(com.sun.prism.Graphics, com.sun.javafx.font.FontStrike, com.sun.javafx.geom.BaseBounds, com.sun.prism.paint.Color, int);
descriptor: (Lcom/sun/prism/Graphics;Lcom/sun/javafx/font/FontStrike;Lcom/sun/javafx/geom/BaseBounds;Lcom/sun/prism/paint/Color;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=16, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: iconst_0
istore 6
start local 6 1: goto 50
2: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
iload 6
aaload
checkcast com.sun.javafx.text.TextRun
astore 7
start local 7 3: aload 7
invokevirtual com.sun.javafx.text.TextRun.getLineBounds:()Lcom/sun/javafx/geom/RectBounds;
astore 8
start local 8 4: aload 7
invokevirtual com.sun.javafx.text.TextRun.getLocation:()Lcom/sun/javafx/geom/Point2D;
astore 9
start local 9 5: aload 9
getfield com.sun.javafx.geom.Point2D.x:F
aload 0
getfield com.sun.javafx.sg.prism.NGText.layoutX:F
fsub
fstore 10
start local 10 6: aload 9
getfield com.sun.javafx.geom.Point2D.y:F
aload 0
getfield com.sun.javafx.sg.prism.NGText.layoutY:F
fsub
fstore 11
start local 11 7: aload 3
ifnull 12
8: fload 11
aload 3
invokevirtual com.sun.javafx.geom.BaseBounds.getMaxY:()F
fcmpl
ifle 9
goto 51
9: StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics com.sun.javafx.font.FontStrike com.sun.javafx.geom.BaseBounds com.sun.prism.paint.Color int int com.sun.javafx.text.TextRun com.sun.javafx.geom.RectBounds com.sun.javafx.geom.Point2D float float
StackMap stack:
fload 11
aload 8
invokevirtual com.sun.javafx.geom.RectBounds.getHeight:()F
fadd
aload 3
invokevirtual com.sun.javafx.geom.BaseBounds.getMinY:()F
fcmpg
ifge 10
goto 49
10: StackMap locals:
StackMap stack:
fload 10
aload 3
invokevirtual com.sun.javafx.geom.BaseBounds.getMaxX:()F
fcmpl
ifle 11
goto 49
11: StackMap locals:
StackMap stack:
fload 10
aload 7
invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
fadd
aload 3
invokevirtual com.sun.javafx.geom.BaseBounds.getMinX:()F
fcmpg
ifge 12
goto 49
12: StackMap locals:
StackMap stack:
fload 11
aload 8
invokevirtual com.sun.javafx.geom.RectBounds.getMinY:()F
fsub
fstore 11
13: iload 5
getstatic com.sun.javafx.sg.prism.NGText.TEXT:I
iand
ifeq 27
aload 7
invokevirtual com.sun.javafx.text.TextRun.getGlyphCount:()I
ifle 27
14: iload 5
getstatic com.sun.javafx.sg.prism.NGText.FILL:I
iand
ifeq 22
15: aload 7
invokevirtual com.sun.javafx.text.TextRun.getStart:()I
istore 12
start local 12 16: aload 1
aload 7
aload 2
fload 10
fload 11
17: aload 4
18: aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionStart:I
iload 12
isub
19: aload 0
getfield com.sun.javafx.sg.prism.NGText.selectionEnd:I
iload 12
isub
20: invokeinterface com.sun.prism.Graphics.drawString:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/font/FontStrike;FFLcom/sun/prism/paint/Color;II)V
end local 12 21: goto 27
22: StackMap locals:
StackMap stack:
fload 10
f2d
fload 11
f2d
invokestatic com.sun.javafx.geom.transform.BaseTransform.getTranslateInstance:(DD)Lcom/sun/javafx/geom/transform/BaseTransform;
astore 12
start local 12 23: iload 5
getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
iand
ifeq 26
24: aload 1
aload 2
aload 7
aload 12
invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
invokeinterface com.sun.prism.Graphics.fill:(Lcom/sun/javafx/geom/Shape;)V
25: goto 27
26: StackMap locals: com.sun.javafx.geom.transform.BaseTransform
StackMap stack:
aload 1
aload 2
aload 7
aload 12
invokeinterface com.sun.javafx.font.FontStrike.getOutline:(Lcom/sun/javafx/scene/text/GlyphList;Lcom/sun/javafx/geom/transform/BaseTransform;)Lcom/sun/javafx/geom/Shape;
invokeinterface com.sun.prism.Graphics.draw:(Lcom/sun/javafx/geom/Shape;)V
end local 12 27: StackMap locals:
StackMap stack:
iload 5
getstatic com.sun.javafx.sg.prism.NGText.DECORATION:I
iand
ifeq 49
28: aload 2
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
astore 12
start local 12 29: aload 0
getfield com.sun.javafx.sg.prism.NGText.underline:Z
ifeq 39
30: fload 11
aload 12
invokeinterface com.sun.javafx.font.Metrics.getUnderLineOffset:()F
fadd
fstore 13
start local 13 31: aload 12
invokeinterface com.sun.javafx.font.Metrics.getUnderLineThickness:()F
fstore 14
start local 14 32: iload 5
getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
iand
ifeq 38
33: fload 14
fconst_1
fcmpg
ifgt 36
aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
ifeq 36
34: aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
d2f
fstore 15
start local 15 35: fload 13
fload 15
fadd
invokestatic java.lang.Math.round:(F)I
i2f
fload 15
fsub
fstore 13
end local 15 36: StackMap locals: com.sun.javafx.font.Metrics float float
StackMap stack:
aload 1
fload 10
fload 13
aload 7
invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
fload 14
invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
37: goto 39
38: StackMap locals:
StackMap stack:
aload 1
fload 10
fload 13
aload 7
invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
fload 14
invokeinterface com.sun.prism.Graphics.drawRect:(FFFF)V
end local 14 end local 13 39: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.sg.prism.NGText.strikethrough:Z
ifeq 49
40: fload 11
aload 12
invokeinterface com.sun.javafx.font.Metrics.getStrikethroughOffset:()F
fadd
fstore 13
start local 13 41: aload 12
invokeinterface com.sun.javafx.font.Metrics.getStrikethroughThickness:()F
fstore 14
start local 14 42: iload 5
getstatic com.sun.javafx.sg.prism.NGText.SHAPE_FILL:I
iand
ifeq 48
43: fload 14
fconst_1
fcmpg
ifgt 46
aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.geom.transform.BaseTransform.isTranslateOrIdentity:()Z
ifeq 46
44: aload 1
invokeinterface com.sun.prism.Graphics.getTransformNoClone:()Lcom/sun/javafx/geom/transform/BaseTransform;
invokevirtual com.sun.javafx.geom.transform.BaseTransform.getMyt:()D
d2f
fstore 15
start local 15 45: fload 13
fload 15
fadd
invokestatic java.lang.Math.round:(F)I
i2f
fload 15
fsub
fstore 13
end local 15 46: StackMap locals: float float
StackMap stack:
aload 1
fload 10
fload 13
aload 7
invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
fload 14
invokeinterface com.sun.prism.Graphics.fillRect:(FFFF)V
47: goto 49
48: StackMap locals:
StackMap stack:
aload 1
fload 10
fload 13
aload 7
invokevirtual com.sun.javafx.text.TextRun.getWidth:()F
fload 14
invokeinterface com.sun.prism.Graphics.drawRect:(FFFF)V
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 49: StackMap locals: com.sun.javafx.sg.prism.NGText com.sun.prism.Graphics com.sun.javafx.font.FontStrike com.sun.javafx.geom.BaseBounds com.sun.prism.paint.Color int int
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
50: iload 6
aload 0
getfield com.sun.javafx.sg.prism.NGText.runs:[Lcom/sun/javafx/scene/text/GlyphList;
arraylength
if_icmplt 2
end local 6 51: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 52 0 this Lcom/sun/javafx/sg/prism/NGText;
0 52 1 g Lcom/sun/prism/Graphics;
0 52 2 strike Lcom/sun/javafx/font/FontStrike;
0 52 3 clipBds Lcom/sun/javafx/geom/BaseBounds;
0 52 4 selectionColor Lcom/sun/prism/paint/Color;
0 52 5 op I
1 51 6 i I
3 49 7 run Lcom/sun/javafx/text/TextRun;
4 49 8 lineBounds Lcom/sun/javafx/geom/RectBounds;
5 49 9 pt Lcom/sun/javafx/geom/Point2D;
6 49 10 x F
7 49 11 y F
16 21 12 start I
23 27 12 t Lcom/sun/javafx/geom/transform/BaseTransform;
29 49 12 metrics Lcom/sun/javafx/font/Metrics;
31 39 13 offset F
32 39 14 thickness F
35 36 15 myt F
41 49 13 offset F
42 49 14 thickness F
45 46 15 myt F
MethodParameters:
Name Flags
g
strike
clipBds
selectionColor
op
}
SourceFile: "NGText.java"
InnerClasses:
public final Mode = com.sun.javafx.sg.prism.NGShape$Mode of com.sun.javafx.sg.prism.NGShape