public abstract class com.apple.laf.AquaButtonLabeledUI extends com.apple.laf.AquaButtonToggleUI implements com.apple.laf.AquaUtilControlSize$Sizeable
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.apple.laf.AquaButtonLabeledUI
  super_class: com.apple.laf.AquaButtonToggleUI
{
  private static final com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon regularIcon;
    descriptor: Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon smallIcon;
    descriptor: Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon miniIcon;
    descriptor: Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  protected com.apple.laf.AquaButtonBorder widgetBorder;
    descriptor: Lcom/apple/laf/AquaButtonBorder;
    flags: (0x0004) ACC_PROTECTED

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 45
            new com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon
            dup
            bipush 18
            invokespecial com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.<init>:(I)V
            putstatic com.apple.laf.AquaButtonLabeledUI.regularIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
         1: .line 46
            new com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon
            dup
            bipush 16
            invokespecial com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.<init>:(I)V
            putstatic com.apple.laf.AquaButtonLabeledUI.smallIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
         2: .line 47
            new com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon
            dup
            bipush 14
            invokespecial com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.<init>:(I)V
            putstatic com.apple.laf.AquaButtonLabeledUI.miniIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
         0: .line 60
            aload 0 /* this */
            invokespecial com.apple.laf.AquaButtonToggleUI.<init>:()V
         1: .line 61
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.apple.laf.AquaButtonLabeledUI.getPainter:()Lcom/apple/laf/AquaButtonBorder;
            putfield com.apple.laf.AquaButtonLabeledUI.widgetBorder:Lcom/apple/laf/AquaButtonBorder;
         2: .line 62
            return
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/apple/laf/AquaButtonLabeledUI;

  public void applySizeFor(javax.swing.JComponent, apple.laf.JRSUIConstants$Size);
    descriptor: (Ljavax/swing/JComponent;Lapple/laf/JRSUIConstants$Size;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
        start local 1 // javax.swing.JComponent c
        start local 2 // apple.laf.JRSUIConstants$Size newSize
         0: .line 65
            aload 0 /* this */
            aload 1 /* c */
            aload 2 /* newSize */
            invokespecial com.apple.laf.AquaButtonToggleUI.applySizeFor:(Ljavax/swing/JComponent;Lapple/laf/JRSUIConstants$Size;)V
         1: .line 66
            aload 0 /* this */
            aload 0 /* this */
            getfield com.apple.laf.AquaButtonLabeledUI.widgetBorder:Lcom/apple/laf/AquaButtonBorder;
            aload 2 /* newSize */
            invokevirtual com.apple.laf.AquaButtonBorder.deriveBorderForSize:(Lapple/laf/JRSUIConstants$Size;)Lcom/apple/laf/AquaBorder;
            checkcast com.apple.laf.AquaButtonBorder
            putfield com.apple.laf.AquaButtonLabeledUI.widgetBorder:Lcom/apple/laf/AquaButtonBorder;
         2: .line 67
            return
        end local 2 // apple.laf.JRSUIConstants$Size newSize
        end local 1 // javax.swing.JComponent c
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lcom/apple/laf/AquaButtonLabeledUI;
            0    3     1        c  Ljavax/swing/JComponent;
            0    3     2  newSize  Lapple/laf/JRSUIConstants$Size;
    MethodParameters:
         Name  Flags
      c        final
      newSize  final

  public javax.swing.Icon getDefaultIcon(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Ljavax/swing/Icon;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
        start local 1 // javax.swing.JComponent c
         0: .line 70
            aload 1 /* c */
            invokestatic com.apple.laf.AquaUtilControlSize.getUserSizeFrom:(Ljavax/swing/JComponent;)Lapple/laf/JRSUIConstants$Size;
            astore 2 /* componentSize */
        start local 2 // apple.laf.JRSUIConstants$Size componentSize
         1: .line 71
            aload 2 /* componentSize */
            getstatic apple.laf.JRSUIConstants$Size.REGULAR:Lapple/laf/JRSUIConstants$Size;
            if_acmpne 2
            getstatic com.apple.laf.AquaButtonLabeledUI.regularIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
            invokevirtual com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.get:()Ljava/lang/Object;
            checkcast javax.swing.Icon
            areturn
         2: .line 72
      StackMap locals: apple.laf.JRSUIConstants$Size
      StackMap stack:
            aload 2 /* componentSize */
            getstatic apple.laf.JRSUIConstants$Size.SMALL:Lapple/laf/JRSUIConstants$Size;
            if_acmpne 3
            getstatic com.apple.laf.AquaButtonLabeledUI.smallIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
            invokevirtual com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.get:()Ljava/lang/Object;
            checkcast javax.swing.Icon
            areturn
         3: .line 73
      StackMap locals:
      StackMap stack:
            aload 2 /* componentSize */
            getstatic apple.laf.JRSUIConstants$Size.MINI:Lapple/laf/JRSUIConstants$Size;
            if_acmpne 4
            getstatic com.apple.laf.AquaButtonLabeledUI.miniIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
            invokevirtual com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.get:()Ljava/lang/Object;
            checkcast javax.swing.Icon
            areturn
         4: .line 74
      StackMap locals:
      StackMap stack:
            getstatic com.apple.laf.AquaButtonLabeledUI.regularIcon:Lcom/apple/laf/AquaButtonLabeledUI$RecyclableSizingIcon;
            invokevirtual com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon.get:()Ljava/lang/Object;
            checkcast javax.swing.Icon
            areturn
        end local 2 // apple.laf.JRSUIConstants$Size componentSize
        end local 1 // javax.swing.JComponent c
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    5     0           this  Lcom/apple/laf/AquaButtonLabeledUI;
            0    5     1              c  Ljavax/swing/JComponent;
            1    5     2  componentSize  Lapple/laf/JRSUIConstants$Size;
    MethodParameters:
      Name  Flags
      c     final

  protected void setThemeBorder(javax.swing.AbstractButton);
    descriptor: (Ljavax/swing/AbstractButton;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
        start local 1 // javax.swing.AbstractButton b
         0: .line 78
            aload 0 /* this */
            aload 1 /* b */
            invokespecial com.apple.laf.AquaButtonToggleUI.setThemeBorder:(Ljavax/swing/AbstractButton;)V
         1: .line 80
            aload 1 /* b */
            invokevirtual javax.swing.AbstractButton.getBorder:()Ljavax/swing/border/Border;
            astore 2 /* border */
        start local 2 // javax.swing.border.Border border
         2: .line 81
            aload 2 /* border */
            ifnull 3
            aload 2 /* border */
            instanceof javax.swing.plaf.UIResource
            ifeq 4
         3: .line 83
      StackMap locals: javax.swing.border.Border
      StackMap stack:
            aload 1 /* b */
            invokestatic com.apple.laf.AquaButtonBorder.getBevelButtonBorder:()Lcom/apple/laf/AquaButtonBorder;
            invokevirtual javax.swing.AbstractButton.setBorder:(Ljavax/swing/border/Border;)V
         4: .line 85
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.border.Border border
        end local 1 // javax.swing.AbstractButton b
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lcom/apple/laf/AquaButtonLabeledUI;
            0    5     1       b  Ljavax/swing/AbstractButton;
            2    5     2  border  Ljavax/swing/border/Border;
    MethodParameters:
      Name  Flags
      b     final

  protected abstract com.apple.laf.AquaButtonBorder getPainter();
    descriptor: ()Lcom/apple/laf/AquaButtonBorder;
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  public synchronized void paint(java.awt.Graphics, javax.swing.JComponent);
    descriptor: (Ljava/awt/Graphics;Ljavax/swing/JComponent;)V
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=12, locals=16, args_size=3
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
        start local 1 // java.awt.Graphics g
        start local 2 // javax.swing.JComponent c
         0: .line 90
            aload 2 /* c */
            checkcast javax.swing.AbstractButton
            astore 3 /* b */
        start local 3 // javax.swing.AbstractButton b
         1: .line 91
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getModel:()Ljavax/swing/ButtonModel;
            astore 4 /* model */
        start local 4 // javax.swing.ButtonModel model
         2: .line 93
            aload 2 /* c */
            invokevirtual javax.swing.JComponent.getFont:()Ljava/awt/Font;
            astore 5 /* f */
        start local 5 // java.awt.Font f
         3: .line 94
            aload 1 /* g */
            aload 5 /* f */
            invokevirtual java.awt.Graphics.setFont:(Ljava/awt/Font;)V
         4: .line 95
            aload 1 /* g */
            invokevirtual java.awt.Graphics.getFontMetrics:()Ljava/awt/FontMetrics;
            astore 6 /* fm */
        start local 6 // java.awt.FontMetrics fm
         5: .line 97
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getSize:()Ljava/awt/Dimension;
            astore 7 /* size */
        start local 7 // java.awt.Dimension size
         6: .line 99
            aload 2 /* c */
            invokevirtual javax.swing.JComponent.getInsets:()Ljava/awt/Insets;
            astore 8 /* i */
        start local 8 // java.awt.Insets i
         7: .line 101
            new java.awt.Rectangle
            dup
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getWidth:()I
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getHeight:()I
            invokespecial java.awt.Rectangle.<init>:(II)V
            astore 9 /* viewRect */
        start local 9 // java.awt.Rectangle viewRect
         8: .line 102
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 10 /* iconRect */
        start local 10 // java.awt.Rectangle iconRect
         9: .line 103
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 11 /* textRect */
        start local 11 // java.awt.Rectangle textRect
        10: .line 105
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        start local 12 // javax.swing.Icon altIcon
        11: .line 107
            aload 2 /* c */
            invokevirtual javax.swing.JComponent.getParent:()Ljava/awt/Container;
            instanceof javax.swing.CellRendererPane
            istore 13 /* isCellEditor */
        start local 13 // boolean isCellEditor
        12: .line 111
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.isOpaque:()Z
            ifne 13
            iload 13 /* isCellEditor */
            ifeq 15
        13: .line 112
      StackMap locals: com.apple.laf.AquaButtonLabeledUI java.awt.Graphics javax.swing.JComponent javax.swing.AbstractButton javax.swing.ButtonModel java.awt.Font java.awt.FontMetrics java.awt.Dimension java.awt.Insets java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle javax.swing.Icon int
      StackMap stack:
            aload 1 /* g */
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getBackground:()Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setColor:(Ljava/awt/Color;)V
        14: .line 113
            aload 1 /* g */
            iconst_0
            iconst_0
            aload 7 /* size */
            getfield java.awt.Dimension.width:I
            aload 7 /* size */
            getfield java.awt.Dimension.height:I
            invokevirtual java.awt.Graphics.fillRect:(IIII)V
        15: .line 117
      StackMap locals:
      StackMap stack:
            aload 2 /* c */
            checkcast javax.swing.AbstractButton
            invokevirtual javax.swing.AbstractButton.isBorderPainted:()Z
            ifeq 19
            iload 13 /* isCellEditor */
            ifne 19
        16: .line 118
            aload 2 /* c */
            invokevirtual javax.swing.JComponent.getBorder:()Ljavax/swing/border/Border;
            astore 14 /* border */
        start local 14 // javax.swing.border.Border border
        17: .line 119
            aload 14 /* border */
            instanceof com.apple.laf.AquaButtonBorder
            ifeq 19
        18: .line 120
            aload 14 /* border */
            checkcast com.apple.laf.AquaButtonBorder
            aload 2 /* c */
            aload 1 /* g */
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.x:I
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.y:I
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.width:I
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.height:I
            invokevirtual com.apple.laf.AquaButtonBorder.paintButton:(Ljava/awt/Component;Ljava/awt/Graphics;IIII)V
        end local 14 // javax.swing.border.Border border
        19: .line 124
      StackMap locals:
      StackMap stack:
            aload 9 /* viewRect */
            aload 8 /* i */
            getfield java.awt.Insets.left:I
            putfield java.awt.Rectangle.x:I
        20: .line 125
            aload 9 /* viewRect */
            aload 8 /* i */
            getfield java.awt.Insets.top:I
            putfield java.awt.Rectangle.y:I
        21: .line 126
            aload 9 /* viewRect */
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getWidth:()I
            aload 8 /* i */
            getfield java.awt.Insets.right:I
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.x:I
            iadd
            isub
            putfield java.awt.Rectangle.width:I
        22: .line 127
            aload 9 /* viewRect */
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getHeight:()I
            aload 8 /* i */
            getfield java.awt.Insets.bottom:I
            aload 9 /* viewRect */
            getfield java.awt.Rectangle.y:I
            iadd
            isub
            putfield java.awt.Rectangle.height:I
        23: .line 134
            aload 2 /* c */
            aload 6 /* fm */
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getText:()Ljava/lang/String;
            aload 12 /* altIcon */
            ifnull 24
            aload 12 /* altIcon */
            goto 25
      StackMap locals: com.apple.laf.AquaButtonLabeledUI java.awt.Graphics javax.swing.JComponent javax.swing.AbstractButton javax.swing.ButtonModel java.awt.Font java.awt.FontMetrics java.awt.Dimension java.awt.Insets java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle javax.swing.Icon int
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String
        24: aload 0 /* this */
            aload 3 /* b */
            invokevirtual com.apple.laf.AquaButtonLabeledUI.getDefaultIcon:(Ljavax/swing/JComponent;)Ljavax/swing/Icon;
      StackMap locals: com.apple.laf.AquaButtonLabeledUI java.awt.Graphics javax.swing.JComponent javax.swing.AbstractButton javax.swing.ButtonModel java.awt.Font java.awt.FontMetrics java.awt.Dimension java.awt.Insets java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle javax.swing.Icon int
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String javax.swing.Icon
        25: aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getVerticalAlignment:()I
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getHorizontalAlignment:()I
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getVerticalTextPosition:()I
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getHorizontalTextPosition:()I
            aload 9 /* viewRect */
            aload 10 /* iconRect */
            aload 11 /* textRect */
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getText:()Ljava/lang/String;
            ifnonnull 26
            iconst_0
            goto 27
      StackMap locals: com.apple.laf.AquaButtonLabeledUI java.awt.Graphics javax.swing.JComponent javax.swing.AbstractButton javax.swing.ButtonModel java.awt.Font java.awt.FontMetrics java.awt.Dimension java.awt.Insets java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle javax.swing.Icon int
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
        26: aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getIconTextGap:()I
      StackMap locals: com.apple.laf.AquaButtonLabeledUI java.awt.Graphics javax.swing.JComponent javax.swing.AbstractButton javax.swing.ButtonModel java.awt.Font java.awt.FontMetrics java.awt.Dimension java.awt.Insets java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle javax.swing.Icon int
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle int
        27: invokestatic javax.swing.SwingUtilities.layoutCompoundLabel:(Ljavax/swing/JComponent;Ljava/awt/FontMetrics;Ljava/lang/String;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;I)Ljava/lang/String;
            astore 14 /* text */
        start local 14 // java.lang.String text
        28: .line 139
            aload 12 /* altIcon */
            ifnonnull 31
        29: .line 140
            aload 0 /* this */
            getfield com.apple.laf.AquaButtonLabeledUI.widgetBorder:Lcom/apple/laf/AquaButtonBorder;
            aload 2 /* c */
            aload 1 /* g */
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.x:I
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.y:I
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.width:I
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.height:I
            invokevirtual com.apple.laf.AquaButtonBorder.paintButton:(Ljava/awt/Component;Ljava/awt/Graphics;IIII)V
        30: .line 141
            goto 59
        31: .line 143
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isEnabled:()Z
            ifne 37
        32: .line 144
            aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isSelected:()Z
            ifeq 35
        33: .line 145
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getDisabledSelectedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        34: .line 146
            goto 52
        35: .line 147
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getDisabledIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        36: .line 149
            goto 52
      StackMap locals:
      StackMap stack:
        37: aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isPressed:()Z
            ifeq 42
            aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isArmed:()Z
            ifeq 42
        38: .line 150
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getPressedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        39: .line 151
            aload 12 /* altIcon */
            ifnonnull 52
        40: .line 153
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getSelectedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        41: .line 155
            goto 52
      StackMap locals:
      StackMap stack:
        42: aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isSelected:()Z
            ifeq 50
        43: .line 156
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.isRolloverEnabled:()Z
            ifeq 48
            aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isRollover:()Z
            ifeq 48
        44: .line 157
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getRolloverSelectedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        45: .line 158
            aload 12 /* altIcon */
            ifnonnull 52
        46: .line 159
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getSelectedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        47: .line 161
            goto 52
        48: .line 162
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getSelectedIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        49: .line 164
            goto 52
      StackMap locals:
      StackMap stack:
        50: aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.isRolloverEnabled:()Z
            ifeq 52
            aload 4 /* model */
            invokeinterface javax.swing.ButtonModel.isRollover:()Z
            ifeq 52
        51: .line 165
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getRolloverIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        52: .line 168
      StackMap locals:
      StackMap stack:
            aload 12 /* altIcon */
            ifnonnull 54
        53: .line 169
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.getIcon:()Ljavax/swing/Icon;
            astore 12 /* altIcon */
        54: .line 172
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 15 /* offset */
        start local 15 // int offset
        55: .line 173
            aload 3 /* b */
            invokevirtual javax.swing.AbstractButton.isFocusOwner:()Z
            ifeq 58
        56: .line 174
            iconst_2
            istore 15 /* offset */
        57: .line 175
            aload 12 /* altIcon */
            aload 2 /* c */
            iconst_2
            invokestatic com.apple.laf.AquaFocus.createFocusedIcon:(Ljavax/swing/Icon;Ljava/awt/Component;I)Ljavax/swing/Icon;
            astore 12 /* altIcon */
        58: .line 178
      StackMap locals: int
      StackMap stack:
            aload 12 /* altIcon */
            aload 2 /* c */
            aload 1 /* g */
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.x:I
            iload 15 /* offset */
            isub
            aload 10 /* iconRect */
            getfield java.awt.Rectangle.y:I
            iload 15 /* offset */
            isub
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
        end local 15 // int offset
        59: .line 182
      StackMap locals:
      StackMap stack:
            aload 14 /* text */
            ifnull 65
        60: .line 183
            aload 2 /* c */
            ldc "html"
            invokevirtual javax.swing.JComponent.getClientProperty:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast javax.swing.text.View
            astore 15 /* v */
        start local 15 // javax.swing.text.View v
        61: .line 184
            aload 15 /* v */
            ifnull 64
        62: .line 185
            aload 15 /* v */
            aload 1 /* g */
            aload 11 /* textRect */
            invokevirtual javax.swing.text.View.paint:(Ljava/awt/Graphics;Ljava/awt/Shape;)V
        63: .line 186
            goto 65
        64: .line 187
      StackMap locals: javax.swing.text.View
      StackMap stack:
            aload 0 /* this */
            aload 1 /* g */
            aload 3 /* b */
            aload 11 /* textRect */
            aload 14 /* text */
            invokevirtual com.apple.laf.AquaButtonLabeledUI.paintText:(Ljava/awt/Graphics;Ljavax/swing/AbstractButton;Ljava/awt/Rectangle;Ljava/lang/String;)V
        end local 15 // javax.swing.text.View v
        65: .line 190
      StackMap locals:
      StackMap stack:
            return
        end local 14 // java.lang.String text
        end local 13 // boolean isCellEditor
        end local 12 // javax.swing.Icon altIcon
        end local 11 // java.awt.Rectangle textRect
        end local 10 // java.awt.Rectangle iconRect
        end local 9 // java.awt.Rectangle viewRect
        end local 8 // java.awt.Insets i
        end local 7 // java.awt.Dimension size
        end local 6 // java.awt.FontMetrics fm
        end local 5 // java.awt.Font f
        end local 4 // javax.swing.ButtonModel model
        end local 3 // javax.swing.AbstractButton b
        end local 2 // javax.swing.JComponent c
        end local 1 // java.awt.Graphics g
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   66     0          this  Lcom/apple/laf/AquaButtonLabeledUI;
            0   66     1             g  Ljava/awt/Graphics;
            0   66     2             c  Ljavax/swing/JComponent;
            1   66     3             b  Ljavax/swing/AbstractButton;
            2   66     4         model  Ljavax/swing/ButtonModel;
            3   66     5             f  Ljava/awt/Font;
            5   66     6            fm  Ljava/awt/FontMetrics;
            6   66     7          size  Ljava/awt/Dimension;
            7   66     8             i  Ljava/awt/Insets;
            8   66     9      viewRect  Ljava/awt/Rectangle;
            9   66    10      iconRect  Ljava/awt/Rectangle;
           10   66    11      textRect  Ljava/awt/Rectangle;
           11   66    12       altIcon  Ljavax/swing/Icon;
           12   66    13  isCellEditor  Z
           17   19    14        border  Ljavax/swing/border/Border;
           28   66    14          text  Ljava/lang/String;
           55   59    15        offset  I
           61   65    15             v  Ljavax/swing/text/View;
    MethodParameters:
      Name  Flags
      g     final
      c     final

  public java.awt.Dimension getPreferredSize(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Ljava/awt/Dimension;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=12, locals=17, args_size=2
        start local 0 // com.apple.laf.AquaButtonLabeledUI this
        start local 1 // javax.swing.JComponent c
         0: .line 196
            aload 1 /* c */
            invokevirtual javax.swing.JComponent.getComponentCount:()I
            ifle 1
            aconst_null
            areturn
         1: .line 198
      StackMap locals:
      StackMap stack:
            aload 1 /* c */
            checkcast javax.swing.AbstractButton
            astore 2 /* b */
        start local 2 // javax.swing.AbstractButton b
         2: .line 200
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getText:()Ljava/lang/String;
            astore 3 /* text */
        start local 3 // java.lang.String text
         3: .line 202
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getIcon:()Ljavax/swing/Icon;
            astore 4 /* buttonIcon */
        start local 4 // javax.swing.Icon buttonIcon
         4: .line 203
            aload 4 /* buttonIcon */
            ifnonnull 6
         5: .line 204
            aload 0 /* this */
            aload 2 /* b */
            invokevirtual com.apple.laf.AquaButtonLabeledUI.getDefaultIcon:(Ljavax/swing/JComponent;)Ljavax/swing/Icon;
            astore 4 /* buttonIcon */
         6: .line 207
      StackMap locals: javax.swing.AbstractButton java.lang.String javax.swing.Icon
      StackMap stack:
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getFont:()Ljava/awt/Font;
            astore 5 /* font */
        start local 5 // java.awt.Font font
         7: .line 208
            aload 2 /* b */
            aload 5 /* font */
            invokevirtual javax.swing.AbstractButton.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 6 /* fm */
        start local 6 // java.awt.FontMetrics fm
         8: .line 210
            new java.awt.Rectangle
            dup
            sipush 32767
            sipush 32767
            invokespecial java.awt.Rectangle.<init>:(II)V
            astore 7 /* prefViewRect */
        start local 7 // java.awt.Rectangle prefViewRect
         9: .line 211
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 8 /* prefIconRect */
        start local 8 // java.awt.Rectangle prefIconRect
        10: .line 212
            new java.awt.Rectangle
            dup
            invokespecial java.awt.Rectangle.<init>:()V
            astore 9 /* prefTextRect */
        start local 9 // java.awt.Rectangle prefTextRect
        11: .line 214
            aload 1 /* c */
            aload 6 /* fm */
            aload 3 /* text */
            aload 4 /* buttonIcon */
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getVerticalAlignment:()I
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getHorizontalAlignment:()I
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getVerticalTextPosition:()I
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getHorizontalTextPosition:()I
            aload 7 /* prefViewRect */
            aload 8 /* prefIconRect */
            aload 9 /* prefTextRect */
            aload 3 /* text */
            ifnonnull 12
            iconst_0
            goto 13
      StackMap locals: com.apple.laf.AquaButtonLabeledUI javax.swing.JComponent javax.swing.AbstractButton java.lang.String javax.swing.Icon java.awt.Font java.awt.FontMetrics java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
        12: aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getIconTextGap:()I
      StackMap locals: com.apple.laf.AquaButtonLabeledUI javax.swing.JComponent javax.swing.AbstractButton java.lang.String javax.swing.Icon java.awt.Font java.awt.FontMetrics java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle
      StackMap stack: javax.swing.JComponent java.awt.FontMetrics java.lang.String javax.swing.Icon int int int int java.awt.Rectangle java.awt.Rectangle java.awt.Rectangle int
        13: invokestatic javax.swing.SwingUtilities.layoutCompoundLabel:(Ljavax/swing/JComponent;Ljava/awt/FontMetrics;Ljava/lang/String;Ljavax/swing/Icon;IIIILjava/awt/Rectangle;Ljava/awt/Rectangle;Ljava/awt/Rectangle;I)Ljava/lang/String;
            pop
        14: .line 217
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.x:I
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.x:I
            invokestatic java.lang.Math.min:(II)I
            istore 10 /* x1 */
        start local 10 // int x1
        15: .line 218
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.x:I
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.width:I
            iadd
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.x:I
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.width:I
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 11 /* x2 */
        start local 11 // int x2
        16: .line 219
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.y:I
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.y:I
            invokestatic java.lang.Math.min:(II)I
            istore 12 /* y1 */
        start local 12 // int y1
        17: .line 220
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.y:I
            aload 8 /* prefIconRect */
            getfield java.awt.Rectangle.height:I
            iadd
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.y:I
            aload 9 /* prefTextRect */
            getfield java.awt.Rectangle.height:I
            iadd
            invokestatic java.lang.Math.max:(II)I
            istore 13 /* y2 */
        start local 13 // int y2
        18: .line 221
            iload 11 /* x2 */
            iload 10 /* x1 */
            isub
            istore 14 /* width */
        start local 14 // int width
        19: .line 222
            iload 13 /* y2 */
            iload 12 /* y1 */
            isub
            istore 15 /* height */
        start local 15 // int height
        20: .line 224
            aload 2 /* b */
            invokevirtual javax.swing.AbstractButton.getInsets:()Ljava/awt/Insets;
            astore 16 /* prefInsets */
        start local 16 // java.awt.Insets prefInsets
        21: .line 225
            iload 14 /* width */
            aload 16 /* prefInsets */
            getfield java.awt.Insets.left:I
            aload 16 /* prefInsets */
            getfield java.awt.Insets.right:I
            iadd
            iadd
            istore 14 /* width */
        22: .line 226
            iload 15 /* height */
            aload 16 /* prefInsets */
            getfield java.awt.Insets.top:I
            aload 16 /* prefInsets */
            getfield java.awt.Insets.bottom:I
            iadd
            iadd
            istore 15 /* height */
        23: .line 227
            new java.awt.Dimension
            dup
            iload 14 /* width */
            iload 15 /* height */
            invokespecial java.awt.Dimension.<init>:(II)V
            areturn
        end local 16 // java.awt.Insets prefInsets
        end local 15 // int height
        end local 14 // int width
        end local 13 // int y2
        end local 12 // int y1
        end local 11 // int x2
        end local 10 // int x1
        end local 9 // java.awt.Rectangle prefTextRect
        end local 8 // java.awt.Rectangle prefIconRect
        end local 7 // java.awt.Rectangle prefViewRect
        end local 6 // java.awt.FontMetrics fm
        end local 5 // java.awt.Font font
        end local 4 // javax.swing.Icon buttonIcon
        end local 3 // java.lang.String text
        end local 2 // javax.swing.AbstractButton b
        end local 1 // javax.swing.JComponent c
        end local 0 // com.apple.laf.AquaButtonLabeledUI this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   24     0          this  Lcom/apple/laf/AquaButtonLabeledUI;
            0   24     1             c  Ljavax/swing/JComponent;
            2   24     2             b  Ljavax/swing/AbstractButton;
            3   24     3          text  Ljava/lang/String;
            4   24     4    buttonIcon  Ljavax/swing/Icon;
            7   24     5          font  Ljava/awt/Font;
            8   24     6            fm  Ljava/awt/FontMetrics;
            9   24     7  prefViewRect  Ljava/awt/Rectangle;
           10   24     8  prefIconRect  Ljava/awt/Rectangle;
           11   24     9  prefTextRect  Ljava/awt/Rectangle;
           15   24    10            x1  I
           16   24    11            x2  I
           17   24    12            y1  I
           18   24    13            y2  I
           19   24    14         width  I
           20   24    15        height  I
           21   24    16    prefInsets  Ljava/awt/Insets;
    MethodParameters:
      Name  Flags
      c     final
}
SourceFile: "AquaButtonLabeledUI.java"
NestMembers:
  com.apple.laf.AquaButtonLabeledUI$LabeledButtonBorder  com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon
InnerClasses:
  public Size = apple.laf.JRSUIConstants$Size of apple.laf.JRSUIConstants
  public abstract LabeledButtonBorder = com.apple.laf.AquaButtonLabeledUI$LabeledButtonBorder of com.apple.laf.AquaButtonLabeledUI
  protected RecyclableSizingIcon = com.apple.laf.AquaButtonLabeledUI$RecyclableSizingIcon of com.apple.laf.AquaButtonLabeledUI
  abstract Sizeable = com.apple.laf.AquaUtilControlSize$Sizeable of com.apple.laf.AquaUtilControlSize