class sun.jvm.hotspot.ui.SourceCodePanel$RowHeader extends javax.swing.JPanel
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.jvm.hotspot.ui.SourceCodePanel$RowHeader
  super_class: javax.swing.JPanel
{
  private javax.swing.JViewport view;
    descriptor: Ljavax/swing/JViewport;
    flags: (0x0002) ACC_PRIVATE

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

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

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

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

  final sun.jvm.hotspot.ui.SourceCodePanel this$0;
    descriptor: Lsun/jvm/hotspot/ui/SourceCodePanel;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  public void <init>(sun.jvm.hotspot.ui.SourceCodePanel);
    descriptor: (Lsun/jvm/hotspot/ui/SourceCodePanel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
         0: .line 68
            aload 0 /* this */
            aload 1
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.this$0:Lsun/jvm/hotspot/ui/SourceCodePanel;
         1: .line 69
            aload 0 /* this */
            invokespecial javax.swing.JPanel.<init>:()V
         2: .line 70
            aload 0 /* this */
            iconst_1
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.initted:Z
         3: .line 71
            aload 0 /* this */
            new sun.jvm.hotspot.ui.SourceCodePanel$RowHeader$1
            dup
            aload 0 /* this */
            invokespecial sun.jvm.hotspot.ui.SourceCodePanel$RowHeader$1.<init>:(Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;)V
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.addHierarchyBoundsListener:(Ljava/awt/event/HierarchyBoundsListener;)V
         4: .line 76
            return
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
    MethodParameters:
        Name  Flags
      this$0  final

  public void paint(java.awt.Graphics);
    descriptor: (Ljava/awt/Graphics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=10, args_size=2
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
        start local 1 // java.awt.Graphics g
         0: .line 79
            aload 0 /* this */
            aload 1 /* g */
            invokespecial javax.swing.JPanel.paint:(Ljava/awt/Graphics;)V
         1: .line 80
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getShowLineNumbers:()Z
            ifeq 18
         2: .line 84
            aload 1 /* g */
            invokevirtual java.awt.Graphics.getClipBounds:()Ljava/awt/Rectangle;
            astore 2 /* clip */
        start local 2 // java.awt.Rectangle clip
         3: .line 87
            aload 2 /* clip */
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            idiv
            istore 3 /* start */
        start local 3 // int start
         4: .line 88
            iload 3 /* start */
            aload 2 /* clip */
            getfield java.awt.Rectangle.height:I
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            iconst_1
            isub
            iadd
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            idiv
            iadd
            istore 4 /* end */
        start local 4 // int end
         5: .line 90
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFont:()Ljava/awt/Font;
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            astore 5 /* fm */
        start local 5 // java.awt.FontMetrics fm
         6: .line 91
            aload 5 /* fm */
            invokevirtual java.awt.FontMetrics.getMaxAscent:()I
            istore 6 /* ascent */
        start local 6 // int ascent
         7: .line 92
            iload 3 /* start */
            istore 7 /* i */
        start local 7 // int i
         8: goto 17
         9: .line 94
      StackMap locals: sun.jvm.hotspot.ui.SourceCodePanel$RowHeader java.awt.Graphics java.awt.Rectangle int int java.awt.FontMetrics int int
      StackMap stack:
            iload 7 /* i */
            iconst_1
            iadd
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            astore 8 /* str */
        start local 8 // java.lang.String str
        10: .line 95
            aload 8 /* str */
            aload 5 /* fm */
            invokestatic sun.jvm.hotspot.ui.GraphicsUtilities.getStringWidth:(Ljava/lang/String;Ljava/awt/FontMetrics;)I
            istore 9 /* strWidth */
        start local 9 // int strWidth
        11: .line 96
            aload 1 /* g */
            aload 8 /* str */
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.width:I
            iload 9 /* strWidth */
            isub
            iconst_4
            isub
            iload 6 /* ascent */
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            iload 7 /* i */
            imul
            iadd
            invokevirtual java.awt.Graphics.drawString:(Ljava/lang/String;II)V
        12: .line 99
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.this$0:Lsun/jvm/hotspot/ui/SourceCodePanel;
            getfield sun.jvm.hotspot.ui.SourceCodePanel.breakpoints:Ljava/util/Set;
            iload 7 /* i */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 14
        13: .line 100
            getstatic sun.jvm.hotspot.ui.SourceCodePanel.breakpoint:Ljavax/swing/Icon;
            aload 0 /* this */
            aload 1 /* g */
            iconst_4
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            iload 7 /* i */
            imul
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
        14: .line 104
      StackMap locals: java.lang.String int
      StackMap stack:
            iload 7 /* i */
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.this$0:Lsun/jvm/hotspot/ui/SourceCodePanel;
            getfield sun.jvm.hotspot.ui.SourceCodePanel.highlightedLine:I
            if_icmpne 16
        15: .line 106
            getstatic sun.jvm.hotspot.ui.SourceCodePanel.topFrameCurLine:Ljavax/swing/Icon;
            aload 0 /* this */
            aload 1 /* g */
            iconst_4
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
            iload 7 /* i */
            imul
            invokeinterface javax.swing.Icon.paintIcon:(Ljava/awt/Component;Ljava/awt/Graphics;II)V
        end local 9 // int strWidth
        end local 8 // java.lang.String str
        16: .line 92
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        17: iload 7 /* i */
            iload 4 /* end */
            if_icmple 9
        end local 7 // int i
        end local 6 // int ascent
        end local 5 // java.awt.FontMetrics fm
        end local 4 // int end
        end local 3 // int start
        end local 2 // java.awt.Rectangle clip
        18: .line 110
      StackMap locals: sun.jvm.hotspot.ui.SourceCodePanel$RowHeader java.awt.Graphics
      StackMap stack:
            return
        end local 1 // java.awt.Graphics g
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   19     0      this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
            0   19     1         g  Ljava/awt/Graphics;
            3   18     2      clip  Ljava/awt/Rectangle;
            4   18     3     start  I
            5   18     4       end  I
            6   18     5        fm  Ljava/awt/FontMetrics;
            7   18     6    ascent  I
            8   18     7         i  I
           10   16     8       str  Ljava/lang/String;
           11   16     9  strWidth  I
    MethodParameters:
      Name  Flags
      g     

  public boolean getShowLineNumbers();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
         0: .line 113
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.showLineNumbers:Z
            ireturn
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;

  public void setShowLineNumbers(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
        start local 1 // boolean val
         0: .line 117
            iload 1 /* val */
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.showLineNumbers:Z
            if_icmpeq 5
         1: .line 118
            aload 0 /* this */
            iload 1 /* val */
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.showLineNumbers:Z
         2: .line 119
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.recomputeSize:()V
         3: .line 121
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.invalidate:()V
         4: .line 122
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.validate:()V
         5: .line 124
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean val
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
            0    6     1   val  Z
    MethodParameters:
      Name  Flags
      val   

  public void setFont(java.awt.Font);
    descriptor: (Ljava/awt/Font;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
        start local 1 // java.awt.Font f
         0: .line 127
            aload 0 /* this */
            aload 1 /* f */
            invokespecial javax.swing.JPanel.setFont:(Ljava/awt/Font;)V
         1: .line 128
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* f */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            invokevirtual java.awt.FontMetrics.getHeight:()I
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.rowHeight:I
         2: .line 129
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.recomputeSize:()V
         3: .line 130
            return
        end local 1 // java.awt.Font f
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
            0    4     1     f  Ljava/awt/Font;
    MethodParameters:
      Name  Flags
      f     

  void setViewport(javax.swing.JViewport);
    descriptor: (Ljavax/swing/JViewport;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
        start local 1 // javax.swing.JViewport view
         0: .line 133
            aload 0 /* this */
            aload 1 /* view */
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.view:Ljavax/swing/JViewport;
         1: .line 134
            return
        end local 1 // javax.swing.JViewport view
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
            0    2     1  view  Ljavax/swing/JViewport;
    MethodParameters:
      Name  Flags
      view  

  void recomputeSize();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=1
        start local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
         0: .line 137
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.initted:Z
            ifne 1
            return
         1: .line 138
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.view:Ljavax/swing/JViewport;
            ifnonnull 2
            return
         2: .line 139
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 20
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.width:I
         3: .line 141
            iconst_1
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.this$0:Lsun/jvm/hotspot/ui/SourceCodePanel;
            getfield sun.jvm.hotspot.ui.SourceCodePanel.source:Ljavax/swing/JTextArea;
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.this$0:Lsun/jvm/hotspot/ui/SourceCodePanel;
            getfield sun.jvm.hotspot.ui.SourceCodePanel.source:Ljavax/swing/JTextArea;
            invokevirtual javax.swing.JTextArea.getDocument:()Ljavax/swing/text/Document;
            invokeinterface javax.swing.text.Document.getEndPosition:()Ljavax/swing/text/Position;
            invokeinterface javax.swing.text.Position.getOffset:()I
            iconst_1
            isub
            invokevirtual javax.swing.JTextArea.getLineOfOffset:(I)I
            iadd
            istore 1 /* numLines */
        start local 1 // int numLines
         4: .line 142
            iload 1 /* numLines */
            invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
            astore 2 /* str */
        start local 2 // java.lang.String str
         5: .line 143
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getShowLineNumbers:()Z
            ifeq 7
         6: .line 145
            aload 0 /* this */
            dup
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.width:I
            aload 2 /* str */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFont:()Ljava/awt/Font;
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            invokestatic sun.jvm.hotspot.ui.GraphicsUtilities.getStringWidth:(Ljava/lang/String;Ljava/awt/FontMetrics;)I
            iconst_4
            iadd
            iadd
            putfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.width:I
         7: .line 149
      StackMap locals: int java.lang.String
      StackMap stack:
            new java.awt.Dimension
            dup
            aload 0 /* this */
            getfield sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.width:I
            iload 1 /* numLines */
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFont:()Ljava/awt/Font;
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.getFontMetrics:(Ljava/awt/Font;)Ljava/awt/FontMetrics;
            invokevirtual java.awt.FontMetrics.getHeight:()I
            imul
            invokespecial java.awt.Dimension.<init>:(II)V
            astore 3 /* d */
        start local 3 // java.awt.Dimension d
         8: .line 150
            aload 0 /* this */
            aload 3 /* d */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.setSize:(Ljava/awt/Dimension;)V
         9: .line 151
            aload 0 /* this */
            aload 3 /* d */
            invokevirtual sun.jvm.hotspot.ui.SourceCodePanel$RowHeader.setPreferredSize:(Ljava/awt/Dimension;)V
        end local 3 // java.awt.Dimension d
        end local 2 // java.lang.String str
        end local 1 // int numLines
        10: .line 152
            goto 13
      StackMap locals: sun.jvm.hotspot.ui.SourceCodePanel$RowHeader
      StackMap stack: javax.swing.text.BadLocationException
        11: astore 1 /* e */
        start local 1 // javax.swing.text.BadLocationException e
        12: .line 153
            aload 1 /* e */
            invokevirtual javax.swing.text.BadLocationException.printStackTrace:()V
        end local 1 // javax.swing.text.BadLocationException e
        13: .line 155
      StackMap locals:
      StackMap stack:
            return
        end local 0 // sun.jvm.hotspot.ui.SourceCodePanel$RowHeader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   14     0      this  Lsun/jvm/hotspot/ui/SourceCodePanel$RowHeader;
            4   10     1  numLines  I
            5   10     2       str  Ljava/lang/String;
            8   10     3         d  Ljava/awt/Dimension;
           12   13     1         e  Ljavax/swing/text/BadLocationException;
      Exception table:
        from    to  target  type
           3    10      11  Class javax.swing.text.BadLocationException
}
SourceFile: "SourceCodePanel.java"
NestHost: sun.jvm.hotspot.ui.SourceCodePanel
InnerClasses:
  RowHeader = sun.jvm.hotspot.ui.SourceCodePanel$RowHeader of sun.jvm.hotspot.ui.SourceCodePanel
  sun.jvm.hotspot.ui.SourceCodePanel$RowHeader$1