public class javax.swing.plaf.metal.MetalComboBoxUI extends javax.swing.plaf.basic.BasicComboBoxUI
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.plaf.metal.MetalComboBoxUI
  super_class: javax.swing.plaf.basic.BasicComboBoxUI
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 54
            aload 0 /* this */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.<init>:()V
            return
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  public static javax.swing.plaf.ComponentUI createUI(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Ljavax/swing/plaf/ComponentUI;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.JComponent c
         0: .line 57
            new javax.swing.plaf.metal.MetalComboBoxUI
            dup
            invokespecial javax.swing.plaf.metal.MetalComboBoxUI.<init>:()V
            areturn
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0     c  Ljavax/swing/JComponent;
    MethodParameters:
      Name  Flags
      c     

  public void paint(java.awt.Graphics, javax.swing.JComponent);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JComponent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JComponent c
         0: .line 61
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 2
         1: .line 62
            aload 0 /* this */
            aload 1 /* g */
            aload 2 /* c */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.paint:(Ljava/awt/Graphics;Ljavax/swing/JComponent;)V
         2: .line 64
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.JComponent c
        end local 1 // java.awt.Graphics g
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0    3     1     g  Ljava/awt/Graphics;
            0    3     2     c  Ljavax/swing/JComponent;
    MethodParameters:
      Name  Flags
      g     
      c     

  public void paintCurrentValue(java.awt.Graphics, java.awt.Rectangle, boolean);
    descriptor: (Ljava/awt/Graphics;Ljava/awt/Rectangle;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // java.awt.Graphics g
        start local 2 // java.awt.Rectangle bounds
        start local 3 // boolean hasFocus
         0: .line 78
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 12
         1: .line 79
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.x:I
            iconst_2
            iadd
            putfield java.awt.Rectangle.x:I
         2: .line 80
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.width:I
            iconst_3
            isub
            putfield java.awt.Rectangle.width:I
         3: .line 81
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            ifnull 8
         4: .line 82
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getInsets:()Ljava/awt/Insets;
            astore 4 /* buttonInsets */
        start local 4 // java.awt.Insets buttonInsets
         5: .line 83
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.y:I
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.top:I
            iadd
            putfield java.awt.Rectangle.y:I
         6: .line 84
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.height:I
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.top:I
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.bottom:I
            iadd
            isub
            putfield java.awt.Rectangle.height:I
        end local 4 // java.awt.Insets buttonInsets
         7: .line 85
            goto 10
         8: .line 87
      StackMap locals:
      StackMap stack:
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.y:I
            iconst_2
            iadd
            putfield java.awt.Rectangle.y:I
         9: .line 88
            aload 2 /* bounds */
            dup
            getfield java.awt.Rectangle.height:I
            iconst_4
            isub
            putfield java.awt.Rectangle.height:I
        10: .line 90
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            aload 2 /* bounds */
            iload 3 /* hasFocus */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.paintCurrentValue:(Ljava/awt/Graphics;Ljava/awt/Rectangle;Z)V
        11: .line 91
            goto 16
        12: .line 92
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            ifnull 13
            aload 2 /* bounds */
            ifnonnull 16
        13: .line 93
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
        14: .line 94
            ldc "Must supply a non-null Graphics and Rectangle"
        15: .line 93
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 96
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean hasFocus
        end local 2 // java.awt.Rectangle bounds
        end local 1 // java.awt.Graphics g
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   17     0          this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0   17     1             g  Ljava/awt/Graphics;
            0   17     2        bounds  Ljava/awt/Rectangle;
            0   17     3      hasFocus  Z
            5    7     4  buttonInsets  Ljava/awt/Insets;
    MethodParameters:
          Name  Flags
      g         
      bounds    
      hasFocus  

  public void paintCurrentValueBackground(java.awt.Graphics, java.awt.Rectangle, boolean);
    descriptor: (Ljava/awt/Graphics;Ljava/awt/Rectangle;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=4
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // java.awt.Graphics g
        start local 2 // java.awt.Rectangle bounds
        start local 3 // boolean hasFocus
         0: .line 110
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 21
         1: .line 111
            aload 1 /* g */
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.getControlDarkShadow:()Ljavax/swing/plaf/ColorUIResource;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
         2: .line 112
            aload 1 /* g */
            aload 2 /* bounds */
            getfield java.awt.Rectangle.x:I
            aload 2 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 2 /* bounds */
            getfield java.awt.Rectangle.width:I
            aload 2 /* bounds */
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            invokevirtual java.awt.Graphics.drawRect:(IIII)V
         3: .line 113
            aload 1 /* g */
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.getControlShadow:()Ljavax/swing/plaf/ColorUIResource;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
         4: .line 114
            aload 1 /* g */
            aload 2 /* bounds */
            getfield java.awt.Rectangle.x:I
            iconst_1
            iadd
            aload 2 /* bounds */
            getfield java.awt.Rectangle.y:I
            iconst_1
            iadd
            aload 2 /* bounds */
            getfield java.awt.Rectangle.width:I
            iconst_2
            isub
         5: .line 115
            aload 2 /* bounds */
            getfield java.awt.Rectangle.height:I
            iconst_3
            isub
         6: .line 114
            invokevirtual java.awt.Graphics.drawRect:(IIII)V
         7: .line 116
            iload 3 /* hasFocus */
            ifeq 25
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.plaf.metal.MetalComboBoxUI.isPopupVisible:(Ljavax/swing/JComboBox;)Z
            ifne 25
         8: .line 117
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            ifnull 25
         9: .line 118
            aload 1 /* g */
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.listBox:Ljavax/swing/JList;
            invokevirtual javax.swing.JList.getSelectionBackground:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        10: .line 119
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getInsets:()Ljava/awt/Insets;
            astore 4 /* buttonInsets */
        start local 4 // java.awt.Insets buttonInsets
        11: .line 120
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.top:I
            iconst_2
            if_icmple 15
        12: .line 121
            aload 1 /* g */
            aload 2 /* bounds */
            getfield java.awt.Rectangle.x:I
            iconst_2
            iadd
            aload 2 /* bounds */
            getfield java.awt.Rectangle.y:I
            iconst_2
            iadd
            aload 2 /* bounds */
            getfield java.awt.Rectangle.width:I
            iconst_3
            isub
        13: .line 122
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.top:I
            iconst_2
            isub
        14: .line 121
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        15: .line 124
      StackMap locals: java.awt.Insets
      StackMap stack:
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.bottom:I
            iconst_2
            if_icmple 25
        16: .line 125
            aload 1 /* g */
            aload 2 /* bounds */
            getfield java.awt.Rectangle.x:I
            iconst_2
            iadd
            aload 2 /* bounds */
            getfield java.awt.Rectangle.y:I
            aload 2 /* bounds */
            getfield java.awt.Rectangle.height:I
            iadd
        17: .line 126
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.bottom:I
            isub
            aload 2 /* bounds */
            getfield java.awt.Rectangle.width:I
            iconst_3
            isub
        18: .line 127
            aload 4 /* buttonInsets */
            getfield java.awt.Insets.bottom:I
            iconst_2
            isub
        19: .line 125
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        end local 4 // java.awt.Insets buttonInsets
        20: .line 130
            goto 25
        21: .line 131
      StackMap locals:
      StackMap stack:
            aload 1 /* g */
            ifnull 22
            aload 2 /* bounds */
            ifnonnull 25
        22: .line 132
      StackMap locals:
      StackMap stack:
            new java.lang.NullPointerException
            dup
        23: .line 133
            ldc "Must supply a non-null Graphics and Rectangle"
        24: .line 132
            invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
            athrow
        25: .line 135
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean hasFocus
        end local 2 // java.awt.Rectangle bounds
        end local 1 // java.awt.Graphics g
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0   26     1             g  Ljava/awt/Graphics;
            0   26     2        bounds  Ljava/awt/Rectangle;
            0   26     3      hasFocus  Z
           11   20     4  buttonInsets  Ljava/awt/Insets;
    MethodParameters:
          Name  Flags
      g         
      bounds    
      hasFocus  

  public int getBaseline(javax.swing.JComponent, int, int);
    descriptor: (Ljavax/swing/JComponent;II)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // javax.swing.JComponent c
        start local 2 // int width
        start local 3 // int height
         0: .line 147
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 6
            iload 3 /* height */
            iconst_4
            if_icmplt 6
         1: .line 148
            iinc 3 /* height */ -4
         2: .line 149
            aload 0 /* this */
            aload 1 /* c */
            iload 2 /* width */
            iload 3 /* height */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.getBaseline:(Ljavax/swing/JComponent;II)I
            istore 4 /* baseline */
        start local 4 // int baseline
         3: .line 150
            iload 4 /* baseline */
            iflt 7
         4: .line 151
            iinc 4 /* baseline */ 2
         5: .line 153
            goto 7
        end local 4 // int baseline
         6: .line 155
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            iload 2 /* width */
            iload 3 /* height */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.getBaseline:(Ljavax/swing/JComponent;II)I
            istore 4 /* baseline */
        start local 4 // int baseline
         7: .line 157
      StackMap locals: int
      StackMap stack:
            iload 4 /* baseline */
            ireturn
        end local 4 // int baseline
        end local 3 // int height
        end local 2 // int width
        end local 1 // javax.swing.JComponent c
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    8     0      this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0    8     1         c  Ljavax/swing/JComponent;
            0    8     2     width  I
            0    8     3    height  I
            3    6     4  baseline  I
            7    8     4  baseline  I
    MethodParameters:
        Name  Flags
      c       
      width   
      height  

  protected javax.swing.ComboBoxEditor createEditor();
    descriptor: ()Ljavax/swing/ComboBoxEditor;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 161
            new javax.swing.plaf.metal.MetalComboBoxEditor$UIResource
            dup
            invokespecial javax.swing.plaf.metal.MetalComboBoxEditor$UIResource.<init>:()V
            areturn
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  protected javax.swing.plaf.basic.ComboPopup createPopup();
    descriptor: ()Ljavax/swing/plaf/basic/ComboPopup;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 165
            aload 0 /* this */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.createPopup:()Ljavax/swing/plaf/basic/ComboPopup;
            areturn
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  protected javax.swing.JButton createArrowButton();
    descriptor: ()Ljavax/swing/JButton;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=3, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 169
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.isEditable:()Z
            ifne 3
         1: .line 170
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifne 3
         2: .line 169
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_1
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* iconOnly */
        start local 1 // boolean iconOnly
         5: .line 171
            new javax.swing.plaf.metal.MetalComboBoxButton
            dup
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
         6: .line 172
            new javax.swing.plaf.metal.MetalComboBoxIcon
            dup
            invokespecial javax.swing.plaf.metal.MetalComboBoxIcon.<init>:()V
         7: .line 173
            iload 1 /* iconOnly */
         8: .line 174
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.currentValuePane:Ljavax/swing/CellRendererPane;
         9: .line 175
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.listBox:Ljavax/swing/JList;
        10: .line 171
            invokespecial javax.swing.plaf.metal.MetalComboBoxButton.<init>:(Ljavax/swing/JComboBox;Ljavax/swing/Icon;ZLjavax/swing/CellRendererPane;Ljavax/swing/JList;)V
            astore 2 /* button */
        start local 2 // javax.swing.JButton button
        11: .line 176
            aload 2 /* button */
            new java.awt.Insets
            dup
            iconst_0
            iconst_1
            iconst_1
            iconst_3
            invokespecial java.awt.Insets.<init>:(IIII)V
            invokevirtual javax.swing.JButton.setMargin:(Ljava/awt/Insets;)V
        12: .line 177
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 16
        13: .line 179
            aload 2 /* button */
            getstatic javax.swing.plaf.metal.MetalBorders.NO_BUTTON_ROLLOVER:Ljava/lang/Object;
        14: .line 180
            getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
        15: .line 179
            invokevirtual javax.swing.JButton.putClientProperty:(Ljava/lang/Object;Ljava/lang/Object;)V
        16: .line 182
      StackMap locals: int javax.swing.JButton
      StackMap stack:
            aload 0 /* this */
            aload 2 /* button */
            invokevirtual javax.swing.plaf.metal.MetalComboBoxUI.updateButtonForOcean:(Ljavax/swing/JButton;)V
        17: .line 183
            aload 2 /* button */
            areturn
        end local 2 // javax.swing.JButton button
        end local 1 // boolean iconOnly
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            5   18     1  iconOnly  Z
           11   18     2    button  Ljavax/swing/JButton;

  private void updateButtonForOcean(javax.swing.JButton);
    descriptor: (Ljavax/swing/JButton;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // javax.swing.JButton button
         0: .line 190
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 2
         1: .line 193
            aload 1 /* button */
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.isEditable:()Z
            invokevirtual javax.swing.JButton.setFocusPainted:(Z)V
         2: .line 195
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.swing.JButton button
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0    3     1  button  Ljavax/swing/JButton;
    MethodParameters:
        Name  Flags
      button  

  public java.beans.PropertyChangeListener createPropertyChangeListener();
    descriptor: ()Ljava/beans/PropertyChangeListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 198
            new javax.swing.plaf.metal.MetalComboBoxUI$MetalPropertyChangeListener
            dup
            aload 0 /* this */
            invokespecial javax.swing.plaf.metal.MetalComboBoxUI$MetalPropertyChangeListener.<init>:(Ljavax/swing/plaf/metal/MetalComboBoxUI;)V
            areturn
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  protected void editablePropertyChanged(java.beans.PropertyChangeEvent);
    descriptor: (Ljava/beans/PropertyChangeEvent;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // java.beans.PropertyChangeEvent e
         0: .line 239
            return
        end local 1 // java.beans.PropertyChangeEvent e
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0    1     1     e  Ljava/beans/PropertyChangeEvent;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
      Name  Flags
      e     

  protected java.awt.LayoutManager createLayoutManager();
    descriptor: ()Ljava/awt/LayoutManager;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 242
            new javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager
            dup
            aload 0 /* this */
            invokespecial javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager.<init>:(Ljavax/swing/plaf/metal/MetalComboBoxUI;)V
            areturn
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  public void layoutComboBox(java.awt.Container, javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager);
    descriptor: (Ljava/awt/Container;Ljavax/swing/plaf/metal/MetalComboBoxUI$MetalComboBoxLayoutManager;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=3
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // java.awt.Container parent
        start local 2 // javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager manager
         0: .line 262
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.isEditable:()Z
            ifeq 3
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifne 3
         1: .line 263
            aload 2 /* manager */
            aload 1 /* parent */
            invokevirtual javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager.superLayout:(Ljava/awt/Container;)V
         2: .line 264
            return
         3: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            ifnull 21
         4: .line 268
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 14
         5: .line 269
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getInsets:()Ljava/awt/Insets;
            astore 3 /* insets */
        start local 3 // java.awt.Insets insets
         6: .line 270
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getMinimumSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.width:I
            istore 4 /* buttonWidth */
        start local 4 // int buttonWidth
         7: .line 271
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokestatic javax.swing.plaf.metal.MetalUtils.isLeftToRight:(Ljava/awt/Component;)Z
            ifeq 9
         8: .line 272
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getWidth:()I
            aload 3 /* insets */
            getfield java.awt.Insets.right:I
            isub
            iload 4 /* buttonWidth */
            isub
            goto 10
         9: .line 273
      StackMap locals: javax.swing.plaf.metal.MetalComboBoxUI java.awt.Container javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager java.awt.Insets int
      StackMap stack: javax.swing.JButton
            aload 3 /* insets */
            getfield java.awt.Insets.left:I
        10: .line 274
      StackMap locals: javax.swing.plaf.metal.MetalComboBoxUI java.awt.Container javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager java.awt.Insets int
      StackMap stack: javax.swing.JButton int
            aload 3 /* insets */
            getfield java.awt.Insets.top:I
            iload 4 /* buttonWidth */
        11: .line 275
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getHeight:()I
            aload 3 /* insets */
            getfield java.awt.Insets.top:I
            isub
            aload 3 /* insets */
            getfield java.awt.Insets.bottom:I
            isub
        12: .line 271
            invokevirtual javax.swing.JButton.setBounds:(IIII)V
        end local 4 // int buttonWidth
        end local 3 // java.awt.Insets insets
        13: .line 276
            goto 21
        14: .line 278
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getInsets:()Ljava/awt/Insets;
            astore 3 /* insets */
        start local 3 // java.awt.Insets insets
        15: .line 279
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getWidth:()I
            istore 4 /* width */
        start local 4 // int width
        16: .line 280
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getHeight:()I
            istore 5 /* height */
        start local 5 // int height
        17: .line 281
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            aload 3 /* insets */
            getfield java.awt.Insets.left:I
            aload 3 /* insets */
            getfield java.awt.Insets.top:I
        18: .line 282
            iload 4 /* width */
            aload 3 /* insets */
            getfield java.awt.Insets.left:I
            aload 3 /* insets */
            getfield java.awt.Insets.right:I
            iadd
            isub
        19: .line 283
            iload 5 /* height */
            aload 3 /* insets */
            getfield java.awt.Insets.top:I
            aload 3 /* insets */
            getfield java.awt.Insets.bottom:I
            iadd
            isub
        20: .line 281
            invokevirtual javax.swing.JButton.setBounds:(IIII)V
        end local 5 // int height
        end local 4 // int width
        end local 3 // java.awt.Insets insets
        21: .line 287
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.editor:Ljava/awt/Component;
            ifnull 24
            invokestatic javax.swing.plaf.metal.MetalLookAndFeel.usingOcean:()Z
            ifeq 24
        22: .line 288
            aload 0 /* this */
            invokevirtual javax.swing.plaf.metal.MetalComboBoxUI.rectangleForCurrentValue:()Ljava/awt/Rectangle;
            astore 3 /* cvb */
        start local 3 // java.awt.Rectangle cvb
        23: .line 289
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.editor:Ljava/awt/Component;
            aload 3 /* cvb */
            invokevirtual java.awt.Component.setBounds:(Ljava/awt/Rectangle;)V
        end local 3 // java.awt.Rectangle cvb
        24: .line 291
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager manager
        end local 1 // java.awt.Container parent
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   25     0         this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0   25     1       parent  Ljava/awt/Container;
            0   25     2      manager  Ljavax/swing/plaf/metal/MetalComboBoxUI$MetalComboBoxLayoutManager;
            6   13     3       insets  Ljava/awt/Insets;
            7   13     4  buttonWidth  I
           15   21     3       insets  Ljava/awt/Insets;
           16   21     4        width  I
           17   21     5       height  I
           23   24     3          cvb  Ljava/awt/Rectangle;
    MethodParameters:
         Name  Flags
      parent   
      manager  

  protected void removeListeners();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 301
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.propertyChangeListener:Ljava/beans/PropertyChangeListener;
            ifnull 2
         1: .line 302
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.propertyChangeListener:Ljava/beans/PropertyChangeListener;
            invokevirtual javax.swing.JComboBox.removePropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
         2: .line 304
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()

  public void configureEditor();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 312
            aload 0 /* this */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.configureEditor:()V
         1: .line 313
            return
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  public void unconfigureEditor();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
         0: .line 316
            aload 0 /* this */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.unconfigureEditor:()V
         1: .line 317
            return
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/swing/plaf/metal/MetalComboBoxUI;

  public java.awt.Dimension getMinimumSize(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Ljava/awt/Dimension;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
        start local 1 // javax.swing.JComponent c
         0: .line 320
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.isMinimumSizeDirty:Z
            ifne 2
         1: .line 321
            new java.awt.Dimension
            dup
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.cachedMinimumSize:Ljava/awt/Dimension;
            invokespecial java.awt.Dimension.<init>:(Ljava/awt/Dimension;)V
            areturn
         2: .line 324
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 2 /* size */
        start local 2 // java.awt.Dimension size
         3: .line 326
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.isEditable:()Z
            ifne 14
         4: .line 327
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            ifnull 14
         5: .line 328
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getInsets:()Ljava/awt/Insets;
            astore 3 /* buttonInsets */
        start local 3 // java.awt.Insets buttonInsets
         6: .line 329
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.getInsets:()Ljava/awt/Insets;
            astore 4 /* insets */
        start local 4 // java.awt.Insets insets
         7: .line 331
            aload 0 /* this */
            invokevirtual javax.swing.plaf.metal.MetalComboBoxUI.getDisplaySize:()Ljava/awt/Dimension;
            astore 2 /* size */
         8: .line 332
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.width:I
            aload 4 /* insets */
            getfield java.awt.Insets.left:I
            aload 4 /* insets */
            getfield java.awt.Insets.right:I
            iadd
            iadd
            putfield java.awt.Dimension.width:I
         9: .line 333
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.width:I
            aload 3 /* buttonInsets */
            getfield java.awt.Insets.right:I
            iadd
            putfield java.awt.Dimension.width:I
        10: .line 334
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.width:I
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getMinimumSize:()Ljava/awt/Dimension;
            getfield java.awt.Dimension.width:I
            iadd
            putfield java.awt.Dimension.width:I
        11: .line 335
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.height:I
            aload 4 /* insets */
            getfield java.awt.Insets.top:I
            aload 4 /* insets */
            getfield java.awt.Insets.bottom:I
            iadd
            iadd
            putfield java.awt.Dimension.height:I
        12: .line 336
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.height:I
            aload 3 /* buttonInsets */
            getfield java.awt.Insets.top:I
            aload 3 /* buttonInsets */
            getfield java.awt.Insets.bottom:I
            iadd
            iadd
            putfield java.awt.Dimension.height:I
        end local 4 // java.awt.Insets insets
        end local 3 // java.awt.Insets buttonInsets
        13: .line 337
            goto 23
        14: .line 338
      StackMap locals: java.awt.Dimension
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            invokevirtual javax.swing.JComboBox.isEditable:()Z
            ifeq 22
        15: .line 339
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            ifnull 22
        16: .line 340
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.editor:Ljava/awt/Component;
            ifnull 22
        17: .line 341
            aload 0 /* this */
            aload 1 /* c */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.getMinimumSize:(Ljavax/swing/JComponent;)Ljava/awt/Dimension;
            astore 2 /* size */
        18: .line 342
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            invokevirtual javax.swing.JButton.getMargin:()Ljava/awt/Insets;
            astore 3 /* margin */
        start local 3 // java.awt.Insets margin
        19: .line 343
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.height:I
            aload 3 /* margin */
            getfield java.awt.Insets.top:I
            aload 3 /* margin */
            getfield java.awt.Insets.bottom:I
            iadd
            iadd
            putfield java.awt.Dimension.height:I
        20: .line 344
            aload 2 /* size */
            dup
            getfield java.awt.Dimension.width:I
            aload 3 /* margin */
            getfield java.awt.Insets.left:I
            aload 3 /* margin */
            getfield java.awt.Insets.right:I
            iadd
            iadd
            putfield java.awt.Dimension.width:I
        end local 3 // java.awt.Insets margin
        21: .line 345
            goto 23
        22: .line 347
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            invokespecial javax.swing.plaf.basic.BasicComboBoxUI.getMinimumSize:(Ljavax/swing/JComponent;)Ljava/awt/Dimension;
            astore 2 /* size */
        23: .line 350
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.cachedMinimumSize:Ljava/awt/Dimension;
            aload 2 /* size */
            getfield java.awt.Dimension.width:I
            aload 2 /* size */
            getfield java.awt.Dimension.height:I
            invokevirtual java.awt.Dimension.setSize:(II)V
        24: .line 351
            aload 0 /* this */
            iconst_0
            putfield javax.swing.plaf.metal.MetalComboBoxUI.isMinimumSizeDirty:Z
        25: .line 353
            new java.awt.Dimension
            dup
            aload 0 /* this */
            getfield javax.swing.plaf.metal.MetalComboBoxUI.cachedMinimumSize:Ljava/awt/Dimension;
            invokespecial java.awt.Dimension.<init>:(Ljava/awt/Dimension;)V
            areturn
        end local 2 // java.awt.Dimension size
        end local 1 // javax.swing.JComponent c
        end local 0 // javax.swing.plaf.metal.MetalComboBoxUI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   26     0          this  Ljavax/swing/plaf/metal/MetalComboBoxUI;
            0   26     1             c  Ljavax/swing/JComponent;
            3   26     2          size  Ljava/awt/Dimension;
            6   13     3  buttonInsets  Ljava/awt/Insets;
            7   13     4        insets  Ljava/awt/Insets;
           19   21     3        margin  Ljava/awt/Insets;
    MethodParameters:
      Name  Flags
      c     

  static javax.swing.JButton access$0(javax.swing.plaf.metal.MetalComboBoxUI);
    descriptor: (Ljavax/swing/plaf/metal/MetalComboBoxUI;)Ljavax/swing/JButton;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 54
            aload 0
            getfield javax.swing.plaf.metal.MetalComboBoxUI.arrowButton:Ljavax/swing/JButton;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static javax.swing.JComboBox access$1(javax.swing.plaf.metal.MetalComboBoxUI);
    descriptor: (Ljavax/swing/plaf/metal/MetalComboBoxUI;)Ljavax/swing/JComboBox;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 54
            aload 0
            getfield javax.swing.plaf.metal.MetalComboBoxUI.comboBox:Ljavax/swing/JComboBox;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static javax.swing.JList access$2(javax.swing.plaf.metal.MetalComboBoxUI);
    descriptor: (Ljavax/swing/plaf/metal/MetalComboBoxUI;)Ljavax/swing/JList;
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=1, locals=1, args_size=1
         0: .line 54
            aload 0
            getfield javax.swing.plaf.metal.MetalComboBoxUI.listBox:Ljavax/swing/JList;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "MetalComboBoxUI.java"
NestMembers:
  javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager  javax.swing.plaf.metal.MetalComboBoxUI$MetalComboPopup  javax.swing.plaf.metal.MetalComboBoxUI$MetalPropertyChangeListener
InnerClasses:
  public UIResource = javax.swing.plaf.metal.MetalComboBoxEditor$UIResource of javax.swing.plaf.metal.MetalComboBoxEditor
  public MetalComboBoxLayoutManager = javax.swing.plaf.metal.MetalComboBoxUI$MetalComboBoxLayoutManager of javax.swing.plaf.metal.MetalComboBoxUI
  public MetalComboPopup = javax.swing.plaf.metal.MetalComboBoxUI$MetalComboPopup of javax.swing.plaf.metal.MetalComboBoxUI
  public MetalPropertyChangeListener = javax.swing.plaf.metal.MetalComboBoxUI$MetalPropertyChangeListener of javax.swing.plaf.metal.MetalComboBoxUI