X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbin%2FJalviewLite.java;h=b73fffc5abeafae97ef7cfa54e3fbcd4646ea441;hb=eb3e681d6e82ccdd5d312d1981dfb306e7f479f0;hp=a3b2b0bcf7ac9d0426b036c9681e706ce014267f;hpb=e678473c587925ac793f67033ae49d71bdd87d95;p=jalview.git diff --git a/src/jalview/bin/JalviewLite.java b/src/jalview/bin/JalviewLite.java index a3b2b0b..b73fffc 100644 --- a/src/jalview/bin/JalviewLite.java +++ b/src/jalview/bin/JalviewLite.java @@ -20,6 +20,8 @@ */ package jalview.bin; +import java.util.Locale; + import jalview.analysis.AlignmentUtils; import jalview.api.StructureSelectionManagerProvider; import jalview.appletgui.AlignFrame; @@ -37,6 +39,9 @@ import jalview.datamodel.SequenceGroup; import jalview.datamodel.SequenceI; import jalview.io.AnnotationFile; import jalview.io.AppletFormatAdapter; +import jalview.io.DataSourceType; +import jalview.io.FileFormatI; +import jalview.io.FileFormats; import jalview.io.FileParse; import jalview.io.IdentifyFile; import jalview.io.JPredFile; @@ -48,6 +53,7 @@ import jalview.javascript.JsCallBack; import jalview.javascript.MouseOverStructureListener; import jalview.structure.SelectionListener; import jalview.structure.StructureSelectionManager; +import jalview.util.ColorUtils; import jalview.util.HttpUtils; import jalview.util.MessageManager; @@ -63,6 +69,7 @@ import java.awt.event.ActionEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.io.BufferedReader; +import java.io.IOException; import java.io.InputStreamReader; import java.net.URL; import java.util.ArrayList; @@ -79,8 +86,8 @@ import netscape.javascript.JSObject; * @author $author$ * @version $Revision: 1.92 $ */ -public class JalviewLite extends Applet implements - StructureSelectionManagerProvider, JalviewLiteJsApi +public class JalviewLite extends Applet + implements StructureSelectionManagerProvider, JalviewLiteJsApi { private static final String TRUE = "true"; @@ -193,7 +200,7 @@ public class JalviewLite extends Applet implements int apos = -1; try { - apos = new Integer(position).intValue(); + apos = Integer.valueOf(position).intValue(); apos--; } catch (NumberFormatException ex) { @@ -204,7 +211,7 @@ public class JalviewLite extends Applet implements // use vamsas listener to broadcast to all listeners in scope if (alignedPosition != null && (alignedPosition.trim().length() == 0 || alignedPosition - .toLowerCase().indexOf("false") > -1)) + .toLowerCase(Locale.ROOT).indexOf("false") > -1)) { java.awt.EventQueue.invokeLater(new Runnable() { @@ -285,8 +292,9 @@ public class JalviewLite extends Applet implements { if (debug) { - System.err.println("Selecting region using separator string '" - + separator + "'"); + jalview.bin.Console + .errPrintln("Selecting region using separator string '" + + separator + "'"); } } // deparse fields @@ -333,23 +341,23 @@ public class JalviewLite extends Applet implements int from = -1, to = -1; try { - from = new Integer(cl.substring(0, p)).intValue(); + from = Integer.valueOf(cl.substring(0, p)).intValue(); from--; } catch (NumberFormatException ex) { - System.err - .println("ERROR: Couldn't parse first integer in range element column selection string '" + jalview.bin.Console.errPrintln( + "ERROR: Couldn't parse first integer in range element column selection string '" + cl + "' - format is 'from-to'"); return; } try { - to = new Integer(cl.substring(p + 1)).intValue(); + to = Integer.valueOf(cl.substring(p + 1)).intValue(); to--; } catch (NumberFormatException ex) { - System.err - .println("ERROR: Couldn't parse second integer in range element column selection string '" + jalview.bin.Console.errPrintln( + "ERROR: Couldn't parse second integer in range element column selection string '" + cl + "' - format is 'from-to'"); return; } @@ -389,13 +397,13 @@ public class JalviewLite extends Applet implements } if (debug) { - System.err.println("Range '" + cl + "' deparsed as [" + from - + "," + to + "]"); + jalview.bin.Console.errPrintln("Range '" + cl + + "' deparsed as [" + from + "," + to + "]"); } } else { - System.err.println("ERROR: Invalid Range '" + cl + jalview.bin.Console.errPrintln("ERROR: Invalid Range '" + cl + "' deparsed as [" + from + "," + to + "]"); } } @@ -404,19 +412,19 @@ public class JalviewLite extends Applet implements int r = -1; try { - r = new Integer(cl).intValue(); + r = Integer.valueOf(cl).intValue(); r--; } catch (NumberFormatException ex) { - if (cl.toLowerCase().equals("sequence")) + if (cl.toLowerCase(Locale.ROOT).equals("sequence")) { // we are in the dataset sequence's coordinate frame. inseqpos = true; } else { - System.err - .println("ERROR: Couldn't parse integer from point selection element of column selection string '" + jalview.bin.Console.errPrintln( + "ERROR: Couldn't parse integer from point selection element of column selection string '" + cl + "'"); return; } @@ -444,14 +452,15 @@ public class JalviewLite extends Applet implements csel.addElement(r); if (debug) { - System.err.println("Point selection '" + cl + jalview.bin.Console.errPrintln("Point selection '" + cl + "' deparsed as [" + r + "]"); } } else { - System.err.println("ERROR: Invalid Point selection '" + cl - + "' deparsed as [" + r + "]"); + jalview.bin.Console + .errPrintln("ERROR: Invalid Point selection '" + cl + + "' deparsed as [" + r + "]"); } } } @@ -466,7 +475,7 @@ public class JalviewLite extends Applet implements SequenceI rs = sel.getSequenceAt(0); start = rs.findIndex(start); end = rs.findIndex(end); - List cs = new ArrayList(csel.getSelected()); + List cs = new ArrayList<>(csel.getSelected()); csel.clear(); for (Integer selectedCol : cs) { @@ -480,7 +489,8 @@ public class JalviewLite extends Applet implements @Override public void run() { - alf.select(sel, csel); + alf.select(sel, csel, + alf.getAlignViewport().getAlignment().getHiddenColumns()); } }); } @@ -494,7 +504,8 @@ public class JalviewLite extends Applet implements * String, java.lang.String) */ @Override - public String getSelectedSequencesAsAlignment(String format, String suffix) + public String getSelectedSequencesAsAlignment(String format, + String suffix) { return getSelectedSequencesAsAlignmentFrom(getDefaultTargetFrame(), format, suffix); @@ -513,21 +524,23 @@ public class JalviewLite extends Applet implements { try { + FileFormatI theFormat = FileFormats.getInstance().forName(format); boolean seqlimits = suffix.equalsIgnoreCase(TRUE); if (alf.viewport.getSelectionGroup() != null) { // JBPNote: getSelectionAsNewSequence behaviour has changed - this // method now returns a full copy of sequence data // TODO consider using getSequenceSelection instead here - String reply = new AppletFormatAdapter().formatSequences(format, + String reply = new AppletFormatAdapter().formatSequences(theFormat, new Alignment(alf.viewport.getSelectionAsNewSequence()), seqlimits); return reply; } - } catch (Exception ex) + } catch (IllegalArgumentException ex) { ex.printStackTrace(); - return "Error retrieving alignment in " + format + " format. "; + return "Error retrieving alignment, possibly invalid format specifier: " + + format; } return ""; } @@ -709,13 +722,15 @@ public class JalviewLite extends Applet implements { boolean seqlimits = suffix.equalsIgnoreCase(TRUE); - String reply = new AppletFormatAdapter().formatSequences(format, + FileFormatI theFormat = FileFormats.getInstance().forName(format); + String reply = new AppletFormatAdapter().formatSequences(theFormat, alf.viewport.getAlignment(), seqlimits); return reply; - } catch (Exception ex) + } catch (IllegalArgumentException ex) { ex.printStackTrace(); - return "Error retrieving alignment in " + format + " format. "; + return "Error retrieving alignment, possibly invalid format specifier: " + + format; } } @@ -741,14 +756,14 @@ public class JalviewLite extends Applet implements public void loadAnnotationFrom(AlignFrame alf, String annotation) { if (new AnnotationFile().annotateAlignmentView(alf.getAlignViewport(), - annotation, AppletFormatAdapter.PASTE)) + annotation, DataSourceType.PASTE)) { alf.alignPanel.fontChanged(); alf.alignPanel.setScrollValues(0, 0); } else { - alf.parseFeaturesFile(annotation, AppletFormatAdapter.PASTE); + alf.parseFeaturesFile(annotation, DataSourceType.PASTE); } } @@ -774,7 +789,7 @@ public class JalviewLite extends Applet implements public boolean loadFeaturesFrom(AlignFrame alf, String features, boolean autoenabledisplay) { - return alf.parseFeaturesFile(features, AppletFormatAdapter.PASTE, + return alf.parseFeaturesFile(features, DataSourceType.PASTE, autoenabledisplay); } @@ -882,17 +897,17 @@ public class JalviewLite extends Applet implements { AlignmentI al = null; - String format = new IdentifyFile().identify(text, - AppletFormatAdapter.PASTE); try { - al = new AppletFormatAdapter().readFile(text, - AppletFormatAdapter.PASTE, format); + FileFormatI format = new IdentifyFile().identify(text, + DataSourceType.PASTE); + al = new AppletFormatAdapter().readFile(text, DataSourceType.PASTE, + format); if (al.getHeight() > 0) { return new AlignFrame(al, this, title, false); } - } catch (java.io.IOException ex) + } catch (IOException ex) { ex.printStackTrace(); } @@ -910,7 +925,7 @@ public class JalviewLite extends Applet implements setMouseoverListener(currentAlignFrame, listener); } - private Vector javascriptListeners = new Vector(); + private Vector javascriptListeners = new Vector<>(); /* * (non-Javadoc) @@ -927,8 +942,8 @@ public class JalviewLite extends Applet implements listener = listener.trim(); if (listener.length() == 0) { - System.err - .println("jalview Javascript error: Ignoring empty function for mouseover listener."); + jalview.bin.Console.errPrintln( + "jalview Javascript error: Ignoring empty function for mouseover listener."); return; } } @@ -939,11 +954,12 @@ public class JalviewLite extends Applet implements .addStructureViewerListener(mol); if (debug) { - System.err.println("Added a mouseover listener for " - + ((af == null) ? "All frames" : "Just views for " - + af.getAlignViewport().getSequenceSetId())); - System.err.println("There are now " + javascriptListeners.size() - + " listeners in total."); + jalview.bin.Console.errPrintln("Added a mouseover listener for " + + ((af == null) ? "All frames" + : "Just views for " + + af.getAlignViewport().getSequenceSetId())); + jalview.bin.Console.errPrintln("There are now " + + javascriptListeners.size() + " listeners in total."); } } @@ -973,8 +989,8 @@ public class JalviewLite extends Applet implements listener = listener.trim(); if (listener.length() == 0) { - System.err - .println("jalview Javascript error: Ignoring empty function for selection listener."); + jalview.bin.Console.errPrintln( + "jalview Javascript error: Ignoring empty function for selection listener."); return; } } @@ -985,11 +1001,12 @@ public class JalviewLite extends Applet implements .addSelectionListener(mol); if (debug) { - System.err.println("Added a selection listener for " - + ((af == null) ? "All frames" : "Just views for " - + af.getAlignViewport().getSequenceSetId())); - System.err.println("There are now " + javascriptListeners.size() - + " listeners in total."); + jalview.bin.Console.errPrintln("Added a selection listener for " + + ((af == null) ? "All frames" + : "Just views for " + + af.getAlignViewport().getSequenceSetId())); + jalview.bin.Console.errPrintln("There are now " + + javascriptListeners.size() + " listeners in total."); } } @@ -1012,8 +1029,8 @@ public class JalviewLite extends Applet implements listener = listener.trim(); if (listener.length() == 0) { - System.err - .println("jalview Javascript error: Ignoring empty function for selection listener."); + jalview.bin.Console.errPrintln( + "jalview Javascript error: Ignoring empty function for selection listener."); return; } } @@ -1024,10 +1041,11 @@ public class JalviewLite extends Applet implements .addStructureViewerListener(mol); if (debug) { - System.err.println("Added a javascript structure viewer listener '" - + listener + "'"); - System.err.println("There are now " + javascriptListeners.size() - + " listeners in total."); + jalview.bin.Console + .errPrintln("Added a javascript structure viewer listener '" + + listener + "'"); + jalview.bin.Console.errPrintln("There are now " + + javascriptListeners.size() + " listeners in total."); } } @@ -1054,9 +1072,8 @@ public class JalviewLite extends Applet implements { Object lstn = javascriptListeners.elementAt(ms); JsCallBack lstner = (JsCallBack) lstn; - if ((af == null || lstner.getAlignFrame() == af) - && (listener == null || lstner.getListenerFunction().equals( - listener))) + if ((af == null || lstner.getAlignFrame() == af) && (listener == null + || lstner.getListenerFunction().equals(listener))) { javascriptListeners.removeElement(lstner); msSize--; @@ -1073,7 +1090,8 @@ public class JalviewLite extends Applet implements rprt = debug; if (debug) { - System.err.println("Removed listener '" + listener + "'"); + jalview.bin.Console + .errPrintln("Removed listener '" + listener + "'"); } } else @@ -1083,22 +1101,22 @@ public class JalviewLite extends Applet implements } if (rprt) { - System.err.println("There are now " + javascriptListeners.size() - + " listeners in total."); + jalview.bin.Console.errPrintln("There are now " + + javascriptListeners.size() + " listeners in total."); } } @Override public void stop() { - System.err.println("Applet " + getName() + " stop()."); + jalview.bin.Console.errPrintln("Applet " + getName() + " stop()."); tidyUp(); } @Override public void destroy() { - System.err.println("Applet " + getName() + " destroy()."); + jalview.bin.Console.errPrintln("Applet " + getName() + " destroy()."); tidyUp(); } @@ -1153,8 +1171,8 @@ public class JalviewLite extends Applet implements * java.lang.String, java.lang.String) */ @Override - public void mouseOverStructure(final String pdbResNum, - final String chain, final String pdbfile) + public void mouseOverStructure(final String pdbResNum, final String chain, + final String pdbfile) { final StructureSelectionManagerProvider me = this; java.awt.EventQueue.invokeLater(new Runnable() @@ -1165,18 +1183,19 @@ public class JalviewLite extends Applet implements try { StructureSelectionManager.getStructureSelectionManager(me) - .mouseOverStructure(new Integer(pdbResNum).intValue(), + .mouseOverStructure(Integer.valueOf(pdbResNum).intValue(), chain, pdbfile); if (debug) { - System.err.println("mouseOver for '" + pdbResNum - + "' in chain '" + chain + "' in structure '" + pdbfile - + "'"); + System.err + .println("mouseOver for '" + pdbResNum + "' in chain '" + + chain + "' in structure '" + pdbfile + "'"); } } catch (NumberFormatException e) { - System.err.println("Ignoring invalid residue number string '" - + pdbResNum + "'"); + jalview.bin.Console + .errPrintln("Ignoring invalid residue number string '" + + pdbResNum + "'"); } } @@ -1201,14 +1220,15 @@ public class JalviewLite extends Applet implements { try { - alf.scrollTo(new Integer(topRow).intValue(), new Integer( - leftHandColumn).intValue()); + alf.scrollTo(Integer.valueOf(topRow).intValue(), + Integer.valueOf(leftHandColumn).intValue()); } catch (Exception ex) { - System.err.println("Couldn't parse integer arguments (topRow='" - + topRow + "' and leftHandColumn='" + leftHandColumn - + "')"); + jalview.bin.Console + .errPrintln("Couldn't parse integer arguments (topRow='" + + topRow + "' and leftHandColumn='" + + leftHandColumn + "')"); ex.printStackTrace(); } } @@ -1233,12 +1253,13 @@ public class JalviewLite extends Applet implements { try { - alf.scrollToRow(new Integer(topRow).intValue()); + alf.scrollToRow(Integer.valueOf(topRow).intValue()); } catch (Exception ex) { - System.err.println("Couldn't parse integer arguments (topRow='" - + topRow + "')"); + jalview.bin.Console + .errPrintln("Couldn't parse integer arguments (topRow='" + + topRow + "')"); ex.printStackTrace(); } @@ -1265,12 +1286,12 @@ public class JalviewLite extends Applet implements { try { - alf.scrollToColumn(new Integer(leftHandColumn).intValue()); + alf.scrollToColumn(Integer.valueOf(leftHandColumn).intValue()); } catch (Exception ex) { - System.err - .println("Couldn't parse integer arguments (leftHandColumn='" + jalview.bin.Console.errPrintln( + "Couldn't parse integer arguments (leftHandColumn='" + leftHandColumn + "')"); ex.printStackTrace(); } @@ -1322,7 +1343,7 @@ public class JalviewLite extends Applet implements private boolean alignPdbStructures = false; /** - * use an external structure viewer exclusively (no jmols or MCViews will be + * use an external structure viewer exclusively (no jmols or mc_views will be * opened by JalviewLite itself) */ public boolean useXtrnalSviewer = false; @@ -1344,8 +1365,8 @@ public class JalviewLite extends Applet implements { try { - BufferedReader reader = new BufferedReader(new InputStreamReader( - url.openStream())); + BufferedReader reader = new BufferedReader( + new InputStreamReader(url.openStream())); String line; while ((line = reader.readLine()) != null) { @@ -1401,19 +1422,20 @@ public class JalviewLite extends Applet implements { if (debug) { - System.err.println("Applet context is '" + jalview.bin.Console.errPrintln("Applet context is '" + getAppletContext().getClass().toString() + "'"); } JSObject scriptObject = JSObject.getWindow(this); if (debug && scriptObject != null) { - System.err.println("Applet has Javascript callback support."); + jalview.bin.Console + .errPrintln("Applet has Javascript callback support."); } } catch (Exception ex) { - System.err - .println("Warning: No JalviewLite javascript callbacks available."); + jalview.bin.Console.errPrintln( + "Warning: No JalviewLite javascript callbacks available."); if (debug) { ex.printStackTrace(); @@ -1422,14 +1444,15 @@ public class JalviewLite extends Applet implements if (debug) { - System.err.println("JalviewLite Version " + getVersion()); - System.err.println("Build Date : " + getBuildDate()); - System.err.println("Installation : " + getInstallation()); + jalview.bin.Console.errPrintln("JalviewLite Version " + getVersion()); + jalview.bin.Console.errPrintln("Build Date : " + getBuildDate()); + jalview.bin.Console.errPrintln("Installation : " + getInstallation()); } String externalsviewer = getParameter("externalstructureviewer"); if (externalsviewer != null) { - useXtrnalSviewer = externalsviewer.trim().toLowerCase().equals(TRUE); + useXtrnalSviewer = externalsviewer.trim().toLowerCase(Locale.ROOT) + .equals(TRUE); } /** * if true disable the check for jmol @@ -1450,14 +1473,14 @@ public class JalviewLite extends Applet implements separator = sep; if (debug) { - System.err.println("Separator set to '" + separator + "'"); + jalview.bin.Console + .errPrintln("Separator set to '" + separator + "'"); } } else { - throw new Error( - MessageManager - .getString("error.invalid_separator_parameter")); + throw new Error(MessageManager + .getString("error.invalid_separator_parameter")); } } int r = 255; @@ -1559,7 +1582,8 @@ public class JalviewLite extends Applet implements { if (tries > 0) { - System.err.println("LiveConnect request thread going to sleep."); + jalview.bin.Console + .errPrintln("LiveConnect request thread going to sleep."); } try { @@ -1570,7 +1594,8 @@ public class JalviewLite extends Applet implements ; if (tries++ > 0) { - System.err.println("LiveConnect request thread woken up."); + jalview.bin.Console + .errPrintln("LiveConnect request thread woken up."); } try { @@ -1581,7 +1606,7 @@ public class JalviewLite extends Applet implements } } catch (Exception jsex) { - System.err.println("Attempt " + tries + jalview.bin.Console.errPrintln("Attempt " + tries + " to access LiveConnect javascript failed."); } } @@ -1614,18 +1639,19 @@ public class JalviewLite extends Applet implements { // do onInit with the JS executor thread new JSFunctionExec(this).executeJavascriptFunction(true, - initjscallback, null, "Calling oninit callback '" - + initjscallback + "'."); + initjscallback, null, + "Calling oninit callback '" + initjscallback + "'."); } catch (Exception e) { - System.err.println("Exception when executing _oninit callback '" - + initjscallback + "'."); + jalview.bin.Console + .errPrintln("Exception when executing _oninit callback '" + + initjscallback + "'."); e.printStackTrace(); } } else { - System.err.println("Not executing _oninit callback '" + jalview.bin.Console.errPrintln("Not executing _oninit callback '" + initjscallback + "' - no scripting allowed."); } } @@ -1686,7 +1712,7 @@ public class JalviewLite extends Applet implements ((AlignFrame) frame).viewport.applet.currentAlignFrame = (AlignFrame) frame; if (debug) { - System.err.println("Activated window " + frame); + jalview.bin.Console.errPrintln("Activated window " + frame); } } // be good. @@ -1701,7 +1727,7 @@ public class JalviewLite extends Applet implements * * public void windowDeactivated(WindowEvent e) { if (currentAlignFrame == * frame) { currentAlignFrame = null; if (debug) { - * System.err.println("Deactivated window "+frame); } } + * jalview.bin.Console.errPrintln("Deactivated window "+frame); } } * super.windowDeactivated(e); } */ }); @@ -1726,8 +1752,8 @@ public class JalviewLite extends Applet implements g.fillRect(0, 0, getSize().width, getSize().height); g.setColor(Color.red); g.drawString( - MessageManager.getString("label.jalview_cannot_open_file"), - 5, 15); + MessageManager.getString("label.jalview_cannot_open_file"), 5, + 15); g.drawString("\"" + file + "\"", 5, 30); } else if (embedded) @@ -1787,8 +1813,8 @@ public class JalviewLite extends Applet implements } if (!jmolAvailable) { - System.out - .println("Jmol not available - Using MCview for structures"); + jalview.bin.Console.outPrintln( + "Jmol not available - Using mc_view for structures"); } } catch (java.lang.ClassNotFoundException ex) { @@ -1799,8 +1825,8 @@ public class JalviewLite extends Applet implements jmolAvailable = false; if (debug) { - System.err - .println("Skipping Jmol check. Will use MCView (probably)"); + jalview.bin.Console.errPrintln( + "Skipping Jmol check. Will use mc_view (probably)"); } } checkedForJmol = true; @@ -1818,7 +1844,7 @@ public class JalviewLite extends Applet implements /** * State variable: protocol for access to file source */ - String protocol; + DataSourceType protocol; String _file; // alignment file or URL spec @@ -1830,7 +1856,7 @@ public class JalviewLite extends Applet implements { if (JalviewLite.debug) { - System.err.println(msg); + jalview.bin.Console.errPrintln(msg); } } @@ -1848,7 +1874,7 @@ public class JalviewLite extends Applet implements */ if (path.startsWith("PASTE")) { - protocol = AppletFormatAdapter.PASTE; + protocol = DataSourceType.PASTE; return path.substring(5); } @@ -1857,7 +1883,7 @@ public class JalviewLite extends Applet implements */ if (path.indexOf("://") != -1) { - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; return path; } @@ -1870,10 +1896,10 @@ public class JalviewLite extends Applet implements { if (debug) { - System.err.println("Prepended document base '" + documentBase - + "' to make: '" + withDocBase + "'"); + jalview.bin.Console.errPrintln("Prepended document base '" + + documentBase + "' to make: '" + withDocBase + "'"); } - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; return withDocBase; } @@ -1886,10 +1912,10 @@ public class JalviewLite extends Applet implements if (!withCodeBase.equals(withDocBase) && HttpUtils.isValidUrl(withCodeBase)) { - protocol = AppletFormatAdapter.URL; + protocol = DataSourceType.URL; if (debug) { - System.err.println("Prepended codebase '" + codeBase + jalview.bin.Console.errPrintln("Prepended codebase '" + codeBase + "' to make: '" + withCodeBase + "'"); } return withCodeBase; @@ -1901,7 +1927,7 @@ public class JalviewLite extends Applet implements */ if (inArchive(path)) { - protocol = AppletFormatAdapter.CLASSLOADER; + protocol = DataSourceType.CLASSLOADER; } return path; } @@ -1938,7 +1964,8 @@ public class JalviewLite extends Applet implements */ private void startLoading() { - dbgMsg("Loading thread started with:\n>>file\n" + _file + ">>endfile"); + dbgMsg("Loading thread started with:\n>>file\n" + _file + + ">>endfile"); dbgMsg("Loading started."); @@ -1995,7 +2022,7 @@ public class JalviewLite extends Applet implements + " as " + (al1.isNucleotide() ? "protein product" : "cDNA") + " for " + af.getTitle(); - System.err.println(msg); + jalview.bin.Console.errPrintln(msg); } } @@ -2015,11 +2042,12 @@ public class JalviewLite extends Applet implements return null; } String resolvedFile = resolveFileProtocol(fileParam); - String format = new IdentifyFile().identify(resolvedFile, protocol); - dbgMsg("File identified as '" + format + "'"); AlignmentI al = null; try { + FileFormatI format = new IdentifyFile().identify(resolvedFile, + protocol); + dbgMsg("File identified as '" + format + "'"); al = new AppletFormatAdapter().readFile(resolvedFile, protocol, format); if ((al != null) && (al.getHeight() > 0)) @@ -2036,16 +2064,16 @@ public class JalviewLite extends Applet implements // update the focus. currentAlignFrame = newAlignFrame; - if (protocol == AppletFormatAdapter.PASTE) + if (protocol == DataSourceType.PASTE) { - newAlignFrame.setTitle(MessageManager.formatMessage( - "label.sequences_from", new Object[] { applet - .getDocumentBase().toString() })); + newAlignFrame.setTitle(MessageManager + .formatMessage("label.sequences_from", new Object[] + { applet.getDocumentBase().toString() })); } newAlignFrame.statusBar.setText(MessageManager.formatMessage( - "label.successfully_loaded_file", - new Object[] { resolvedFile })); + "label.successfully_loaded_file", new Object[] + { resolvedFile })); return newAlignFrame; } @@ -2068,8 +2096,8 @@ public class JalviewLite extends Applet implements dbgMsg(">>>Dump finished."); } catch (Exception e) { - System.err - .println("Exception when trying to dump the content of the file parameter."); + jalview.bin.Console.errPrintln( + "Exception when trying to dump the content of the file parameter."); e.printStackTrace(); } } @@ -2092,8 +2120,8 @@ public class JalviewLite extends Applet implements * related to JAL-434 */ - applet.setAlignPdbStructures(getDefaultParameter("alignpdbfiles", - false)); + applet.setAlignPdbStructures( + getDefaultParameter("alignpdbfiles", false)); /* * @@ -2109,9 +2137,11 @@ public class JalviewLite extends Applet implements Vector pdbs = new Vector(); // create a lazy matcher if we're asked to jalview.analysis.SequenceIdMatcher matcher = (applet - .getDefaultParameter("relaxedidmatch", false)) ? new jalview.analysis.SequenceIdMatcher( - alignFrame.getAlignViewport().getAlignment() - .getSequencesArray()) : null; + .getDefaultParameter("relaxedidmatch", false)) + ? new jalview.analysis.SequenceIdMatcher( + alignFrame.getAlignViewport().getAlignment() + .getSequencesArray()) + : null; String param; do @@ -2140,8 +2170,9 @@ public class JalviewLite extends Applet implements String sequence = applet.getParameter("PDBSEQ"); if (sequence != null) { - seqs = new SequenceI[] { matcher == null ? (Sequence) alignFrame - .getAlignViewport().getAlignment().findName(sequence) + seqs = new SequenceI[] { matcher == null + ? (Sequence) alignFrame.getAlignViewport() + .getAlignment().findName(sequence) : matcher.findIdMatch(sequence) }; } @@ -2149,8 +2180,8 @@ public class JalviewLite extends Applet implements else { param = st.nextToken(); - List tmp = new ArrayList(); - List tmp2 = new ArrayList(); + List tmp = new ArrayList<>(); + List tmp2 = new ArrayList<>(); while (st.hasMoreTokens()) { @@ -2162,9 +2193,10 @@ public class JalviewLite extends Applet implements tmp2.add(st2.nextToken()); seqstring = st2.nextToken(); } - tmp.add(matcher == null ? (Sequence) alignFrame - .getAlignViewport().getAlignment() - .findName(seqstring) : matcher.findIdMatch(seqstring)); + tmp.add(matcher == null + ? (Sequence) alignFrame.getAlignViewport() + .getAlignment().findName(seqstring) + : matcher.findIdMatch(seqstring)); } seqs = tmp.toArray(new SequenceI[tmp.size()]); @@ -2184,8 +2216,9 @@ public class JalviewLite extends Applet implements if (seqs[i] != null) { ((Sequence) seqs[i]).addPDBId(pdb); - StructureSelectionManager.getStructureSelectionManager( - applet).registerPDBEntry(pdb); + StructureSelectionManager + .getStructureSelectionManager(applet) + .registerPDBEntry(pdb); } else { @@ -2193,8 +2226,8 @@ public class JalviewLite extends Applet implements { // this may not really be a problem but we give a warning // anyway - System.err - .println("Warning: Possible input parsing error: Null sequence for attachment of PDB (sequence " + jalview.bin.Console.errPrintln( + "Warning: Possible input parsing error: Null sequence for attachment of PDB (sequence " + i + ")"); } } @@ -2207,8 +2240,7 @@ public class JalviewLite extends Applet implements } else { - pdbs.addElement(new Object[] { pdb, seqs, chains, - new String(protocol) }); + pdbs.addElement(new Object[] { pdb, seqs, chains, protocol }); } } } @@ -2221,7 +2253,8 @@ public class JalviewLite extends Applet implements PDBEntry[] pdb = new PDBEntry[pdbs.size()]; String[][] chains = new String[pdbs.size()][]; String[] protocols = new String[pdbs.size()]; - for (int pdbsi = 0, pdbsiSize = pdbs.size(); pdbsi < pdbsiSize; pdbsi++) + for (int pdbsi = 0, pdbsiSize = pdbs + .size(); pdbsi < pdbsiSize; pdbsi++) { Object[] o = (Object[]) pdbs.elementAt(pdbsi); pdb[pdbsi] = (PDBEntry) o[0]; @@ -2261,12 +2294,9 @@ public class JalviewLite extends Applet implements JnetAnnotationMaker.add_annotation(predictions, alignFrame.viewport.getAlignment(), 0, false); // false == do not add sequence profile from concise output - SequenceI repseq = alignFrame.viewport.getAlignment() - .getSequenceAt(0); - alignFrame.viewport.getAlignment().setSeqrep(repseq); - ColumnSelection cs = new ColumnSelection(); - cs.hideInsertionsFor(repseq); - alignFrame.viewport.setColumnSelection(cs); + + alignFrame.viewport.getAlignment().setupJPredAlignment(); + alignFrame.alignPanel.fontChanged(); alignFrame.alignPanel.setScrollValues(0, 0); result = true; @@ -2302,8 +2332,8 @@ public class JalviewLite extends Applet implements } else { - System.err - .println("Annotations were not added from annotation file '" + jalview.bin.Console.errPrintln( + "Annotations were not added from annotation file '" + param + "'"); } } @@ -2374,14 +2404,14 @@ public class JalviewLite extends Applet implements { if (debug) { - System.err - .println("Attempting to load T-COFFEE score file from the scoreFile parameter"); + jalview.bin.Console.errPrintln( + "Attempting to load T-COFFEE score file from the scoreFile parameter"); } result = alignFrame.loadScoreFile(sScoreFile); if (!result) { - System.err - .println("Failed to parse T-COFFEE parameter as a valid score file ('" + jalview.bin.Console.errPrintln( + "Failed to parse T-COFFEE parameter as a valid score file ('" + sScoreFile + "')"); } } catch (Exception e) @@ -2451,13 +2481,14 @@ public class JalviewLite extends Applet implements boolean rtn = (getClass().getResourceAsStream("/" + f) != null); if (debug) { - System.err.println("Resource '" + f + "' was " + jalview.bin.Console.errPrintln("Resource '" + f + "' was " + (rtn ? "" : "not ") + "located by classloader."); } return rtn; } catch (Exception ex) { - System.out.println("Exception checking resources: " + f + " " + ex); + jalview.bin.Console.outPrintln( + "Exception checking resources: " + f + " " + ex); return false; } } @@ -2478,8 +2509,8 @@ public class JalviewLite extends Applet implements { return initialAlignFrame; } - System.err - .println("Implementation error: Jalview Applet API cannot work out which AlignFrame to use."); + jalview.bin.Console.errPrintln( + "Implementation error: Jalview Applet API cannot work out which AlignFrame to use."); return null; } @@ -2546,19 +2577,19 @@ public class JalviewLite extends Applet implements jv.removeAllElements(); if (debug) { - System.err.println("Array from '" + separator + jalview.bin.Console.errPrintln("Array from '" + separator + "' separated List:\n" + v.length); for (int i = 0; i < v.length; i++) { - System.err.println("item " + i + " '" + v[i] + "'"); + jalview.bin.Console.errPrintln("item " + i + " '" + v[i] + "'"); } } return v; } if (debug) { - System.err.println("Empty Array from '" + separator - + "' separated List"); + jalview.bin.Console.errPrintln( + "Empty Array from '" + separator + "' separated List"); } return null; } @@ -2600,16 +2631,16 @@ public class JalviewLite extends Applet implements } if (debug) { - System.err.println("Returning '" + separator - + "' separated List:\n"); - System.err.println(v); + System.err + .println("Returning '" + separator + "' separated List:\n"); + jalview.bin.Console.errPrintln(v); } return v.toString(); } if (debug) { - System.err.println("Returning empty '" + separator - + "' separated List\n"); + jalview.bin.Console.errPrintln( + "Returning empty '" + separator + "' separated List\n"); } return "" + separator; } @@ -2622,8 +2653,8 @@ public class JalviewLite extends Applet implements @Override public String getFeatureGroups() { - String lst = arrayToSeparatorList(getDefaultTargetFrame() - .getFeatureGroups()); + String lst = arrayToSeparatorList( + getDefaultTargetFrame().getFeatureGroups()); return lst; } @@ -2649,8 +2680,8 @@ public class JalviewLite extends Applet implements @Override public String getFeatureGroupsOfState(boolean visible) { - return arrayToSeparatorList(getDefaultTargetFrame() - .getFeatureGroupsOfState(visible)); + return arrayToSeparatorList( + getDefaultTargetFrame().getFeatureGroupsOfState(visible)); } /* @@ -2677,7 +2708,7 @@ public class JalviewLite extends Applet implements final String groups, boolean state) { final boolean st = state;// !(state==null || state.equals("") || - // state.toLowerCase().equals("false")); + // state.toLowerCase(Locale.ROOT).equals("false")); java.awt.EventQueue.invokeLater(new Runnable() { @Override @@ -2727,7 +2758,8 @@ public class JalviewLite extends Applet implements this.separator = separator; if (debug) { - System.err.println("Default Separator now: '" + separator + "'"); + jalview.bin.Console + .errPrintln("Default Separator now: '" + separator + "'"); } } @@ -2784,9 +2816,9 @@ public class JalviewLite extends Applet implements // callInitCallback(); } - private Hashtable jshashes = new Hashtable(); + private Hashtable jshashes = new Hashtable<>(); - private Hashtable> jsmessages = new Hashtable>(); + private Hashtable> jsmessages = new Hashtable<>(); public void setJsMessageSet(String messageclass, String viewId, String[] colcommands) @@ -2794,7 +2826,7 @@ public class JalviewLite extends Applet implements Hashtable msgset = jsmessages.get(messageclass); if (msgset == null) { - msgset = new Hashtable(); + msgset = new Hashtable<>(); jsmessages.put(messageclass, msgset); } msgset.put(viewId, colcommands); @@ -2880,22 +2912,13 @@ public class JalviewLite extends Applet implements { return defcolour; } - Color col = jalview.schemes.ColourSchemeProperty - .getAWTColorFromName(colprop); + Color col = ColorUtils.parseColourString(colprop); if (col == null) { - try - { - col = new jalview.schemes.UserColourScheme(colprop).findColour('A'); - } catch (Exception ex) - { - System.err.println("Couldn't parse '" + colprop - + "' as a colour for " + colparam); - col = null; - } + jalview.bin.Console.errPrintln("Couldn't parse '" + colprop + + "' as a colour for " + colparam); } return (col == null) ? defcolour : col; - } public void openJalviewHelpUrl() @@ -2928,8 +2951,7 @@ public class JalviewLite extends Applet implements String codebase = localref.toString(); String localfile = localref.getFile(); resolvedPath = codebase.substring(0, - codebase.length() - localfile.length()) - + targetPath; + codebase.length() - localfile.length()) + targetPath; return resolvedPath; } @@ -2963,8 +2985,8 @@ public class JalviewLite extends Applet implements } if (debug) { - System.err.println("resolveUrlForLocalOrAbsolute returning " - + resolvedPath); + jalview.bin.Console.errPrintln( + "resolveUrlForLocalOrAbsolute returning " + resolvedPath); } return resolvedPath; } @@ -2986,24 +3008,22 @@ public class JalviewLite extends Applet implements // form valid URL // Should really use docbase, not codebase. URL prepend; - url = resolveUrlForLocalOrAbsolute( - url, - prepend = getDefaultParameter("resolvetocodebase", false) ? getCodeBase() + url = resolveUrlForLocalOrAbsolute(url, + prepend = getDefaultParameter("resolvetocodebase", false) + ? getCodeBase() : getDocumentBase()); if (debug) { - System.err - .println("Show url (prepended " - + prepend - + " - toggle resolvetocodebase if code/docbase resolution is wrong): " - + url); + jalview.bin.Console.errPrintln("Show url (prepended " + prepend + + " - toggle resolvetocodebase if code/docbase resolution is wrong): " + + url); } } else { if (debug) { - System.err.println("Show url: " + url); + jalview.bin.Console.errPrintln("Show url: " + url); } } if (url.indexOf("javascript:") == 0)