public class sun.awt.X11.XMenuWindow extends sun.awt.X11.XBaseMenuWindow
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.awt.X11.XMenuWindow
  super_class: sun.awt.X11.XBaseMenuWindow
{
  private static sun.util.logging.PlatformLogger log;
    descriptor: Lsun/util/logging/PlatformLogger;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private sun.awt.X11.XMenuPeer menuPeer;
    descriptor: Lsun/awt/X11/XMenuPeer;
    flags: (0x0002) ACC_PRIVATE

  private static final int WINDOW_SPACING_LEFT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_SPACING_RIGHT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_SPACING_TOP;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_SPACING_BOTTOM;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_ITEM_INDENT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 15

  private static final int WINDOW_ITEM_MARGIN_LEFT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_ITEM_MARGIN_RIGHT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_ITEM_MARGIN_TOP;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_ITEM_MARGIN_BOTTOM;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int WINDOW_SHORTCUT_SPACING;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 10

  private static final int CHECKMARK_SIZE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 128

  private static final int[] CHECKMARK_X;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int[] CHECKMARK_Y;
    descriptor: [I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 45
            ldc "sun.awt.X11.XMenuWindow"
            invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
            putstatic sun.awt.X11.XMenuWindow.log:Lsun/util/logging/PlatformLogger;
         1: .line 70
            bipush 7
            newarray 10
            dup
            iconst_0
            iconst_1
            iastore
            dup
            iconst_1
            bipush 25
            iastore
            dup
            iconst_2
            bipush 56
            iastore
            dup
            iconst_3
            bipush 124
            iastore
            dup
            iconst_4
            bipush 124
            iastore
            dup
            iconst_5
            bipush 85
            iastore
            dup
            bipush 6
            bipush 64
            iastore
            putstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
         2: .line 71
            bipush 7
            newarray 10
            dup
            iconst_0
            bipush 59
            iastore
            dup
            iconst_1
            bipush 35
            iastore
            dup
            iconst_2
            bipush 67
            iastore
            dup
            iconst_4
            bipush 12
            iastore
            dup
            iconst_5
            bipush 66
            iastore
            dup
            bipush 6
            bipush 123
            iastore
            putstatic sun.awt.X11.XMenuWindow.CHECKMARK_Y:[I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  void <init>(sun.awt.X11.XMenuPeer);
    descriptor: (Lsun/awt/X11/XMenuPeer;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // sun.awt.X11.XMenuPeer menuPeer
         0: .line 162
            aload 0 /* this */
            invokespecial sun.awt.X11.XBaseMenuWindow.<init>:()V
         1: .line 163
            aload 1 /* menuPeer */
            ifnull 7
         2: .line 164
            aload 0 /* this */
            aload 1 /* menuPeer */
            putfield sun.awt.X11.XMenuWindow.menuPeer:Lsun/awt/X11/XMenuPeer;
         3: .line 165
            aload 0 /* this */
            aload 1 /* menuPeer */
            invokevirtual sun.awt.X11.XMenuPeer.getContainer:()Lsun/awt/X11/XBaseMenuWindow;
            getfield sun.awt.X11.XBaseMenuWindow.target:Ljava/awt/Component;
            putfield sun.awt.X11.XMenuWindow.target:Ljava/awt/Component;
         4: .line 167
            aconst_null
            astore 2 /* targetItemVector */
        start local 2 // java.util.Vector targetItemVector
         5: .line 168
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getMenuTargetItems:()Ljava/util/Vector;
            astore 2 /* targetItemVector */
         6: .line 169
            aload 0 /* this */
            aload 2 /* targetItemVector */
            invokevirtual sun.awt.X11.XMenuWindow.reloadItems:(Ljava/util/Vector;)V
        end local 2 // java.util.Vector targetItemVector
         7: .line 171
      StackMap locals: sun.awt.X11.XMenuWindow sun.awt.X11.XMenuPeer
      StackMap stack:
            return
        end local 1 // sun.awt.X11.XMenuPeer menuPeer
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lsun/awt/X11/XMenuWindow;
            0    8     1          menuPeer  Lsun/awt/X11/XMenuPeer;
            5    7     2  targetItemVector  Ljava/util/Vector;
    MethodParameters:
          Name  Flags
      menuPeer  

  void postInit(sun.awt.X11.XCreateWindowParams);
    descriptor: (Lsun/awt/X11/XCreateWindowParams;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // sun.awt.X11.XCreateWindowParams params
         0: .line 182
            aload 0 /* this */
            aload 1 /* params */
            invokespecial sun.awt.X11.XBaseMenuWindow.postInit:(Lsun/awt/X11/XCreateWindowParams;)V
         1: .line 186
            return
        end local 1 // sun.awt.X11.XCreateWindowParams params
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/awt/X11/XMenuWindow;
            0    2     1  params  Lsun/awt/X11/XCreateWindowParams;
    MethodParameters:
        Name  Flags
      params  

  protected sun.awt.X11.XBaseMenuWindow getParentMenuWindow();
    descriptor: ()Lsun/awt/X11/XBaseMenuWindow;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 198
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.menuPeer:Lsun/awt/X11/XMenuPeer;
            ifnull 1
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.menuPeer:Lsun/awt/X11/XMenuPeer;
            invokevirtual sun.awt.X11.XMenuPeer.getContainer:()Lsun/awt/X11/XBaseMenuWindow;
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: sun.awt.X11.XBaseMenuWindow
         2: areturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/awt/X11/XMenuWindow;

  protected sun.awt.X11.XMenuWindow$MappingData map();
    descriptor: ()Lsun/awt/X11/XMenuWindow$MappingData;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=9, locals=23, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 207
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.isCreated:()Z
            ifne 3
         1: .line 208
            new sun.awt.X11.XMenuWindow$MappingData
            dup
            iconst_0
            anewarray sun.awt.X11.XMenuItemPeer
            new java.awt.Rectangle
            dup
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            new java.awt.Dimension
            dup
            iconst_0
            iconst_0
            invokespecial java.awt.Dimension.<init>:(II)V
            iconst_0
            iconst_0
            iconst_0
            invokespecial sun.awt.X11.XMenuWindow$MappingData.<init>:([Lsun/awt/X11/XMenuItemPeer;Ljava/awt/Rectangle;Ljava/awt/Dimension;III)V
            astore 2 /* mappingData */
        start local 2 // sun.awt.X11.XMenuWindow$MappingData mappingData
         2: .line 209
            aload 2 /* mappingData */
            areturn
        end local 2 // sun.awt.X11.XMenuWindow$MappingData mappingData
         3: .line 211
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.copyItems:()[Lsun/awt/X11/XMenuItemPeer;
            astore 2 /* itemVector */
        start local 2 // sun.awt.X11.XMenuItemPeer[] itemVector
         4: .line 212
            aload 2 /* itemVector */
            arraylength
            istore 1 /* itemCnt */
        start local 1 // int itemCnt
         5: .line 214
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getCaptionSize:()Ljava/awt/Dimension;
            astore 3 /* captionSize */
        start local 3 // java.awt.Dimension captionSize
         6: .line 215
            aload 3 /* captionSize */
            ifnull 7
            aload 3 /* captionSize */
            getfield java.awt.Dimension.width:I
            goto 8
      StackMap locals: int sun.awt.X11.XMenuItemPeer[] java.awt.Dimension
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 4 /* maxWidth */
        start local 4 // int maxWidth
         9: .line 216
            iconst_0
            istore 5 /* maxLeftIndent */
        start local 5 // int maxLeftIndent
        10: .line 217
            iconst_0
            istore 6 /* maxRightIndent */
        start local 6 // int maxRightIndent
        11: .line 218
            iconst_0
            istore 7 /* maxShortcutWidth */
        start local 7 // int maxShortcutWidth
        12: .line 219
            iload 1 /* itemCnt */
            anewarray sun.awt.X11.XMenuItemPeer$TextMetrics
            astore 8 /* itemMetrics */
        start local 8 // sun.awt.X11.XMenuItemPeer$TextMetrics[] itemMetrics
        13: .line 220
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        14: goto 27
        15: .line 221
      StackMap locals: sun.awt.X11.XMenuWindow int sun.awt.X11.XMenuItemPeer[] java.awt.Dimension int int int int sun.awt.X11.XMenuItemPeer$TextMetrics[] int
      StackMap stack:
            aload 2 /* itemVector */
            iload 9 /* i */
            aaload
            pop
        16: .line 222
            aload 8 /* itemMetrics */
            iload 9 /* i */
            aload 2 /* itemVector */
            iload 9 /* i */
            aaload
            invokevirtual sun.awt.X11.XMenuItemPeer.getTextMetrics:()Lsun/awt/X11/XMenuItemPeer$TextMetrics;
            aastore
        17: .line 223
            aload 8 /* itemMetrics */
            iload 9 /* i */
            aaload
            invokevirtual sun.awt.X11.XMenuItemPeer$TextMetrics.getTextDimension:()Ljava/awt/Dimension;
            astore 10 /* dim */
        start local 10 // java.awt.Dimension dim
        18: .line 224
            aload 10 /* dim */
            ifnull 26
        19: .line 225
            aload 2 /* itemVector */
            iload 9 /* i */
            aaload
            instanceof sun.awt.X11.XCheckboxMenuItemPeer
            ifeq 22
        20: .line 226
            iload 5 /* maxLeftIndent */
            aload 10 /* dim */
            getfield java.awt.Dimension.height:I
            invokestatic java.lang.Math.max:(II)I
            istore 5 /* maxLeftIndent */
        21: .line 227
            goto 24
      StackMap locals: java.awt.Dimension
      StackMap stack:
        22: aload 2 /* itemVector */
            iload 9 /* i */
            aaload
            instanceof sun.awt.X11.XMenuPeer
            ifeq 24
        23: .line 228
            iload 6 /* maxRightIndent */
            aload 10 /* dim */
            getfield java.awt.Dimension.height:I
            invokestatic java.lang.Math.max:(II)I
            istore 6 /* maxRightIndent */
        24: .line 230
      StackMap locals:
      StackMap stack:
            iload 4 /* maxWidth */
            aload 10 /* dim */
            getfield java.awt.Dimension.width:I
            invokestatic java.lang.Math.max:(II)I
            istore 4 /* maxWidth */
        25: .line 231
            iload 7 /* maxShortcutWidth */
            aload 8 /* itemMetrics */
            iload 9 /* i */
            aaload
            invokevirtual sun.awt.X11.XMenuItemPeer$TextMetrics.getShortcutWidth:()I
            invokestatic java.lang.Math.max:(II)I
            istore 7 /* maxShortcutWidth */
        end local 10 // java.awt.Dimension dim
        26: .line 220
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        27: iload 9 /* i */
            iload 1 /* itemCnt */
            if_icmplt 15
        end local 9 // int i
        28: .line 235
            iconst_2
            istore 9 /* nextOffset */
        start local 9 // int nextOffset
        29: .line 236
            iconst_4
            iload 5 /* maxLeftIndent */
            iadd
            iload 4 /* maxWidth */
            iadd
            istore 10 /* shortcutOrigin */
        start local 10 // int shortcutOrigin
        30: .line 237
            iload 7 /* maxShortcutWidth */
            ifle 32
        31: .line 238
            iinc 10 /* shortcutOrigin */ 10
        32: .line 240
      StackMap locals: int
      StackMap stack:
            iload 10 /* shortcutOrigin */
            iload 7 /* maxShortcutWidth */
            iadd
            istore 11 /* rightMarkOrigin */
        start local 11 // int rightMarkOrigin
        33: .line 241
            iload 11 /* rightMarkOrigin */
            iload 6 /* maxRightIndent */
            iadd
            iconst_2
            iadd
            istore 12 /* itemWidth */
        start local 12 // int itemWidth
        34: .line 242
            iconst_2
            iload 12 /* itemWidth */
            iadd
            iconst_2
            iadd
            istore 13 /* width */
        start local 13 // int width
        35: .line 244
            aconst_null
            astore 14 /* captionRect */
        start local 14 // java.awt.Rectangle captionRect
        36: .line 245
            aload 3 /* captionSize */
            ifnull 40
        37: .line 246
            new java.awt.Rectangle
            dup
            iconst_2
            iload 9 /* nextOffset */
            iload 12 /* itemWidth */
            aload 3 /* captionSize */
            getfield java.awt.Dimension.height:I
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 14 /* captionRect */
        38: .line 247
            iload 9 /* nextOffset */
            aload 3 /* captionSize */
            getfield java.awt.Dimension.height:I
            iadd
            istore 9 /* nextOffset */
        39: .line 248
            goto 41
        40: .line 249
      StackMap locals: sun.awt.X11.XMenuWindow int sun.awt.X11.XMenuItemPeer[] java.awt.Dimension int int int int sun.awt.X11.XMenuItemPeer$TextMetrics[] int int int int int java.awt.Rectangle
      StackMap stack:
            new java.awt.Rectangle
            dup
            iconst_2
            iload 9 /* nextOffset */
            iload 4 /* maxWidth */
            iconst_0
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 14 /* captionRect */
        41: .line 252
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 15 /* i */
        start local 15 // int i
        42: goto 58
        43: .line 253
      StackMap locals: int
      StackMap stack:
            aload 2 /* itemVector */
            iload 15 /* i */
            aaload
            astore 16 /* item */
        start local 16 // sun.awt.X11.XMenuItemPeer item
        44: .line 254
            aload 8 /* itemMetrics */
            iload 15 /* i */
            aaload
            astore 17 /* metrics */
        start local 17 // sun.awt.X11.XMenuItemPeer$TextMetrics metrics
        45: .line 255
            aload 17 /* metrics */
            invokevirtual sun.awt.X11.XMenuItemPeer$TextMetrics.getTextDimension:()Ljava/awt/Dimension;
            astore 18 /* dim */
        start local 18 // java.awt.Dimension dim
        46: .line 256
            aload 18 /* dim */
            ifnull 54
        47: .line 257
            iconst_2
            aload 18 /* dim */
            getfield java.awt.Dimension.height:I
            iadd
            iconst_2
            iadd
            istore 19 /* itemHeight */
        start local 19 // int itemHeight
        48: .line 258
            new java.awt.Rectangle
            dup
            iconst_2
            iload 9 /* nextOffset */
            iload 12 /* itemWidth */
            iload 19 /* itemHeight */
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 20 /* bounds */
        start local 20 // java.awt.Rectangle bounds
        49: .line 259
            iload 19 /* itemHeight */
            aload 18 /* dim */
            getfield java.awt.Dimension.height:I
            iadd
            iconst_2
            idiv
            aload 17 /* metrics */
            invokevirtual sun.awt.X11.XMenuItemPeer$TextMetrics.getTextBaseline:()I
            isub
            istore 21 /* y */
        start local 21 // int y
        50: .line 260
            new java.awt.Point
            dup
            iconst_4
            iload 5 /* maxLeftIndent */
            iadd
            iload 9 /* nextOffset */
            iload 21 /* y */
            iadd
            invokespecial java.awt.Point.<init>:(II)V
            astore 22 /* textOrigin */
        start local 22 // java.awt.Point textOrigin
        51: .line 261
            iload 9 /* nextOffset */
            iload 19 /* itemHeight */
            iadd
            istore 9 /* nextOffset */
        52: .line 262
            aload 16 /* item */
            aload 20 /* bounds */
            aload 22 /* textOrigin */
            invokevirtual sun.awt.X11.XMenuItemPeer.map:(Ljava/awt/Rectangle;Ljava/awt/Point;)V
        end local 22 // java.awt.Point textOrigin
        end local 21 // int y
        end local 20 // java.awt.Rectangle bounds
        end local 19 // int itemHeight
        53: .line 263
            goto 57
        54: .line 266
      StackMap locals: sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Dimension
      StackMap stack:
            new java.awt.Rectangle
            dup
            iconst_2
            iload 9 /* nextOffset */
            iconst_0
            iconst_0
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            astore 19 /* bounds */
        start local 19 // java.awt.Rectangle bounds
        55: .line 267
            new java.awt.Point
            dup
            iconst_4
            iload 5 /* maxLeftIndent */
            iadd
            iload 9 /* nextOffset */
            invokespecial java.awt.Point.<init>:(II)V
            astore 20 /* textOrigin */
        start local 20 // java.awt.Point textOrigin
        56: .line 268
            aload 16 /* item */
            aload 19 /* bounds */
            aload 20 /* textOrigin */
            invokevirtual sun.awt.X11.XMenuItemPeer.map:(Ljava/awt/Rectangle;Ljava/awt/Point;)V
        end local 20 // java.awt.Point textOrigin
        end local 19 // java.awt.Rectangle bounds
        end local 18 // java.awt.Dimension dim
        end local 17 // sun.awt.X11.XMenuItemPeer$TextMetrics metrics
        end local 16 // sun.awt.X11.XMenuItemPeer item
        57: .line 252
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        58: iload 15 /* i */
            iload 1 /* itemCnt */
            if_icmplt 43
        end local 15 // int i
        59: .line 271
            iload 9 /* nextOffset */
            iconst_2
            iadd
            istore 15 /* height */
        start local 15 // int height
        60: .line 272
            new sun.awt.X11.XMenuWindow$MappingData
            dup
            aload 2 /* itemVector */
            aload 14 /* captionRect */
            new java.awt.Dimension
            dup
            iload 13 /* width */
            iload 15 /* height */
            invokespecial java.awt.Dimension.<init>:(II)V
            iload 5 /* maxLeftIndent */
            iload 10 /* shortcutOrigin */
            iload 11 /* rightMarkOrigin */
            invokespecial sun.awt.X11.XMenuWindow$MappingData.<init>:([Lsun/awt/X11/XMenuItemPeer;Ljava/awt/Rectangle;Ljava/awt/Dimension;III)V
            astore 16 /* mappingData */
        start local 16 // sun.awt.X11.XMenuWindow$MappingData mappingData
        61: .line 273
            aload 16 /* mappingData */
            areturn
        end local 16 // sun.awt.X11.XMenuWindow$MappingData mappingData
        end local 15 // int height
        end local 14 // java.awt.Rectangle captionRect
        end local 13 // int width
        end local 12 // int itemWidth
        end local 11 // int rightMarkOrigin
        end local 10 // int shortcutOrigin
        end local 9 // int nextOffset
        end local 8 // sun.awt.X11.XMenuItemPeer$TextMetrics[] itemMetrics
        end local 7 // int maxShortcutWidth
        end local 6 // int maxRightIndent
        end local 5 // int maxLeftIndent
        end local 4 // int maxWidth
        end local 3 // java.awt.Dimension captionSize
        end local 2 // sun.awt.X11.XMenuItemPeer[] itemVector
        end local 1 // int itemCnt
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   62     0              this  Lsun/awt/X11/XMenuWindow;
            5   62     1           itemCnt  I
            2    3     2       mappingData  Lsun/awt/X11/XMenuWindow$MappingData;
            4   62     2        itemVector  [Lsun/awt/X11/XMenuItemPeer;
            6   62     3       captionSize  Ljava/awt/Dimension;
            9   62     4          maxWidth  I
           10   62     5     maxLeftIndent  I
           11   62     6    maxRightIndent  I
           12   62     7  maxShortcutWidth  I
           13   62     8       itemMetrics  [Lsun/awt/X11/XMenuItemPeer$TextMetrics;
           14   28     9                 i  I
           18   26    10               dim  Ljava/awt/Dimension;
           29   62     9        nextOffset  I
           30   62    10    shortcutOrigin  I
           33   62    11   rightMarkOrigin  I
           34   62    12         itemWidth  I
           35   62    13             width  I
           36   62    14       captionRect  Ljava/awt/Rectangle;
           42   59    15                 i  I
           44   57    16              item  Lsun/awt/X11/XMenuItemPeer;
           45   57    17           metrics  Lsun/awt/X11/XMenuItemPeer$TextMetrics;
           46   57    18               dim  Ljava/awt/Dimension;
           48   53    19        itemHeight  I
           49   53    20            bounds  Ljava/awt/Rectangle;
           50   53    21                 y  I
           51   53    22        textOrigin  Ljava/awt/Point;
           55   57    19            bounds  Ljava/awt/Rectangle;
           56   57    20        textOrigin  Ljava/awt/Point;
           60   62    15            height  I
           61   62    16       mappingData  Lsun/awt/X11/XMenuWindow$MappingData;

  protected java.awt.Rectangle getSubmenuBounds(java.awt.Rectangle, java.awt.Dimension);
    descriptor: (Ljava/awt/Rectangle;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=6, args_size=3
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // java.awt.Rectangle itemBounds
        start local 2 // java.awt.Dimension windowSize
         0: .line 280
            aload 0 /* this */
            aload 1 /* itemBounds */
            invokevirtual sun.awt.X11.XMenuWindow.toGlobal:(Ljava/awt/Rectangle;)Ljava/awt/Rectangle;
            astore 3 /* globalBounds */
        start local 3 // java.awt.Rectangle globalBounds
         1: .line 281
            invokestatic java.awt.Toolkit.getDefaultToolkit:()Ljava/awt/Toolkit;
            invokevirtual java.awt.Toolkit.getScreenSize:()Ljava/awt/Dimension;
            astore 4 /* screenSize */
        start local 4 // java.awt.Dimension screenSize
         2: .line 283
            aload 0 /* this */
            aload 3 /* globalBounds */
            aload 2 /* windowSize */
            aload 4 /* screenSize */
            invokevirtual sun.awt.X11.XMenuWindow.fitWindowRight:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
            astore 5 /* res */
        start local 5 // java.awt.Rectangle res
         3: .line 284
            aload 5 /* res */
            ifnull 5
         4: .line 285
            aload 5 /* res */
            areturn
         5: .line 287
      StackMap locals: java.awt.Rectangle java.awt.Dimension java.awt.Rectangle
      StackMap stack:
            aload 0 /* this */
            aload 3 /* globalBounds */
            aload 2 /* windowSize */
            aload 4 /* screenSize */
            invokevirtual sun.awt.X11.XMenuWindow.fitWindowBelow:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
            astore 5 /* res */
         6: .line 288
            aload 5 /* res */
            ifnull 8
         7: .line 289
            aload 5 /* res */
            areturn
         8: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* globalBounds */
            aload 2 /* windowSize */
            aload 4 /* screenSize */
            invokevirtual sun.awt.X11.XMenuWindow.fitWindowAbove:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
            astore 5 /* res */
         9: .line 292
            aload 5 /* res */
            ifnull 11
        10: .line 293
            aload 5 /* res */
            areturn
        11: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* globalBounds */
            aload 2 /* windowSize */
            aload 4 /* screenSize */
            invokevirtual sun.awt.X11.XMenuWindow.fitWindowLeft:(Ljava/awt/Rectangle;Ljava/awt/Dimension;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
            astore 5 /* res */
        12: .line 296
            aload 5 /* res */
            ifnull 14
        13: .line 297
            aload 5 /* res */
            areturn
        14: .line 299
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* windowSize */
            aload 4 /* screenSize */
            invokevirtual sun.awt.X11.XMenuWindow.fitWindowToScreen:(Ljava/awt/Dimension;Ljava/awt/Dimension;)Ljava/awt/Rectangle;
            areturn
        end local 5 // java.awt.Rectangle res
        end local 4 // java.awt.Dimension screenSize
        end local 3 // java.awt.Rectangle globalBounds
        end local 2 // java.awt.Dimension windowSize
        end local 1 // java.awt.Rectangle itemBounds
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lsun/awt/X11/XMenuWindow;
            0   15     1    itemBounds  Ljava/awt/Rectangle;
            0   15     2    windowSize  Ljava/awt/Dimension;
            1   15     3  globalBounds  Ljava/awt/Rectangle;
            2   15     4    screenSize  Ljava/awt/Dimension;
            3   15     5           res  Ljava/awt/Rectangle;
    MethodParameters:
            Name  Flags
      itemBounds  
      windowSize  

  protected void updateSize();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 307
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.resetMapping:()V
         1: .line 308
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.isShowing:()Z
            ifeq 3
         2: .line 309
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.target:Ljava/awt/Component;
            new sun.awt.X11.XMenuWindow$1
            dup
            aload 0 /* this */
            invokespecial sun.awt.X11.XMenuWindow$1.<init>:(Lsun/awt/X11/XMenuWindow;)V
            invokestatic sun.awt.X11.XToolkit.executeOnEventHandlerThread:(Ljava/lang/Object;Ljava/lang/Runnable;)V
         3: .line 316
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/awt/X11/XMenuWindow;

  protected java.awt.Dimension getCaptionSize();
    descriptor: ()Ljava/awt/Dimension;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 331
            aconst_null
            areturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XMenuWindow;

  protected void paintCaption(java.awt.Graphics, java.awt.Rectangle);
    descriptor: (Ljava/awt/Graphics;Ljava/awt/Rectangle;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=3, args_size=3
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // java.awt.Graphics g
        start local 2 // java.awt.Rectangle rect
         0: .line 340
            return
        end local 2 // java.awt.Rectangle rect
        end local 1 // java.awt.Graphics g
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XMenuWindow;
            0    1     1     g  Ljava/awt/Graphics;
            0    1     2  rect  Ljava/awt/Rectangle;
    MethodParameters:
      Name  Flags
      g     
      rect  

  sun.awt.X11.XMenuPeer getMenuPeer();
    descriptor: ()Lsun/awt/X11/XMenuPeer;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 352
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.menuPeer:Lsun/awt/X11/XMenuPeer;
            areturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XMenuWindow;

  java.util.Vector getMenuTargetItems();
    descriptor: ()Ljava/util/Vector;
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 360
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.menuPeer:Lsun/awt/X11/XMenuPeer;
            invokevirtual sun.awt.X11.XMenuPeer.getTargetItems:()Ljava/util/Vector;
            areturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XMenuWindow;

  java.awt.Dimension getDesiredSize();
    descriptor: ()Ljava/awt/Dimension;
    flags: (0x0000) 
    Code:
      stack=1, locals=2, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 367
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getMappingData:()Lsun/awt/X11/XBaseMenuWindow$MappingData;
            checkcast sun.awt.X11.XMenuWindow$MappingData
            astore 1 /* mappingData */
        start local 1 // sun.awt.X11.XMenuWindow$MappingData mappingData
         1: .line 368
            aload 1 /* mappingData */
            invokevirtual sun.awt.X11.XMenuWindow$MappingData.getDesiredSize:()Ljava/awt/Dimension;
            areturn
        end local 1 // sun.awt.X11.XMenuWindow$MappingData mappingData
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lsun/awt/X11/XMenuWindow;
            1    2     1  mappingData  Lsun/awt/X11/XMenuWindow$MappingData;

  boolean isCreated();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 375
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getWindow:()J
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XMenuWindow;

  boolean ensureCreated();
    descriptor: ()Z
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 382
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.isCreated:()Z
            ifne 6
         1: .line 383
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDelayedParams:()Lsun/awt/X11/XCreateWindowParams;
            astore 1 /* params */
        start local 1 // sun.awt.X11.XCreateWindowParams params
         2: .line 384
            aload 1 /* params */
            ldc "delayed"
            invokevirtual sun.awt.X11.XCreateWindowParams.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 385
            aload 1 /* params */
            ldc "overrideRedirect"
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
            invokevirtual sun.awt.X11.XCreateWindowParams.add:(Ljava/lang/Object;Ljava/lang/Object;)Lsun/awt/X11/XCreateWindowParams;
            pop
         4: .line 386
            aload 1 /* params */
            ldc "target"
            aload 0 /* this */
            getfield sun.awt.X11.XMenuWindow.target:Ljava/awt/Component;
            invokevirtual sun.awt.X11.XCreateWindowParams.add:(Ljava/lang/Object;Ljava/lang/Object;)Lsun/awt/X11/XCreateWindowParams;
            pop
         5: .line 387
            aload 0 /* this */
            aload 1 /* params */
            invokevirtual sun.awt.X11.XMenuWindow.init:(Lsun/awt/X11/XCreateWindowParams;)V
        end local 1 // sun.awt.X11.XCreateWindowParams params
         6: .line 389
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/awt/X11/XMenuWindow;
            2    6     1  params  Lsun/awt/X11/XCreateWindowParams;

  void show(java.awt.Rectangle);
    descriptor: (Ljava/awt/Rectangle;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // java.awt.Rectangle bounds
         0: .line 399
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.isCreated:()Z
            ifne 2
         1: .line 400
            return
         2: .line 402
      StackMap locals:
      StackMap stack:
            getstatic sun.awt.X11.XMenuWindow.log:Lsun/util/logging/PlatformLogger;
            getstatic sun.util.logging.PlatformLogger$Level.FINER:Lsun/util/logging/PlatformLogger$Level;
            invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
            ifeq 4
         3: .line 403
            getstatic sun.awt.X11.XMenuWindow.log:Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "showing menu window + "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getWindow:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
            ldc " at "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* bounds */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual sun.util.logging.PlatformLogger.finer:(Ljava/lang/String;)V
         4: .line 405
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         5: .line 407
            aload 0 /* this */
            aload 1 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 1 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 1 /* bounds */
            getfield java.awt.Rectangle.width:I
            aload 1 /* bounds */
            getfield java.awt.Rectangle.height:I
            invokevirtual sun.awt.X11.XMenuWindow.reshape:(IIII)V
         6: .line 408
            aload 0 /* this */
            iconst_1
            invokevirtual sun.awt.X11.XMenuWindow.xSetVisible:(Z)V
         7: .line 411
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.toFront:()V
         8: .line 412
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getFirstSelectableItem:()Lsun/awt/X11/XMenuItemPeer;
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.selectItem:(Lsun/awt/X11/XMenuItemPeer;Z)V
         9: .line 413
            goto 13
      StackMap locals:
      StackMap stack: java.lang.Throwable
        10: astore 2
        11: .line 414
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        12: .line 415
            aload 2
            athrow
        13: .line 414
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        14: .line 416
            return
        end local 1 // java.awt.Rectangle bounds
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   15     0    this  Lsun/awt/X11/XMenuWindow;
            0   15     1  bounds  Ljava/awt/Rectangle;
      Exception table:
        from    to  target  type
           5    10      10  any
    MethodParameters:
        Name  Flags
      bounds  

  void hide();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.awt.X11.XMenuWindow this
         0: .line 422
            aload 0 /* this */
            aconst_null
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.selectItem:(Lsun/awt/X11/XMenuItemPeer;Z)V
         1: .line 423
            aload 0 /* this */
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.xSetVisible:(Z)V
         2: .line 424
            return
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lsun/awt/X11/XMenuWindow;

  public void paint(java.awt.Graphics);
    descriptor: (Ljava/awt/Graphics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=22, args_size=2
        start local 0 // sun.awt.X11.XMenuWindow this
        start local 1 // java.awt.Graphics g
         0: .line 436
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.resetColors:()V
         1: .line 438
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getWidth:()I
            istore 2 /* width */
        start local 2 // int width
         2: .line 439
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getHeight:()I
            istore 3 /* height */
        start local 3 // int height
         3: .line 441
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.flush:()V
         4: .line 443
            aload 1 /* g */
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getBackgroundColor:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
         5: .line 444
            aload 1 /* g */
            iconst_1
            iconst_1
            iload 2 /* width */
            iconst_2
            isub
            iload 3 /* height */
            iconst_2
            isub
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
         6: .line 445
            aload 0 /* this */
            aload 1 /* g */
            iconst_0
            iconst_0
            iload 2 /* width */
            iload 3 /* height */
            iconst_1
            invokevirtual sun.awt.X11.XMenuWindow.draw3DRect:(Ljava/awt/Graphics;IIIIZ)V
         7: .line 448
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getMappingData:()Lsun/awt/X11/XBaseMenuWindow$MappingData;
            checkcast sun.awt.X11.XMenuWindow$MappingData
            astore 4 /* mappingData */
        start local 4 // sun.awt.X11.XMenuWindow$MappingData mappingData
         8: .line 451
            aload 0 /* this */
            aload 1 /* g */
            aload 4 /* mappingData */
            invokevirtual sun.awt.X11.XMenuWindow$MappingData.getCaptionRect:()Ljava/awt/Rectangle;
            invokevirtual sun.awt.X11.XMenuWindow.paintCaption:(Ljava/awt/Graphics;Ljava/awt/Rectangle;)V
         9: .line 454
            aload 4 /* mappingData */
            invokevirtual sun.awt.X11.XMenuWindow$MappingData.getItems:()[Lsun/awt/X11/XMenuItemPeer;
            astore 5 /* itemVector */
        start local 5 // sun.awt.X11.XMenuItemPeer[] itemVector
        10: .line 455
            aload 4 /* mappingData */
            invokevirtual sun.awt.X11.XMenuWindow$MappingData.getDesiredSize:()Ljava/awt/Dimension;
            pop
        11: .line 456
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getSelectedItem:()Lsun/awt/X11/XMenuItemPeer;
            astore 6 /* selectedItem */
        start local 6 // sun.awt.X11.XMenuItemPeer selectedItem
        12: .line 457
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        13: goto 76
        14: .line 458
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int
      StackMap stack:
            aload 5 /* itemVector */
            iload 7 /* i */
            aaload
            astore 8 /* item */
        start local 8 // sun.awt.X11.XMenuItemPeer item
        15: .line 459
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getTextMetrics:()Lsun/awt/X11/XMenuItemPeer$TextMetrics;
            astore 9 /* metrics */
        start local 9 // sun.awt.X11.XMenuItemPeer$TextMetrics metrics
        16: .line 460
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getBounds:()Ljava/awt/Rectangle;
            astore 10 /* bounds */
        start local 10 // java.awt.Rectangle bounds
        17: .line 461
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.isSeparator:()Z
            ifeq 20
        18: .line 462
            aload 0 /* this */
            aload 1 /* g */
            aload 10 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.height:I
            iconst_2
            idiv
            iadd
            aload 10 /* bounds */
            getfield java.awt.Rectangle.width:I
            iconst_2
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.draw3DRect:(Ljava/awt/Graphics;IIIIZ)V
        19: .line 463
            goto 75
        20: .line 465
      StackMap locals: sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle
      StackMap stack:
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getTargetFont:()Ljava/awt/Font;
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
        21: .line 466
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getTextOrigin:()Ljava/awt/Point;
            astore 11 /* textOrigin */
        start local 11 // java.awt.Point textOrigin
        22: .line 467
            aload 9 /* metrics */
            invokevirtual sun.awt.X11.XMenuItemPeer$TextMetrics.getTextDimension:()Ljava/awt/Dimension;
            astore 12 /* textDim */
        start local 12 // java.awt.Dimension textDim
        23: .line 468
            aload 8 /* item */
            aload 6 /* selectedItem */
            if_acmpne 27
        24: .line 469
            aload 1 /* g */
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getSelectedColor:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        25: .line 470
            aload 1 /* g */
            aload 10 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.width:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.height:I
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        26: .line 471
            aload 0 /* this */
            aload 1 /* g */
            aload 10 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.width:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.height:I
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.draw3DRect:(Ljava/awt/Graphics;IIIIZ)V
        27: .line 473
      StackMap locals: java.awt.Point java.awt.Dimension
      StackMap stack:
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.isTargetItemEnabled:()Z
            ifeq 28
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getForegroundColor:()Ljava/awt/Color;
            goto 29
      StackMap locals:
      StackMap stack: java.awt.Graphics
        28: aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDisabledColor:()Ljava/awt/Color;
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension
      StackMap stack: java.awt.Graphics java.awt.Color
        29: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        30: .line 474
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getTargetLabel:()Ljava/lang/String;
            aload 11 /* textOrigin */
            getfield java.awt.Point.x:I
            aload 11 /* textOrigin */
            getfield java.awt.Point.y:I
            invokevirtual java.awt.Graphics.drawString:(Ljava/lang/String;II)V
        31: .line 475
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.getShortcutText:()Ljava/lang/String;
            astore 13 /* shortcutText */
        start local 13 // java.lang.String shortcutText
        32: .line 476
            aload 13 /* shortcutText */
            ifnull 34
        33: .line 477
            aload 1 /* g */
            aload 13 /* shortcutText */
            aload 4 /* mappingData */
            invokevirtual sun.awt.X11.XMenuWindow$MappingData.getShortcutOrigin:()I
            aload 11 /* textOrigin */
            getfield java.awt.Point.y:I
            invokevirtual java.awt.Graphics.drawString:(Ljava/lang/String;II)V
        34: .line 479
      StackMap locals: java.lang.String
      StackMap stack:
            aload 8 /* item */
            instanceof sun.awt.X11.XMenuPeer
            ifeq 49
        35: .line 481
            aload 12 /* textDim */
            getfield java.awt.Dimension.height:I
            iconst_4
            imul
            iconst_5
            idiv
            istore 14 /* markWidth */
        start local 14 // int markWidth
        36: .line 482
            aload 12 /* textDim */
            getfield java.awt.Dimension.height:I
            iconst_4
            imul
            iconst_5
            idiv
            istore 15 /* markHeight */
        start local 15 // int markHeight
        37: .line 483
            aload 10 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.width:I
            iadd
            iload 14 /* markWidth */
            isub
            iconst_2
            isub
            iconst_2
            isub
            istore 16 /* markX */
        start local 16 // int markX
        38: .line 484
            aload 10 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.height:I
            iload 15 /* markHeight */
            isub
            iconst_2
            idiv
            iadd
            istore 17 /* markY */
        start local 17 // int markY
        39: .line 486
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.isTargetItemEnabled:()Z
            ifeq 40
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDarkShadowColor:()Ljava/awt/Color;
            goto 41
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int
      StackMap stack: java.awt.Graphics
        40: aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDisabledColor:()Ljava/awt/Color;
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int
      StackMap stack: java.awt.Graphics java.awt.Color
        41: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        42: .line 487
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 15 /* markHeight */
            iadd
            iload 16 /* markX */
            iload 14 /* markWidth */
            iadd
            iload 17 /* markY */
            iload 15 /* markHeight */
            iconst_2
            idiv
            iadd
            invokevirtual java.awt.Graphics.drawLine:(IIII)V
        43: .line 488
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.isTargetItemEnabled:()Z
            ifeq 44
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getLightShadowColor:()Ljava/awt/Color;
            goto 45
      StackMap locals:
      StackMap stack: java.awt.Graphics
        44: aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDisabledColor:()Ljava/awt/Color;
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int
      StackMap stack: java.awt.Graphics java.awt.Color
        45: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        46: .line 489
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 16 /* markX */
            iload 14 /* markWidth */
            iadd
            iload 17 /* markY */
            iload 15 /* markHeight */
            iconst_2
            idiv
            iadd
            invokevirtual java.awt.Graphics.drawLine:(IIII)V
        47: .line 490
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 15 /* markHeight */
            iadd
            invokevirtual java.awt.Graphics.drawLine:(IIII)V
        end local 17 // int markY
        end local 16 // int markX
        end local 15 // int markHeight
        end local 14 // int markWidth
        48: .line 491
            goto 75
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String
      StackMap stack:
        49: aload 8 /* item */
            instanceof sun.awt.X11.XCheckboxMenuItemPeer
            ifeq 75
        50: .line 493
            aload 12 /* textDim */
            getfield java.awt.Dimension.height:I
            iconst_4
            imul
            iconst_5
            idiv
            istore 14 /* markWidth */
        start local 14 // int markWidth
        51: .line 494
            aload 12 /* textDim */
            getfield java.awt.Dimension.height:I
            iconst_4
            imul
            iconst_5
            idiv
            istore 15 /* markHeight */
        start local 15 // int markHeight
        52: .line 495
            iconst_4
            istore 16 /* markX */
        start local 16 // int markX
        53: .line 496
            aload 10 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 10 /* bounds */
            getfield java.awt.Rectangle.height:I
            iload 15 /* markHeight */
            isub
            iconst_2
            idiv
            iadd
            istore 17 /* markY */
        start local 17 // int markY
        54: .line 497
            aload 8 /* item */
            checkcast sun.awt.X11.XCheckboxMenuItemPeer
            invokevirtual sun.awt.X11.XCheckboxMenuItemPeer.getTargetState:()Z
            istore 18 /* checkState */
        start local 18 // boolean checkState
        55: .line 499
            iload 18 /* checkState */
            ifeq 72
        56: .line 500
            aload 1 /* g */
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getSelectedColor:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        57: .line 501
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 14 /* markWidth */
            iload 15 /* markHeight */
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        58: .line 502
            aload 0 /* this */
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 14 /* markWidth */
            iload 15 /* markHeight */
            iconst_0
            invokevirtual sun.awt.X11.XMenuWindow.draw3DRect:(Ljava/awt/Graphics;IIIIZ)V
        59: .line 503
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
            arraylength
            newarray 10
            astore 19 /* px */
        start local 19 // int[] px
        60: .line 504
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
            arraylength
            newarray 10
            astore 20 /* py */
        start local 20 // int[] py
        61: .line 505
            iconst_0
            istore 21 /* j */
        start local 21 // int j
        62: goto 66
        63: .line 506
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int int int[] int[] int
      StackMap stack:
            aload 19 /* px */
            iload 21 /* j */
            iload 16 /* markX */
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
            iload 21 /* j */
            iaload
            iload 14 /* markWidth */
            imul
            sipush 128
            idiv
            iadd
            iastore
        64: .line 507
            aload 20 /* py */
            iload 21 /* j */
            iload 17 /* markY */
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_Y:[I
            iload 21 /* j */
            iaload
            iload 15 /* markHeight */
            imul
            sipush 128
            idiv
            iadd
            iastore
        65: .line 505
            iinc 21 /* j */ 1
      StackMap locals:
      StackMap stack:
        66: iload 21 /* j */
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
            arraylength
            if_icmplt 63
        end local 21 // int j
        67: .line 509
            aload 1 /* g */
            aload 8 /* item */
            invokevirtual sun.awt.X11.XMenuItemPeer.isTargetItemEnabled:()Z
            ifeq 68
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getForegroundColor:()Ljava/awt/Color;
            goto 69
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int int int[] int[]
      StackMap stack: java.awt.Graphics
        68: aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getDisabledColor:()Ljava/awt/Color;
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int sun.awt.X11.XMenuItemPeer sun.awt.X11.XMenuItemPeer$TextMetrics java.awt.Rectangle java.awt.Point java.awt.Dimension java.lang.String int int int int int int[] int[]
      StackMap stack: java.awt.Graphics java.awt.Color
        69: invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        70: .line 510
            aload 1 /* g */
            aload 19 /* px */
            aload 20 /* py */
            getstatic sun.awt.X11.XMenuWindow.CHECKMARK_X:[I
            arraylength
            invokevirtual java.awt.Graphics.fillPolygon:([I[II)V
        end local 20 // int[] py
        end local 19 // int[] px
        71: .line 511
            goto 75
        72: .line 512
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.getBackgroundColor:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        73: .line 513
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 14 /* markWidth */
            iload 15 /* markHeight */
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        74: .line 514
            aload 0 /* this */
            aload 1 /* g */
            iload 16 /* markX */
            iload 17 /* markY */
            iload 14 /* markWidth */
            iload 15 /* markHeight */
            iconst_1
            invokevirtual sun.awt.X11.XMenuWindow.draw3DRect:(Ljava/awt/Graphics;IIIIZ)V
        end local 18 // boolean checkState
        end local 17 // int markY
        end local 16 // int markX
        end local 15 // int markHeight
        end local 14 // int markWidth
        end local 13 // java.lang.String shortcutText
        end local 12 // java.awt.Dimension textDim
        end local 11 // java.awt.Point textOrigin
        end local 10 // java.awt.Rectangle bounds
        end local 9 // sun.awt.X11.XMenuItemPeer$TextMetrics metrics
        end local 8 // sun.awt.X11.XMenuItemPeer item
        75: .line 457
      StackMap locals: sun.awt.X11.XMenuWindow java.awt.Graphics int int sun.awt.X11.XMenuWindow$MappingData sun.awt.X11.XMenuItemPeer[] sun.awt.X11.XMenuItemPeer int
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        76: iload 7 /* i */
            aload 5 /* itemVector */
            arraylength
            if_icmplt 14
        end local 7 // int i
        77: .line 519
            aload 0 /* this */
            invokevirtual sun.awt.X11.XMenuWindow.flush:()V
        78: .line 520
            return
        end local 6 // sun.awt.X11.XMenuItemPeer selectedItem
        end local 5 // sun.awt.X11.XMenuItemPeer[] itemVector
        end local 4 // sun.awt.X11.XMenuWindow$MappingData mappingData
        end local 3 // int height
        end local 2 // int width
        end local 1 // java.awt.Graphics g
        end local 0 // sun.awt.X11.XMenuWindow this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   79     0          this  Lsun/awt/X11/XMenuWindow;
            0   79     1             g  Ljava/awt/Graphics;
            2   79     2         width  I
            3   79     3        height  I
            8   79     4   mappingData  Lsun/awt/X11/XMenuWindow$MappingData;
           10   79     5    itemVector  [Lsun/awt/X11/XMenuItemPeer;
           12   79     6  selectedItem  Lsun/awt/X11/XMenuItemPeer;
           13   77     7             i  I
           15   75     8          item  Lsun/awt/X11/XMenuItemPeer;
           16   75     9       metrics  Lsun/awt/X11/XMenuItemPeer$TextMetrics;
           17   75    10        bounds  Ljava/awt/Rectangle;
           22   75    11    textOrigin  Ljava/awt/Point;
           23   75    12       textDim  Ljava/awt/Dimension;
           32   75    13  shortcutText  Ljava/lang/String;
           36   48    14     markWidth  I
           37   48    15    markHeight  I
           38   48    16         markX  I
           39   48    17         markY  I
           51   75    14     markWidth  I
           52   75    15    markHeight  I
           53   75    16         markX  I
           54   75    17         markY  I
           55   75    18    checkState  Z
           60   71    19            px  [I
           61   71    20            py  [I
           62   67    21             j  I
    MethodParameters:
      Name  Flags
      g     

  protected sun.awt.X11.XBaseMenuWindow$MappingData map();
    descriptor: ()Lsun/awt/X11/XBaseMenuWindow$MappingData;
    flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 1
            aload 0
            invokevirtual sun.awt.X11.XMenuWindow.map:()Lsun/awt/X11/XMenuWindow$MappingData;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "XMenuWindow.java"
NestMembers:
  sun.awt.X11.XMenuWindow$1  sun.awt.X11.XMenuWindow$MappingData
InnerClasses:
  MappingData = sun.awt.X11.XBaseMenuWindow$MappingData of sun.awt.X11.XBaseMenuWindow
  TextMetrics = sun.awt.X11.XMenuItemPeer$TextMetrics of sun.awt.X11.XMenuItemPeer
  sun.awt.X11.XMenuWindow$1
  MappingData = sun.awt.X11.XMenuWindow$MappingData of sun.awt.X11.XMenuWindow
  public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger