1 Clazz.declarePackage ("jalview.io");
\r
2 Clazz.load (null, "jalview.io.AlignmentProperties", ["java.lang.StringBuffer"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.alignment = null;
\r
5 Clazz.instantialize (this, arguments);
\r
6 }, jalview.io, "AlignmentProperties");
\r
7 Clazz.makeConstructor (c$,
\r
8 function (alignment) {
\r
9 this.alignment = alignment;
\r
10 }, "jalview.datamodel.AlignmentI");
\r
11 Clazz.defineMethod (c$, "writeProperties",
\r
12 function (sb, html) {
\r
13 var nl = html ? "<br>" : System.getProperty ("line.separator");
\r
15 var min = 2147483647;
\r
17 for (var i = 0; i < this.alignment.getHeight (); i++) {
\r
18 var size = 1 + this.alignment.getSequenceAt (i).getEnd () - this.alignment.getSequenceAt (i).getStart ();
\r
25 avg = avg / this.alignment.getHeight ();
\r
27 sb.append ("Sequences: " + this.alignment.getHeight ());
\r
29 sb.append ("Minimum Sequence Length: " + min);
\r
31 sb.append ("Maximum Sequence Length: " + max);
\r
33 sb.append ("Average Length: " + Clazz.floatToInt (avg));
\r
34 if ((this.alignment).alignmentProperties != null) {
\r
38 sb.append ("<table border=\"1\">");
\r
39 }var props = (this.alignment).alignmentProperties;
\r
40 var en = props.keys ();
\r
41 while (en.hasMoreElements ()) {
\r
42 var key = en.nextElement ().toString ();
\r
43 var vals = props.get (key).toString ();
\r
45 var val = new StringBuffer ();
\r
49 npos = vals.indexOf ("\n", pos);
\r
51 val.append (vals.substring (pos));
\r
53 val.append (vals.substring (pos, npos));
\r
54 val.append ("<br>");
\r
56 } while (npos != -1);
\r
57 sb.append ("<tr><td>" + key + "</td><td>" + val + "</td></tr>");
\r
59 sb.append (nl + key + "\t" + vals);
\r
62 sb.append ("</table>");
\r
63 }}}, "StringBuffer,~B");
\r
64 Clazz.defineMethod (c$, "formatAsString",
\r
66 return this.formatReport (false);
\r
68 Clazz.defineMethod (c$, "formatReport",
\r
70 var sb = new StringBuffer ();
\r
71 this.writeProperties (sb, html);
\r
74 Clazz.defineMethod (c$, "formatAsHtml",
\r
76 return this.formatReport (true);
\r