home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &… the Search for Life CD 3 / 0_CD-ROM.iso / install / jre1_3 / lib / rt.jar / javax / swing / text / DefaultEditorKit$NextVisualPositionAction.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.9 KB  |  59 lines

  1. package javax.swing.text;
  2.  
  3. import java.awt.Point;
  4. import java.awt.Rectangle;
  5. import java.awt.event.ActionEvent;
  6. import javax.swing.text.Position.Bias;
  7.  
  8. class DefaultEditorKit$NextVisualPositionAction extends TextAction {
  9.    private boolean select;
  10.    private int direction;
  11.  
  12.    DefaultEditorKit$NextVisualPositionAction(String var1, boolean var2, int var3) {
  13.       super(var1);
  14.       this.select = var2;
  15.       this.direction = var3;
  16.    }
  17.  
  18.    public void actionPerformed(ActionEvent var1) {
  19.       JTextComponent var2 = ((TextAction)this).getTextComponent(var1);
  20.       if (var2 != null) {
  21.          Caret var3 = var2.getCaret();
  22.          DefaultCaret var4 = var3 instanceof DefaultCaret ? (DefaultCaret)var3 : null;
  23.          int var5 = var3.getDot();
  24.          Position.Bias[] var6 = new Position.Bias[1];
  25.          Point var7 = var3.getMagicCaretPosition();
  26.  
  27.          try {
  28.             if (var7 == null && (this.direction == 1 || this.direction == 5)) {
  29.                Rectangle var8 = var4 != null ? var2.getUI().modelToView(var2, var5, var4.getDotBias()) : var2.modelToView(var5);
  30.                var7 = new Point(var8.x, var8.y);
  31.             }
  32.  
  33.             var5 = var2.getUI().getNextVisualPositionFrom(var2, var5, var4 != null ? var4.getDotBias() : Bias.Forward, this.direction, var6);
  34.             if (var6[0] == null) {
  35.                var6[0] = Bias.Forward;
  36.             }
  37.  
  38.             if (var4 != null) {
  39.                if (this.select) {
  40.                   var4.moveDot(var5, var6[0]);
  41.                } else {
  42.                   var4.setDot(var5, var6[0]);
  43.                }
  44.             } else if (this.select) {
  45.                var3.moveDot(var5);
  46.             } else {
  47.                var3.setDot(var5);
  48.             }
  49.  
  50.             if (var7 != null && (this.direction == 1 || this.direction == 5)) {
  51.                var2.getCaret().setMagicCaretPosition(var7);
  52.             }
  53.          } catch (BadLocationException var9) {
  54.          }
  55.       }
  56.  
  57.    }
  58. }
  59.