Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / jalview / util / Format.js
index abbe88c..881c835 100644 (file)
-Clazz.declarePackage ("jalview.util");\r
-Clazz.load (null, "jalview.util.Format", ["java.lang.Character", "$.IllegalArgumentException", "$.StringBuffer"], function () {\r
-c$ = Clazz.decorateAsClass (function () {\r
-this.width = 0;\r
-this.precision = 0;\r
-this.pre = null;\r
-this.post = null;\r
-this.leading_zeroes = false;\r
-this.show_plus = false;\r
-this.alternate = false;\r
-this.show_space = false;\r
-this.left_align = false;\r
-this.fmt = '\0';\r
-this.formatString = null;\r
-Clazz.instantialize (this, arguments);\r
-}, jalview.util, "Format");\r
-Clazz.makeConstructor (c$, \r
-function (s) {\r
-this.formatString = s;\r
-this.width = 0;\r
-this.precision = -1;\r
-this.pre = "";\r
-this.post = "";\r
-this.leading_zeroes = false;\r
-this.show_plus = false;\r
-this.alternate = false;\r
-this.show_space = false;\r
-this.left_align = false;\r
-this.fmt = ' ';\r
-var length = s.length;\r
-var parse_state = 0;\r
-var i = 0;\r
-while (parse_state == 0) {\r
-if (i >= length) {\r
-parse_state = 5;\r
-} else if (s.charAt (i) == '%') {\r
-if (i < (length - 1)) {\r
-if (s.charAt (i + 1) == '%') {\r
-this.pre = this.pre + '%';\r
-i++;\r
-} else {\r
-parse_state = 1;\r
-}} else {\r
-throw  new IllegalArgumentException ();\r
-}} else {\r
-this.pre = this.pre + s.charAt (i);\r
-}i++;\r
-}\r
-while (parse_state == 1) {\r
-if (i >= length) {\r
-parse_state = 5;\r
-} else if (s.charAt (i) == ' ') {\r
-this.show_space = true;\r
-} else if (s.charAt (i) == '-') {\r
-this.left_align = true;\r
-} else if (s.charAt (i) == '+') {\r
-this.show_plus = true;\r
-} else if (s.charAt (i) == '0') {\r
-this.leading_zeroes = true;\r
-} else if (s.charAt (i) == '#') {\r
-this.alternate = true;\r
-} else {\r
-parse_state = 2;\r
-i--;\r
-}i++;\r
-}\r
-while (parse_state == 2) {\r
-if (i >= length) {\r
-parse_state = 5;\r
-} else if (('0' <= s.charAt (i)) && (s.charAt (i) <= '9')) {\r
-this.width = ((this.width * 10) + s.charCodeAt (i)) - 48;\r
-i++;\r
-} else if (s.charAt (i) == '.') {\r
-parse_state = 3;\r
-this.precision = 0;\r
-i++;\r
-} else {\r
-parse_state = 4;\r
-}}\r
-while (parse_state == 3) {\r
-if (i >= length) {\r
-parse_state = 5;\r
-} else if (('0' <= s.charAt (i)) && (s.charAt (i) <= '9')) {\r
-this.precision = ((this.precision * 10) + s.charCodeAt (i)) - 48;\r
-i++;\r
-} else {\r
-parse_state = 4;\r
-}}\r
-if (parse_state == 4) {\r
-if (i >= length) {\r
-parse_state = 5;\r
-} else {\r
-this.fmt = s.charAt (i);\r
-}i++;\r
-}if (i < length) {\r
-this.post = s.substring (i, length);\r
-}}, "~S");\r
-c$.getHexString = Clazz.defineMethod (c$, "getHexString", \r
-function (color) {\r
-var r;\r
-var g;\r
-var b;\r
-r = Integer.toHexString (color.getRed ());\r
-if (r.length < 2) {\r
-r = "0" + r;\r
-}g = Integer.toHexString (color.getGreen ());\r
-if (g.length < 2) {\r
-g = "0" + g;\r
-}b = Integer.toHexString (color.getBlue ());\r
-if (b.length < 2) {\r
-b = "0" + b;\r
-}return r + g + b;\r
-}, "java.awt.Color");\r
-c$.printDouble = Clazz.defineMethod (c$, "printDouble", \r
-function (s, fmt, x) {\r
-s.print ( new jalview.util.Format (fmt).formDouble (x));\r
-}, "java.io.PrintStream,~S,~N");\r
-c$.printLong = Clazz.defineMethod (c$, "printLong", \r
-function (s, fmt, x) {\r
-s.print ( new jalview.util.Format (fmt).formLong (x));\r
-}, "java.io.PrintStream,~S,~N");\r
-c$.printChar = Clazz.defineMethod (c$, "printChar", \r
-function (s, fmt, x) {\r
-s.print ( new jalview.util.Format (fmt).formChar (x));\r
-}, "java.io.PrintStream,~S,~S");\r
-c$.print = Clazz.defineMethod (c$, "print", \r
-function (s, fmt, x) {\r
-s.print ( new jalview.util.Format (fmt).form (x));\r
-}, "java.io.PrintStream,~S,~S");\r
-c$.atoi = Clazz.defineMethod (c$, "atoi", \r
-function (s) {\r
-return jalview.util.Format.atol (s);\r
-}, "~S");\r
-c$.atol = Clazz.defineMethod (c$, "atol", \r
-function (s) {\r
-var i = 0;\r
-while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {\r
-i++;\r
-}\r
-if ((i < s.length) && (s.charAt (i) == '0')) {\r
-if (((i + 1) < s.length) && ((s.charAt (i + 1) == 'x') || (s.charAt (i + 1) == 'X'))) {\r
-return jalview.util.Format.parseLong (s.substring (i + 2), 16);\r
-} else {\r
-return jalview.util.Format.parseLong (s, 8);\r
-}} else {\r
-return jalview.util.Format.parseLong (s, 10);\r
-}}, "~S");\r
-c$.parseLong = Clazz.defineMethod (c$, "parseLong", \r
- function (s, base) {\r
-var i = 0;\r
-var sign = 1;\r
-var r = 0;\r
-while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {\r
-i++;\r
-}\r
-if ((i < s.length) && (s.charAt (i) == '-')) {\r
-sign = -1;\r
-i++;\r
-} else if ((i < s.length) && (s.charAt (i) == '+')) {\r
-i++;\r
-}while (i < s.length) {\r
-var ch = s.charAt (i);\r
-if (('0' <= ch) && (ch.charCodeAt (0) < (48 + base))) {\r
-r = ((r * base) + ch.charCodeAt (0)) - 48;\r
-} else if (('A' <= ch) && (ch.charCodeAt (0) < ((65 + base) - 10))) {\r
-r = ((r * base) + ch.charCodeAt (0)) - 65 + 10;\r
-} else if (('a' <= ch) && (ch.charCodeAt (0) < ((97 + base) - 10))) {\r
-r = ((r * base) + ch.charCodeAt (0)) - 97 + 10;\r
-} else {\r
-return r * sign;\r
-}i++;\r
-}\r
-return r * sign;\r
-}, "~S,~N");\r
-c$.atof = Clazz.defineMethod (c$, "atof", \r
-function (s) {\r
-var i = 0;\r
-var sign = 1;\r
-var r = 0;\r
-var p = 1;\r
-var state = 0;\r
-while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {\r
-i++;\r
-}\r
-if ((i < s.length) && (s.charAt (i) == '-')) {\r
-sign = -1;\r
-i++;\r
-} else if ((i < s.length) && (s.charAt (i) == '+')) {\r
-i++;\r
-}while (i < s.length) {\r
-var ch = s.charAt (i);\r
-if (('0' <= ch) && (ch <= '9')) {\r
-if (state == 0) {\r
-r = ((r * 10) + ch.charCodeAt (0)) - 48;\r
-} else if (state == 1) {\r
-p = p / 10;\r
-r = r + (p * (ch.charCodeAt (0) - 48));\r
-}} else if (ch == '.') {\r
-if (state == 0) {\r
-state = 1;\r
-} else {\r
-return sign * r;\r
-}} else if ((ch == 'e') || (ch == 'E')) {\r
-var e = jalview.util.Format.parseLong (s.substring (i + 1), 10);\r
-return sign * r * Math.pow (10, e);\r
-} else {\r
-return sign * r;\r
-}i++;\r
-}\r
-return sign * r;\r
-}, "~S");\r
-Clazz.defineMethod (c$, "formDouble", \r
-function (x) {\r
-var r;\r
-if (this.precision < 0) {\r
-this.precision = 6;\r
-}var s = 1;\r
-if (x < 0) {\r
-x = -x;\r
-s = -1;\r
-}if (this.fmt == 'f') {\r
-r = this.fixed_format (x);\r
-} else if ((this.fmt == 'e') || (this.fmt == 'E') || (this.fmt == 'g') || (this.fmt == 'G')) {\r
-r = this.exp_format (x);\r
-} else {\r
-throw  new IllegalArgumentException ();\r
-}return this.pad (this.sign (s, r));\r
-}, "~N");\r
-Clazz.defineMethod (c$, "formLong", \r
-function (x) {\r
-var r;\r
-var s = 0;\r
-if ((this.fmt == 'd') || (this.fmt == 'i')) {\r
-if (x < 0) {\r
-r = ("" + x).substring (1);\r
-s = -1;\r
-} else {\r
-r = "" + x;\r
-s = 1;\r
-}} else if (this.fmt == 'o') {\r
-r = jalview.util.Format.convert (x, 3, 7, "01234567");\r
-} else if (this.fmt == 'x') {\r
-r = jalview.util.Format.convert (x, 4, 15, "0123456789abcdef");\r
-} else if (this.fmt == 'X') {\r
-r = jalview.util.Format.convert (x, 4, 15, "0123456789ABCDEF");\r
-} else {\r
-throw  new IllegalArgumentException ();\r
-}return this.pad (this.sign (s, r));\r
-}, "~N");\r
-Clazz.defineMethod (c$, "formChar", \r
-function (c) {\r
-if (this.fmt != 'c') {\r
-throw  new IllegalArgumentException ();\r
-}var r = "" + c;\r
-return this.pad (r);\r
-}, "~S");\r
-Clazz.defineMethod (c$, "form", \r
-function (s) {\r
-if (this.fmt != 's') {\r
-throw  new IllegalArgumentException ();\r
-}if (this.precision >= 0) {\r
-s = s.substring (0, this.precision);\r
-}return this.pad (s);\r
-}, "~S");\r
-c$.repeat = Clazz.defineMethod (c$, "repeat", \r
- function (c, n) {\r
-if (n <= 0) {\r
-return "";\r
-}var s =  new StringBuffer (n);\r
-for (var i = 0; i < n; i++) {\r
-s.append (c);\r
-}\r
-return s.toString ();\r
-}, "~S,~N");\r
-c$.convert = Clazz.defineMethod (c$, "convert", \r
- function (x, n, m, d) {\r
-if (x == 0) {\r
-return "0";\r
-}var r = "";\r
-while (x != 0) {\r
-r = d.charAt ((x & m)) + r;\r
-x = x >>> n;\r
-}\r
-return r;\r
-}, "~N,~N,~N,~S");\r
-Clazz.defineMethod (c$, "pad", \r
- function (r) {\r
-var p = jalview.util.Format.repeat (' ', this.width - r.length);\r
-if (this.left_align) {\r
-return this.pre + r + p + this.post;\r
-} else {\r
-return this.pre + p + r + this.post;\r
-}}, "~S");\r
-Clazz.defineMethod (c$, "sign", \r
- function (s, r) {\r
-var p = "";\r
-if (s < 0) {\r
-p = "-";\r
-} else if (s > 0) {\r
-if (this.show_plus) {\r
-p = "+";\r
-} else if (this.show_space) {\r
-p = " ";\r
-}} else {\r
-if ((this.fmt == 'o') && this.alternate && (r.length > 0) && (r.charAt (0) != '0')) {\r
-p = "0";\r
-} else if ((this.fmt == 'x') && this.alternate) {\r
-p = "0x";\r
-} else if ((this.fmt == 'X') && this.alternate) {\r
-p = "0X";\r
-}}var w = 0;\r
-if (this.leading_zeroes) {\r
-w = this.width;\r
-} else if (((this.fmt == 'd') || (this.fmt == 'i') || (this.fmt == 'x') || (this.fmt == 'X') || (this.fmt == 'o')) && (this.precision > 0)) {\r
-w = this.precision;\r
-}return p + jalview.util.Format.repeat ('0', w - p.length - r.length) + r;\r
-}, "~N,~S");\r
-Clazz.defineMethod (c$, "fixed_format", \r
- function (d) {\r
-var removeTrailing = ((this.fmt == 'G') || (this.fmt == 'g')) && !this.alternate;\r
-if (d > 0x7FFFFFFFFFFFFFFF) {\r
-return this.exp_format (d);\r
-}if (this.precision == 0) {\r
-return Clazz.doubleToLong (d + 0.5) + (removeTrailing ? "" : ".");\r
-}var whole = Clazz.doubleToLong (d);\r
-var fr = d - whole;\r
-if ((fr >= 1) || (fr < 0)) {\r
-return this.exp_format (d);\r
-}var factor = 1;\r
-var leading_zeroes = "";\r
-for (var i = 1; (i <= this.precision) && (factor <= 0x7FFFFFFFFFFFFFFF); i++) {\r
-factor *= 10;\r
-leading_zeroes = leading_zeroes + "0";\r
-}\r
-var l = Clazz.doubleToLong ((factor * fr) + 0.5);\r
-if (l >= factor) {\r
-l = 0;\r
-whole++;\r
-}var z = leading_zeroes + l;\r
-z = "." + z.substring (z.length - this.precision, z.length);\r
-if (removeTrailing) {\r
-var t = z.length - 1;\r
-while ((t >= 0) && (z.charAt (t) == '0')) {\r
-t--;\r
-}\r
-if ((t >= 0) && (z.charAt (t) == '.')) {\r
-t--;\r
-}z = z.substring (0, t + 1);\r
-}return whole + z;\r
-}, "~N");\r
-Clazz.defineMethod (c$, "exp_format", \r
- function (d) {\r
-var f = "";\r
-var e = 0;\r
-var dd = d;\r
-var factor = 1;\r
-if (d != 0) {\r
-while (dd > 10) {\r
-e++;\r
-factor /= 10;\r
-dd = dd / 10;\r
-}\r
-while (dd < 1) {\r
-e--;\r
-factor *= 10;\r
-dd = dd * 10;\r
-}\r
-}if (((this.fmt == 'g') || (this.fmt == 'G')) && (e >= -4) && (e < this.precision)) {\r
-return this.fixed_format (d);\r
-}d = d * factor;\r
-f = f + this.fixed_format (d);\r
-if ((this.fmt == 'e') || (this.fmt == 'g')) {\r
-f = f + "e";\r
-} else {\r
-f = f + "E";\r
-}var p = "000";\r
-if (e >= 0) {\r
-f = f + "+";\r
-p = p + e;\r
-} else {\r
-f = f + "-";\r
-p = p + (-e);\r
-}return f + p.substring (p.length - 3, p.length);\r
-}, "~N");\r
-Clazz.overrideMethod (c$, "toString", \r
-function () {\r
-return this.formatString;\r
-});\r
-});\r
+Clazz.declarePackage ("jalview.util");
+Clazz.load (null, "jalview.util.Format", ["java.lang.Character", "$.IllegalArgumentException", "$.StringBuffer"], function () {
+c$ = Clazz.decorateAsClass (function () {
+this.width = 0;
+this.precision = 0;
+this.pre = null;
+this.post = null;
+this.leading_zeroes = false;
+this.show_plus = false;
+this.alternate = false;
+this.show_space = false;
+this.left_align = false;
+this.fmt = '\0';
+this.formatString = null;
+Clazz.instantialize (this, arguments);
+}, jalview.util, "Format");
+Clazz.makeConstructor (c$, 
+function (s) {
+this.formatString = s;
+this.width = 0;
+this.precision = -1;
+this.pre = "";
+this.post = "";
+this.leading_zeroes = false;
+this.show_plus = false;
+this.alternate = false;
+this.show_space = false;
+this.left_align = false;
+this.fmt = ' ';
+var length = s.length;
+var parse_state = 0;
+var i = 0;
+while (parse_state == 0) {
+if (i >= length) {
+parse_state = 5;
+} else if (s.charAt (i) == '%') {
+if (i < (length - 1)) {
+if (s.charAt (i + 1) == '%') {
+this.pre = this.pre + '%';
+i++;
+} else {
+parse_state = 1;
+}} else {
+throw  new IllegalArgumentException ();
+}} else {
+this.pre = this.pre + s.charAt (i);
+}i++;
+}
+while (parse_state == 1) {
+if (i >= length) {
+parse_state = 5;
+} else if (s.charAt (i) == ' ') {
+this.show_space = true;
+} else if (s.charAt (i) == '-') {
+this.left_align = true;
+} else if (s.charAt (i) == '+') {
+this.show_plus = true;
+} else if (s.charAt (i) == '0') {
+this.leading_zeroes = true;
+} else if (s.charAt (i) == '#') {
+this.alternate = true;
+} else {
+parse_state = 2;
+i--;
+}i++;
+}
+while (parse_state == 2) {
+if (i >= length) {
+parse_state = 5;
+} else if (('0' <= s.charAt (i)) && (s.charAt (i) <= '9')) {
+this.width = ((this.width * 10) + s.charCodeAt (i)) - 48;
+i++;
+} else if (s.charAt (i) == '.') {
+parse_state = 3;
+this.precision = 0;
+i++;
+} else {
+parse_state = 4;
+}}
+while (parse_state == 3) {
+if (i >= length) {
+parse_state = 5;
+} else if (('0' <= s.charAt (i)) && (s.charAt (i) <= '9')) {
+this.precision = ((this.precision * 10) + s.charCodeAt (i)) - 48;
+i++;
+} else {
+parse_state = 4;
+}}
+if (parse_state == 4) {
+if (i >= length) {
+parse_state = 5;
+} else {
+this.fmt = s.charAt (i);
+}i++;
+}if (i < length) {
+this.post = s.substring (i, length);
+}}, "~S");
+c$.getHexString = Clazz.defineMethod (c$, "getHexString", 
+function (color) {
+var r;
+var g;
+var b;
+r = Integer.toHexString (color.getRed ());
+if (r.length < 2) {
+r = "0" + r;
+}g = Integer.toHexString (color.getGreen ());
+if (g.length < 2) {
+g = "0" + g;
+}b = Integer.toHexString (color.getBlue ());
+if (b.length < 2) {
+b = "0" + b;
+}return r + g + b;
+}, "java.awt.Color");
+c$.printDouble = Clazz.defineMethod (c$, "printDouble", 
+function (s, fmt, x) {
+s.print ( new jalview.util.Format (fmt).formDouble (x));
+}, "java.io.PrintStream,~S,~N");
+c$.printLong = Clazz.defineMethod (c$, "printLong", 
+function (s, fmt, x) {
+s.print ( new jalview.util.Format (fmt).formLong (x));
+}, "java.io.PrintStream,~S,~N");
+c$.printChar = Clazz.defineMethod (c$, "printChar", 
+function (s, fmt, x) {
+s.print ( new jalview.util.Format (fmt).formChar (x));
+}, "java.io.PrintStream,~S,~S");
+c$.print = Clazz.defineMethod (c$, "print", 
+function (s, fmt, x) {
+s.print ( new jalview.util.Format (fmt).form (x));
+}, "java.io.PrintStream,~S,~S");
+c$.atoi = Clazz.defineMethod (c$, "atoi", 
+function (s) {
+return jalview.util.Format.atol (s);
+}, "~S");
+c$.atol = Clazz.defineMethod (c$, "atol", 
+function (s) {
+var i = 0;
+while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {
+i++;
+}
+if ((i < s.length) && (s.charAt (i) == '0')) {
+if (((i + 1) < s.length) && ((s.charAt (i + 1) == 'x') || (s.charAt (i + 1) == 'X'))) {
+return jalview.util.Format.parseLong (s.substring (i + 2), 16);
+} else {
+return jalview.util.Format.parseLong (s, 8);
+}} else {
+return jalview.util.Format.parseLong (s, 10);
+}}, "~S");
+c$.parseLong = Clazz.defineMethod (c$, "parseLong", 
+ function (s, base) {
+var i = 0;
+var sign = 1;
+var r = 0;
+while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {
+i++;
+}
+if ((i < s.length) && (s.charAt (i) == '-')) {
+sign = -1;
+i++;
+} else if ((i < s.length) && (s.charAt (i) == '+')) {
+i++;
+}while (i < s.length) {
+var ch = s.charAt (i);
+if (('0' <= ch) && (ch.charCodeAt (0) < (48 + base))) {
+r = ((r * base) + ch.charCodeAt (0)) - 48;
+} else if (('A' <= ch) && (ch.charCodeAt (0) < ((65 + base) - 10))) {
+r = ((r * base) + ch.charCodeAt (0)) - 65 + 10;
+} else if (('a' <= ch) && (ch.charCodeAt (0) < ((97 + base) - 10))) {
+r = ((r * base) + ch.charCodeAt (0)) - 97 + 10;
+} else {
+return r * sign;
+}i++;
+}
+return r * sign;
+}, "~S,~N");
+c$.atof = Clazz.defineMethod (c$, "atof", 
+function (s) {
+var i = 0;
+var sign = 1;
+var r = 0;
+var p = 1;
+var state = 0;
+while ((i < s.length) && Character.isWhitespace (s.charAt (i))) {
+i++;
+}
+if ((i < s.length) && (s.charAt (i) == '-')) {
+sign = -1;
+i++;
+} else if ((i < s.length) && (s.charAt (i) == '+')) {
+i++;
+}while (i < s.length) {
+var ch = s.charAt (i);
+if (('0' <= ch) && (ch <= '9')) {
+if (state == 0) {
+r = ((r * 10) + ch.charCodeAt (0)) - 48;
+} else if (state == 1) {
+p = p / 10;
+r = r + (p * (ch.charCodeAt (0) - 48));
+}} else if (ch == '.') {
+if (state == 0) {
+state = 1;
+} else {
+return sign * r;
+}} else if ((ch == 'e') || (ch == 'E')) {
+var e = jalview.util.Format.parseLong (s.substring (i + 1), 10);
+return sign * r * Math.pow (10, e);
+} else {
+return sign * r;
+}i++;
+}
+return sign * r;
+}, "~S");
+Clazz.defineMethod (c$, "formDouble", 
+function (x) {
+var r;
+if (this.precision < 0) {
+this.precision = 6;
+}var s = 1;
+if (x < 0) {
+x = -x;
+s = -1;
+}if (this.fmt == 'f') {
+r = this.fixed_format (x);
+} else if ((this.fmt == 'e') || (this.fmt == 'E') || (this.fmt == 'g') || (this.fmt == 'G')) {
+r = this.exp_format (x);
+} else {
+throw  new IllegalArgumentException ();
+}return this.pad (this.sign (s, r));
+}, "~N");
+Clazz.defineMethod (c$, "formLong", 
+function (x) {
+var r;
+var s = 0;
+if ((this.fmt == 'd') || (this.fmt == 'i')) {
+if (x < 0) {
+r = ("" + x).substring (1);
+s = -1;
+} else {
+r = "" + x;
+s = 1;
+}} else if (this.fmt == 'o') {
+r = jalview.util.Format.convert (x, 3, 7, "01234567");
+} else if (this.fmt == 'x') {
+r = jalview.util.Format.convert (x, 4, 15, "0123456789abcdef");
+} else if (this.fmt == 'X') {
+r = jalview.util.Format.convert (x, 4, 15, "0123456789ABCDEF");
+} else {
+throw  new IllegalArgumentException ();
+}return this.pad (this.sign (s, r));
+}, "~N");
+Clazz.defineMethod (c$, "formChar", 
+function (c) {
+if (this.fmt != 'c') {
+throw  new IllegalArgumentException ();
+}var r = "" + c;
+return this.pad (r);
+}, "~S");
+Clazz.defineMethod (c$, "form", 
+function (s) {
+if (this.fmt != 's') {
+throw  new IllegalArgumentException ();
+}if (this.precision >= 0) {
+s = s.substring (0, this.precision);
+}return this.pad (s);
+}, "~S");
+c$.repeat = Clazz.defineMethod (c$, "repeat", 
+ function (c, n) {
+if (n <= 0) {
+return "";
+}var s =  new StringBuffer (n);
+for (var i = 0; i < n; i++) {
+s.append (c);
+}
+return s.toString ();
+}, "~S,~N");
+c$.convert = Clazz.defineMethod (c$, "convert", 
+ function (x, n, m, d) {
+if (x == 0) {
+return "0";
+}var r = "";
+while (x != 0) {
+r = d.charAt ((x & m)) + r;
+x = x >>> n;
+}
+return r;
+}, "~N,~N,~N,~S");
+Clazz.defineMethod (c$, "pad", 
+ function (r) {
+var p = jalview.util.Format.repeat (' ', this.width - r.length);
+if (this.left_align) {
+return this.pre + r + p + this.post;
+} else {
+return this.pre + p + r + this.post;
+}}, "~S");
+Clazz.defineMethod (c$, "sign", 
+ function (s, r) {
+var p = "";
+if (s < 0) {
+p = "-";
+} else if (s > 0) {
+if (this.show_plus) {
+p = "+";
+} else if (this.show_space) {
+p = " ";
+}} else {
+if ((this.fmt == 'o') && this.alternate && (r.length > 0) && (r.charAt (0) != '0')) {
+p = "0";
+} else if ((this.fmt == 'x') && this.alternate) {
+p = "0x";
+} else if ((this.fmt == 'X') && this.alternate) {
+p = "0X";
+}}var w = 0;
+if (this.leading_zeroes) {
+w = this.width;
+} else if (((this.fmt == 'd') || (this.fmt == 'i') || (this.fmt == 'x') || (this.fmt == 'X') || (this.fmt == 'o')) && (this.precision > 0)) {
+w = this.precision;
+}return p + jalview.util.Format.repeat ('0', w - p.length - r.length) + r;
+}, "~N,~S");
+Clazz.defineMethod (c$, "fixed_format", 
+ function (d) {
+var removeTrailing = ((this.fmt == 'G') || (this.fmt == 'g')) && !this.alternate;
+if (d > 0x7FFFFFFFFFFFFFFF) {
+return this.exp_format (d);
+}if (this.precision == 0) {
+return Clazz.doubleToLong (d + 0.5) + (removeTrailing ? "" : ".");
+}var whole = Clazz.doubleToLong (d);
+var fr = d - whole;
+if ((fr >= 1) || (fr < 0)) {
+return this.exp_format (d);
+}var factor = 1;
+var leading_zeroes = "";
+for (var i = 1; (i <= this.precision) && (factor <= 0x7FFFFFFFFFFFFFFF); i++) {
+factor *= 10;
+leading_zeroes = leading_zeroes + "0";
+}
+var l = Clazz.doubleToLong ((factor * fr) + 0.5);
+if (l >= factor) {
+l = 0;
+whole++;
+}var z = leading_zeroes + l;
+z = "." + z.substring (z.length - this.precision, z.length);
+if (removeTrailing) {
+var t = z.length - 1;
+while ((t >= 0) && (z.charAt (t) == '0')) {
+t--;
+}
+if ((t >= 0) && (z.charAt (t) == '.')) {
+t--;
+}z = z.substring (0, t + 1);
+}return whole + z;
+}, "~N");
+Clazz.defineMethod (c$, "exp_format", 
+ function (d) {
+var f = "";
+var e = 0;
+var dd = d;
+var factor = 1;
+if (d != 0) {
+while (dd > 10) {
+e++;
+factor /= 10;
+dd = dd / 10;
+}
+while (dd < 1) {
+e--;
+factor *= 10;
+dd = dd * 10;
+}
+}if (((this.fmt == 'g') || (this.fmt == 'G')) && (e >= -4) && (e < this.precision)) {
+return this.fixed_format (d);
+}d = d * factor;
+f = f + this.fixed_format (d);
+if ((this.fmt == 'e') || (this.fmt == 'g')) {
+f = f + "e";
+} else {
+f = f + "E";
+}var p = "000";
+if (e >= 0) {
+f = f + "+";
+p = p + e;
+} else {
+f = f + "-";
+p = p + (-e);
+}return f + p.substring (p.length - 3, p.length);
+}, "~N");
+Clazz.overrideMethod (c$, "toString", 
+function () {
+return this.formatString;
+});
+});