X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FAlignFrame.java;h=079f31515fc7c43e013036c8b6e33dca64731f5c;hb=3e63bb86ad0e6f4bc86197053f921cb67b341567;hp=42094550da539211cfc9eaf91002ff01d5cb9977;hpb=798a8f1eda50a57b71e21df22e015da1364ffd1c;p=jalview.git diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index 4209455..079f315 100755 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -33,7 +33,7 @@ public class AlignFrame extends GAlignFrame public AlignFrame(AlignmentI al) { super(); - viewport = new AlignViewport(al,true,true,true,false); + viewport = new AlignViewport(al,true,true,false); String fontName = jalview.bin.Cache.getProperty("FONT_NAME"); String fontStyle= jalview.bin.Cache.getProperty("FONT_STYLE"); @@ -63,11 +63,27 @@ public class AlignFrame extends GAlignFrame protected void saveAs_actionPerformed(ActionEvent e) { - JFileChooser chooser = new JFileChooser(jalview.bin.Cache.getProperty("LAST_DIRECTORY")); + String suffix = ""; + if(e.getActionCommand().equals("FASTA")) + suffix = "fa"; + else if(e.getActionCommand().equals("MSF")) + suffix = "msf"; + else if(e.getActionCommand().equals("CLUSTAL")) + suffix = "aln"; + else if(e.getActionCommand().equals("BLC")) + suffix = "blc"; + else if(e.getActionCommand().equals("PIR")) + suffix = "pir"; + else if(e.getActionCommand().equals("PFAM")) + suffix = "pfam"; + + JalviewFileChooser chooser = new JalviewFileChooser(jalview.bin.Cache.getProperty("LAST_DIRECTORY") + , new String[]{suffix}, e.getActionCommand()+" file"); + chooser.setFileView(new JalviewFileView()); chooser.setDialogTitle("Save Alignment to file - "+e.getActionCommand() +" format."); chooser.setToolTipText("Save"); int value = chooser.showSaveDialog(this); - if(value == JFileChooser.APPROVE_OPTION) + if(value == JalviewFileChooser.APPROVE_OPTION) { String choice = chooser.getSelectedFile().getPath(); jalview.bin.Cache.setProperty("LAST_DIRECTORY", choice); @@ -98,12 +114,24 @@ public class AlignFrame extends GAlignFrame htmlOutput = null; } - protected void createJPG_actionPerformed(ActionEvent e) + protected void createPNG_actionPerformed(ActionEvent e) { - int height = (viewport.alignment.getWidth() / viewport.getChunkWidth() +1) * viewport.chunkHeight; int width = alignPanel.seqPanel.getWidth() + alignPanel.idPanel.getWidth(); + if(!viewport.getWrapAlignment()) + { + height = viewport.alignment.getHeight() * viewport.charHeight; + width = alignPanel.idPanel.getWidth() + viewport.alignment.getWidth() * viewport.charWidth; + } + + alignPanel.makePNG( width, height); + } + + protected void epsFile_actionPerformed(ActionEvent e) + { + int height = (viewport.alignment.getWidth() / viewport.getChunkWidth() +1) * viewport.chunkHeight; + int width = alignPanel.seqPanel.getWidth() + alignPanel.idPanel.getWidth(); if(!viewport.getWrapAlignment()) { @@ -111,7 +139,8 @@ public class AlignFrame extends GAlignFrame width = alignPanel.idPanel.getWidth() + viewport.alignment.getWidth() * viewport.charWidth; } - alignPanel.makeJPG( width, height); + alignPanel.makeEPS( width, height); + } @@ -222,7 +251,7 @@ public class AlignFrame extends GAlignFrame public void moveSelectedSequences(boolean up) { - SequenceGroup sg = viewport.getRubberbandGroup(); + SequenceGroup sg = viewport.getSelectionGroup(); if (sg == null) return; @@ -266,10 +295,10 @@ public class AlignFrame extends GAlignFrame protected void copy_actionPerformed(ActionEvent e) { - if(viewport.getRubberbandGroup()==null) + if(viewport.getSelectionGroup()==null) return; - SequenceGroup sg = viewport.getRubberbandGroup(); + SequenceGroup sg = viewport.getSelectionGroup(); Clipboard c = Toolkit.getDefaultToolkit().getSystemClipboard(); StringBuffer buffer= new StringBuffer(); @@ -352,10 +381,10 @@ public class AlignFrame extends GAlignFrame protected void delete_actionPerformed(ActionEvent e) { addHistoryItem("Delete"); - if (viewport.getRubberbandGroup() == null) + if (viewport.getSelectionGroup() == null) return; - SequenceGroup sg = viewport.getRubberbandGroup(); + SequenceGroup sg = viewport.getSelectionGroup(); for (int i=0;i < sg.sequences.size(); i++) { SequenceI seq = sg.getSequenceAt(i); @@ -368,7 +397,7 @@ public class AlignFrame extends GAlignFrame viewport.getAlignment().getSequences().setElementAt(seq, index); } - viewport.setRubberbandGroup(null); + viewport.setSelectionGroup(null); viewport.alignment.deleteGroup(sg); viewport.resetSeqLimits( alignPanel.seqPanel.seqCanvas.getHeight()); if(viewport.getAlignment().getHeight()<1) @@ -404,7 +433,7 @@ public class AlignFrame extends GAlignFrame protected void deleteGroups_actionPerformed(ActionEvent e) { viewport.alignment.deleteAllGroups(); - viewport.getSelection().clear(); + viewport.setSelectionGroup(null); alignPanel.RefreshPanels(); } @@ -413,29 +442,26 @@ public class AlignFrame extends GAlignFrame public void selectAllSequenceMenuItem_actionPerformed(ActionEvent e) { - Selection sel = viewport.getSelection(); + SequenceGroup sg = new SequenceGroup(); for (int i=0; i0) + + if( (viewport.getSelectionGroup()!=null && viewport.getSelectionGroup().getSize()<4 && viewport.getSelectionGroup().getSize()>0) || viewport.getAlignment().getHeight()<4) { JOptionPane.showInternalMessageDialog(this, "Principal component analysis must take\n" @@ -938,9 +973,9 @@ if ( viewport.getConservationSelected() ) } TreePanel tp=null; - if (viewport.getSelection() != null && viewport.getSelection().size() > 3) + if (viewport.getSelectionGroup() != null && viewport.getSelectionGroup().getSize() > 3) { - tp = new TreePanel(viewport, viewport.getSelection().asVector(),type, pwType, + tp = new TreePanel(viewport, viewport.getSelectionGroup().sequences,type, pwType, 0, viewport.alignment.getWidth()); } else