home *** CD-ROM | disk | FTP | other *** search
- package javax.swing.text;
-
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Rectangle;
- import java.awt.Shape;
- import javax.swing.plaf.TextUI;
- import javax.swing.text.Position.Bias;
-
- public class DefaultHighlighter$DefaultHighlightPainter extends LayeredHighlighter.LayerPainter {
- private Color color;
-
- public DefaultHighlighter$DefaultHighlightPainter(Color var1) {
- this.color = var1;
- }
-
- public Color getColor() {
- return this.color;
- }
-
- public void paint(Graphics var1, int var2, int var3, Shape var4, JTextComponent var5) {
- Rectangle var6 = var4.getBounds();
-
- try {
- TextUI var7 = var5.getUI();
- Rectangle var8 = var7.modelToView(var5, var2);
- Rectangle var9 = var7.modelToView(var5, var3);
- Color var10 = this.getColor();
- if (var10 == null) {
- var1.setColor(var5.getSelectionColor());
- } else {
- var1.setColor(var10);
- }
-
- if (var8.y == var9.y) {
- Rectangle var11 = var8.union(var9);
- var1.fillRect(var11.x, var11.y, var11.width, var11.height);
- } else {
- int var13 = var6.x + var6.width - var8.x;
- var1.fillRect(var8.x, var8.y, var13, var8.height);
- if (var8.y + var8.height != var9.y) {
- var1.fillRect(var6.x, var8.y + var8.height, var6.width, var9.y - (var8.y + var8.height));
- }
-
- var1.fillRect(var6.x, var9.y, var9.x - var6.x, var9.height);
- }
- } catch (BadLocationException var12) {
- }
-
- }
-
- public Shape paintLayer(Graphics var1, int var2, int var3, Shape var4, JTextComponent var5, View var6) {
- Color var7 = this.getColor();
- if (var7 == null) {
- var1.setColor(var5.getSelectionColor());
- } else {
- var1.setColor(var7);
- }
-
- if (var2 == var6.getStartOffset() && var3 == var6.getEndOffset()) {
- Rectangle var11;
- if (var4 instanceof Rectangle) {
- var11 = (Rectangle)var4;
- } else {
- var11 = var4.getBounds();
- }
-
- var1.fillRect(var11.x, var11.y, var11.width, var11.height);
- return var11;
- } else {
- try {
- Shape var8 = var6.modelToView(var2, Bias.Forward, var3, Bias.Backward, var4);
- Rectangle var9 = var8 instanceof Rectangle ? (Rectangle)var8 : var8.getBounds();
- var1.fillRect(var9.x, var9.y, var9.width, var9.height);
- return var9;
- } catch (BadLocationException var10) {
- return null;
- }
- }
- }
- }
-