+ TCoffeeScoreFile file = new TCoffeeScoreFile(source,\r
+ AppletFormatAdapter.checkProtocol(source));\r
+ if (!file.isValid())\r
+ {\r
+ // TODO: raise dialog for gui\r
+ System.err.println("Problems parsing T-Coffee scores: "\r
+ + file.getWarningMessage());\r
+ System.err.println("Origin was:\n" + source);\r
+ return false;\r
+ }\r
+\r
+ /*\r
+ * check that the score matrix matches the alignment dimensions\r
+ */\r
+ AlignmentI aln;\r
+ if ((aln = viewport.getAlignment()) != null\r
+ && (aln.getHeight() != file.getHeight() || aln.getWidth() != file\r
+ .getWidth()))\r
+ {\r
+ // TODO: raise a dialog box here rather than bomb out.\r
+ System.err\r
+ .println("The scores matrix does not match the alignment dimensions");\r
+\r
+ }\r
+\r
+ // TODO add parameter to indicate if matching should be done\r
+ if (file.annotateAlignment(alignPanel.getAlignment(), false))\r
+ {\r
+ alignPanel.fontChanged();\r
+ tcoffeeColour.setEnabled(true);\r
+ // switch to this color\r
+ changeColour(new TCoffeeColourScheme(alignPanel.getAlignment()));\r
+ return true;\r
+ }\r
+ else\r
+ {\r
+ System.err.println("Problems resolving T-Coffee scores:");\r
+ if (file.getWarningMessage() != null)\r
+ {\r
+ System.err.println(file.getWarningMessage());\r
+ }\r
+ }\r
+ return false;\r
+ }\r