final class sun.awt.windows.WDragSourceContextPeer extends sun.awt.dnd.SunDragSourceContextPeer
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.awt.windows.WDragSourceContextPeer
super_class: sun.awt.dnd.SunDragSourceContextPeer
{
private static final sun.awt.windows.WDragSourceContextPeer theInstance;
descriptor: Lsun/awt/windows/WDragSourceContextPeer;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new sun.awt.windows.WDragSourceContextPeer
dup
aconst_null
invokespecial sun.awt.windows.WDragSourceContextPeer.<init>:(Ljava/awt/dnd/DragGestureEvent;)V
1: putstatic sun.awt.windows.WDragSourceContextPeer.theInstance:Lsun/awt/windows/WDragSourceContextPeer;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void startSecondaryEventLoop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: invokestatic sun.awt.windows.WToolkit.startSecondaryEventLoop:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/windows/WDragSourceContextPeer;
public void quitSecondaryEventLoop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: invokestatic sun.awt.windows.WToolkit.quitSecondaryEventLoop:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/windows/WDragSourceContextPeer;
private void <init>(java.awt.dnd.DragGestureEvent);
descriptor: (Ljava/awt/dnd/DragGestureEvent;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.awt.dnd.SunDragSourceContextPeer.<init>:(Ljava/awt/dnd/DragGestureEvent;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/windows/WDragSourceContextPeer;
0 2 1 dge Ljava/awt/dnd/DragGestureEvent;
MethodParameters:
Name Flags
dge
static sun.awt.windows.WDragSourceContextPeer createDragSourceContextPeer(java.awt.dnd.DragGestureEvent);
descriptor: (Ljava/awt/dnd/DragGestureEvent;)Lsun/awt/windows/WDragSourceContextPeer;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic sun.awt.windows.WDragSourceContextPeer.theInstance:Lsun/awt/windows/WDragSourceContextPeer;
aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.setTrigger:(Ljava/awt/dnd/DragGestureEvent;)V
1: getstatic sun.awt.windows.WDragSourceContextPeer.theInstance:Lsun/awt/windows/WDragSourceContextPeer;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 dge Ljava/awt/dnd/DragGestureEvent;
Exceptions:
throws java.awt.dnd.InvalidDnDOperationException
MethodParameters:
Name Flags
dge
protected void startDrag(java.awt.datatransfer.Transferable, long[], java.util.Map);
descriptor: (Ljava/awt/datatransfer/Transferable;[JLjava/util/Map;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: lconst_0
lstore 4
start local 4 1: aload 0
aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getTrigger:()Ljava/awt/dnd/DragGestureEvent;
invokevirtual java.awt.dnd.DragGestureEvent.getComponent:()Ljava/awt/Component;
2: aload 1
3: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getTrigger:()Ljava/awt/dnd/DragGestureEvent;
invokevirtual java.awt.dnd.DragGestureEvent.getTriggerEvent:()Ljava/awt/event/InputEvent;
4: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getTrigger:()Ljava/awt/dnd/DragGestureEvent;
invokevirtual java.awt.dnd.DragGestureEvent.getSourceAsDragGestureRecognizer:()Ljava/awt/dnd/DragGestureRecognizer;
invokevirtual java.awt.dnd.DragGestureRecognizer.getSourceActions:()I
5: aload 2
6: aload 3
7: invokevirtual sun.awt.windows.WDragSourceContextPeer.createDragSource:(Ljava/awt/Component;Ljava/awt/datatransfer/Transferable;Ljava/awt/event/InputEvent;I[JLjava/util/Map;)J
lstore 4
8: lload 4
lconst_0
lcmp
ifne 10
9: new java.awt.dnd.InvalidDnDOperationException
dup
ldc "failed to create native peer"
invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals: long
StackMap stack:
aconst_null
astore 6
start local 6 11: aconst_null
astore 7
start local 7 12: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getDragImage:()Ljava/awt/Image;
astore 8
start local 8 13: iconst_m1
istore 9
start local 9 14: iconst_m1
istore 10
start local 10 15: aload 8
ifnull 31
16: aload 8
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 9
17: aload 8
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 10
18: iload 9
iflt 19
iload 10
ifge 20
19: StackMap locals: sun.awt.windows.WDragSourceContextPeer java.awt.datatransfer.Transferable long[] java.util.Map long int[] java.awt.Point java.awt.Image int int
StackMap stack:
new java.awt.dnd.InvalidDnDOperationException
dup
ldc "drag image is not ready"
invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
athrow
20: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getDragImageOffset:()Ljava/awt/Point;
astore 7
21: new java.awt.image.BufferedImage
dup
22: iload 9
23: iload 10
24: iconst_2
25: invokespecial java.awt.image.BufferedImage.<init>:(III)V
astore 11
start local 11 26: aload 11
invokevirtual java.awt.image.BufferedImage.getGraphics:()Ljava/awt/Graphics;
aload 8
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.Graphics.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
pop
27: aload 11
invokevirtual java.awt.image.BufferedImage.getData:()Ljava/awt/image/Raster;
invokevirtual java.awt.image.Raster.getDataBuffer:()Ljava/awt/image/DataBuffer;
checkcast java.awt.image.DataBufferInt
invokevirtual java.awt.image.DataBufferInt.getData:()[I
astore 6
end local 11 28: goto 31
StackMap locals:
StackMap stack: java.lang.Throwable
29: astore 11
start local 11 30: new java.awt.dnd.InvalidDnDOperationException
dup
new java.lang.StringBuilder
dup
ldc "drag image creation problem: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 11
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
athrow
end local 11 31: StackMap locals:
StackMap stack:
aload 0
lload 4
invokevirtual sun.awt.windows.WDragSourceContextPeer.setNativeContext:(J)V
32: aload 1
invokestatic sun.awt.windows.WDropTargetContextPeer.setCurrentJVMLocalSourceTransferable:(Ljava/awt/datatransfer/Transferable;)V
33: aload 6
ifnull 42
34: aload 0
35: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getNativeContext:()J
36: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getCursor:()Ljava/awt/Cursor;
37: aload 6
38: iload 9
iload 10
39: aload 7
getfield java.awt.Point.x:I
aload 7
getfield java.awt.Point.y:I
40: invokevirtual sun.awt.windows.WDragSourceContextPeer.doDragDrop:(JLjava/awt/Cursor;[IIIII)V
41: goto 49
42: StackMap locals:
StackMap stack:
aload 0
43: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getNativeContext:()J
44: aload 0
invokevirtual sun.awt.windows.WDragSourceContextPeer.getCursor:()Ljava/awt/Cursor;
45: aconst_null
46: iconst_m1
iconst_m1
47: iconst_0
iconst_0
48: invokevirtual sun.awt.windows.WDragSourceContextPeer.doDragDrop:(JLjava/awt/Cursor;[IIIII)V
49: StackMap locals:
StackMap stack:
return
end local 10 end local 9 end local 8 end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 this Lsun/awt/windows/WDragSourceContextPeer;
0 50 1 trans Ljava/awt/datatransfer/Transferable;
0 50 2 formats [J
0 50 3 formatMap Ljava/util/Map;
1 50 4 nativeCtxtLocal J
11 50 6 imageData [I
12 50 7 op Ljava/awt/Point;
13 50 8 im Ljava/awt/Image;
14 50 9 imageWidth I
15 50 10 imageHeight I
26 28 11 bi Ljava/awt/image/BufferedImage;
30 31 11 ex Ljava/lang/Throwable;
Exception table:
from to target type
16 28 29 Class java.lang.Throwable
MethodParameters:
Name Flags
trans
formats
formatMap
native long createDragSource(java.awt.Component, java.awt.datatransfer.Transferable, java.awt.event.InputEvent, int, long[], java.util.Map);
descriptor: (Ljava/awt/Component;Ljava/awt/datatransfer/Transferable;Ljava/awt/event/InputEvent;I[JLjava/util/Map;)J
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
component
transferable
nativeTrigger
actions
formats
formatMap
native void doDragDrop(long, java.awt.Cursor, int[], int, int, int, int);
descriptor: (JLjava/awt/Cursor;[IIIII)V
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
nativeCtxt
cursor
imageData
imgWidth
imgHight
offsetX
offsetY
protected native void setNativeCursor(long, java.awt.Cursor, int);
descriptor: (JLjava/awt/Cursor;I)V
flags: (0x0104) ACC_PROTECTED, ACC_NATIVE
MethodParameters:
Name Flags
nativeCtxt
c
cType
}
SourceFile: "WDragSourceContextPeer.java"