home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1998 January / PCO0198.ISO / browser / net_linx / java40.jar / sun / awt / motif / X11FontMetrics.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-11-03  |  1.4 KB  |  76 lines

  1. package sun.awt.motif;
  2.  
  3. import java.awt.Dimension;
  4. import java.awt.Font;
  5. import java.awt.FontMetrics;
  6. import java.util.Hashtable;
  7.  
  8. class X11FontMetrics extends FontMetrics {
  9.    int[] widths;
  10.    int ascent;
  11.    int descent;
  12.    int leading;
  13.    int height;
  14.    int maxAscent;
  15.    int maxDescent;
  16.    int maxHeight;
  17.    int maxAdvance;
  18.    static Hashtable table = new Hashtable();
  19.  
  20.    public X11FontMetrics(Font var1) {
  21.       super(var1);
  22.       this.init();
  23.    }
  24.  
  25.    public int getLeading() {
  26.       return this.leading;
  27.    }
  28.  
  29.    public int getAscent() {
  30.       return this.ascent;
  31.    }
  32.  
  33.    public int getDescent() {
  34.       return this.descent;
  35.    }
  36.  
  37.    public int getHeight() {
  38.       return this.height;
  39.    }
  40.  
  41.    public int getMaxAscent() {
  42.       return this.maxAscent;
  43.    }
  44.  
  45.    public int getMaxDescent() {
  46.       return this.maxDescent;
  47.    }
  48.  
  49.    public int getMaxAdvance() {
  50.       return this.maxAdvance;
  51.    }
  52.  
  53.    public native int stringWidth(String var1);
  54.  
  55.    public native Dimension stringExtent(String var1);
  56.  
  57.    public native int charsWidth(char[] var1, int var2, int var3);
  58.  
  59.    public native int bytesWidth(byte[] var1, int var2, int var3);
  60.  
  61.    public int[] getWidths() {
  62.       return this.widths;
  63.    }
  64.  
  65.    native void init();
  66.  
  67.    static synchronized FontMetrics getFontMetrics(Font var0) {
  68.       Object var1 = (FontMetrics)table.get(var0);
  69.       if (var1 == null) {
  70.          table.put(var0, var1 = new X11FontMetrics(var0));
  71.       }
  72.  
  73.       return (FontMetrics)var1;
  74.    }
  75. }
  76.