home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text;
-
- import java.awt.Color;
- import java.awt.Component;
- import java.awt.EventQueue;
- import java.awt.Graphics;
- import java.awt.Point;
- import java.awt.Rectangle;
- import java.awt.event.MouseEvent;
- import java.io.Serializable;
-
- class JTextComponent$ComposedTextCaret extends DefaultCaret implements Serializable {
- // $FF: renamed from: bg java.awt.Color
- Color field_0;
- // $FF: synthetic field
- private final JTextComponent this$0;
-
- JTextComponent$ComposedTextCaret(JTextComponent var1) {
- this.this$0 = var1;
- }
-
- public void install(JTextComponent var1) {
- super.install(var1);
- Document var2 = var1.getDocument();
- if (var2 instanceof StyledDocument) {
- StyledDocument var3 = (StyledDocument)var2;
- Element var4 = var3.getCharacterElement(JTextComponent.access$300(var1).getOffset());
- AttributeSet var5 = var4.getAttributes();
- this.field_0 = var3.getBackground(var5);
- }
-
- if (this.field_0 == null) {
- this.field_0 = ((Component)var1).getBackground();
- }
-
- }
-
- public void paint(Graphics var1) {
- if (((DefaultCaret)this).isVisible()) {
- try {
- Rectangle var2 = super.component.modelToView(((DefaultCaret)this).getDot());
- var1.setXORMode(this.field_0);
- var1.drawLine(var2.x, var2.y, var2.x, var2.y + var2.height - 1);
- var1.setPaintMode();
- } catch (BadLocationException var3) {
- }
- }
-
- }
-
- protected void positionCaret(MouseEvent var1) {
- JTextComponent var2 = super.component;
- Point var3 = new Point(var1.getX(), var1.getY());
- int var4 = var2.viewToModel(var3);
- if (var4 >= JTextComponent.access$300(var2).getOffset() && var4 <= JTextComponent.access$400(var2).getOffset()) {
- super.positionCaret(var1);
- } else {
- try {
- Position var5 = var2.getDocument().createPosition(var4);
- ((Component)var2).getInputContext().endComposition();
- EventQueue.invokeLater(new JTextComponent.DoSetCaretPosition(this.this$0, var2, var5));
- } catch (BadLocationException var6) {
- System.err.println(var6);
- }
- }
-
- }
- }
-