bb0305898f26bc118319017037f6a88c32d622cf
[jalviewjs.git] / site / j2s / jssun / font / FontUtilities.js
1 Clazz.declarePackage ("jssun.font");
2 Clazz.load (null, "jssun.font.FontUtilities", ["java.io.BufferedReader", "$.File", "$.FileInputStream", "$.InputStreamReader", "java.lang.Float"], function () {
3 c$ = Clazz.declareType (jssun.font, "FontUtilities");
4 c$.isComplexCharCode = Clazz.defineMethod (c$, "isComplexCharCode", 
5 function (code) {
6 if (code < 768 || code > 8303) {
7 return false;
8 } else if (code <= 0x036f) {
9 return true;
10 } else if (code < 0x0590) {
11 return false;
12 } else if (code <= 0x06ff) {
13 return true;
14 } else if (code < 0x0900) {
15 return false;
16 } else if (code <= 0x0e7f) {
17 return true;
18 } else if (code < 0x0f00) {
19 return false;
20 } else if (code <= 0x0fff) {
21 return true;
22 } else if (code < 0x1100) {
23 return false;
24 } else if (code < 0x11ff) {
25 return true;
26 } else if (code < 0x1780) {
27 return false;
28 } else if (code <= 0x17ff) {
29 return true;
30 } else if (code < 0x200c) {
31 return false;
32 } else if (code <= 0x200d) {
33 return true;
34 } else if (code >= 0x202a && code <= 0x202e) {
35 return true;
36 } else if (code >= 0x206a && code <= 0x206f) {
37 return true;
38 }return false;
39 }, "~N");
40 c$.isLogging = Clazz.defineMethod (c$, "isLogging", 
41 function () {
42 return jssun.font.FontUtilities.logging;
43 });
44 c$.debugFonts = Clazz.defineMethod (c$, "debugFonts", 
45 function () {
46 return jssun.font.FontUtilities.$debugFonts;
47 });
48 c$.fontSupportsDefaultEncoding = Clazz.defineMethod (c$, "fontSupportsDefaultEncoding", 
49 function (font) {
50 return false;
51 }, "java.awt.Font");
52 c$.mapFcName = Clazz.defineMethod (c$, "mapFcName", 
53 function (name) {
54 for (var i = 0; i < jssun.font.FontUtilities.nameMap.length; i++) {
55 if (name.equals (jssun.font.FontUtilities.nameMap[i][0])) {
56 return jssun.font.FontUtilities.nameMap[i][1];
57 }}
58 return null;
59 }, "~S");
60 Clazz.defineStatics (c$,
61 "isSolaris", false,
62 "isLinux", false,
63 "isMacOSX", false,
64 "isSolaris8", false,
65 "isSolaris9", false,
66 "isOpenSolaris", false,
67 "useT2K", false,
68 "isWindows", false,
69 "isOpenJDK", false,
70 "LUCIDA_FILE_NAME", "LucidaSansRegular.ttf",
71 "$debugFonts", false,
72 "logging", false);
73 {
74 var osName = System.getProperty ("os.name", "unknownOS");
75 jssun.font.FontUtilities.isSolaris = osName.startsWith ("SunOS");
76 jssun.font.FontUtilities.isLinux = osName.startsWith ("Linux");
77 jssun.font.FontUtilities.isMacOSX = osName.contains ("OS X");
78 var t2kStr = System.getProperty ("jssun.java2d.font.scaler");
79 if (t2kStr != null) {
80 jssun.font.FontUtilities.useT2K = "t2k".equals (t2kStr);
81 } else {
82 jssun.font.FontUtilities.useT2K = false;
83 }if (jssun.font.FontUtilities.isSolaris) {
84 var version = System.getProperty ("os.version", "0.0");
85 jssun.font.FontUtilities.isSolaris8 = version.startsWith ("5.8");
86 jssun.font.FontUtilities.isSolaris9 = version.startsWith ("5.9");
87 var ver = Float.parseFloat (version);
88 if (ver > 5.10) {
89 var f =  new java.io.File ("/etc/release");
90 var line = null;
91 try {
92 var fis =  new java.io.FileInputStream (f);
93 var isr =  new java.io.InputStreamReader (fis, "ISO-8859-1");
94 var br =  new java.io.BufferedReader (isr);
95 line = br.readLine ();
96 fis.close ();
97 } catch (ex) {
98 if (Clazz.exceptionOf (ex, Exception)) {
99 } else {
100 throw ex;
101 }
102 }
103 if (line != null && line.indexOf ("OpenSolaris") >= 0) {
104 jssun.font.FontUtilities.isOpenSolaris = true;
105 } else {
106 jssun.font.FontUtilities.isOpenSolaris = false;
107 }} else {
108 jssun.font.FontUtilities.isOpenSolaris = false;
109 }} else {
110 jssun.font.FontUtilities.isSolaris8 = false;
111 jssun.font.FontUtilities.isSolaris9 = false;
112 jssun.font.FontUtilities.isOpenSolaris = false;
113 }jssun.font.FontUtilities.isWindows = osName.startsWith ("Windows");
114 var jreLibDirName = System.getProperty ("java.home", "") + java.io.File.separator + "lib";
115 var jreFontDirName = jreLibDirName + java.io.File.separator + "fonts";
116 var lucidaFile =  new java.io.File (jreFontDirName + java.io.File.separator + "LucidaSansRegular.ttf");
117 jssun.font.FontUtilities.isOpenJDK = !lucidaFile.exists ();
118 var debugLevel = System.getProperty ("jssun.java2d.debugfonts");
119 if (debugLevel != null && !debugLevel.equals ("false")) {
120 jssun.font.FontUtilities.$debugFonts = true;
121 }if (jssun.font.FontUtilities.$debugFonts) {
122 }}Clazz.defineStatics (c$,
123 "MIN_LAYOUT_CHARCODE", 0x0300,
124 "MAX_LAYOUT_CHARCODE", 0x206F,
125 "nameMap",  Clazz.newArray (-1, [ Clazz.newArray (-1, ["sans", "sansserif"]),  Clazz.newArray (-1, ["sans-serif", "sansserif"]),  Clazz.newArray (-1, ["serif", "serif"]),  Clazz.newArray (-1, ["monospace", "monospaced"])]));
126 });