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 / plaf / basic / BasicGraphicsUtils.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  4.1 KB  |  197 lines

  1. package javax.swing.plaf.basic;
  2.  
  3. import java.awt.Color;
  4. import java.awt.Component;
  5. import java.awt.Container;
  6. import java.awt.Dimension;
  7. import java.awt.Font;
  8. import java.awt.FontMetrics;
  9. import java.awt.Graphics;
  10. import java.awt.Insets;
  11. import java.awt.Rectangle;
  12. import javax.swing.AbstractButton;
  13. import javax.swing.Icon;
  14. import javax.swing.JComponent;
  15. import javax.swing.SwingUtilities;
  16.  
  17. public class BasicGraphicsUtils {
  18.    private static final Insets GROOVE_INSETS = new Insets(2, 2, 2, 2);
  19.    private static final Insets ETCHED_INSETS = new Insets(2, 2, 2, 2);
  20.  
  21.    public static void drawEtchedRect(Graphics var0, int var1, int var2, int var3, int var4, Color var5, Color var6, Color var7, Color var8) {
  22.       Color var9 = var0.getColor();
  23.       var0.translate(var1, var2);
  24.       var0.setColor(var5);
  25.       var0.drawLine(0, 0, var3 - 1, 0);
  26.       var0.drawLine(0, 1, 0, var4 - 2);
  27.       var0.setColor(var6);
  28.       var0.drawLine(1, 1, var3 - 3, 1);
  29.       var0.drawLine(1, 2, 1, var4 - 3);
  30.       var0.setColor(var8);
  31.       var0.drawLine(var3 - 1, 0, var3 - 1, var4 - 1);
  32.       var0.drawLine(0, var4 - 1, var3 - 1, var4 - 1);
  33.       var0.setColor(var7);
  34.       var0.drawLine(var3 - 2, 1, var3 - 2, var4 - 3);
  35.       var0.drawLine(1, var4 - 2, var3 - 2, var4 - 2);
  36.       var0.translate(-var1, -var2);
  37.       var0.setColor(var9);
  38.    }
  39.  
  40.    public static Insets getEtchedInsets() {
  41.       return ETCHED_INSETS;
  42.    }
  43.  
  44.    public static void drawGroove(Graphics var0, int var1, int var2, int var3, int var4, Color var5, Color var6) {
  45.       Color var7 = var0.getColor();
  46.       var0.translate(var1, var2);
  47.       var0.setColor(var5);
  48.       var0.drawRect(0, 0, var3 - 2, var4 - 2);
  49.       var0.setColor(var6);
  50.       var0.drawLine(1, var4 - 3, 1, 1);
  51.       var0.drawLine(1, 1, var3 - 3, 1);
  52.       var0.drawLine(0, var4 - 1, var3 - 1, var4 - 1);
  53.       var0.drawLine(var3 - 1, var4 - 1, var3 - 1, 0);
  54.       var0.translate(-var1, -var2);
  55.       var0.setColor(var7);
  56.    }
  57.  
  58.    public static Insets getGrooveInsets() {
  59.       return GROOVE_INSETS;
  60.    }
  61.  
  62.    public static void drawBezel(Graphics var0, int var1, int var2, int var3, int var4, boolean var5, boolean var6, Color var7, Color var8, Color var9, Color var10) {
  63.       Color var11 = var0.getColor();
  64.       var0.translate(var1, var2);
  65.       if (var5) {
  66.          if (var6) {
  67.             var0.setColor(var8);
  68.             var0.drawRect(0, 0, var3 - 1, var4 - 1);
  69.          }
  70.  
  71.          var0.setColor(var7);
  72.          var0.drawRect(1, 1, var3 - 3, var4 - 3);
  73.       } else {
  74.          if (var6) {
  75.             var0.setColor(var8);
  76.             var0.drawRect(0, 0, var3 - 1, var4 - 1);
  77.             var0.setColor(var10);
  78.             var0.drawLine(1, 1, 1, var4 - 3);
  79.             var0.drawLine(2, 1, var3 - 3, 1);
  80.             var0.setColor(var9);
  81.             var0.drawLine(2, 2, 2, var4 - 4);
  82.             var0.drawLine(3, 2, var3 - 4, 2);
  83.             var0.setColor(var7);
  84.             var0.drawLine(2, var4 - 3, var3 - 3, var4 - 3);
  85.             var0.drawLine(var3 - 3, 2, var3 - 3, var4 - 4);
  86.             var0.setColor(var8);
  87.             var0.drawLine(1, var4 - 2, var3 - 2, var4 - 2);
  88.             var0.drawLine(var3 - 2, var4 - 2, var3 - 2, 1);
  89.          } else {
  90.             var0.setColor(var10);
  91.             var0.drawLine(0, 0, 0, var4 - 1);
  92.             var0.drawLine(1, 0, var3 - 2, 0);
  93.             var0.setColor(var9);
  94.             var0.drawLine(1, 1, 1, var4 - 3);
  95.             var0.drawLine(2, 1, var3 - 3, 1);
  96.             var0.setColor(var7);
  97.             var0.drawLine(1, var4 - 2, var3 - 2, var4 - 2);
  98.             var0.drawLine(var3 - 2, 1, var3 - 2, var4 - 3);
  99.             var0.setColor(var8);
  100.             var0.drawLine(0, var4 - 1, var3 - 1, var4 - 1);
  101.             var0.drawLine(var3 - 1, var4 - 1, var3 - 1, 0);
  102.          }
  103.  
  104.          var0.translate(-var1, -var2);
  105.          var0.setColor(var11);
  106.       }
  107.  
  108.    }
  109.  
  110.    public static void drawLoweredBezel(Graphics var0, int var1, int var2, int var3, int var4, Color var5, Color var6, Color var7, Color var8) {
  111.       var0.setColor(var6);
  112.       var0.drawLine(0, 0, 0, var4 - 1);
  113.       var0.drawLine(1, 0, var3 - 2, 0);
  114.       var0.setColor(var5);
  115.       var0.drawLine(1, 1, 1, var4 - 2);
  116.       var0.drawLine(1, 1, var3 - 3, 1);
  117.       var0.setColor(var8);
  118.       var0.drawLine(0, var4 - 1, var3 - 1, var4 - 1);
  119.       var0.drawLine(var3 - 1, var4 - 1, var3 - 1, 0);
  120.       var0.setColor(var7);
  121.       var0.drawLine(1, var4 - 2, var3 - 2, var4 - 2);
  122.       var0.drawLine(var3 - 2, var4 - 2, var3 - 2, 1);
  123.    }
  124.  
  125.    public static void drawString(Graphics var0, String var1, int var2, int var3, int var4) {
  126.       int var7 = -1;
  127.       if (var2 != 0) {
  128.          char var6 = Character.toUpperCase((char)var2);
  129.          char var5 = Character.toLowerCase((char)var2);
  130.          int var9 = var1.indexOf(var6);
  131.          int var8 = var1.indexOf(var5);
  132.          if (var9 == -1) {
  133.             var7 = var8;
  134.          } else if (var8 == -1) {
  135.             var7 = var9;
  136.          } else {
  137.             var7 = var8 < var9 ? var8 : var9;
  138.          }
  139.       }
  140.  
  141.       var0.drawString(var1, var3, var4);
  142.       if (var7 != -1) {
  143.          FontMetrics var10 = var0.getFontMetrics();
  144.          int var11 = var3 + var10.stringWidth(var1.substring(0, var7));
  145.          int var13 = var10.charWidth(var1.charAt(var7));
  146.          byte var14 = 1;
  147.          var0.fillRect(var11, var4 + var10.getDescent() - 1, var13, var14);
  148.       }
  149.  
  150.    }
  151.  
  152.    public static void drawDashedRect(Graphics var0, int var1, int var2, int var3, int var4) {
  153.       for(int var5 = var1; var5 < var1 + var3; var5 += 2) {
  154.          var0.drawLine(var5, var2, var5, var2);
  155.          var0.drawLine(var5, var2 + var4 - 1, var5, var2 + var4 - 1);
  156.       }
  157.  
  158.       for(int var6 = var2; var6 < var2 + var4; var6 += 2) {
  159.          var0.drawLine(var1, var6, var1, var6);
  160.          var0.drawLine(var1 + var3 - 1, var6, var1 + var3 - 1, var6);
  161.       }
  162.  
  163.    }
  164.  
  165.    public static Dimension getPreferredButtonSize(AbstractButton var0, int var1) {
  166.       if (((Container)var0).getComponentCount() > 0) {
  167.          return null;
  168.       } else {
  169.          Icon var2 = var0.getIcon();
  170.          String var3 = var0.getText();
  171.          Font var4 = ((Component)var0).getFont();
  172.          FontMetrics var5 = ((Component)var0).getToolkit().getFontMetrics(var4);
  173.          Rectangle var6 = new Rectangle();
  174.          Rectangle var7 = new Rectangle();
  175.          Rectangle var8 = new Rectangle(32767, 32767);
  176.          SwingUtilities.layoutCompoundLabel(var0, var5, var3, var2, var0.getVerticalAlignment(), var0.getHorizontalAlignment(), var0.getVerticalTextPosition(), var0.getHorizontalTextPosition(), var8, var6, var7, var3 == null ? 0 : var1);
  177.          Rectangle var9 = var6.union(var7);
  178.          Insets var10 = ((JComponent)var0).getInsets();
  179.          var9.width += var10.left + var10.right;
  180.          var9.height += var10.top + var10.bottom;
  181.          if (var9.width % 2 == 0) {
  182.             ++var9.width;
  183.          }
  184.  
  185.          if (var9.height % 2 == 0) {
  186.             ++var9.height;
  187.          }
  188.  
  189.          return var9.getSize();
  190.       }
  191.    }
  192.  
  193.    static boolean isLeftToRight(Component var0) {
  194.       return var0.getComponentOrientation().isLeftToRight();
  195.    }
  196. }
  197.