+ if (sg != null)\r
+ {\r
+ for (int g = 0; g < sg.getSize(true); g++)\r
+ {\r
+ int start = sg.getStartRes();\r
+ int end = sg.getEndRes() + 1;\r
+\r
+ do\r
+ {\r
+ if (ap.av.hasHiddenColumns)\r
+ {\r
+ end = ap.av.colSel.getHiddenBoundaryRight(start);\r
+ if (start == end)\r
+ end = sg.getEndRes() + 1;\r
+ if (end > sg.getEndRes())\r
+ end = sg.getEndRes() + 1;\r
+ }\r
+\r
+ if (source == toggle)\r
+ ( (SequenceI) sg.getSequences(true).elementAt(g))\r
+ .toggleCase(start, end);\r
+ else\r
+ ( (SequenceI) sg.getSequences(true).elementAt(g))\r
+ .changeCase(source == upperCase, start, end);\r
+\r
+ if (ap.av.hasHiddenColumns)\r
+ {\r
+ start = ap.av.colSel.adjustForHiddenColumns(end);\r
+ start = ap.av.colSel.getHiddenBoundaryLeft(start) + 1;\r
+ }\r
+\r
+ }\r
+ while (end < sg.getEndRes());\r
+ }\r
+ PaintRefresher.Refresh(this, ap.av.getSequenceSetId());\r
+ }\r
+ }\r
+\r
+ public void outputText_actionPerformed(ActionEvent e)\r
+ {\r
+ CutAndPasteTransfer cap = new CutAndPasteTransfer();\r
+ Desktop.addInternalFrame(cap,\r
+ "Alignment output - " + e.getActionCommand(), 600,\r
+ 500);\r
+\r
+ String [] omitHidden = null;\r