+\r
+\r
+\r
+\r
+\r
+ // Add any annotations attached to sequences\r
+ for (int i = 0; i < sequences.length; i++)\r
+ {\r
+ if (sequences[i].getAnnotation() != null)\r
+ {\r
+ for (int a = 0; a < sequences[i].getAnnotation().length; a++)\r
+ {\r
+ AlignmentAnnotation newAnnot =\r
+ new AlignmentAnnotation(\r
+ sequences[i].getAnnotation()[a].label,\r
+ sequences[i].getAnnotation()[a].description,\r
+ sequences[i].getAnnotation()[a].annotations,\r
+ sequences[i].getAnnotation()[a].graphMin,\r
+ sequences[i].getAnnotation()[a].graphMax,\r
+ sequences[i].getAnnotation()[a].graph);\r
+\r
+ sequences[i].getAnnotation()[a] = newAnnot;\r
+ newAnnot.sequenceMapping = sequences[i].getAnnotation()[a].\r
+ sequenceMapping;\r
+ newAnnot.sequenceRef = sequences[i];\r
+ newAnnot.adjustForAlignment();\r
+ alignment.addAnnotation(newAnnot);\r
+ alignment.setAnnotationIndex(newAnnot, a);\r
+ }\r
+\r
+ alignPanel.annotationPanel.adjustPanelHeight();\r
+ }\r
+ }\r
+\r
+ if(newAlignment)\r
+ {\r
+ AlignFrame af = new AlignFrame(alignment);\r
+ String newtitle = new String("Copied sequences");\r
+\r
+ if(Desktop.jalviewClipboard[2]!=null)\r
+ {\r
+ Vector hc = (Vector)Desktop.jalviewClipboard[2];\r
+ for(int i=0; i<hc.size(); i++)\r
+ {\r
+ int [] region = (int[]) hc.elementAt(i);\r
+ af.viewport.hideColumns(region[0], region[1]);\r
+ }\r
+ }\r
+\r
+\r
+ //>>>This is a fix for the moment, until a better solution is found!!<<<\r
+ af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer().transferSettings(\r
+ alignPanel.seqPanel.seqCanvas.getFeatureRenderer());\r
+\r
+\r
+ if (title.startsWith("Copied sequences"))\r
+ {\r
+ newtitle = title;\r
+ }\r
+ else\r
+ {\r
+ newtitle = newtitle.concat("- from " + title);\r
+ }\r
+\r
+ Desktop.addInternalFrame(af, newtitle, NEW_WINDOW_WIDTH,\r
+ NEW_WINDOW_HEIGHT);\r
+\r
+ }\r
+\r
+\r