class javax.swing.text.JTextComponent$ComposedTextCaret extends javax.swing.text.DefaultCaret implements java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.swing.text.JTextComponent$ComposedTextCaret
  super_class: javax.swing.text.DefaultCaret
{
  java.awt.Color bg;
    descriptor: Ljava/awt/Color;
    flags: (0x0000) 

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

  void <init>(javax.swing.text.JTextComponent);
    descriptor: (Ljavax/swing/text/JTextComponent;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
         0: .line 5035
            aload 0 /* this */
            aload 1
            putfield javax.swing.text.JTextComponent$ComposedTextCaret.this$0:Ljavax/swing/text/JTextComponent;
            aload 0 /* this */
            invokespecial javax.swing.text.DefaultCaret.<init>:()V
            return
        end local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/swing/text/JTextComponent$ComposedTextCaret;
    MethodParameters:
        Name  Flags
      this$0  final

  public void install(javax.swing.text.JTextComponent);
    descriptor: (Ljavax/swing/text/JTextComponent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
        start local 1 // javax.swing.text.JTextComponent c
         0: .line 5042
            aload 0 /* this */
            aload 1 /* c */
            invokespecial javax.swing.text.DefaultCaret.install:(Ljavax/swing/text/JTextComponent;)V
         1: .line 5044
            aload 1 /* c */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            astore 2 /* doc */
        start local 2 // javax.swing.text.Document doc
         2: .line 5045
            aload 2 /* doc */
            instanceof javax.swing.text.StyledDocument
            ifeq 7
         3: .line 5046
            aload 2 /* doc */
            checkcast javax.swing.text.StyledDocument
            astore 3 /* sDoc */
        start local 3 // javax.swing.text.StyledDocument sDoc
         4: .line 5047
            aload 3 /* sDoc */
            aload 1 /* c */
            getfield javax.swing.text.JTextComponent.composedTextStart:Ljavax/swing/text/Position;
            invokeinterface javax.swing.text.Position.getOffset:()I
            invokeinterface javax.swing.text.StyledDocument.getCharacterElement:(I)Ljavax/swing/text/Element;
            astore 4 /* elem */
        start local 4 // javax.swing.text.Element elem
         5: .line 5048
            aload 4 /* elem */
            invokeinterface javax.swing.text.Element.getAttributes:()Ljavax/swing/text/AttributeSet;
            astore 5 /* attr */
        start local 5 // javax.swing.text.AttributeSet attr
         6: .line 5049
            aload 0 /* this */
            aload 3 /* sDoc */
            aload 5 /* attr */
            invokeinterface javax.swing.text.StyledDocument.getBackground:(Ljavax/swing/text/AttributeSet;)Ljava/awt/Color;
            putfield javax.swing.text.JTextComponent$ComposedTextCaret.bg:Ljava/awt/Color;
        end local 5 // javax.swing.text.AttributeSet attr
        end local 4 // javax.swing.text.Element elem
        end local 3 // javax.swing.text.StyledDocument sDoc
         7: .line 5052
      StackMap locals: javax.swing.text.Document
      StackMap stack:
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.bg:Ljava/awt/Color;
            ifnonnull 9
         8: .line 5053
            aload 0 /* this */
            aload 1 /* c */
            invokevirtual javax.swing.text.JTextComponent.getBackground:()Ljava/awt/Color;
            putfield javax.swing.text.JTextComponent$ComposedTextCaret.bg:Ljava/awt/Color;
         9: .line 5055
      StackMap locals:
      StackMap stack:
            return
        end local 2 // javax.swing.text.Document doc
        end local 1 // javax.swing.text.JTextComponent c
        end local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Ljavax/swing/text/JTextComponent$ComposedTextCaret;
            0   10     1     c  Ljavax/swing/text/JTextComponent;
            2   10     2   doc  Ljavax/swing/text/Document;
            4    7     3  sDoc  Ljavax/swing/text/StyledDocument;
            5    7     4  elem  Ljavax/swing/text/Element;
            6    7     5  attr  Ljavax/swing/text/AttributeSet;
    MethodParameters:
      Name  Flags
      c     

  public void paint(java.awt.Graphics);
    descriptor: (Ljava/awt/Graphics;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
        start local 1 // java.awt.Graphics g
         0: .line 5061
            aload 0 /* this */
            invokevirtual javax.swing.text.JTextComponent$ComposedTextCaret.isVisible:()Z
            ifeq 7
         1: .line 5063
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.component:Ljavax/swing/text/JTextComponent;
            aload 0 /* this */
            invokevirtual javax.swing.text.JTextComponent$ComposedTextCaret.getDot:()I
            invokevirtual javax.swing.text.JTextComponent.modelToView:(I)Ljava/awt/Rectangle;
            astore 2 /* r */
        start local 2 // java.awt.Rectangle r
         2: .line 5064
            aload 1 /* g */
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.bg:Ljava/awt/Color;
            invokevirtual java.awt.Graphics.setXORMode:(Ljava/awt/Color;)V
         3: .line 5065
            aload 1 /* g */
            aload 2 /* r */
            getfield java.awt.Rectangle.x:I
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            aload 2 /* r */
            getfield java.awt.Rectangle.x:I
            aload 2 /* r */
            getfield java.awt.Rectangle.y:I
            aload 2 /* r */
            getfield java.awt.Rectangle.height:I
            iadd
            iconst_1
            isub
            invokevirtual java.awt.Graphics.drawLine:(IIII)V
         4: .line 5066
            aload 1 /* g */
            invokevirtual java.awt.Graphics.setPaintMode:()V
        end local 2 // java.awt.Rectangle r
         5: .line 5067
            goto 7
      StackMap locals:
      StackMap stack: javax.swing.text.BadLocationException
         6: pop
         7: .line 5072
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.awt.Graphics g
        end local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/swing/text/JTextComponent$ComposedTextCaret;
            0    8     1     g  Ljava/awt/Graphics;
            2    5     2     r  Ljava/awt/Rectangle;
      Exception table:
        from    to  target  type
           1     5       6  Class javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      g     

  protected void positionCaret(java.awt.event.MouseEvent);
    descriptor: (Ljava/awt/event/MouseEvent;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
        start local 1 // java.awt.event.MouseEvent me
         0: .line 5079
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.component:Ljavax/swing/text/JTextComponent;
            astore 2 /* host */
        start local 2 // javax.swing.text.JTextComponent host
         1: .line 5080
            new java.awt.Point
            dup
            aload 1 /* me */
            invokevirtual java.awt.event.MouseEvent.getX:()I
            aload 1 /* me */
            invokevirtual java.awt.event.MouseEvent.getY:()I
            invokespecial java.awt.Point.<init>:(II)V
            astore 3 /* pt */
        start local 3 // java.awt.Point pt
         2: .line 5081
            aload 2 /* host */
            aload 3 /* pt */
            invokevirtual javax.swing.text.JTextComponent.viewToModel:(Ljava/awt/Point;)I
            istore 4 /* offset */
        start local 4 // int offset
         3: .line 5082
            aload 2 /* host */
            getfield javax.swing.text.JTextComponent.composedTextStart:Ljavax/swing/text/Position;
            invokeinterface javax.swing.text.Position.getOffset:()I
            istore 5 /* composedStartIndex */
        start local 5 // int composedStartIndex
         4: .line 5083
            iload 4 /* offset */
            iload 5 /* composedStartIndex */
            if_icmplt 6
         5: .line 5084
            iload 4 /* offset */
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.this$0:Ljavax/swing/text/JTextComponent;
            getfield javax.swing.text.JTextComponent.composedTextEnd:Ljavax/swing/text/Position;
            invokeinterface javax.swing.text.Position.getOffset:()I
            if_icmple 13
         6: .line 5087
      StackMap locals: javax.swing.text.JTextComponent$ComposedTextCaret java.awt.event.MouseEvent javax.swing.text.JTextComponent java.awt.Point int int
      StackMap stack:
            aload 2 /* host */
            invokevirtual javax.swing.text.JTextComponent.getDocument:()Ljavax/swing/text/Document;
            iload 4 /* offset */
            invokeinterface javax.swing.text.Document.createPosition:(I)Ljavax/swing/text/Position;
            astore 6 /* newPos */
        start local 6 // javax.swing.text.Position newPos
         7: .line 5088
            aload 2 /* host */
            invokevirtual javax.swing.text.JTextComponent.getInputContext:()Ljava/awt/im/InputContext;
            invokevirtual java.awt.im.InputContext.endComposition:()V
         8: .line 5092
            new javax.swing.text.JTextComponent$DoSetCaretPosition
            dup
            aload 0 /* this */
            getfield javax.swing.text.JTextComponent$ComposedTextCaret.this$0:Ljavax/swing/text/JTextComponent;
            aload 2 /* host */
            aload 6 /* newPos */
            invokespecial javax.swing.text.JTextComponent$DoSetCaretPosition.<init>:(Ljavax/swing/text/JTextComponent;Ljavax/swing/text/JTextComponent;Ljavax/swing/text/Position;)V
            invokestatic java.awt.EventQueue.invokeLater:(Ljava/lang/Runnable;)V
        end local 6 // javax.swing.text.Position newPos
         9: .line 5093
            goto 14
      StackMap locals:
      StackMap stack: javax.swing.text.BadLocationException
        10: astore 6 /* ble */
        start local 6 // javax.swing.text.BadLocationException ble
        11: .line 5094
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 6 /* ble */
            invokevirtual java.io.PrintStream.println:(Ljava/lang/Object;)V
        end local 6 // javax.swing.text.BadLocationException ble
        12: .line 5096
            goto 14
        13: .line 5098
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* me */
            invokespecial javax.swing.text.DefaultCaret.positionCaret:(Ljava/awt/event/MouseEvent;)V
        14: .line 5100
      StackMap locals:
      StackMap stack:
            return
        end local 5 // int composedStartIndex
        end local 4 // int offset
        end local 3 // java.awt.Point pt
        end local 2 // javax.swing.text.JTextComponent host
        end local 1 // java.awt.event.MouseEvent me
        end local 0 // javax.swing.text.JTextComponent$ComposedTextCaret this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   15     0                this  Ljavax/swing/text/JTextComponent$ComposedTextCaret;
            0   15     1                  me  Ljava/awt/event/MouseEvent;
            1   15     2                host  Ljavax/swing/text/JTextComponent;
            2   15     3                  pt  Ljava/awt/Point;
            3   15     4              offset  I
            4   15     5  composedStartIndex  I
            7    9     6              newPos  Ljavax/swing/text/Position;
           11   12     6                 ble  Ljavax/swing/text/BadLocationException;
      Exception table:
        from    to  target  type
           6     9      10  Class javax.swing.text.BadLocationException
    MethodParameters:
      Name  Flags
      me    
}
SourceFile: "JTextComponent.java"
NestHost: javax.swing.text.JTextComponent
InnerClasses:
  ComposedTextCaret = javax.swing.text.JTextComponent$ComposedTextCaret of javax.swing.text.JTextComponent
  private DoSetCaretPosition = javax.swing.text.JTextComponent$DoSetCaretPosition of javax.swing.text.JTextComponent