public class javax.swing.JScrollPane$AccessibleJScrollPane extends javax.swing.JComponent$AccessibleJComponent implements javax.swing.event.ChangeListener, java.beans.PropertyChangeListener
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.swing.JScrollPane$AccessibleJScrollPane
  super_class: javax.swing.JComponent$AccessibleJComponent
{
  protected javax.swing.JViewport viewPort;
    descriptor: Ljavax/swing/JViewport;
    flags: (0x0004) ACC_PROTECTED

  final javax.swing.JScrollPane this$0;
    descriptor: Ljavax/swing/JScrollPane;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void resetViewPort();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
         0: .line 1453
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            ifnull 3
         1: .line 1454
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            aload 0 /* this */
            invokevirtual javax.swing.JViewport.removeChangeListener:(Ljavax/swing/event/ChangeListener;)V
         2: .line 1455
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            aload 0 /* this */
            invokevirtual javax.swing.JViewport.removePropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
         3: .line 1457
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.this$0:Ljavax/swing/JScrollPane;
            invokevirtual javax.swing.JScrollPane.getViewport:()Ljavax/swing/JViewport;
            putfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
         4: .line 1458
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            ifnull 7
         5: .line 1459
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            aload 0 /* this */
            invokevirtual javax.swing.JViewport.addChangeListener:(Ljavax/swing/event/ChangeListener;)V
         6: .line 1460
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
            aload 0 /* this */
            invokevirtual javax.swing.JViewport.addPropertyChangeListener:(Ljava/beans/PropertyChangeListener;)V
         7: .line 1462
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;

  public void <init>(javax.swing.JScrollPane);
    descriptor: (Ljavax/swing/JScrollPane;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
         0: .line 1467
            aload 0 /* this */
            aload 1
            putfield javax.swing.JScrollPane$AccessibleJScrollPane.this$0:Ljavax/swing/JScrollPane;
         1: .line 1468
            aload 0 /* this */
            aload 1
            invokespecial javax.swing.JComponent$AccessibleJComponent.<init>:(Ljavax/swing/JComponent;)V
         2: .line 1447
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JScrollPane$AccessibleJScrollPane.viewPort:Ljavax/swing/JViewport;
         3: .line 1470
            aload 0 /* this */
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.resetViewPort:()V
         4: .line 1474
            aload 1
            invokevirtual javax.swing.JScrollPane.getHorizontalScrollBar:()Ljavax/swing/JScrollBar;
            astore 2 /* scrollBar */
        start local 2 // javax.swing.JScrollBar scrollBar
         5: .line 1475
            aload 2 /* scrollBar */
            ifnull 7
         6: .line 1476
            aload 0 /* this */
            aload 2 /* scrollBar */
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.setScrollBarRelations:(Ljavax/swing/JScrollBar;)V
         7: .line 1478
      StackMap locals: javax.swing.JScrollPane$AccessibleJScrollPane javax.swing.JScrollPane javax.swing.JScrollBar
      StackMap stack:
            aload 1
            invokevirtual javax.swing.JScrollPane.getVerticalScrollBar:()Ljavax/swing/JScrollBar;
            astore 2 /* scrollBar */
         8: .line 1479
            aload 2 /* scrollBar */
            ifnull 10
         9: .line 1480
            aload 0 /* this */
            aload 2 /* scrollBar */
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.setScrollBarRelations:(Ljavax/swing/JScrollBar;)V
        10: .line 1482
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.JScrollBar scrollBar
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;
            5   11     2  scrollBar  Ljavax/swing/JScrollBar;
    MethodParameters:
        Name  Flags
      this$0  final

  public javax.accessibility.AccessibleRole getAccessibleRole();
    descriptor: ()Ljavax/accessibility/AccessibleRole;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
         0: .line 1492
            getstatic javax.accessibility.AccessibleRole.SCROLL_PANE:Ljavax/accessibility/AccessibleRole;
            areturn
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;

  public void stateChanged(javax.swing.event.ChangeEvent);
    descriptor: (Ljavax/swing/event/ChangeEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
        start local 1 // javax.swing.event.ChangeEvent e
         0: .line 1503
            aload 1 /* e */
            ifnonnull 2
         1: .line 1504
            new java.lang.NullPointerException
            dup
            invokespecial java.lang.NullPointerException.<init>:()V
            athrow
         2: .line 1506
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc "AccessibleVisibleData"
         3: .line 1507
            iconst_0
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
         4: .line 1508
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
         5: .line 1506
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.firePropertyChange:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
         6: .line 1509
            return
        end local 1 // javax.swing.event.ChangeEvent e
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;
            0    7     1     e  Ljavax/swing/event/ChangeEvent;
    MethodParameters:
      Name  Flags
      e     

  public void propertyChange(java.beans.PropertyChangeEvent);
    descriptor: (Ljava/beans/PropertyChangeEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
        start local 1 // java.beans.PropertyChangeEvent e
         0: .line 1520
            aload 1 /* e */
            invokevirtual java.beans.PropertyChangeEvent.getPropertyName:()Ljava/lang/String;
            astore 2 /* propertyName */
        start local 2 // java.lang.String propertyName
         1: .line 1521
            aload 2 /* propertyName */
            ldc "horizontalScrollBar"
            if_acmpeq 3
         2: .line 1522
            aload 2 /* propertyName */
            ldc "verticalScrollBar"
            if_acmpne 5
         3: .line 1524
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* e */
            invokevirtual java.beans.PropertyChangeEvent.getNewValue:()Ljava/lang/Object;
            instanceof javax.swing.JScrollBar
            ifeq 5
         4: .line 1525
            aload 0 /* this */
            aload 1 /* e */
            invokevirtual java.beans.PropertyChangeEvent.getNewValue:()Ljava/lang/Object;
            checkcast javax.swing.JScrollBar
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.setScrollBarRelations:(Ljavax/swing/JScrollBar;)V
         5: .line 1528
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.String propertyName
        end local 1 // java.beans.PropertyChangeEvent e
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    6     0          this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;
            0    6     1             e  Ljava/beans/PropertyChangeEvent;
            1    6     2  propertyName  Ljava/lang/String;
    MethodParameters:
      Name  Flags
      e     

  void setScrollBarRelations(javax.swing.JScrollBar);
    descriptor: (Ljavax/swing/JScrollBar;)V
    flags: (0x0000) 
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
        start local 1 // javax.swing.JScrollBar scrollBar
         0: .line 1541
            new javax.accessibility.AccessibleRelation
            dup
            getstatic javax.accessibility.AccessibleRelation.CONTROLLED_BY:Ljava/lang/String;
         1: .line 1542
            aload 1 /* scrollBar */
         2: .line 1541
            invokespecial javax.accessibility.AccessibleRelation.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 1540
            astore 2 /* controlledBy */
        start local 2 // javax.accessibility.AccessibleRelation controlledBy
         4: .line 1544
            new javax.accessibility.AccessibleRelation
            dup
            getstatic javax.accessibility.AccessibleRelation.CONTROLLER_FOR:Ljava/lang/String;
         5: .line 1545
            aload 0 /* this */
            getfield javax.swing.JScrollPane$AccessibleJScrollPane.this$0:Ljavax/swing/JScrollPane;
         6: .line 1544
            invokespecial javax.accessibility.AccessibleRelation.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
         7: .line 1543
            astore 3 /* controllerFor */
        start local 3 // javax.accessibility.AccessibleRelation controllerFor
         8: .line 1548
            aload 1 /* scrollBar */
            invokevirtual javax.swing.JScrollBar.getAccessibleContext:()Ljavax/accessibility/AccessibleContext;
            astore 4 /* ac */
        start local 4 // javax.accessibility.AccessibleContext ac
         9: .line 1549
            aload 4 /* ac */
            invokevirtual javax.accessibility.AccessibleContext.getAccessibleRelationSet:()Ljavax/accessibility/AccessibleRelationSet;
            aload 3 /* controllerFor */
            invokevirtual javax.accessibility.AccessibleRelationSet.add:(Ljavax/accessibility/AccessibleRelation;)Z
            pop
        10: .line 1552
            aload 0 /* this */
            invokevirtual javax.swing.JScrollPane$AccessibleJScrollPane.getAccessibleRelationSet:()Ljavax/accessibility/AccessibleRelationSet;
            aload 2 /* controlledBy */
            invokevirtual javax.accessibility.AccessibleRelationSet.add:(Ljavax/accessibility/AccessibleRelation;)Z
            pop
        11: .line 1553
            return
        end local 4 // javax.accessibility.AccessibleContext ac
        end local 3 // javax.accessibility.AccessibleRelation controllerFor
        end local 2 // javax.accessibility.AccessibleRelation controlledBy
        end local 1 // javax.swing.JScrollBar scrollBar
        end local 0 // javax.swing.JScrollPane$AccessibleJScrollPane this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   12     0           this  Ljavax/swing/JScrollPane$AccessibleJScrollPane;
            0   12     1      scrollBar  Ljavax/swing/JScrollBar;
            4   12     2   controlledBy  Ljavax/accessibility/AccessibleRelation;
            8   12     3  controllerFor  Ljavax/accessibility/AccessibleRelation;
            9   12     4             ac  Ljavax/accessibility/AccessibleContext;
    MethodParameters:
           Name  Flags
      scrollBar  
}
SourceFile: "JScrollPane.java"
NestHost: javax.swing.JScrollPane
InnerClasses:
  public abstract AccessibleJComponent = javax.swing.JComponent$AccessibleJComponent of javax.swing.JComponent
  protected AccessibleJScrollPane = javax.swing.JScrollPane$AccessibleJScrollPane of javax.swing.JScrollPane