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 / DefaultHighlighter$DefaultHighlightPainter.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.1 KB  |  82 lines

  1. package javax.swing.text;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Rectangle;
  6. import java.awt.Shape;
  7. import javax.swing.plaf.TextUI;
  8. import javax.swing.text.Position.Bias;
  9.  
  10. public class DefaultHighlighter$DefaultHighlightPainter extends LayeredHighlighter.LayerPainter {
  11.    private Color color;
  12.  
  13.    public DefaultHighlighter$DefaultHighlightPainter(Color var1) {
  14.       this.color = var1;
  15.    }
  16.  
  17.    public Color getColor() {
  18.       return this.color;
  19.    }
  20.  
  21.    public void paint(Graphics var1, int var2, int var3, Shape var4, JTextComponent var5) {
  22.       Rectangle var6 = var4.getBounds();
  23.  
  24.       try {
  25.          TextUI var7 = var5.getUI();
  26.          Rectangle var8 = var7.modelToView(var5, var2);
  27.          Rectangle var9 = var7.modelToView(var5, var3);
  28.          Color var10 = this.getColor();
  29.          if (var10 == null) {
  30.             var1.setColor(var5.getSelectionColor());
  31.          } else {
  32.             var1.setColor(var10);
  33.          }
  34.  
  35.          if (var8.y == var9.y) {
  36.             Rectangle var11 = var8.union(var9);
  37.             var1.fillRect(var11.x, var11.y, var11.width, var11.height);
  38.          } else {
  39.             int var13 = var6.x + var6.width - var8.x;
  40.             var1.fillRect(var8.x, var8.y, var13, var8.height);
  41.             if (var8.y + var8.height != var9.y) {
  42.                var1.fillRect(var6.x, var8.y + var8.height, var6.width, var9.y - (var8.y + var8.height));
  43.             }
  44.  
  45.             var1.fillRect(var6.x, var9.y, var9.x - var6.x, var9.height);
  46.          }
  47.       } catch (BadLocationException var12) {
  48.       }
  49.  
  50.    }
  51.  
  52.    public Shape paintLayer(Graphics var1, int var2, int var3, Shape var4, JTextComponent var5, View var6) {
  53.       Color var7 = this.getColor();
  54.       if (var7 == null) {
  55.          var1.setColor(var5.getSelectionColor());
  56.       } else {
  57.          var1.setColor(var7);
  58.       }
  59.  
  60.       if (var2 == var6.getStartOffset() && var3 == var6.getEndOffset()) {
  61.          Rectangle var11;
  62.          if (var4 instanceof Rectangle) {
  63.             var11 = (Rectangle)var4;
  64.          } else {
  65.             var11 = var4.getBounds();
  66.          }
  67.  
  68.          var1.fillRect(var11.x, var11.y, var11.width, var11.height);
  69.          return var11;
  70.       } else {
  71.          try {
  72.             Shape var8 = var6.modelToView(var2, Bias.Forward, var3, Bias.Backward, var4);
  73.             Rectangle var9 = var8 instanceof Rectangle ? (Rectangle)var8 : var8.getBounds();
  74.             var1.fillRect(var9.x, var9.y, var9.width, var9.height);
  75.             return var9;
  76.          } catch (BadLocationException var10) {
  77.             return null;
  78.          }
  79.       }
  80.    }
  81. }
  82.