- if(seq.getSequence().length()<1)\r
- viewport.getAlignment().deleteSequence(seq);\r
- else\r
- viewport.getAlignment().getSequences().setElementAt(seq, index);\r
- }\r
-\r
- viewport.setSelectionGroup(null);\r
- viewport.alignment.deleteGroup(sg);\r
- viewport.resetSeqLimits( alignPanel.seqPanel.seqCanvas.getHeight());\r
- if(viewport.getAlignment().getHeight()<1)\r
- try\r
- {\r
- this.setClosed(true);\r
- }catch(Exception ex){}\r
- alignPanel.RefreshPanels();\r
-\r
- }\r
-\r
-\r
-\r
- protected void redoMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- Object [] history = (Object[])redoList.remove(0);\r
- SequenceI[] seq = (SequenceI[]) history[1];\r
- viewport.setAlignment( new Alignment(seq) );\r
- updateEditMenuBar();\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
-\r
- public void groupsMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- GroupEditor geditor = new GroupEditor(viewport, alignPanel);\r
- JInternalFrame frame = new JInternalFrame();\r
- frame.setContentPane(geditor);\r
- Desktop.addInternalFrame(frame, "Group editor", 710, 410);\r
- frame.setResizable(false);\r
- }\r
-\r
- protected void deleteGroups_actionPerformed(ActionEvent e)\r
- {\r
- viewport.alignment.deleteAllGroups();\r
- viewport.setSelectionGroup(null);\r
-\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
-\r
-\r
- public void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- SequenceGroup sg = new SequenceGroup();\r
- for (int i=0; i<viewport.getAlignment().getSequences().size(); i++)\r
- sg.addSequence( viewport.getAlignment().getSequenceAt(i));\r
- sg.setEndRes(viewport.alignment.getWidth());\r
- viewport.setSelectionGroup(sg);\r
- PaintRefresher.Refresh(null);\r
- }\r
-\r
- public void deselectAllSequenceMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setSelectionGroup(null);\r
- PaintRefresher.Refresh(null);\r
- }\r
-\r
- public void invertSequenceMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- SequenceGroup sg = viewport.getSelectionGroup();\r
- for (int i=0; i<viewport.getAlignment().getSequences().size(); i++)\r
- sg.addOrRemove (viewport.getAlignment().getSequenceAt(i));\r
-\r
- PaintRefresher.Refresh(null);\r
- }\r
-\r
-\r
- public void deselectAllColumnsMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.getColumnSelection().clear();\r
- repaint();\r
- }\r
-\r
- public void remove2LeftMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- addHistoryItem("delete columns");\r
- ColumnSelection colSel = viewport.getColumnSelection();\r
- if (colSel.size() > 0)\r
- {\r
- int min = colSel.getMin();\r
- viewport.getAlignment().trimLeft(min);\r
- colSel.compensateForEdit(0,min);\r
- alignPanel.RefreshPanels();\r
- }\r
- }\r
-\r
- public void remove2RightMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- addHistoryItem("delete columns");\r
- ColumnSelection colSel = viewport.getColumnSelection();\r
- if (colSel.size() > 0)\r
- {\r
- int max = colSel.getMax();\r
- if(max>1)\r
- viewport.getAlignment().trimRight(max);\r
-\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- }\r
-\r
- public void removeGappedColumnMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- addHistoryItem("delete gapped columns");\r
- viewport.getAlignment().removeGaps();\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void removeAllGapsMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- addHistoryItem("delete all gaps");\r
- SequenceI current;\r
- int jSize;\r
- for (int i=0; i < viewport.getAlignment().getSequences().size();i++)\r
- {\r
- current = viewport.getAlignment().getSequenceAt(i);\r
- jSize = current.getLength();\r
- for (int j=0; j < jSize; j++)\r
- if(jalview.util.Comparison.isGap(current.getCharAt(j)))\r
- {\r
- current.deleteCharAt(j);\r
- j--;\r
- jSize--;\r
- }\r
- }\r
-\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void setGapCharMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- char thisChar = '-';\r
- char nextChar = '.';\r
- if(viewport.getGapCharacter()=='-')\r
- {\r
- thisChar = '.';\r
- nextChar = '-';\r
- }\r
- setGapCharMenuItem.setText("Set gap character to \""+nextChar+"\"");\r
- viewport.setGapCharacter(thisChar);\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void findMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- JInternalFrame frame = new JInternalFrame();\r
- Finder finder = new Finder(viewport, alignPanel, frame);\r
- frame.setContentPane(finder);\r
- Desktop.addInternalFrame(frame, "Find", 340,110);\r
-\r
- }\r
-\r
-\r
- public void font_actionPerformed(ActionEvent e)\r
- {\r
- // JOptionPane op = new JOptionPane();\r
- JInternalFrame frame = new JInternalFrame();\r
- FontChooser fc = new FontChooser( alignPanel, frame );\r
- frame.setContentPane(fc);\r
- Desktop.addInternalFrame(frame, "Change Font", 480,100);\r
- }\r
-\r
- protected void fullSeqId_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setShowFullId( fullSeqId.isSelected() );\r
-\r
- alignPanel.idPanel.idCanvas.setPreferredSize( alignPanel.calculateIdWidth() );\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- protected void colourTextMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setColourText( colourTextMenuItem.isSelected() );\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- protected void wrapMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setWrapAlignment( wrapMenuItem.isSelected() );\r
- alignPanel.setWrapAlignment( wrapMenuItem.isSelected() );\r
- }\r
-\r
-\r
- public void viewBoxesMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setShowBoxes( viewBoxesMenuItem.isSelected() );\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void viewTextMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setShowText( viewTextMenuItem.isSelected() );\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
-\r
- protected void renderGapsMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- viewport.setRenderGaps(renderGapsMenuItem.isSelected());\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void sequenceFeatures_actionPerformed(ActionEvent evt)\r
- {\r
- viewport.showSequenceFeatures(sequenceFeatures.isSelected());\r
- if(viewport.showSequenceFeatures && !((Alignment)viewport.alignment).featuresAdded)\r
- {\r
- AlignmentUtil.fetchSequenceFeatures( viewport.alignment , alignPanel);\r
- ((Alignment)viewport.alignment).featuresAdded = true;\r
- }\r
- alignPanel.RefreshPanels();\r
- }\r
-\r
- public void consensusGraphMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- alignPanel.setGraphPanelVisible( consensusGraphMenuItem.isSelected() );\r
- }\r
-\r
- public void overviewMenuItem_actionPerformed(ActionEvent e)\r
- {\r
- if (alignPanel.overviewPanel != null)\r
- return;\r
-\r
- JInternalFrame frame = new JInternalFrame();\r
- OverviewPanel overview = alignPanel.getOverviewPanel();\r
- try{\r
- overview = new OverviewPanel(alignPanel, viewport);\r
- frame.setContentPane(overview);\r
- Desktop.addInternalFrame(frame, "Overview " + this.getTitle(),\r
- frame.getWidth(), frame.getHeight());\r
- frame.pack();\r
- frame.addInternalFrameListener(new javax.swing.event.InternalFrameAdapter()\r
- { public void internalFrameClosed(javax.swing.event.InternalFrameEvent evt)\r
- {\r
- alignPanel.setOverviewPanel(null);\r
- };\r
- });\r
- alignPanel.setOverviewPanel( overview );\r