public class com.apple.laf.AquaUtilControlSize
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.apple.laf.AquaUtilControlSize
  super_class: java.lang.Object
{
  protected static final java.lang.String CLIENT_PROPERTY_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "JComponent.sizeVariant"

  protected static final java.lang.String SYSTEM_PROPERTY_KEY;
    descriptor: Ljava/lang/String;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: "swing.component.sizevariant"

  private static final com.apple.laf.AquaUtils$RecyclableSingleton<com.apple.laf.AquaUtilControlSize$PropertySizeListener> sizeListener;
    descriptor: Lcom/apple/laf/AquaUtils$RecyclableSingleton;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    Signature: Lcom/apple/laf/AquaUtils$RecyclableSingleton<Lcom/apple/laf/AquaUtilControlSize$PropertySizeListener;>;

  protected static final apple.laf.JRSUIConstants$Size defaultSize;
    descriptor: Lapple/laf/JRSUIConstants$Size;
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 53
            new com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor
            dup
            ldc Lcom/apple/laf/AquaUtilControlSize$PropertySizeListener;
            invokespecial com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor.<init>:(Ljava/lang/Class;)V
         1: .line 52
            putstatic com.apple.laf.AquaUtilControlSize.sizeListener:Lcom/apple/laf/AquaUtils$RecyclableSingleton;
         2: .line 82
            invokestatic com.apple.laf.AquaUtilControlSize.getDefaultSize:()Lapple/laf/JRSUIConstants$Size;
            putstatic com.apple.laf.AquaUtilControlSize.defaultSize:Lapple/laf/JRSUIConstants$Size;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.apple.laf.AquaUtilControlSize this
         0: .line 44
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.apple.laf.AquaUtilControlSize this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/apple/laf/AquaUtilControlSize;

  protected static com.apple.laf.AquaUtilControlSize$PropertySizeListener getSizeListener();
    descriptor: ()Lcom/apple/laf/AquaUtilControlSize$PropertySizeListener;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 55
            getstatic com.apple.laf.AquaUtilControlSize.sizeListener:Lcom/apple/laf/AquaUtils$RecyclableSingleton;
            invokevirtual com.apple.laf.AquaUtils$RecyclableSingleton.get:()Ljava/lang/Object;
            checkcast com.apple.laf.AquaUtilControlSize$PropertySizeListener
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected static void addSizePropertyListener(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.JComponent c
         0: .line 59
            aload 0 /* c */
            ldc "JComponent.sizeVariant"
            invokestatic com.apple.laf.AquaUtilControlSize.getSizeListener:()Lcom/apple/laf/AquaUtilControlSize$PropertySizeListener;
            invokevirtual javax.swing.JComponent.addPropertyChangeListener:(Ljava/lang/String;Ljava/beans/PropertyChangeListener;)V
         1: .line 60
            aload 0 /* c */
            aload 0 /* c */
            ldc "JComponent.sizeVariant"
            invokevirtual javax.swing.JComponent.getClientProperty:(Ljava/lang/Object;)Ljava/lang/Object;
            invokestatic com.apple.laf.AquaUtilControlSize$PropertySizeListener.applyComponentSize:(Ljavax/swing/JComponent;Ljava/lang/Object;)V
         2: .line 61
            return
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0     c  Ljavax/swing/JComponent;
    MethodParameters:
      Name  Flags
      c     final

  protected static void removeSizePropertyListener(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)V
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.swing.JComponent c
         0: .line 64
            aload 0 /* c */
            ldc "JComponent.sizeVariant"
            invokestatic com.apple.laf.AquaUtilControlSize.getSizeListener:()Lcom/apple/laf/AquaUtilControlSize$PropertySizeListener;
            invokevirtual javax.swing.JComponent.removePropertyChangeListener:(Ljava/lang/String;Ljava/beans/PropertyChangeListener;)V
         1: .line 65
            return
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0     c  Ljavax/swing/JComponent;
    MethodParameters:
      Name  Flags
      c     final

  private static apple.laf.JRSUIConstants$Size getSizeFromString(java.lang.String);
    descriptor: (Ljava/lang/String;)Lapple/laf/JRSUIConstants$Size;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.String name
         0: .line 68
            ldc "regular"
            aload 0 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 1
            getstatic apple.laf.JRSUIConstants$Size.REGULAR:Lapple/laf/JRSUIConstants$Size;
            areturn
         1: .line 69
      StackMap locals:
      StackMap stack:
            ldc "small"
            aload 0 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 2
            getstatic apple.laf.JRSUIConstants$Size.SMALL:Lapple/laf/JRSUIConstants$Size;
            areturn
         2: .line 70
      StackMap locals:
      StackMap stack:
            ldc "mini"
            aload 0 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 3
            getstatic apple.laf.JRSUIConstants$Size.MINI:Lapple/laf/JRSUIConstants$Size;
            areturn
         3: .line 71
      StackMap locals:
      StackMap stack:
            ldc "large"
            aload 0 /* name */
            invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
            ifeq 4
            getstatic apple.laf.JRSUIConstants$Size.LARGE:Lapple/laf/JRSUIConstants$Size;
            areturn
         4: .line 72
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 0 // java.lang.String name
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  name  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      name  final

  private static apple.laf.JRSUIConstants$Size getDefaultSize();
    descriptor: ()Lapple/laf/JRSUIConstants$Size;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=0
         0: .line 76
            new sun.security.action.GetPropertyAction
            dup
            ldc "swing.component.sizevariant"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;)V
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* sizeProperty */
        start local 0 // java.lang.String sizeProperty
         1: .line 77
            aload 0 /* sizeProperty */
            invokestatic com.apple.laf.AquaUtilControlSize.getSizeFromString:(Ljava/lang/String;)Lapple/laf/JRSUIConstants$Size;
            astore 1 /* size */
        start local 1 // apple.laf.JRSUIConstants$Size size
         2: .line 78
            aload 1 /* size */
            ifnull 3
            aload 1 /* size */
            areturn
         3: .line 79
      StackMap locals: java.lang.String apple.laf.JRSUIConstants$Size
      StackMap stack:
            getstatic apple.laf.JRSUIConstants$Size.REGULAR:Lapple/laf/JRSUIConstants$Size;
            areturn
        end local 1 // apple.laf.JRSUIConstants$Size size
        end local 0 // java.lang.String sizeProperty
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            1    4     0  sizeProperty  Ljava/lang/String;
            2    4     1          size  Lapple/laf/JRSUIConstants$Size;

  protected static apple.laf.JRSUIConstants$Size getUserSizeFrom(javax.swing.JComponent);
    descriptor: (Ljavax/swing/JComponent;)Lapple/laf/JRSUIConstants$Size;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // javax.swing.JComponent c
         0: .line 84
            aload 0 /* c */
            ldc "JComponent.sizeVariant"
            invokevirtual javax.swing.JComponent.getClientProperty:(Ljava/lang/Object;)Ljava/lang/Object;
            astore 1 /* sizeProp */
        start local 1 // java.lang.Object sizeProp
         1: .line 85
            aload 1 /* sizeProp */
            ifnonnull 2
            getstatic com.apple.laf.AquaUtilControlSize.defaultSize:Lapple/laf/JRSUIConstants$Size;
            areturn
         2: .line 86
      StackMap locals: java.lang.Object
      StackMap stack:
            aload 1 /* sizeProp */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokestatic com.apple.laf.AquaUtilControlSize.getSizeFromString:(Ljava/lang/String;)Lapple/laf/JRSUIConstants$Size;
            astore 2 /* size */
        start local 2 // apple.laf.JRSUIConstants$Size size
         3: .line 87
            aload 2 /* size */
            ifnonnull 4
            getstatic apple.laf.JRSUIConstants$Size.REGULAR:Lapple/laf/JRSUIConstants$Size;
            areturn
         4: .line 88
      StackMap locals: apple.laf.JRSUIConstants$Size
      StackMap stack:
            aload 2 /* size */
            areturn
        end local 2 // apple.laf.JRSUIConstants$Size size
        end local 1 // java.lang.Object sizeProp
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    5     0         c  Ljavax/swing/JComponent;
            1    5     1  sizeProp  Ljava/lang/Object;
            3    5     2      size  Lapple/laf/JRSUIConstants$Size;
    MethodParameters:
      Name  Flags
      c     final

  protected static apple.laf.JRSUIConstants$Size applySizeForControl(javax.swing.JComponent, com.apple.laf.AquaPainter<? extends apple.laf.JRSUIState>);
    descriptor: (Ljavax/swing/JComponent;Lcom/apple/laf/AquaPainter;)Lapple/laf/JRSUIConstants$Size;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // javax.swing.JComponent c
        start local 1 // com.apple.laf.AquaPainter painter
         0: .line 93
            aload 0 /* c */
            invokestatic com.apple.laf.AquaUtilControlSize.getUserSizeFrom:(Ljavax/swing/JComponent;)Lapple/laf/JRSUIConstants$Size;
            astore 2 /* sizeFromUser */
        start local 2 // apple.laf.JRSUIConstants$Size sizeFromUser
         1: .line 94
            aload 2 /* sizeFromUser */
            ifnonnull 3
         2: .line 95
            getstatic apple.laf.JRSUIConstants$Size.REGULAR:Lapple/laf/JRSUIConstants$Size;
            goto 4
         3: .line 96
      StackMap locals: apple.laf.JRSUIConstants$Size
      StackMap stack:
            aload 2 /* sizeFromUser */
         4: .line 94
      StackMap locals:
      StackMap stack: apple.laf.JRSUIConstants$Size
            astore 3 /* size */
        start local 3 // apple.laf.JRSUIConstants$Size size
         5: .line 97
            aload 1 /* painter */
            getfield com.apple.laf.AquaPainter.state:Lapple/laf/JRSUIState;
            aload 3 /* size */
            invokevirtual apple.laf.JRSUIState.set:(Lapple/laf/JRSUIConstants$Property;)V
         6: .line 98
            aload 3 /* size */
            areturn
        end local 3 // apple.laf.JRSUIConstants$Size size
        end local 2 // apple.laf.JRSUIConstants$Size sizeFromUser
        end local 1 // com.apple.laf.AquaPainter painter
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0             c  Ljavax/swing/JComponent;
            0    7     1       painter  Lcom/apple/laf/AquaPainter<+Lapple/laf/JRSUIState;>;
            1    7     2  sizeFromUser  Lapple/laf/JRSUIConstants$Size;
            5    7     3          size  Lapple/laf/JRSUIConstants$Size;
    Signature: (Ljavax/swing/JComponent;Lcom/apple/laf/AquaPainter<+Lapple/laf/JRSUIState;>;)Lapple/laf/JRSUIConstants$Size;
    MethodParameters:
         Name  Flags
      c        final
      painter  final

  protected static java.awt.Font getFontForSize(java.awt.Component, apple.laf.JRSUIConstants$Size);
    descriptor: (Ljava/awt/Component;Lapple/laf/JRSUIConstants$Size;)Ljava/awt/Font;
    flags: (0x000c) ACC_PROTECTED, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.Component c
        start local 1 // apple.laf.JRSUIConstants$Size size
         0: .line 103
            aload 0 /* c */
            invokevirtual java.awt.Component.getFont:()Ljava/awt/Font;
            astore 2 /* initialFont */
        start local 2 // java.awt.Font initialFont
         1: .line 105
            aload 1 /* size */
            ifnull 2
            aload 2 /* initialFont */
            instanceof javax.swing.plaf.UIResource
            ifne 3
         2: .line 106
      StackMap locals: java.awt.Font
      StackMap stack:
            aload 2 /* initialFont */
            areturn
         3: .line 109
      StackMap locals:
      StackMap stack:
            aload 1 /* size */
            getstatic apple.laf.JRSUIConstants$Size.MINI:Lapple/laf/JRSUIConstants$Size;
            if_acmpne 7
         4: .line 110
            aload 2 /* initialFont */
         5: .line 111
            invokestatic com.apple.laf.AquaFonts.getMiniControlTextFont:()Ljavax/swing/plaf/FontUIResource;
            invokevirtual javax.swing.plaf.FontUIResource.getSize2D:()F
         6: .line 110
            invokevirtual java.awt.Font.deriveFont:(F)Ljava/awt/Font;
            areturn
         7: .line 113
      StackMap locals:
      StackMap stack:
            aload 1 /* size */
            getstatic apple.laf.JRSUIConstants$Size.SMALL:Lapple/laf/JRSUIConstants$Size;
            if_acmpne 11
         8: .line 114
            aload 2 /* initialFont */
         9: .line 115
            invokestatic com.apple.laf.AquaFonts.getSmallControlTextFont:()Ljavax/swing/plaf/FontUIResource;
            invokevirtual javax.swing.plaf.FontUIResource.getSize2D:()F
        10: .line 114
            invokevirtual java.awt.Font.deriveFont:(F)Ljava/awt/Font;
            areturn
        11: .line 118
      StackMap locals:
      StackMap stack:
            aload 2 /* initialFont */
            invokestatic com.apple.laf.AquaFonts.getControlTextFont:()Ljavax/swing/plaf/FontUIResource;
            invokevirtual javax.swing.plaf.FontUIResource.getSize2D:()F
            invokevirtual java.awt.Font.deriveFont:(F)Ljava/awt/Font;
            areturn
        end local 2 // java.awt.Font initialFont
        end local 1 // apple.laf.JRSUIConstants$Size size
        end local 0 // java.awt.Component c
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0            c  Ljava/awt/Component;
            0   12     1         size  Lapple/laf/JRSUIConstants$Size;
            1   12     2  initialFont  Ljava/awt/Font;
    MethodParameters:
      Name  Flags
      c     final
      size  final

  private static void applyBorderForSize(javax.swing.JComponent, apple.laf.JRSUIConstants$Size);
    descriptor: (Ljavax/swing/JComponent;Lapple/laf/JRSUIConstants$Size;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // javax.swing.JComponent c
        start local 1 // apple.laf.JRSUIConstants$Size size
         0: .line 122
            aload 0 /* c */
            invokevirtual javax.swing.JComponent.getBorder:()Ljavax/swing/border/Border;
            astore 2 /* border */
        start local 2 // javax.swing.border.Border border
         1: .line 123
            aload 2 /* border */
            instanceof com.apple.laf.AquaBorder
            ifne 2
            return
         2: .line 124
      StackMap locals: javax.swing.border.Border
      StackMap stack:
            aload 2 /* border */
            checkcast com.apple.laf.AquaBorder
            astore 3 /* aquaBorder */
        start local 3 // com.apple.laf.AquaBorder aquaBorder
         3: .line 126
            aload 3 /* aquaBorder */
            getfield com.apple.laf.AquaBorder.sizeVariant:Lcom/apple/laf/AquaUtilControlSize$SizeVariant;
            getfield com.apple.laf.AquaUtilControlSize$SizeVariant.size:Lapple/laf/JRSUIConstants$Size;
            aload 1 /* size */
            if_acmpne 4
            return
         4: .line 127
      StackMap locals: com.apple.laf.AquaBorder
      StackMap stack:
            aload 3 /* aquaBorder */
            aload 1 /* size */
            invokevirtual com.apple.laf.AquaBorder.deriveBorderForSize:(Lapple/laf/JRSUIConstants$Size;)Lcom/apple/laf/AquaBorder;
            astore 4 /* derivedBorder */
        start local 4 // com.apple.laf.AquaBorder derivedBorder
         5: .line 128
            aload 4 /* derivedBorder */
            ifnonnull 6
            return
         6: .line 130
      StackMap locals: com.apple.laf.AquaBorder
      StackMap stack:
            aload 0 /* c */
            aload 4 /* derivedBorder */
            invokevirtual javax.swing.JComponent.setBorder:(Ljavax/swing/border/Border;)V
         7: .line 131
            return
        end local 4 // com.apple.laf.AquaBorder derivedBorder
        end local 3 // com.apple.laf.AquaBorder aquaBorder
        end local 2 // javax.swing.border.Border border
        end local 1 // apple.laf.JRSUIConstants$Size size
        end local 0 // javax.swing.JComponent c
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    8     0              c  Ljavax/swing/JComponent;
            0    8     1           size  Lapple/laf/JRSUIConstants$Size;
            1    8     2         border  Ljavax/swing/border/Border;
            3    8     3     aquaBorder  Lcom/apple/laf/AquaBorder;
            5    8     4  derivedBorder  Lcom/apple/laf/AquaBorder;
    MethodParameters:
      Name  Flags
      c     final
      size  final
}
SourceFile: "AquaUtilControlSize.java"
NestMembers:
  com.apple.laf.AquaUtilControlSize$PropertySizeListener  com.apple.laf.AquaUtilControlSize$SizeDescriptor  com.apple.laf.AquaUtilControlSize$SizeVariant  com.apple.laf.AquaUtilControlSize$Sizeable
InnerClasses:
  public Size = apple.laf.JRSUIConstants$Size of apple.laf.JRSUIConstants
  protected PropertySizeListener = com.apple.laf.AquaUtilControlSize$PropertySizeListener of com.apple.laf.AquaUtilControlSize
  public SizeDescriptor = com.apple.laf.AquaUtilControlSize$SizeDescriptor of com.apple.laf.AquaUtilControlSize
  public SizeVariant = com.apple.laf.AquaUtilControlSize$SizeVariant of com.apple.laf.AquaUtilControlSize
  abstract Sizeable = com.apple.laf.AquaUtilControlSize$Sizeable of com.apple.laf.AquaUtilControlSize
  abstract RecyclableSingleton = com.apple.laf.AquaUtils$RecyclableSingleton of com.apple.laf.AquaUtils
  RecyclableSingletonFromDefaultConstructor = com.apple.laf.AquaUtils$RecyclableSingletonFromDefaultConstructor of com.apple.laf.AquaUtils
  Property = apple.laf.JRSUIConstants$Property of apple.laf.JRSUIConstants