X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FTreePanel.java;h=35a8b74559a8120f1641d9fbbad77f1d746304f3;hb=4cea7a0328724b90a6a7c16ae8c926e0cc12cedd;hp=a266412113e1f5f54a8c262534beeab7efcc7eef;hpb=797df64fa2a0a30773d0f48f5494d4155e5a8be3;p=jalview.git diff --git a/src/jalview/gui/TreePanel.java b/src/jalview/gui/TreePanel.java index a266412..35a8b74 100755 --- a/src/jalview/gui/TreePanel.java +++ b/src/jalview/gui/TreePanel.java @@ -1,13 +1,13 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) - * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8) + * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - * + * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR @@ -20,6 +20,8 @@ package jalview.gui; import java.beans.*; import java.io.*; import java.util.*; +import java.util.List; + import javax.imageio.*; import java.awt.*; @@ -34,6 +36,7 @@ import jalview.commands.OrderCommand; import jalview.datamodel.*; import jalview.io.*; import jalview.jbgui.*; +import jalview.util.MessageManager; /** * DOCUMENT ME! @@ -152,7 +155,7 @@ public class TreePanel extends GTreePanel .println("new alignment sequences vector value is null"); } - tree.UpdatePlaceHolders((Vector) evt.getNewValue()); + tree.UpdatePlaceHolders((List) evt.getNewValue()); treeCanvas.nameHash.clear(); // reset the mapping between canvas // rectangles and leafnodes repaint(); @@ -255,11 +258,11 @@ public class TreePanel extends GTreePanel { if (odata == null) { - tree = new NJTree(av.alignment.getSequencesArray(), newtree); + tree = new NJTree(av.getAlignment().getSequencesArray(), newtree); } else { - tree = new NJTree(av.alignment.getSequencesArray(), odata, + tree = new NJTree(av.getAlignment().getSequencesArray(), odata, newtree); } if (!tree.hasOriginalSequenceData()) @@ -271,19 +274,21 @@ public class TreePanel extends GTreePanel { int start, end; SequenceI[] seqs; - AlignmentView seqStrings = av.getAlignmentView(av - .getSelectionGroup() != null); - if (av.getSelectionGroup() == null) + boolean selview = av.getSelectionGroup() != null + && av.getSelectionGroup().getSize() > 1; + AlignmentView seqStrings = av.getAlignmentView(selview); + if (!selview) { start = 0; - end = av.alignment.getWidth(); - seqs = av.alignment.getSequencesArray(); + end = av.getAlignment().getWidth(); + seqs = av.getAlignment().getSequencesArray(); } else { start = av.getSelectionGroup().getStartRes(); end = av.getSelectionGroup().getEndRes() + 1; - seqs = av.getSelectionGroup().getSequencesInOrder(av.alignment); + seqs = av.getSelectionGroup().getSequencesInOrder( + av.getAlignment()); } tree = new NJTree(seqs, seqStrings, type, pwtype, start, end); @@ -392,7 +397,7 @@ public class TreePanel extends GTreePanel jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); chooser.setDialogTitle("Save tree as newick file"); - chooser.setToolTipText("Save"); + chooser.setToolTipText(MessageManager.getString("action.save")); int value = chooser.showSaveDialog(null); @@ -484,7 +489,7 @@ public class TreePanel extends GTreePanel // af.addSortByOrderMenuItem(ServiceName + " Ordering", // msaorder); - Desktop.addInternalFrame(af, "Original Data for " + this.title, + Desktop.addInternalFrame(af, MessageManager.formatMessage("label.original_data_for_params", new String[]{this.title}), AlignFrame.DEFAULT_WIDTH, AlignFrame.DEFAULT_HEIGHT); } } @@ -509,72 +514,76 @@ public class TreePanel extends GTreePanel */ public void sortByTree_actionPerformed(ActionEvent e) { - + if (treeCanvas.applyToAllViews) { final ArrayList commands = new ArrayList(); - for (AlignmentPanel ap: PaintRefresher.getAssociatedPanels(av + for (AlignmentPanel ap : PaintRefresher.getAssociatedPanels(av .getSequenceSetId())) { commands.add(sortAlignmentIn(ap.av.getAlignPanel())); } av.getAlignPanel().alignFrame.addHistoryItem(new CommandI() { - + @Override public void undoCommand(AlignmentI[] views) { - for (CommandI tsort:commands) + for (CommandI tsort : commands) { tsort.undoCommand(views); - } + } } - + @Override public int getSize() { return commands.size(); } - + @Override public String getDescription() { return "Tree Sort (many views)"; } - + @Override public void doCommand(AlignmentI[] views) { - for (CommandI tsort:commands) + for (CommandI tsort : commands) { tsort.doCommand(views); - } + } } }); - for (AlignmentPanel ap: PaintRefresher.getAssociatedPanels(av + for (AlignmentPanel ap : PaintRefresher.getAssociatedPanels(av .getSequenceSetId())) { // ensure all the alignFrames refresh their GI after adding an undo item ap.alignFrame.updateEditMenuBar(); } - } else { - treeCanvas.ap.alignFrame.addHistoryItem(sortAlignmentIn(treeCanvas.ap)); + } + else + { + treeCanvas.ap.alignFrame + .addHistoryItem(sortAlignmentIn(treeCanvas.ap)); } } + public CommandI sortAlignmentIn(AlignmentPanel ap) { AlignViewport av = ap.av; SequenceI[] oldOrder = av.getAlignment().getSequencesArray(); AlignmentSorter.sortByTree(av.getAlignment(), tree); CommandI undo; - undo=new OrderCommand("Tree Sort", oldOrder, - av.alignment); + undo = new OrderCommand("Tree Sort", oldOrder, av.getAlignment()); - ap.paintAlignment(true); + ap.paintAlignment(true); return undo; } + /** * DOCUMENT ME! * @@ -682,7 +691,7 @@ public class TreePanel extends GTreePanel { "Encapsulated Postscript" }, "Encapsulated Postscript"); chooser.setFileView(new jalview.io.JalviewFileView()); chooser.setDialogTitle("Create EPS file from tree"); - chooser.setToolTipText("Save"); + chooser.setToolTipText(MessageManager.getString("action.save")); int value = chooser.showSaveDialog(this); @@ -729,7 +738,7 @@ public class TreePanel extends GTreePanel chooser.setFileView(new jalview.io.JalviewFileView()); chooser.setDialogTitle("Create PNG image from tree"); - chooser.setToolTipText("Save"); + chooser.setToolTipText(MessageManager.getString("action.save")); int value = chooser.showSaveDialog(this);