class sun.awt.windows.TranslucentWindowPainter$VIWindowPainter extends sun.awt.windows.TranslucentWindowPainter$BIWindowPainter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.awt.windows.TranslucentWindowPainter$VIWindowPainter
super_class: sun.awt.windows.TranslucentWindowPainter$BIWindowPainter
{
private java.awt.image.VolatileImage viBB;
descriptor: Ljava/awt/image/VolatileImage;
flags: (0x0002) ACC_PRIVATE
protected void <init>(sun.awt.windows.WWindowPeer);
descriptor: (Lsun/awt/windows/WWindowPeer;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
start local 1 // sun.awt.windows.WWindowPeer peer
0: .line 274
aload 0 /* this */
aload 1 /* peer */
invokespecial sun.awt.windows.TranslucentWindowPainter$BIWindowPainter.<init>:(Lsun/awt/windows/WWindowPeer;)V
1: .line 275
return
end local 1 // sun.awt.windows.WWindowPeer peer
end local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/windows/TranslucentWindowPainter$VIWindowPainter;
0 2 1 peer Lsun/awt/windows/WWindowPeer;
MethodParameters:
Name Flags
peer
protected java.awt.Image getBackBuffer(boolean);
descriptor: (Z)Ljava/awt/Image;
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=6, args_size=2
start local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
start local 1 // boolean clear
0: .line 279
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.window:Ljava/awt/Window;
invokevirtual java.awt.Window.getWidth:()I
istore 2 /* w */
start local 2 // int w
1: .line 280
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.window:Ljava/awt/Window;
invokevirtual java.awt.Window.getHeight:()I
istore 3 /* h */
start local 3 // int h
2: .line 281
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.peer:Lsun/awt/windows/WWindowPeer;
invokevirtual sun.awt.windows.WWindowPeer.getGraphicsConfiguration:()Ljava/awt/GraphicsConfiguration;
astore 4 /* gc */
start local 4 // java.awt.GraphicsConfiguration gc
3: .line 283
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
ifnull 5
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
invokevirtual java.awt.image.VolatileImage.getWidth:()I
iload 2 /* w */
if_icmpne 5
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
invokevirtual java.awt.image.VolatileImage.getHeight:()I
iload 3 /* h */
if_icmpne 5
4: .line 284
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
aload 4 /* gc */
invokevirtual java.awt.image.VolatileImage.validate:(Ljava/awt/GraphicsConfiguration;)I
iconst_2
if_icmpne 15
5: .line 286
StackMap locals: int int java.awt.GraphicsConfiguration
StackMap stack:
aload 0 /* this */
invokevirtual sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.flush:()V
6: .line 288
aload 4 /* gc */
instanceof sun.java2d.pipe.hw.AccelGraphicsConfig
ifeq 12
7: .line 289
aload 4 /* gc */
checkcast sun.java2d.pipe.hw.AccelGraphicsConfig
astore 5 /* agc */
start local 5 // sun.java2d.pipe.hw.AccelGraphicsConfig agc
8: .line 290
aload 0 /* this */
aload 5 /* agc */
iload 2 /* w */
iload 3 /* h */
9: .line 291
iconst_3
10: .line 292
iconst_2
11: .line 290
invokeinterface sun.java2d.pipe.hw.AccelGraphicsConfig.createCompatibleVolatileImage:(IIII)Ljava/awt/image/VolatileImage;
putfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
end local 5 // sun.java2d.pipe.hw.AccelGraphicsConfig agc
12: .line 294
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
ifnonnull 14
13: .line 295
aload 0 /* this */
aload 4 /* gc */
iload 2 /* w */
iload 3 /* h */
iconst_3
invokevirtual java.awt.GraphicsConfiguration.createCompatibleVolatileImage:(III)Ljava/awt/image/VolatileImage;
putfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
14: .line 297
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
aload 4 /* gc */
invokevirtual java.awt.image.VolatileImage.validate:(Ljava/awt/GraphicsConfiguration;)I
pop
15: .line 300
StackMap locals:
StackMap stack:
iload 1 /* clear */
ifeq 16
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
invokestatic sun.awt.windows.TranslucentWindowPainter.clearImage:(Ljava/awt/Image;)Ljava/awt/Image;
goto 17
StackMap locals:
StackMap stack:
16: aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
StackMap locals:
StackMap stack: java.awt.Image
17: areturn
end local 4 // java.awt.GraphicsConfiguration gc
end local 3 // int h
end local 2 // int w
end local 1 // boolean clear
end local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/awt/windows/TranslucentWindowPainter$VIWindowPainter;
0 18 1 clear Z
1 18 2 w I
2 18 3 h I
3 18 4 gc Ljava/awt/GraphicsConfiguration;
8 12 5 agc Lsun/java2d/pipe/hw/AccelGraphicsConfig;
MethodParameters:
Name Flags
clear
public void flush();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
0: .line 305
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
ifnull 3
1: .line 306
aload 0 /* this */
getfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
invokevirtual java.awt.image.VolatileImage.flush:()V
2: .line 307
aload 0 /* this */
aconst_null
putfield sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.viBB:Ljava/awt/image/VolatileImage;
3: .line 309
StackMap locals:
StackMap stack:
return
end local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/windows/TranslucentWindowPainter$VIWindowPainter;
protected java.awt.Graphics getGraphics(boolean);
descriptor: (Z)Ljava/awt/Graphics;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
start local 1 // boolean clear
0: .line 313
aload 0 /* this */
iload 1 /* clear */
invokevirtual sun.awt.windows.TranslucentWindowPainter$VIWindowPainter.getBackBuffer:(Z)Ljava/awt/Image;
invokevirtual java.awt.Image.getGraphics:()Ljava/awt/Graphics;
areturn
end local 1 // boolean clear
end local 0 // sun.awt.windows.TranslucentWindowPainter$VIWindowPainter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/windows/TranslucentWindowPainter$VIWindowPainter;
0 1 1 clear Z
MethodParameters:
Name Flags
clear
}
SourceFile: "TranslucentWindowPainter.java"
NestHost: sun.awt.windows.TranslucentWindowPainter
InnerClasses:
private BIWindowPainter = sun.awt.windows.TranslucentWindowPainter$BIWindowPainter of sun.awt.windows.TranslucentWindowPainter
private VIWindowPainter = sun.awt.windows.TranslucentWindowPainter$VIWindowPainter of sun.awt.windows.TranslucentWindowPainter