+ public void loadAnnotations()\r
+ {\r
+ CutAndPasteTransfer cap = new CutAndPasteTransfer(true, this);\r
+ cap.setText("Paste your features / annotations file here.");\r
+ cap.setAnnotationImport();\r
+ Frame frame = new Frame();\r
+ frame.add(cap);\r
+ jalview.bin.JalviewLite.addFrame(frame, "Paste Annotations ", 400, 300);\r
+\r
+ }\r
+\r
+ public void outputAnnotations()\r
+ {\r
+ CutAndPasteTransfer cap = new CutAndPasteTransfer(false, this);\r
+ Frame frame = new Frame();\r
+ frame.add(cap);\r
+ jalview.bin.JalviewLite.addFrame(frame,\r
+ "Annotations",\r
+ 600, 500);\r
+ cap.setText( new AnnotationFile().printAnnotations(\r
+ viewport.alignment.getAlignmentAnnotation() ) );\r
+ }\r
+\r
+ public String outputFeatures(boolean displayTextbox, String format)\r
+ {\r
+ String features;\r
+ if (format.equalsIgnoreCase("Jalview"))\r
+ features = new FeaturesFile().printJalviewFormat(\r
+ viewport.alignment.getSequencesArray(),\r
+ viewport.featuresDisplayed);\r
+ else\r
+ features = new FeaturesFile().printGFFFormat(\r
+ viewport.alignment.getSequencesArray(),\r
+ viewport.featuresDisplayed);\r
+\r
+\r
+ if(displayTextbox)\r
+ {\r
+ CutAndPasteTransfer cap = new CutAndPasteTransfer(false, this);\r
+ Frame frame = new Frame();\r
+ frame.add(cap);\r
+ jalview.bin.JalviewLite.addFrame(frame,\r
+ "Features",\r
+ 600, 500);\r
+\r
+ cap.setText(features);\r
+ }\r
+\r
+ return features;\r
+ }\r
+\r
+ void launchFullApplication()\r
+ {\r
+ StringBuffer url = new StringBuffer(jalviewServletURL);\r
+\r
+ url.append("?open="+\r
+ appendProtocol( viewport.applet.getParameter("file") ) );\r
+\r
+ if(viewport.applet.getParameter("features")!=null)\r
+ {\r
+ url.append( "&features=" );\r
+ url.append( appendProtocol( viewport.applet.getParameter("features") ) );\r
+ }\r
+\r
+ if(viewport.applet.getParameter("annotations")!=null)\r
+ {\r
+ url.append( "&annotations=" );\r
+ url.append( appendProtocol( viewport.applet.getParameter("annotations") ) );\r
+ }\r
+\r
+ if(viewport.applet.getParameter("jnetfile")!=null)\r
+ {\r
+ url.append( "&annotations=" );\r
+ url.append( appendProtocol( viewport.applet.getParameter("jnetfile") ) );\r
+ }\r
+\r
+ if(viewport.applet.getParameter("defaultColour")!=null)\r
+ {\r
+ url.append("&colour=" +\r
+ removeWhiteSpace(viewport.applet.getParameter("defaultColour"))\r
+ );\r
+ }\r
+\r
+ if(viewport.applet.getParameter("userDefinedColour")!=null)\r
+ {\r
+ url.append( "&colour=" +\r
+ removeWhiteSpace( viewport.applet.getParameter("userDefinedColour") )\r
+ );\r
+ }\r
+\r
+ showURL(url.toString(), "FULL_APP");\r
+ }\r
+\r
+\r
+ String removeWhiteSpace(String colour)\r
+ {\r
+ StringBuffer sb = new StringBuffer();\r
+ for (int i = 0; i < colour.length(); i++)\r
+ {\r
+ if (Character.isWhitespace(colour.charAt(i)))\r
+ sb.append("%20");\r
+ else\r
+ sb.append(colour.charAt(i));\r
+ }\r
+\r
+ return sb.toString();\r
+ }\r
+\r
+\r
+ String appendProtocol(String url)\r
+ {\r
+ try{\r
+ new URL(url);\r
+ }catch(java.net.MalformedURLException ex)\r
+ {\r
+ url = viewport.applet.getCodeBase()+url;\r
+ }\r
+ return url;\r
+ }\r
+\r