-/**
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ *
+ * This file is part of Jalview.
*
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.io;
-import java.io.IOException;
-import java.io.StringWriter;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentI;
+
import java.io.PrintWriter;
+import java.io.StringWriter;
import java.util.Enumeration;
import java.util.Hashtable;
-import jalview.datamodel.Alignment;
-import jalview.datamodel.AlignmentI;
-
/**
- * Render associated attributes of an alignment. The heart of this code was refactored from jalview.gui.AlignFrame and jalview.appletgui.AlignFrame
- * TODO: consider extending the html renderer to annotate elements with CSS ids enabling finer output format control.
+ * Render associated attributes of an alignment. The heart of this code was
+ * refactored from jalview.gui.AlignFrame and jalview.appletgui.AlignFrame TODO:
+ * consider extending the html renderer to annotate elements with CSS ids
+ * enabling finer output format control.
*
*/
public class AlignmentProperties
/**
* render the alignment's properties report as text or an HTML fragment
+ *
* @param pw
* @param html
*/
public void writeProperties(PrintWriter pw, boolean html)
{
- final String nl = html ? "<br>" : "\n";
+ final String nl = html ? "<br>" : System.getProperty("line.separator");
float avg = 0;
int min = Integer.MAX_VALUE, max = 0;
for (int i = 0; i < alignment.getHeight(); i++)
- alignment.getSequenceAt(i).getStart();
avg += size;
if (size > max)
+ {
max = size;
+ }
if (size < min)
+ {
min = size;
+ }
}
- avg = avg / (float) alignment.getHeight();
+ avg = avg / alignment.getHeight();
pw.print(nl);
pw.print("Sequences: " + alignment.getHeight());
pw.print(nl);
pw.print(nl);
if (html)
{
- pw.append("<table border=\"1\">");
+ pw.print("<table border=\"1\">");
}
Hashtable props = ((Alignment) alignment).alignmentProperties;
Enumeration en = props.keys();
}
else
{
- pw.print("\n" + key + "\t" + vals);
+ pw.print(nl + key + "\t" + vals);
}
}
if (html)