final class javax.swing.JTable$SortManager
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: javax.swing.JTable$SortManager
  super_class: java.lang.Object
{
  javax.swing.RowSorter<? extends javax.swing.table.TableModel> sorter;
    descriptor: Ljavax/swing/RowSorter;
    flags: (0x0000) 
    Signature: Ljavax/swing/RowSorter<+Ljavax/swing/table/TableModel;>;

  private javax.swing.ListSelectionModel modelSelection;
    descriptor: Ljavax/swing/ListSelectionModel;
    flags: (0x0002) ACC_PRIVATE

  private int modelLeadIndex;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private boolean syncingSelection;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private int[] lastModelSelection;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private javax.swing.SizeSequence modelRowSizes;
    descriptor: Ljavax/swing/SizeSequence;
    flags: (0x0002) ACC_PRIVATE

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

  void <init>(javax.swing.RowSorter<? extends javax.swing.table.TableModel>);
    descriptor: (Ljavax/swing/JTable;Ljavax/swing/RowSorter;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // javax.swing.JTable$SortManager this
        start local 2 // javax.swing.RowSorter sorter
         0: .line 3873
            aload 0 /* this */
            aload 1
            putfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 3874
            aload 0 /* this */
            aload 2 /* sorter */
            putfield javax.swing.JTable$SortManager.sorter:Ljavax/swing/RowSorter;
         2: .line 3875
            aload 2 /* sorter */
            aload 1
            invokevirtual javax.swing.RowSorter.addRowSorterListener:(Ljavax/swing/event/RowSorterListener;)V
         3: .line 3876
            return
        end local 2 // javax.swing.RowSorter sorter
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljavax/swing/JTable$SortManager;
            0    4     2  sorter  Ljavax/swing/RowSorter<+Ljavax/swing/table/TableModel;>;
    Signature: (Ljavax/swing/RowSorter<+Ljavax/swing/table/TableModel;>;)V
    MethodParameters:
        Name  Flags
      this$0  final
      sorter  

  public void dispose();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.JTable$SortManager this
         0: .line 3882
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.sorter:Ljavax/swing/RowSorter;
            ifnull 2
         1: .line 3883
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.sorter:Ljavax/swing/RowSorter;
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.RowSorter.removeRowSorterListener:(Ljavax/swing/event/RowSorterListener;)V
         2: .line 3885
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/JTable$SortManager;

  public void setViewRowHeight(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // int viewIndex
        start local 2 // int rowHeight
         0: .line 3891
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            ifnonnull 4
         1: .line 3892
            aload 0 /* this */
            new javax.swing.SizeSequence
            dup
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getModel:()Ljavax/swing/table/TableModel;
            invokeinterface javax.swing.table.TableModel.getRowCount:()I
         2: .line 3893
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getRowHeight:()I
            invokespecial javax.swing.SizeSequence.<init>:(II)V
         3: .line 3892
            putfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
         4: .line 3895
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            iload 1 /* viewIndex */
            invokevirtual javax.swing.JTable.convertRowIndexToModel:(I)I
            iload 2 /* rowHeight */
            invokevirtual javax.swing.SizeSequence.setSize:(II)V
         5: .line 3896
            return
        end local 2 // int rowHeight
        end local 1 // int viewIndex
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Ljavax/swing/JTable$SortManager;
            0    6     1  viewIndex  I
            0    6     2  rowHeight  I
    MethodParameters:
           Name  Flags
      viewIndex  
      rowHeight  

  public void allChanged();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.swing.JTable$SortManager this
         0: .line 3902
            aload 0 /* this */
            iconst_m1
            putfield javax.swing.JTable$SortManager.modelLeadIndex:I
         1: .line 3903
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
         2: .line 3904
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
         3: .line 3905
            return
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/swing/JTable$SortManager;

  public void viewSelectionChanged(javax.swing.event.ListSelectionEvent);
    descriptor: (Ljavax/swing/event/ListSelectionEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.event.ListSelectionEvent e
         0: .line 3911
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.syncingSelection:Z
            ifne 2
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            ifnull 2
         1: .line 3912
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
         2: .line 3914
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.swing.event.ListSelectionEvent e
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/swing/JTable$SortManager;
            0    3     1     e  Ljavax/swing/event/ListSelectionEvent;
    MethodParameters:
      Name  Flags
      e     

  public void prepareForChange(javax.swing.event.RowSorterEvent, javax.swing.JTable$ModelChange);
    descriptor: (Ljavax/swing/event/RowSorterEvent;Ljavax/swing/JTable$ModelChange;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.event.RowSorterEvent sortEvent
        start local 2 // javax.swing.JTable$ModelChange change
         0: .line 3923
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getUpdateSelectionOnSort:()Z
            ifeq 2
         1: .line 3924
            aload 0 /* this */
            aload 1 /* sortEvent */
            aload 2 /* change */
            invokevirtual javax.swing.JTable$SortManager.cacheSelection:(Ljavax/swing/event/RowSorterEvent;Ljavax/swing/JTable$ModelChange;)V
         2: .line 3926
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.JTable$ModelChange change
        end local 1 // javax.swing.event.RowSorterEvent sortEvent
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Ljavax/swing/JTable$SortManager;
            0    3     1  sortEvent  Ljavax/swing/event/RowSorterEvent;
            0    3     2     change  Ljavax/swing/JTable$ModelChange;
    MethodParameters:
           Name  Flags
      sortEvent  
      change     

  private void cacheSelection(javax.swing.event.RowSorterEvent, javax.swing.JTable$ModelChange);
    descriptor: (Ljavax/swing/event/RowSorterEvent;Ljavax/swing/JTable$ModelChange;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.event.RowSorterEvent sortEvent
        start local 2 // javax.swing.JTable$ModelChange change
         0: .line 3933
            aload 1 /* sortEvent */
            ifnull 28
         1: .line 3938
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            ifnonnull 25
         2: .line 3939
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.sorter:Ljavax/swing/RowSorter;
            invokevirtual javax.swing.RowSorter.getViewRowCount:()I
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getModel:()Ljavax/swing/table/TableModel;
            invokeinterface javax.swing.table.TableModel.getRowCount:()I
            if_icmpeq 25
         3: .line 3940
            aload 0 /* this */
            new javax.swing.DefaultListSelectionModel
            dup
            invokespecial javax.swing.DefaultListSelectionModel.<init>:()V
            putfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
         4: .line 3941
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getSelectionModel:()Ljavax/swing/ListSelectionModel;
            astore 3 /* viewSelection */
        start local 3 // javax.swing.ListSelectionModel viewSelection
         5: .line 3942
            aload 3 /* viewSelection */
            invokeinterface javax.swing.ListSelectionModel.getMinSelectionIndex:()I
            istore 4 /* min */
        start local 4 // int min
         6: .line 3943
            aload 3 /* viewSelection */
            invokeinterface javax.swing.ListSelectionModel.getMaxSelectionIndex:()I
            istore 5 /* max */
        start local 5 // int max
         7: .line 3945
            iload 4 /* min */
            istore 7 /* viewIndex */
        start local 7 // int viewIndex
         8: goto 18
         9: .line 3946
      StackMap locals: javax.swing.JTable$SortManager javax.swing.event.RowSorterEvent javax.swing.JTable$ModelChange javax.swing.ListSelectionModel int int top int
      StackMap stack:
            aload 3 /* viewSelection */
            iload 7 /* viewIndex */
            invokeinterface javax.swing.ListSelectionModel.isSelectedIndex:(I)Z
            ifeq 17
        10: .line 3947
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
        11: .line 3948
            aload 1 /* sortEvent */
            iload 7 /* viewIndex */
        12: .line 3947
            invokevirtual javax.swing.JTable.convertRowIndexToModel:(Ljavax/swing/event/RowSorterEvent;I)I
            istore 6 /* modelIndex */
        start local 6 // int modelIndex
        13: .line 3949
            iload 6 /* modelIndex */
            iconst_m1
            if_icmpeq 17
        14: .line 3950
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
        15: .line 3951
            iload 6 /* modelIndex */
            iload 6 /* modelIndex */
        16: .line 3950
            invokeinterface javax.swing.ListSelectionModel.addSelectionInterval:(II)V
        end local 6 // int modelIndex
        17: .line 3945
      StackMap locals:
      StackMap stack:
            iinc 7 /* viewIndex */ 1
      StackMap locals:
      StackMap stack:
        18: iload 7 /* viewIndex */
            iload 5 /* max */
            if_icmple 9
        end local 7 // int viewIndex
        19: .line 3955
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aload 1 /* sortEvent */
        20: .line 3956
            aload 3 /* viewSelection */
            invokeinterface javax.swing.ListSelectionModel.getLeadSelectionIndex:()I
        21: .line 3955
            invokevirtual javax.swing.JTable.convertRowIndexToModel:(Ljavax/swing/event/RowSorterEvent;I)I
            istore 6 /* modelIndex */
        start local 6 // int modelIndex
        22: .line 3958
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            iload 6 /* modelIndex */
            iload 6 /* modelIndex */
        23: .line 3957
            invokestatic sun.swing.SwingUtilities2.setLeadAnchorWithoutSelection:(Ljavax/swing/ListSelectionModel;II)V
        end local 6 // int modelIndex
        end local 5 // int max
        end local 4 // int min
        end local 3 // javax.swing.ListSelectionModel viewSelection
        24: .line 3959
            goto 44
      StackMap locals: javax.swing.JTable$SortManager javax.swing.event.RowSorterEvent javax.swing.JTable$ModelChange
      StackMap stack:
        25: aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            ifnonnull 44
        26: .line 3962
            aload 0 /* this */
            aload 1 /* sortEvent */
            invokevirtual javax.swing.JTable$SortManager.cacheModelSelection:(Ljavax/swing/event/RowSorterEvent;)V
        27: .line 3964
            goto 44
      StackMap locals:
      StackMap stack:
        28: aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.allRowsChanged:Z
            ifeq 31
        29: .line 3966
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
        30: .line 3967
            goto 44
      StackMap locals:
      StackMap stack:
        31: aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            ifnull 43
        32: .line 3969
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.type:I
            tableswitch { // -1 - 1
                   -1: 33
                    0: 42
                    1: 37
              default: 42
          }
        33: .line 3971
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
        34: .line 3972
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.endModelIndex:I
        35: .line 3971
            invokeinterface javax.swing.ListSelectionModel.removeIndexInterval:(II)V
        36: .line 3973
            goto 44
        37: .line 3975
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
        38: .line 3976
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.length:I
        39: .line 3977
            iconst_1
        40: .line 3975
            invokeinterface javax.swing.ListSelectionModel.insertIndexInterval:(IIZ)V
        41: .line 3978
            goto 44
        42: .line 3982
      StackMap locals:
      StackMap stack:
            goto 44
        43: .line 3985
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            invokevirtual javax.swing.JTable$SortManager.cacheModelSelection:(Ljavax/swing/event/RowSorterEvent;)V
        44: .line 3987
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.JTable$ModelChange change
        end local 1 // javax.swing.event.RowSorterEvent sortEvent
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   45     0           this  Ljavax/swing/JTable$SortManager;
            0   45     1      sortEvent  Ljavax/swing/event/RowSorterEvent;
            0   45     2         change  Ljavax/swing/JTable$ModelChange;
            5   24     3  viewSelection  Ljavax/swing/ListSelectionModel;
            6   24     4            min  I
            7   24     5            max  I
           13   17     6     modelIndex  I
           22   24     6     modelIndex  I
            8   19     7      viewIndex  I
    MethodParameters:
           Name  Flags
      sortEvent  
      change     

  private void cacheModelSelection(javax.swing.event.RowSorterEvent);
    descriptor: (Ljavax/swing/event/RowSorterEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.event.RowSorterEvent sortEvent
         0: .line 3990
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aload 1 /* sortEvent */
            invokevirtual javax.swing.JTable.convertSelectionToModel:(Ljavax/swing/event/RowSorterEvent;)[I
            putfield javax.swing.JTable$SortManager.lastModelSelection:[I
         1: .line 3991
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aload 1 /* sortEvent */
         2: .line 3992
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            getfield javax.swing.JTable.selectionModel:Ljavax/swing/ListSelectionModel;
            invokeinterface javax.swing.ListSelectionModel.getLeadSelectionIndex:()I
         3: .line 3991
            invokevirtual javax.swing.JTable.convertRowIndexToModel:(Ljavax/swing/event/RowSorterEvent;I)I
            putfield javax.swing.JTable$SortManager.modelLeadIndex:I
         4: .line 3993
            return
        end local 1 // javax.swing.event.RowSorterEvent sortEvent
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljavax/swing/JTable$SortManager;
            0    5     1  sortEvent  Ljavax/swing/event/RowSorterEvent;
    MethodParameters:
           Name  Flags
      sortEvent  

  public void processChange(javax.swing.event.RowSorterEvent, javax.swing.JTable$ModelChange, boolean);
    descriptor: (Ljavax/swing/event/RowSorterEvent;Ljavax/swing/JTable$ModelChange;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.event.RowSorterEvent sortEvent
        start local 2 // javax.swing.JTable$ModelChange change
        start local 3 // boolean sorterChanged
         0: .line 4003
            aload 2 /* change */
            ifnull 24
         1: .line 4004
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.allRowsChanged:Z
            ifeq 5
         2: .line 4005
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
         3: .line 4006
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aconst_null
            putfield javax.swing.JTable.rowModel:Ljavax/swing/SizeSequence;
         4: .line 4007
            goto 24
      StackMap locals:
      StackMap stack:
         5: aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            ifnull 24
         6: .line 4008
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.type:I
            iconst_1
            if_icmpne 16
         7: .line 4009
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
         8: .line 4010
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.endModelIndex:I
         9: .line 4011
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
        10: .line 4010
            isub
        11: .line 4011
            iconst_1
        12: .line 4010
            iadd
        13: .line 4012
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getRowHeight:()I
        14: .line 4009
            invokevirtual javax.swing.SizeSequence.insertEntries:(III)V
        15: .line 4013
            goto 24
      StackMap locals:
      StackMap stack:
        16: aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.type:I
            iconst_m1
            if_icmpne 24
        17: .line 4014
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
        18: .line 4015
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.endModelIndex:I
        19: .line 4016
            aload 2 /* change */
            getfield javax.swing.JTable$ModelChange.startModelIndex:I
        20: .line 4015
            isub
        21: .line 4016
            iconst_1
        22: .line 4015
            iadd
        23: .line 4014
            invokevirtual javax.swing.SizeSequence.removeEntries:(II)V
        24: .line 4020
      StackMap locals:
      StackMap stack:
            iload 3 /* sorterChanged */
            ifeq 27
        25: .line 4021
            aload 0 /* this */
            invokevirtual javax.swing.JTable$SortManager.setViewRowHeightsFromModel:()V
        26: .line 4022
            aload 0 /* this */
            aload 2 /* change */
            invokevirtual javax.swing.JTable$SortManager.restoreSelection:(Ljavax/swing/JTable$ModelChange;)V
        27: .line 4024
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean sorterChanged
        end local 2 // javax.swing.JTable$ModelChange change
        end local 1 // javax.swing.event.RowSorterEvent sortEvent
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   28     0           this  Ljavax/swing/JTable$SortManager;
            0   28     1      sortEvent  Ljavax/swing/event/RowSorterEvent;
            0   28     2         change  Ljavax/swing/JTable$ModelChange;
            0   28     3  sorterChanged  Z
    MethodParameters:
               Name  Flags
      sortEvent      
      change         
      sorterChanged  

  private void setViewRowHeightsFromModel();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // javax.swing.JTable$SortManager this
         0: .line 4031
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            ifnull 10
         1: .line 4032
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            getfield javax.swing.JTable.rowModel:Ljavax/swing/SizeSequence;
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getRowCount:()I
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getRowHeight:()I
            invokevirtual javax.swing.SizeSequence.setSizes:(II)V
         2: .line 4033
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getRowCount:()I
            iconst_1
            isub
            istore 1 /* viewIndex */
        start local 1 // int viewIndex
         3: goto 9
         4: .line 4035
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            iload 1 /* viewIndex */
            invokevirtual javax.swing.JTable.convertRowIndexToModel:(I)I
            istore 2 /* modelIndex */
        start local 2 // int modelIndex
         5: .line 4036
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            getfield javax.swing.JTable.rowModel:Ljavax/swing/SizeSequence;
            iload 1 /* viewIndex */
         6: .line 4037
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelRowSizes:Ljavax/swing/SizeSequence;
            iload 2 /* modelIndex */
            invokevirtual javax.swing.SizeSequence.getSize:(I)I
         7: .line 4036
            invokevirtual javax.swing.SizeSequence.setSize:(II)V
        end local 2 // int modelIndex
         8: .line 4034
            iinc 1 /* viewIndex */ -1
         9: .line 4033
      StackMap locals:
      StackMap stack:
            iload 1 /* viewIndex */
            ifge 4
        end local 1 // int viewIndex
        10: .line 4040
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Ljavax/swing/JTable$SortManager;
            3   10     1   viewIndex  I
            5    8     2  modelIndex  I

  private void restoreSelection(javax.swing.JTable$ModelChange);
    descriptor: (Ljavax/swing/JTable$ModelChange;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=2
        start local 0 // javax.swing.JTable$SortManager this
        start local 1 // javax.swing.JTable$ModelChange change
         0: .line 4046
            aload 0 /* this */
            iconst_1
            putfield javax.swing.JTable$SortManager.syncingSelection:Z
         1: .line 4047
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.lastModelSelection:[I
            ifnull 7
         2: .line 4048
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.lastModelSelection:[I
         3: .line 4049
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelLeadIndex:I
            aload 1 /* change */
         4: .line 4048
            invokevirtual javax.swing.JTable.restoreSortingSelection:([IILjavax/swing/JTable$ModelChange;)V
         5: .line 4050
            aload 0 /* this */
            aconst_null
            putfield javax.swing.JTable$SortManager.lastModelSelection:[I
         6: .line 4051
            goto 29
      StackMap locals:
      StackMap stack:
         7: aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            ifnull 29
         8: .line 4052
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            invokevirtual javax.swing.JTable.getSelectionModel:()Ljavax/swing/ListSelectionModel;
            astore 2 /* viewSelection */
        start local 2 // javax.swing.ListSelectionModel viewSelection
         9: .line 4053
            aload 2 /* viewSelection */
            iconst_1
            invokeinterface javax.swing.ListSelectionModel.setValueIsAdjusting:(Z)V
        10: .line 4054
            aload 2 /* viewSelection */
            invokeinterface javax.swing.ListSelectionModel.clearSelection:()V
        11: .line 4055
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            invokeinterface javax.swing.ListSelectionModel.getMinSelectionIndex:()I
            istore 3 /* min */
        start local 3 // int min
        12: .line 4056
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            invokeinterface javax.swing.ListSelectionModel.getMaxSelectionIndex:()I
            istore 4 /* max */
        start local 4 // int max
        13: .line 4058
            iload 3 /* min */
            istore 6 /* modelIndex */
        start local 6 // int modelIndex
        14: goto 22
        15: .line 4059
      StackMap locals: javax.swing.JTable$SortManager javax.swing.JTable$ModelChange javax.swing.ListSelectionModel int int top int
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            iload 6 /* modelIndex */
            invokeinterface javax.swing.ListSelectionModel.isSelectedIndex:(I)Z
            ifeq 21
        16: .line 4060
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            iload 6 /* modelIndex */
            invokevirtual javax.swing.JTable.convertRowIndexToView:(I)I
            istore 5 /* viewIndex */
        start local 5 // int viewIndex
        17: .line 4061
            iload 5 /* viewIndex */
            iconst_m1
            if_icmpeq 21
        18: .line 4062
            aload 2 /* viewSelection */
            iload 5 /* viewIndex */
        19: .line 4063
            iload 5 /* viewIndex */
        20: .line 4062
            invokeinterface javax.swing.ListSelectionModel.addSelectionInterval:(II)V
        end local 5 // int viewIndex
        21: .line 4058
      StackMap locals:
      StackMap stack:
            iinc 6 /* modelIndex */ 1
      StackMap locals:
      StackMap stack:
        22: iload 6 /* modelIndex */
            iload 4 /* max */
            if_icmple 15
        end local 6 // int modelIndex
        23: .line 4068
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            invokeinterface javax.swing.ListSelectionModel.getLeadSelectionIndex:()I
            istore 6 /* viewLeadIndex */
        start local 6 // int viewLeadIndex
        24: .line 4069
            iload 6 /* viewLeadIndex */
            iconst_m1
            if_icmpeq 26
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.modelSelection:Ljavax/swing/ListSelectionModel;
            invokeinterface javax.swing.ListSelectionModel.isSelectionEmpty:()Z
            ifne 26
        25: .line 4070
            aload 0 /* this */
            getfield javax.swing.JTable$SortManager.this$0:Ljavax/swing/JTable;
            iload 6 /* viewLeadIndex */
            invokevirtual javax.swing.JTable.convertRowIndexToView:(I)I
            istore 6 /* viewLeadIndex */
        26: .line 4073
      StackMap locals:
      StackMap stack:
            aload 2 /* viewSelection */
            iload 6 /* viewLeadIndex */
            iload 6 /* viewLeadIndex */
        27: .line 4072
            invokestatic sun.swing.SwingUtilities2.setLeadAnchorWithoutSelection:(Ljavax/swing/ListSelectionModel;II)V
        28: .line 4074
            aload 2 /* viewSelection */
            iconst_0
            invokeinterface javax.swing.ListSelectionModel.setValueIsAdjusting:(Z)V
        end local 6 // int viewLeadIndex
        end local 4 // int max
        end local 3 // int min
        end local 2 // javax.swing.ListSelectionModel viewSelection
        29: .line 4076
      StackMap locals: javax.swing.JTable$SortManager javax.swing.JTable$ModelChange
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield javax.swing.JTable$SortManager.syncingSelection:Z
        30: .line 4077
            return
        end local 1 // javax.swing.JTable$ModelChange change
        end local 0 // javax.swing.JTable$SortManager this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   31     0           this  Ljavax/swing/JTable$SortManager;
            0   31     1         change  Ljavax/swing/JTable$ModelChange;
            9   29     2  viewSelection  Ljavax/swing/ListSelectionModel;
           12   29     3            min  I
           13   29     4            max  I
           17   21     5      viewIndex  I
           14   23     6     modelIndex  I
           24   29     6  viewLeadIndex  I
    MethodParameters:
        Name  Flags
      change  
}
SourceFile: "JTable.java"
NestHost: javax.swing.JTable
InnerClasses:
  private final ModelChange = javax.swing.JTable$ModelChange of javax.swing.JTable
  private final SortManager = javax.swing.JTable$SortManager of javax.swing.JTable