X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fgui%2FAlignFrame.java;h=c3d80d15bbf73df2203c8a914e9a7fbbf67f17c8;hb=bdba25716eaa9492681532cb443c18ed34237488;hp=fd6fe245bff3992ddce8fa8632ba18ec385ce6f9;hpb=d5ad9ef13d6f9d542e89d97b82cbd86b11ed7bae;p=jalview.git diff --git a/src/jalview/gui/AlignFrame.java b/src/jalview/gui/AlignFrame.java index fd6fe24..c3d80d1 100644 --- a/src/jalview/gui/AlignFrame.java +++ b/src/jalview/gui/AlignFrame.java @@ -1,25 +1,28 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1) + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2) * Copyright (C) 2014 The Jalview Authors * * 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. + * 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 * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ package jalview.gui; import jalview.analysis.AAFrequency; import jalview.analysis.AlignmentSorter; +import jalview.analysis.AlignmentUtils; import jalview.analysis.Conservation; import jalview.analysis.CrossRef; import jalview.analysis.NJTree; @@ -73,7 +76,6 @@ import jalview.schemes.PIDColourScheme; import jalview.schemes.PurinePyrimidineColourScheme; import jalview.schemes.RNAHelicesColourChooser; import jalview.schemes.ResidueProperties; -import jalview.schemes.ScoreMatrix; import jalview.schemes.StrandColourScheme; import jalview.schemes.TCoffeeColourScheme; import jalview.schemes.TaylorColourScheme; @@ -87,7 +89,6 @@ import jalview.ws.jws2.jabaws2.Jws2Instance; import jalview.ws.seqfetcher.DbSourceProxy; import java.awt.BorderLayout; -import java.awt.Color; import java.awt.Component; import java.awt.GridLayout; import java.awt.Rectangle; @@ -119,6 +120,7 @@ import java.util.List; import java.util.Vector; import javax.swing.JButton; +import javax.swing.JCheckBoxMenuItem; import javax.swing.JEditorPane; import javax.swing.JInternalFrame; import javax.swing.JLabel; @@ -151,9 +153,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, public AlignmentPanel alignPanel; AlignViewport viewport; - + public AlignViewControllerI avc; - Vector alignPanels = new Vector(); @@ -262,15 +263,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, int width, int height, String sequenceSetId, String viewId) { setSize(width, height); - viewport = new AlignViewport(al, hiddenColumns, sequenceSetId, viewId); - - alignPanel = new AlignmentPanel(this, viewport); if (al.getDataset() == null) { al.setDataset(null); } + viewport = new AlignViewport(al, hiddenColumns, sequenceSetId, viewId); + + alignPanel = new AlignmentPanel(this, viewport); + + addAlignmentPanel(alignPanel, true); init(); } @@ -297,7 +300,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, */ void init() { - avc = new jalview.controller.AlignViewController(this, viewport, alignPanel); + avc = new jalview.controller.AlignViewController(this, viewport, + alignPanel); if (viewport.getAlignmentConservationAnnotation() == null) { BLOSUM62Colour.setEnabled(false); @@ -341,7 +345,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, } addKeyListener(); - + } /** @@ -487,7 +491,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, case KeyEvent.VK_F2: viewport.cursorMode = !viewport.cursorMode; - statusBar.setText(MessageManager.formatMessage("label.keyboard_editing_mode", new String[]{(viewport.cursorMode ? "on" : "off")})); + statusBar.setText(MessageManager.formatMessage( + "label.keyboard_editing_mode", new String[] + { (viewport.cursorMode ? "on" : "off") })); if (viewport.cursorMode) { alignPanel.seqPanel.seqCanvas.cursorX = viewport.startRes; @@ -568,7 +574,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, public void addAlignmentPanel(final AlignmentPanel ap, boolean newPanel) { ap.alignFrame = this; - avc = new jalview.controller.AlignViewController(this, viewport, alignPanel); + avc = new jalview.controller.AlignViewController(this, viewport, + alignPanel); alignPanels.addElement(ap); @@ -812,14 +819,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, { if (progressBarHandlers == null || !progressBars.contains(new Long(id))) { - throw new Error( - "call setProgressBar before registering the progress bar's handler."); + throw new Error(MessageManager.getString("error.call_setprogressbar_before_registering_handler")); } progressBarHandlers.put(new Long(id), handler); final JPanel progressPanel = (JPanel) progressBars.get(new Long(id)); if (handler.canCancel()) { - JButton cancel = new JButton(MessageManager.getString("action.cancel")); + JButton cancel = new JButton( + MessageManager.getString("action.cancel")); final IProgressIndicator us = this; cancel.addActionListener(new ActionListener() { @@ -828,10 +835,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, public void actionPerformed(ActionEvent e) { handler.cancelActivity(id); - us.setProgressBar( - "Cancelled " - + ((JLabel) progressPanel.getComponent(0)) - .getText(), id); + us.setProgressBar(MessageManager.formatMessage("label.cancelled_params", new String[]{((JLabel) progressPanel.getComponent(0)).getText()}), id); } }); progressPanel.add(cancel, BorderLayout.EAST); @@ -853,9 +857,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, } @Override - public void setStatus(String text) { + public void setStatus(String text) + { statusBar.setText(text); }; + /* * Added so Castor Mapping file can obtain Jalview Version */ @@ -992,8 +998,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, currentFileFormat, false); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle("Save Alignment to file"); - chooser.setToolTipText(MessageManager.getString("action.save")); + chooser.setDialogTitle(MessageManager.getString("label.save_alignment_to_file")); + chooser.setToolTipText(MessageManager.getString("action.save")); int value = chooser.showSaveDialog(this); @@ -1002,9 +1008,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, currentFileFormat = chooser.getSelectedFormat(); if (currentFileFormat == null) { - JOptionPane.showInternalMessageDialog(Desktop.desktop, - MessageManager.getString("label.select_file_format_before_saving"), - MessageManager.getString("label.file_format_not_specified"), JOptionPane.WARNING_MESSAGE); + JOptionPane + .showInternalMessageDialog( + Desktop.desktop, + MessageManager + .getString("label.select_file_format_before_saving"), + MessageManager + .getString("label.file_format_not_specified"), + JOptionPane.WARNING_MESSAGE); value = chooser.showSaveDialog(this); return; } @@ -1040,8 +1051,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, success = new Jalview2XML().SaveAlignment(this, file, shortName); - statusBar.setText(MessageManager.formatMessage("label.successfully_saved_to_file_in_format",new String[]{fileName, format})); - + statusBar.setText(MessageManager.formatMessage( + "label.successfully_saved_to_file_in_format", new String[] + { fileName, format })); } else @@ -1062,8 +1074,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, int reply = JOptionPane .showInternalConfirmDialog( Desktop.desktop, - MessageManager.getString("label.alignment_contains_hidden_columns"), - MessageManager.getString("action.save_omit_hidden_columns"), + MessageManager + .getString("label.alignment_contains_hidden_columns"), + MessageManager + .getString("action.save_omit_hidden_columns"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); @@ -1093,7 +1107,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, out.print(output); out.close(); this.setTitle(file); - statusBar.setText(MessageManager.formatMessage("label.successfully_saved_to_file_in_format",new String[]{fileName, format})); + statusBar.setText(MessageManager.formatMessage( + "label.successfully_saved_to_file_in_format", + new String[] + { fileName, format })); } catch (Exception ex) { success = false; @@ -1104,8 +1121,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, if (!success) { - JOptionPane.showInternalMessageDialog(this, MessageManager.formatMessage("label.couldnt_save_file", new String[]{fileName}), - MessageManager.getString("label.error_saving_file"), JOptionPane.WARNING_MESSAGE); + JOptionPane.showInternalMessageDialog(this, MessageManager + .formatMessage("label.couldnt_save_file", new String[] + { fileName }), MessageManager + .getString("label.error_saving_file"), + JOptionPane.WARNING_MESSAGE); } return success; @@ -1142,8 +1162,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, int reply = JOptionPane .showInternalConfirmDialog( Desktop.desktop, - MessageManager.getString("label.alignment_contains_hidden_columns"), - MessageManager.getString("action.save_omit_hidden_columns"), + MessageManager + .getString("label.alignment_contains_hidden_columns"), + MessageManager + .getString("action.save_omit_hidden_columns"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE); @@ -1161,8 +1183,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, cap.setText(new FormatAdapter().formatSequences(e.getActionCommand(), viewport.getAlignment(), omitHidden, viewport.getColumnSelection())); - Desktop.addInternalFrame(cap, - MessageManager.formatMessage("label.alignment_output_command", new String[]{e.getActionCommand()}), 600, 500); + Desktop.addInternalFrame(cap, MessageManager.formatMessage( + "label.alignment_output_command", new String[] + { e.getActionCommand() }), 600, 500); } catch (OutOfMemoryError oom) { new OOMWarning("Outputting alignment as " + e.getActionCommand(), oom); @@ -1258,8 +1281,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JalviewFileChooser chooser = new JalviewFileChooser( jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle(MessageManager.getString("label.load_jalview_annotations")); - chooser.setToolTipText(MessageManager.getString("label.load_jalview_annotations")); + chooser.setDialogTitle(MessageManager + .getString("label.load_jalview_annotations")); + chooser.setToolTipText(MessageManager + .getString("label.load_jalview_annotations")); int value = chooser.showOpenDialog(null); @@ -1359,7 +1384,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, { undoMenuItem.setEnabled(true); CommandI command = (CommandI) viewport.historyList.peek(); - undoMenuItem.setText(MessageManager.formatMessage("label.undo_command", new String[]{command.getDescription()})); + undoMenuItem.setText(MessageManager.formatMessage( + "label.undo_command", new String[] + { command.getDescription() })); } else { @@ -1372,7 +1399,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, redoMenuItem.setEnabled(true); CommandI command = (CommandI) viewport.redoList.peek(); - redoMenuItem.setText(MessageManager.formatMessage("label.redo_command", new String[]{command.getDescription()})); + redoMenuItem.setText(MessageManager.formatMessage( + "label.redo_command", new String[] + { command.getDescription() })); } else { @@ -1705,7 +1734,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, Desktop.jalviewClipboard = new Object[] { seqs, viewport.getAlignment().getDataset(), hiddenColumns }; - statusBar.setText(MessageManager.formatMessage("label.copied_sequences_to_clipboard", new String[]{Integer.valueOf(seqs.length).toString()})); + statusBar.setText(MessageManager.formatMessage( + "label.copied_sequences_to_clipboard", new String[] + { Integer.valueOf(seqs.length).toString() })); } /** @@ -1912,7 +1943,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, // ///// // ADD HISTORY ITEM // - addHistoryItem(new EditCommand("Add sequences", EditCommand.PASTE, + addHistoryItem(new EditCommand(MessageManager.getString("label.add_sequences"), EditCommand.PASTE, sequences, 0, alignment.getWidth(), alignment)); } // Add any annotations attached to sequences @@ -2064,6 +2095,60 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, } + @Override + protected void expand_newalign(ActionEvent e) + { + try + { + AlignmentI alignment = AlignmentUtils.expandContext(getViewport() + .getAlignment(), -1); + AlignFrame af = new AlignFrame(alignment, DEFAULT_WIDTH, + DEFAULT_HEIGHT); + String newtitle = new String("Flanking alignment"); + + if (Desktop.jalviewClipboard != null + && Desktop.jalviewClipboard[2] != null) + { + Vector hc = (Vector) Desktop.jalviewClipboard[2]; + for (int i = 0; i < hc.size(); i++) + { + int[] region = (int[]) hc.elementAt(i); + af.viewport.hideColumns(region[0], region[1]); + } + } + + // >>>This is a fix for the moment, until a better solution is + // found!!<<< + af.alignPanel.seqPanel.seqCanvas.getFeatureRenderer() + .transferSettings( + alignPanel.seqPanel.seqCanvas.getFeatureRenderer()); + + // TODO: maintain provenance of an alignment, rather than just make the + // title a concatenation of operations. + { + if (title.startsWith("Copied sequences")) + { + newtitle = title; + } + else + { + newtitle = newtitle.concat("- from " + title); + } + } + + Desktop.addInternalFrame(af, newtitle, DEFAULT_WIDTH, DEFAULT_HEIGHT); + + } catch (Exception ex) + { + ex.printStackTrace(); + System.out.println("Exception whilst pasting: " + ex); + // could be anything being pasted in here + } catch (OutOfMemoryError oom) + { + new OOMWarning("Viewing flanking region of alignment", oom); + } + } + /** * DOCUMENT ME! * @@ -2117,7 +2202,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, /* * //ADD HISTORY ITEM */ - addHistoryItem(new EditCommand("Cut Sequences", EditCommand.CUT, cut, + addHistoryItem(new EditCommand(MessageManager.getString("label.cut_sequences"), EditCommand.CUT, cut, sg.getStartRes(), sg.getEndRes() - sg.getStartRes() + 1, viewport.getAlignment())); @@ -2147,7 +2232,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, @Override protected void deleteGroups_actionPerformed(ActionEvent e) { - if (avc.deleteGroups()) { + if (avc.deleteGroups()) + { PaintRefresher.Refresh(this, viewport.getSequenceSetId()); alignPanel.updateAnnotation(); alignPanel.paintAlignment(true); @@ -2305,7 +2391,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, viewport.getSelectionGroup()); } - statusBar.setText(MessageManager.formatMessage("label.removed_columns", new String[]{Integer.valueOf(trimRegion.getSize()).toString()})); + statusBar.setText(MessageManager.formatMessage( + "label.removed_columns", new String[] + { Integer.valueOf(trimRegion.getSize()).toString() })); addHistoryItem(trimRegion); @@ -2353,7 +2441,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, addHistoryItem(removeGapCols); - statusBar.setText(MessageManager.formatMessage("label.removed_empty_columns", new String[]{Integer.valueOf(removeGapCols.getSize()).toString()})); + statusBar.setText(MessageManager.formatMessage( + "label.removed_empty_columns", new String[] + { Integer.valueOf(removeGapCols.getSize()).toString() })); // This is to maintain viewport position on first residue // of first sequence @@ -2516,7 +2606,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, boolean addFirstIndex = false; if (viewTitle == null || viewTitle.trim().length() == 0) { - viewTitle = "View"; + viewTitle = MessageManager.getString("action.view"); addFirstIndex = true; } else @@ -2548,7 +2638,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, addAlignmentPanel(newap, true); newap.alignmentChanged(); - + if (alignPanels.size() == 2) { viewport.gatherViewsHere = true; @@ -2962,11 +3052,15 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, editPane.setEditable(false); StringBuffer contents = new AlignmentProperties(viewport.getAlignment()) .formatAsHtml(); - editPane.setText(MessageManager.formatMessage("label.html_content", new String[]{contents.toString()})); + editPane.setText(MessageManager.formatMessage("label.html_content", + new String[] + { contents.toString() })); JInternalFrame frame = new JInternalFrame(); frame.getContentPane().add(new JScrollPane(editPane)); - Desktop.instance.addInternalFrame(frame, MessageManager.formatMessage("label.alignment_properties", new String[]{getTitle()}), 500, 400); + Desktop.instance.addInternalFrame(frame, MessageManager.formatMessage( + "label.alignment_properties", new String[] + { getTitle() }), 500, 400); } /** @@ -2986,8 +3080,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JInternalFrame frame = new JInternalFrame(); OverviewPanel overview = new OverviewPanel(alignPanel); frame.setContentPane(overview); - Desktop.addInternalFrame(frame, MessageManager.formatMessage("label.overview_params", new String[]{this.getTitle()}), - frame.getWidth(), frame.getHeight()); + Desktop.addInternalFrame(frame, MessageManager.formatMessage( + "label.overview_params", new String[] + { this.getTitle() }), frame.getWidth(), frame.getHeight()); frame.pack(); frame.setLayer(JLayeredPane.PALETTE_LAYER); frame.addInternalFrameListener(new javax.swing.event.InternalFrameAdapter() @@ -3183,10 +3278,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, { threshold = SliderPanel.setPIDSliderSource(alignPanel, cs, "Background"); - cs.setThreshold(threshold, viewport.getIgnoreGapsConsensus()); - - viewport.setGlobalColourScheme(cs); } else { @@ -3372,7 +3464,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, @Override public void userDefinedColour_actionPerformed(ActionEvent e) { - if (e.getActionCommand().equals(MessageManager.getString("action.user_defined"))) + if (e.getActionCommand().equals( + MessageManager.getString("action.user_defined"))) { new UserDefinedColours(alignPanel, null); } @@ -3421,8 +3514,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, int option = JOptionPane.showInternalConfirmDialog( jalview.gui.Desktop.desktop, - MessageManager.getString("label.remove_from_default_list"), - MessageManager.getString("label.remove_user_defined_colour"), + MessageManager + .getString("label.remove_from_default_list"), + MessageManager + .getString("label.remove_user_defined_colour"), JOptionPane.YES_NO_OPTION); if (option == JOptionPane.YES_OPTION) { @@ -3573,15 +3668,18 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, if ((viewport.getSelectionGroup() == null) || (viewport.getSelectionGroup().getSize() < 2)) { - JOptionPane.showInternalMessageDialog(this, - MessageManager.getString("label.you_must_select_least_two_sequences"), MessageManager.getString("label.invalid_selection"), + JOptionPane.showInternalMessageDialog(this, MessageManager + .getString("label.you_must_select_least_two_sequences"), + MessageManager.getString("label.invalid_selection"), JOptionPane.WARNING_MESSAGE); } else { JInternalFrame frame = new JInternalFrame(); frame.setContentPane(new PairwiseAlignPanel(viewport)); - Desktop.addInternalFrame(frame, MessageManager.getString("action.pairwise_alignment"), 600, 500); + Desktop.addInternalFrame(frame, + MessageManager.getString("action.pairwise_alignment"), 600, + 500); } } @@ -3599,10 +3697,14 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, .getSelectionGroup().getSize() > 0)) || (viewport.getAlignment().getHeight() < 4)) { - JOptionPane.showInternalMessageDialog(this, - MessageManager.getString("label.principal_component_analysis_must_take_least_four_input_sequences"), - MessageManager.getString("label.sequence_selection_insufficient"), - JOptionPane.WARNING_MESSAGE); + JOptionPane + .showInternalMessageDialog( + this, + MessageManager + .getString("label.principal_component_analysis_must_take_least_four_input_sequences"), + MessageManager + .getString("label.sequence_selection_insufficient"), + JOptionPane.WARNING_MESSAGE); return; } @@ -3703,8 +3805,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JOptionPane .showMessageDialog( Desktop.desktop, - MessageManager.getString("label.you_need_more_two_sequences_selected_build_tree"), - MessageManager.getString("label.not_enough_sequences"), JOptionPane.WARNING_MESSAGE); + MessageManager + .getString("label.you_need_more_two_sequences_selected_build_tree"), + MessageManager + .getString("label.not_enough_sequences"), + JOptionPane.WARNING_MESSAGE); return; } @@ -3718,8 +3823,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JOptionPane .showMessageDialog( Desktop.desktop, - MessageManager.getString("label.selected_region_to_tree_may_only_contain_residues_or_gaps"), - MessageManager.getString("label.sequences_selection_not_aligned"), + MessageManager + .getString("label.selected_region_to_tree_may_only_contain_residues_or_gaps"), + MessageManager + .getString("label.sequences_selection_not_aligned"), JOptionPane.WARNING_MESSAGE); return; @@ -3737,8 +3844,10 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JOptionPane .showMessageDialog( Desktop.desktop, - MessageManager.getString("label.sequences_must_be_aligned_before_creating_tree"), - MessageManager.getString("label.sequences_not_aligned"), + MessageManager + .getString("label.sequences_must_be_aligned_before_creating_tree"), + MessageManager + .getString("label.sequences_not_aligned"), JOptionPane.WARNING_MESSAGE); return; @@ -3775,7 +3884,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, public void addSortByOrderMenuItem(String title, final AlignmentOrder order) { - final JMenuItem item = new JMenuItem("by " + title); + final JMenuItem item = new JMenuItem(MessageManager.formatMessage("action.by_title_param", new String[]{title})); sort.add(item); item.addActionListener(new java.awt.event.ActionListener() { @@ -3893,23 +4002,32 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, { calculateTree.removeAll(); // build the calculate menu - for (final String type:new String[] {"NJ", "AV"}) + + for (final String type : new String[] + { "NJ", "AV" }) { - for (final Object pwtype: ResidueProperties.scoreMatrices.keySet()) + String treecalcnm = MessageManager.getString("label.tree_calc_" + + type.toLowerCase()); + for (final Object pwtype : ResidueProperties.scoreMatrices.keySet()) { JMenuItem tm = new JMenuItem(); ScoreModelI sm = ResidueProperties.scoreMatrices.get(pwtype); - final String title="Calculate "+type+" using "+sm.getName(); - tm.setText(title);// MessageManager.getString("label.neighbour_blosum62")); - tm - .addActionListener(new java.awt.event.ActionListener() - { - public void actionPerformed(ActionEvent e) - { - NewTreePanel(type, (String) pwtype, title); - } - }); - calculateTree.add(tm); + if (sm.isProtein() == !viewport.getAlignment().isNucleotide()) + { + String smn = MessageManager.getStringOrReturn( + "label.score_model_", sm.getName()); + final String title = MessageManager.formatMessage( + "label.treecalc_title", treecalcnm, smn); + tm.setText(title);// + tm.addActionListener(new java.awt.event.ActionListener() + { + public void actionPerformed(ActionEvent e) + { + NewTreePanel(type, (String) pwtype, title); + } + }); + calculateTree.add(tm); + } } } @@ -4057,8 +4175,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, JalviewFileChooser chooser = new JalviewFileChooser( jalview.bin.Cache.getProperty("LAST_DIRECTORY")); chooser.setFileView(new JalviewFileView()); - chooser.setDialogTitle(MessageManager.getString("label.select_newick_like_tree_file")); - chooser.setToolTipText(MessageManager.getString("label.load_tree_file")); + chooser.setDialogTitle(MessageManager + .getString("label.select_newick_like_tree_file")); + chooser.setToolTipText(MessageManager.getString("label.load_tree_file")); int value = chooser.showOpenDialog(null); @@ -4073,14 +4192,20 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, viewport.setCurrentTree(ShowNewickTree(fin, choice).getTree()); } catch (Exception ex) { - JOptionPane.showMessageDialog(Desktop.desktop, ex.getMessage(), - MessageManager.getString("label.problem_reading_tree_file"), JOptionPane.WARNING_MESSAGE); + JOptionPane + .showMessageDialog( + Desktop.desktop, + ex.getMessage(), + MessageManager + .getString("label.problem_reading_tree_file"), + JOptionPane.WARNING_MESSAGE); ex.printStackTrace(); } if (fin != null && fin.hasWarningMessage()) { - JOptionPane.showMessageDialog(Desktop.desktop, - fin.getWarningMessage(), MessageManager.getString("label.possible_problem_with_tree_file"), + JOptionPane.showMessageDialog(Desktop.desktop, fin + .getWarningMessage(), MessageManager + .getString("label.possible_problem_with_tree_file"), JOptionPane.WARNING_MESSAGE); } } @@ -4185,7 +4310,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, @Override public void run() { - final List legacyItems=new ArrayList(); + final List legacyItems = new ArrayList(); try { System.err.println("Building ws menu again " @@ -4202,12 +4327,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, // object broker mechanism. final Vector wsmenu = new Vector(); final IProgressIndicator af = me; - final JMenu msawsmenu = new JMenu("Alignment"); - final JMenu secstrmenu = new JMenu( - "Secondary Structure Prediction"); - final JMenu seqsrchmenu = new JMenu("Sequence Database Search"); - final JMenu analymenu = new JMenu("Analysis"); - final JMenu dismenu = new JMenu("Protein Disorder"); + final JMenu msawsmenu = new JMenu(MessageManager.getString("label.alignment")); + final JMenu secstrmenu = new JMenu(MessageManager.getString("label.secondary_structure_prediction")); + final JMenu seqsrchmenu = new JMenu(MessageManager.getString("label.sequence_database_search")); + final JMenu analymenu = new JMenu(MessageManager.getString("label.analysis")); + final JMenu dismenu = new JMenu(MessageManager.getString("label.protein_disorder")); // JAL-940 - only show secondary structure prediction services from // the legacy server if (// Cache.getDefault("SHOW_JWS1_SERVICES", true) @@ -4218,7 +4342,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, // be // stored or retrieved from elsewhere // No MSAWS used any more: - // Vector msaws = null; // (Vector) Discoverer.services.get("MsaWS"); + // Vector msaws = null; // (Vector) + // Discoverer.services.get("MsaWS"); Vector secstrpr = (Vector) Discoverer.services .get("SecStrPred"); if (secstrpr != null) @@ -4230,17 +4355,17 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, .get(i); jalview.ws.WSMenuEntryProviderI impl = jalview.ws.jws1.Discoverer .getServiceClient(sh); - int p=secstrmenu.getItemCount(); + int p = secstrmenu.getItemCount(); impl.attachWSMenuEntry(secstrmenu, me); - int q=secstrmenu.getItemCount(); - for (int litm=p;litm" - + JvSwingUtils.wrapTooltip("Retrieve from " - + src.getDbName()) + ""); + fetchr.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.fetch_retrieve_from", new String[]{src.getDbName()}))); dfetch.add(fetchr); comp++; } @@ -5252,7 +5421,9 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, .toArray(new DbSourceProxy[0]); // fetch all entry DbSourceProxy src = otherdb.get(0); - fetchr = new JMenuItem(MessageManager.formatMessage("label.fetch_all_param", new String[]{src.getDbSource()})); + fetchr = new JMenuItem(MessageManager.formatMessage( + "label.fetch_all_param", new String[] + { src.getDbSource() })); fetchr.addActionListener(new ActionListener() { @Override @@ -5273,15 +5444,11 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, } }); - fetchr.setToolTipText("" - + JvSwingUtils.wrapTooltip("Retrieve from all " - + otherdb.size() + " sources in " - + src.getDbSource() + "
First is :" - + src.getDbName()) + ""); + fetchr.setToolTipText(JvSwingUtils.wrapTooltip(true, MessageManager.formatMessage("label.fetch_retrieve_from_all_sources", new String[]{Integer.valueOf(otherdb.size()).toString(), src.getDbSource(), src.getDbName()}))); dfetch.add(fetchr); comp++; // and then build the rest of the individual menus - ifetch = new JMenu("Sources from " + src.getDbSource()); + ifetch = new JMenu(MessageManager.formatMessage("label.source_from_db_source", new String[]{src.getDbSource()})); icomp = 0; String imname = null; int i = 0; @@ -5294,7 +5461,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, 0, 10) + "..." : dbname; if (imname == null) { - imname = "from '" + sname + "'"; + imname = MessageManager.formatMessage("label.from_msname", new String[]{sname}); } fetchr = new JMenuItem(msname); final DbSourceProxy[] dassrc = @@ -5321,13 +5488,13 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, }); fetchr.setToolTipText("" - + JvSwingUtils.wrapTooltip("Retrieve from " - + dbname) + ""); + + MessageManager.formatMessage("label.fetch_retrieve_from", new String[]{dbname})); ifetch.add(fetchr); ++i; if (++icomp >= mcomp || i == (otherdb.size())) { - ifetch.setText(MessageManager.formatMessage("label.source_to_target",imname,sname)); + ifetch.setText(MessageManager.formatMessage( + "label.source_to_target", imname, sname)); dfetch.add(ifetch); ifetch = new JMenu(); imname = null; @@ -5339,7 +5506,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, ++dbi; if (comp >= mcomp || dbi >= (dbclasses.length)) { - dfetch.setText(MessageManager.formatMessage("label.source_to_target",mname,dbclass)); + dfetch.setText(MessageManager.formatMessage( + "label.source_to_target", mname, dbclass)); rfetch.add(dfetch); dfetch = new JMenu(); mname = null; @@ -5477,7 +5645,8 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, @Override protected void makeGrpsFromSelection_actionPerformed(ActionEvent e) { - if (avc.makeGroupsFromSelection()) { + if (avc.makeGroupsFromSelection()) + { PaintRefresher.Refresh(this, viewport.getSequenceSetId()); alignPanel.updateAnnotation(); alignPanel.paintAlignment(true); @@ -5512,8 +5681,7 @@ public class AlignFrame extends GAlignFrame implements DropTargetListener, if (!viewport.getSequenceSetId().equals( alignmentPanel.av.getSequenceSetId())) { - throw new Error( - "Implementation error: cannot show a view from another alignment in an AlignFrame."); + throw new Error(MessageManager.getString("error.implementation_error_cannot_show_view_alignment_frame")); } if (tabbedPane != null & alignPanels.indexOf(alignmentPanel) != tabbedPane