public class javafx.scene.control.ContextMenu extends javafx.scene.control.PopupControl
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javafx.scene.control.ContextMenu
  super_class: javafx.scene.control.PopupControl
{
  private boolean showRelativeToWindow;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private javafx.beans.property.ObjectProperty<javafx.event.EventHandler<javafx.event.ActionEvent>> onAction;
    descriptor: Ljavafx/beans/property/ObjectProperty;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljavafx/beans/property/ObjectProperty<Ljavafx/event/EventHandler<Ljavafx/event/ActionEvent;>;>;

  private final javafx.collections.ObservableList<javafx.scene.control.MenuItem> items;
    descriptor: Ljavafx/collections/ObservableList;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljavafx/collections/ObservableList<Ljavafx/scene/control/MenuItem;>;

  private static final java.lang.String DEFAULT_STYLE_CLASS;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "context-menu"

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 143
            aload 0 /* this */
            invokespecial javafx.scene.control.PopupControl.<init>:()V
         1: .line 130
            aload 0 /* this */
            iconst_0
            putfield javafx.scene.control.ContextMenu.showRelativeToWindow:Z
         2: .line 172
            aload 0 /* this */
            new javafx.scene.control.ContextMenu$1
            dup
            aload 0 /* this */
            invokespecial javafx.scene.control.ContextMenu$1.<init>:(Ljavafx/scene/control/ContextMenu;)V
            putfield javafx.scene.control.ContextMenu.onAction:Ljavafx/beans/property/ObjectProperty;
         3: .line 191
            aload 0 /* this */
            new javafx.scene.control.ContextMenu$2
            dup
            aload 0 /* this */
            invokespecial javafx.scene.control.ContextMenu$2.<init>:(Ljavafx/scene/control/ContextMenu;)V
            putfield javafx.scene.control.ContextMenu.items:Ljavafx/collections/ObservableList;
         4: .line 144
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.getStyleClass:()Ljavafx/collections/ObservableList;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "context-menu"
            aastore
            invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
            pop
         5: .line 145
            aload 0 /* this */
            iconst_1
            invokevirtual javafx.scene.control.ContextMenu.setAutoHide:(Z)V
         6: .line 146
            aload 0 /* this */
            iconst_0
            invokevirtual javafx.scene.control.ContextMenu.setConsumeAutoHidingEvents:(Z)V
         7: .line 147
            return
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavafx/scene/control/ContextMenu;

  public void <init>(javafx.scene.control.MenuItem[]);
    descriptor: ([Ljavafx/scene/control/MenuItem;)V
    flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // javafx.scene.control.MenuItem[] items
         0: .line 154
            aload 0 /* this */
            invokespecial javafx.scene.control.ContextMenu.<init>:()V
         1: .line 155
            aload 0 /* this */
            getfield javafx.scene.control.ContextMenu.items:Ljavafx/collections/ObservableList;
            aload 1 /* items */
            invokeinterface javafx.collections.ObservableList.addAll:([Ljava/lang/Object;)Z
            pop
         2: .line 156
            return
        end local 1 // javafx.scene.control.MenuItem[] items
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Ljavafx/scene/control/ContextMenu;
            0    3     1  items  [Ljavafx/scene/control/MenuItem;
    MethodParameters:
       Name  Flags
      items  

  public final void setOnAction(javafx.event.EventHandler<javafx.event.ActionEvent>);
    descriptor: (Ljavafx/event/EventHandler;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // javafx.event.EventHandler value
         0: .line 187
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.onActionProperty:()Ljavafx/beans/property/ObjectProperty;
            aload 1 /* value */
            invokevirtual javafx.beans.property.ObjectProperty.set:(Ljava/lang/Object;)V
            return
        end local 1 // javafx.event.EventHandler value
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljavafx/scene/control/ContextMenu;
            0    1     1  value  Ljavafx/event/EventHandler<Ljavafx/event/ActionEvent;>;
    Signature: (Ljavafx/event/EventHandler<Ljavafx/event/ActionEvent;>;)V
    MethodParameters:
       Name  Flags
      value  

  public final javafx.event.EventHandler<javafx.event.ActionEvent> getOnAction();
    descriptor: ()Ljavafx/event/EventHandler;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 188
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.onActionProperty:()Ljavafx/beans/property/ObjectProperty;
            invokevirtual javafx.beans.property.ObjectProperty.get:()Ljava/lang/Object;
            checkcast javafx.event.EventHandler
            areturn
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/ContextMenu;
    Signature: ()Ljavafx/event/EventHandler<Ljavafx/event/ActionEvent;>;

  public final javafx.beans.property.ObjectProperty<javafx.event.EventHandler<javafx.event.ActionEvent>> onActionProperty();
    descriptor: ()Ljavafx/beans/property/ObjectProperty;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 189
            aload 0 /* this */
            getfield javafx.scene.control.ContextMenu.onAction:Ljavafx/beans/property/ObjectProperty;
            areturn
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/ContextMenu;
    Signature: ()Ljavafx/beans/property/ObjectProperty<Ljavafx/event/EventHandler<Ljavafx/event/ActionEvent;>;>;

  public final javafx.collections.ObservableList<javafx.scene.control.MenuItem> getItems();
    descriptor: ()Ljavafx/collections/ObservableList;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 224
            aload 0 /* this */
            getfield javafx.scene.control.ContextMenu.items:Ljavafx/collections/ObservableList;
            areturn
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/ContextMenu;
    Signature: ()Ljavafx/collections/ObservableList<Ljavafx/scene/control/MenuItem;>;

  public void show(javafx.scene.Node, javafx.geometry.Side, double, double);
    descriptor: (Ljavafx/scene/Node;Ljavafx/geometry/Side;DD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=10, args_size=5
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // javafx.scene.Node anchor
        start local 2 // javafx.geometry.Side side
        start local 3 // double dx
        start local 5 // double dy
         0: .line 250
            aload 1 /* anchor */
            ifnonnull 1
            return
         1: .line 251
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.getItems:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.size:()I
            ifne 2
            return
         2: .line 253
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.getScene:()Ljavafx/scene/Scene;
            aload 1 /* anchor */
            invokevirtual javafx.scene.Node.getEffectiveNodeOrientation:()Ljavafx/geometry/NodeOrientation;
            invokevirtual javafx.scene.Scene.setNodeOrientation:(Ljavafx/geometry/NodeOrientation;)V
         3: .line 257
            aload 2 /* side */
            getstatic javafx.geometry.Side.LEFT:Ljavafx/geometry/Side;
            if_acmpne 4
            getstatic javafx.geometry.HPos.LEFT:Ljavafx/geometry/HPos;
            goto 6
      StackMap locals:
      StackMap stack:
         4: aload 2 /* side */
            getstatic javafx.geometry.Side.RIGHT:Ljavafx/geometry/Side;
            if_acmpne 5
            getstatic javafx.geometry.HPos.RIGHT:Ljavafx/geometry/HPos;
            goto 6
      StackMap locals:
      StackMap stack:
         5: getstatic javafx.geometry.HPos.CENTER:Ljavafx/geometry/HPos;
      StackMap locals:
      StackMap stack: javafx.geometry.HPos
         6: astore 7 /* hpos */
        start local 7 // javafx.geometry.HPos hpos
         7: .line 258
            aload 2 /* side */
            getstatic javafx.geometry.Side.TOP:Ljavafx/geometry/Side;
            if_acmpne 8
            getstatic javafx.geometry.VPos.TOP:Ljavafx/geometry/VPos;
            goto 10
      StackMap locals: javafx.geometry.HPos
      StackMap stack:
         8: aload 2 /* side */
            getstatic javafx.geometry.Side.BOTTOM:Ljavafx/geometry/Side;
            if_acmpne 9
            getstatic javafx.geometry.VPos.BOTTOM:Ljavafx/geometry/VPos;
            goto 10
      StackMap locals:
      StackMap stack:
         9: getstatic javafx.geometry.VPos.CENTER:Ljavafx/geometry/VPos;
      StackMap locals:
      StackMap stack: javafx.geometry.VPos
        10: astore 8 /* vpos */
        start local 8 // javafx.geometry.VPos vpos
        11: .line 261
            aload 1 /* anchor */
        12: .line 262
            aload 0 /* this */
            ldc -1.0
            invokevirtual javafx.scene.control.ContextMenu.prefWidth:(D)D
            aload 0 /* this */
            ldc -1.0
            invokevirtual javafx.scene.control.ContextMenu.prefHeight:(D)D
        13: .line 263
            aload 7 /* hpos */
            aload 8 /* vpos */
            dload 3 /* dx */
            dload 5 /* dy */
            iconst_1
        14: .line 261
            invokestatic com.sun.javafx.util.Utils.pointRelativeTo:(Ljavafx/scene/Node;DDLjavafx/geometry/HPos;Ljavafx/geometry/VPos;DDZ)Ljavafx/geometry/Point2D;
            astore 9 /* point */
        start local 9 // javafx.geometry.Point2D point
        15: .line 264
            aload 0 /* this */
            aload 1 /* anchor */
            aload 9 /* point */
            invokevirtual javafx.geometry.Point2D.getX:()D
            aload 9 /* point */
            invokevirtual javafx.geometry.Point2D.getY:()D
            invokevirtual javafx.scene.control.ContextMenu.doShow:(Ljavafx/scene/Node;DD)V
        16: .line 265
            return
        end local 9 // javafx.geometry.Point2D point
        end local 8 // javafx.geometry.VPos vpos
        end local 7 // javafx.geometry.HPos hpos
        end local 5 // double dy
        end local 3 // double dx
        end local 2 // javafx.geometry.Side side
        end local 1 // javafx.scene.Node anchor
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   17     0    this  Ljavafx/scene/control/ContextMenu;
            0   17     1  anchor  Ljavafx/scene/Node;
            0   17     2    side  Ljavafx/geometry/Side;
            0   17     3      dx  D
            0   17     5      dy  D
            7   17     7    hpos  Ljavafx/geometry/HPos;
           11   17     8    vpos  Ljavafx/geometry/VPos;
           15   17     9   point  Ljavafx/geometry/Point2D;
    MethodParameters:
        Name  Flags
      anchor  
      side    
      dx      
      dy      

  public void show(javafx.scene.Node, double, double);
    descriptor: (Ljavafx/scene/Node;DD)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // javafx.scene.Node anchor
        start local 2 // double screenX
        start local 4 // double screenY
         0: .line 279
            aload 1 /* anchor */
            ifnonnull 1
            return
         1: .line 280
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.getItems:()Ljavafx/collections/ObservableList;
            invokeinterface javafx.collections.ObservableList.size:()I
            ifne 2
            return
         2: .line 281
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.getScene:()Ljavafx/scene/Scene;
            aload 1 /* anchor */
            invokevirtual javafx.scene.Node.getEffectiveNodeOrientation:()Ljavafx/geometry/NodeOrientation;
            invokevirtual javafx.scene.Scene.setNodeOrientation:(Ljavafx/geometry/NodeOrientation;)V
         3: .line 282
            aload 0 /* this */
            aload 1 /* anchor */
            dload 2 /* screenX */
            dload 4 /* screenY */
            invokevirtual javafx.scene.control.ContextMenu.doShow:(Ljavafx/scene/Node;DD)V
         4: .line 283
            return
        end local 4 // double screenY
        end local 2 // double screenX
        end local 1 // javafx.scene.Node anchor
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Ljavafx/scene/control/ContextMenu;
            0    5     1   anchor  Ljavafx/scene/Node;
            0    5     2  screenX  D
            0    5     4  screenY  D
    MethodParameters:
         Name  Flags
      anchor   
      screenX  
      screenY  

  public void hide();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 292
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.isShowing:()Z
            ifne 1
            return
         1: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new javafx.event.Event
            dup
            getstatic javafx.scene.control.Menu.ON_HIDING:Ljavafx/event/EventType;
            invokespecial javafx.event.Event.<init>:(Ljavafx/event/EventType;)V
            invokestatic javafx.event.Event.fireEvent:(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V
         2: .line 294
            aload 0 /* this */
            invokespecial javafx.scene.control.PopupControl.hide:()V
         3: .line 295
            aload 0 /* this */
            new javafx.event.Event
            dup
            getstatic javafx.scene.control.Menu.ON_HIDDEN:Ljavafx/event/EventType;
            invokespecial javafx.event.Event.<init>:(Ljavafx/event/EventType;)V
            invokestatic javafx.event.Event.fireEvent:(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V
         4: .line 296
            return
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Ljavafx/scene/control/ContextMenu;

  protected javafx.scene.control.Skin<?> createDefaultSkin();
    descriptor: ()Ljavafx/scene/control/Skin;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 300
            new javafx.scene.control.skin.ContextMenuSkin
            dup
            aload 0 /* this */
            invokespecial javafx.scene.control.skin.ContextMenuSkin.<init>:(Ljavafx/scene/control/ContextMenu;)V
            areturn
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/ContextMenu;
    Signature: ()Ljavafx/scene/control/Skin<*>;

  final boolean isShowRelativeToWindow();
    descriptor: ()Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javafx.scene.control.ContextMenu this
         0: .line 311
            aload 0 /* this */
            getfield javafx.scene.control.ContextMenu.showRelativeToWindow:Z
            ireturn
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavafx/scene/control/ContextMenu;

  final void setShowRelativeToWindow(boolean);
    descriptor: (Z)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // boolean value
         0: .line 312
            aload 0 /* this */
            iload 1 /* value */
            putfield javafx.scene.control.ContextMenu.showRelativeToWindow:Z
            return
        end local 1 // boolean value
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Ljavafx/scene/control/ContextMenu;
            0    1     1  value  Z
    MethodParameters:
       Name  Flags
      value  

  private void doShow(javafx.scene.Node, double, double);
    descriptor: (Ljavafx/scene/Node;DD)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // javafx.scene.control.ContextMenu this
        start local 1 // javafx.scene.Node anchor
        start local 2 // double screenX
        start local 4 // double screenY
         0: .line 315
            aload 0 /* this */
            new javafx.event.Event
            dup
            getstatic javafx.scene.control.Menu.ON_SHOWING:Ljavafx/event/EventType;
            invokespecial javafx.event.Event.<init>:(Ljavafx/event/EventType;)V
            invokestatic javafx.event.Event.fireEvent:(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V
         1: .line 316
            aload 0 /* this */
            invokevirtual javafx.scene.control.ContextMenu.isShowRelativeToWindow:()Z
            ifeq 11
         2: .line 317
            aload 1 /* anchor */
            ifnonnull 3
            aconst_null
            goto 4
      StackMap locals:
      StackMap stack:
         3: aload 1 /* anchor */
            invokevirtual javafx.scene.Node.getScene:()Ljavafx/scene/Scene;
      StackMap locals:
      StackMap stack: javafx.scene.Scene
         4: astore 6 /* scene */
        start local 6 // javafx.scene.Scene scene
         5: .line 318
            aload 6 /* scene */
            ifnonnull 6
            aconst_null
            goto 7
      StackMap locals: javafx.scene.Scene
      StackMap stack:
         6: aload 6 /* scene */
            invokevirtual javafx.scene.Scene.getWindow:()Ljavafx/stage/Window;
      StackMap locals:
      StackMap stack: javafx.stage.Window
         7: astore 7 /* win */
        start local 7 // javafx.stage.Window win
         8: .line 319
            aload 7 /* win */
            ifnonnull 9
            return
         9: .line 320
      StackMap locals: javafx.stage.Window
      StackMap stack:
            aload 0 /* this */
            aload 7 /* win */
            dload 2 /* screenX */
            dload 4 /* screenY */
            invokespecial javafx.scene.control.PopupControl.show:(Ljavafx/stage/Window;DD)V
        end local 7 // javafx.stage.Window win
        end local 6 // javafx.scene.Scene scene
        10: .line 321
            goto 12
        11: .line 322
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* anchor */
            dload 2 /* screenX */
            dload 4 /* screenY */
            invokespecial javafx.scene.control.PopupControl.show:(Ljavafx/scene/Node;DD)V
        12: .line 324
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new javafx.event.Event
            dup
            getstatic javafx.scene.control.Menu.ON_SHOWN:Ljavafx/event/EventType;
            invokespecial javafx.event.Event.<init>:(Ljavafx/event/EventType;)V
            invokestatic javafx.event.Event.fireEvent:(Ljavafx/event/EventTarget;Ljavafx/event/Event;)V
        13: .line 325
            return
        end local 4 // double screenY
        end local 2 // double screenX
        end local 1 // javafx.scene.Node anchor
        end local 0 // javafx.scene.control.ContextMenu this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   14     0     this  Ljavafx/scene/control/ContextMenu;
            0   14     1   anchor  Ljavafx/scene/Node;
            0   14     2  screenX  D
            0   14     4  screenY  D
            5   10     6    scene  Ljavafx/scene/Scene;
            8   10     7      win  Ljavafx/stage/Window;
    MethodParameters:
         Name  Flags
      anchor   
      screenX  
      screenY  

  static void access$0(javafx.scene.control.ContextMenu, javafx.event.EventType, javafx.event.EventHandler);
    descriptor: (Ljavafx/scene/control/ContextMenu;Ljavafx/event/EventType;Ljavafx/event/EventHandler;)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual javafx.scene.control.ContextMenu.setEventHandler:(Ljavafx/event/EventType;Ljavafx/event/EventHandler;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "ContextMenu.java"
NestMembers:
  javafx.scene.control.ContextMenu$1  javafx.scene.control.ContextMenu$2
InnerClasses:
  javafx.scene.control.ContextMenu$1
  javafx.scene.control.ContextMenu$2
    RuntimeVisibleAnnotations: 
      com.sun.javafx.beans.IDProperty(value = "id")