+ SequenceAnnotationOrder sortAnnotationsBy = SequenceAnnotationOrder
+ .valueOf(Cache.getDefault(Preferences.SORT_ANNOTATIONS,
+ SequenceAnnotationOrder.NONE.name()));
+ final JCheckBoxMenuItem sortAnnBySequence = new JCheckBoxMenuItem(
+ MessageManager.getString("label.sort_annotations_by_sequence"));
+ final JCheckBoxMenuItem sortAnnByLabel = new JCheckBoxMenuItem(
+ MessageManager.getString("label.sort_annotations_by_label"));
+
+ sortAnnBySequence
+ .setSelected(sortAnnotationsBy == SequenceAnnotationOrder.SEQUENCE_AND_LABEL);
+ sortAnnBySequence.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ boolean newState = sortAnnBySequence.getState();
+ sortAnnByLabel.setSelected(false);
+ setAnnotationSortOrder(newState ? SequenceAnnotationOrder.SEQUENCE_AND_LABEL
+ : SequenceAnnotationOrder.NONE);
+ sortAnnotations_actionPerformed();
+ }
+ });
+ sortAnnByLabel
+ .setSelected(sortAnnotationsBy == SequenceAnnotationOrder.LABEL_AND_SEQUENCE);
+ sortAnnByLabel.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ boolean newState = sortAnnByLabel.getState();
+ sortAnnBySequence.setSelected(false);
+ setAnnotationSortOrder(newState ? SequenceAnnotationOrder.LABEL_AND_SEQUENCE
+ : SequenceAnnotationOrder.NONE);
+ sortAnnotations_actionPerformed();
+ }
+ });
+ colourTextMenuItem.setText(MessageManager
+ .getString("label.colour_text"));
+ colourTextMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ colourTextMenuItem_actionPerformed(e);
+ }
+ });
+
+ JMenuItem htmlMenuItem = new JMenuItem(
+ MessageManager.getString("label.html"));
+ htmlMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ htmlMenuItem_actionPerformed(e);
+ }
+ });
+
+ JMenuItem createBioJS = new JMenuItem(
+ MessageManager.getString("label.biojs_html_export"));
+ createBioJS.addActionListener(new java.awt.event.ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ bioJSMenuItem_actionPerformed(e);
+ }
+ });
+
+ JMenuItem overviewMenuItem = new JMenuItem(
+ MessageManager.getString("label.overview_window"));
+ overviewMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ overviewMenuItem_actionPerformed(e);
+ }
+ });
+
+ undoMenuItem.setEnabled(false);
+ undoMenuItem.setText(MessageManager.getString("action.undo"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_Z, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ undoMenuItem_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, undoMenuItem, al);
+
+ redoMenuItem.setEnabled(false);
+ redoMenuItem.setText(MessageManager.getString("action.redo"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_Y, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ redoMenuItem_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, redoMenuItem, al);
+
+ conservationMenuItem.setText(MessageManager
+ .getString("action.by_conservation"));
+ conservationMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ conservationMenuItem_actionPerformed(e);
+ }
+ });
+ noColourmenuItem.setText(MessageManager.getString("label.none"));
+ noColourmenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ noColourmenuItem_actionPerformed(e);
+ }
+ });
+ wrapMenuItem.setText(MessageManager.getString("label.wrap"));
+ wrapMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ wrapMenuItem_actionPerformed(e);
+ }
+ });
+
+ JMenuItem printMenuItem = new JMenuItem(
+ MessageManager.getString("action.print"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_P, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ printMenuItem_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, printMenuItem, al);
+
+ renderGapsMenuItem
+ .setText(MessageManager.getString("action.show_gaps"));
+ renderGapsMenuItem.setState(true);
+ renderGapsMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ renderGapsMenuItem_actionPerformed(e);
+ }
+ });
+
+ JMenuItem findMenuItem = new JMenuItem(
+ MessageManager.getString("action.find"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_F, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ findMenuItem.setToolTipText(JvSwingUtils.wrapTooltip(true,
+ MessageManager.getString("label.find_tip")));
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ findMenuItem_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, findMenuItem, al);
+
+ abovePIDThreshold.setText(MessageManager
+ .getString("label.above_identity_threshold"));
+ abovePIDThreshold.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ abovePIDThreshold_actionPerformed(e);
+ }
+ });
+ showSeqFeatures.setText(MessageManager
+ .getString("label.show_sequence_features"));
+ showSeqFeatures.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent actionEvent)
+ {
+ showSeqFeatures_actionPerformed(actionEvent);
+ }
+ });
+ /*
+ * showSeqFeaturesHeight.setText("Vary Sequence Feature Height");
+ * showSeqFeaturesHeight.addActionListener(new ActionListener() { public
+ * void actionPerformed(ActionEvent actionEvent) {
+ * showSeqFeaturesHeight_actionPerformed(actionEvent); } });
+ */
+ showDbRefsMenuitem.setText(MessageManager
+ .getString("label.show_database_refs"));
+ showDbRefsMenuitem.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showDbRefs_actionPerformed(e);
+ }
+
+ });
+ showNpFeatsMenuitem.setText(MessageManager
+ .getString("label.show_non_positional_features"));
+ showNpFeatsMenuitem.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showNpFeats_actionPerformed(e);
+ }
+
+ });
+ showGroupConservation.setText(MessageManager
+ .getString("label.group_conservation"));
+ showGroupConservation.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showGroupConservation_actionPerformed(e);
+ }
+
+ });
+
+ showGroupConsensus.setText(MessageManager
+ .getString("label.group_consensus"));
+ showGroupConsensus.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showGroupConsensus_actionPerformed(e);
+ }
+
+ });
+ showConsensusHistogram.setText(MessageManager
+ .getString("label.show_consensus_histogram"));
+ showConsensusHistogram.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showConsensusHistogram_actionPerformed(e);
+ }
+
+ });
+ showSequenceLogo.setText(MessageManager
+ .getString("label.show_consensus_logo"));
+ showSequenceLogo.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showSequenceLogo_actionPerformed(e);
+ }
+
+ });
+ normaliseSequenceLogo.setText(MessageManager
+ .getString("label.norm_consensus_logo"));
+ normaliseSequenceLogo.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ normaliseSequenceLogo_actionPerformed(e);
+ }
+
+ });
+ applyAutoAnnotationSettings.setText(MessageManager
+ .getString("label.apply_all_groups"));
+ applyAutoAnnotationSettings.setState(false);
+ applyAutoAnnotationSettings.setVisible(true);
+ applyAutoAnnotationSettings.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ applyAutoAnnotationSettings_actionPerformed(e);
+ }
+ });
+
+ ButtonGroup buttonGroup = new ButtonGroup();
+ final JRadioButtonMenuItem showAutoFirst = new JRadioButtonMenuItem(
+ MessageManager.getString("label.show_first"));
+ final JRadioButtonMenuItem showAutoLast = new JRadioButtonMenuItem(
+ MessageManager.getString("label.show_last"));
+ buttonGroup.add(showAutoFirst);
+ buttonGroup.add(showAutoLast);
+ final boolean autoFirst = Cache.getDefault(
+ Preferences.SHOW_AUTOCALC_ABOVE, false);
+ showAutoFirst.setSelected(autoFirst);
+ setShowAutoCalculatedAbove(autoFirst);
+ showAutoFirst.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ setShowAutoCalculatedAbove(showAutoFirst.isSelected());
+ sortAnnotations_actionPerformed();
+ }
+ });
+ showAutoLast.setSelected(!showAutoFirst.isSelected());
+ showAutoLast.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ setShowAutoCalculatedAbove(!showAutoLast.isSelected());
+ sortAnnotations_actionPerformed();
+ }
+ });
+
+ nucleotideColour.setText(MessageManager.getString("label.nucleotide"));
+ nucleotideColour.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ nucleotideColour_actionPerformed(e);
+ }
+ });
+
+ tcoffeeColour.setText(MessageManager.getString("label.tcoffee_scores"));
+ tcoffeeColour.setEnabled(false);
+ tcoffeeColour.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ tcoffeeColorScheme_actionPerformed(e);
+ }
+ });
+
+ JMenuItem deleteGroups = new JMenuItem(
+ MessageManager.getString("action.undefine_groups"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_U, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ deleteGroups_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, deleteGroups, al);
+
+ JMenuItem createGroup = new JMenuItem(
+ MessageManager.getString("action.create_groups"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_G, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ createGroup_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, createGroup, al);
+
+ JMenuItem unGroup = new JMenuItem(
+ MessageManager.getString("action.remove_group"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_G, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask()
+ | KeyEvent.SHIFT_MASK, false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ unGroup_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, unGroup, al);
+
+ copy.setText(MessageManager.getString("action.copy"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ copy_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, copy, al);
+
+ cut.setText(MessageManager.getString("action.cut"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_X, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ cut_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, cut, al);
+
+ JMenuItem delete = new JMenuItem(
+ MessageManager.getString("action.delete"));
+ delete.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ delete_actionPerformed(e);
+ }
+ });
+
+ pasteMenu.setText(MessageManager.getString("action.paste"));
+ JMenuItem pasteNew = new JMenuItem(
+ MessageManager.getString("label.to_new_alignment"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_V, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask()
+ | KeyEvent.SHIFT_MASK, false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ pasteNew_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, pasteNew, al);
+
+ JMenuItem pasteThis = new JMenuItem(
+ MessageManager.getString("label.to_this_alignment"));
+ keyStroke = KeyStroke.getKeyStroke(KeyEvent.VK_V, Toolkit
+ .getDefaultToolkit().getMenuShortcutKeyMask(), false);
+ al = new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ pasteThis_actionPerformed(e);
+ }
+ };
+ addMenuActionAndAccelerator(keyStroke, pasteThis, al);
+
+ applyToAllGroups.setText(MessageManager
+ .getString("label.apply_colour_to_all_groups"));
+ applyToAllGroups.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ applyToAllGroups_actionPerformed(e);
+ }
+ });
+ JMenuItem createPNG = new JMenuItem("PNG");
+ createPNG.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ createPNG(null);
+ }
+ });
+ createPNG.setActionCommand(MessageManager
+ .getString("label.save_png_image"));
+
+ JMenuItem font = new JMenuItem(MessageManager.getString("action.font"));
+ font.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ font_actionPerformed(e);
+ }
+ });
+ seqLimits.setText(MessageManager
+ .getString("label.show_sequence_limits"));
+ seqLimits.setState(jalview.bin.Cache.getDefault("SHOW_JVSUFFIX", true));
+ seqLimits.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ seqLimit_actionPerformed(e);
+ }
+ });
+ JMenuItem epsFile = new JMenuItem("EPS");
+ epsFile.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ createEPS(null);
+ }
+ });
+
+ JMenuItem createSVG = new JMenuItem("SVG");
+ createSVG.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ createSVG(null);
+ }
+ });
+
+ JMenuItem loadTreeMenuItem = new JMenuItem(
+ MessageManager.getString("label.load_associated_tree"));
+ loadTreeMenuItem.setActionCommand(MessageManager
+ .getString("label.load_tree_for_sequence_set"));
+ loadTreeMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ loadTreeMenuItem_actionPerformed(e);
+ }
+ });
+
+ scaleAbove.setVisible(false);
+ scaleAbove.setText(MessageManager.getString("action.scale_above"));
+ scaleAbove.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ scaleAbove_actionPerformed(e);
+ }
+ });
+ scaleLeft.setVisible(false);
+ scaleLeft.setSelected(true);
+ scaleLeft.setText(MessageManager.getString("action.scale_left"));
+ scaleLeft.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ scaleLeft_actionPerformed(e);
+ }
+ });
+ scaleRight.setVisible(false);
+ scaleRight.setSelected(true);
+ scaleRight.setText(MessageManager.getString("action.scale_right"));
+ scaleRight.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ scaleRight_actionPerformed(e);
+ }
+ });
+ centreColumnLabelsMenuItem.setVisible(true);
+ centreColumnLabelsMenuItem.setState(false);
+ centreColumnLabelsMenuItem.setText(MessageManager
+ .getString("label.centre_column_labels"));
+ centreColumnLabelsMenuItem.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ centreColumnLabels_actionPerformed(e);
+ }
+ });
+ followHighlightMenuItem.setVisible(true);
+ followHighlightMenuItem.setState(true);
+ followHighlightMenuItem.setText(MessageManager
+ .getString("label.automatic_scrolling"));
+ followHighlightMenuItem.addActionListener(new ActionListener()
+ {
+
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ followHighlight_actionPerformed();
+ }
+
+ });
+
+ JMenuItem modifyPID = new JMenuItem(
+ MessageManager.getString("label.modify_identity_threshold"));
+ modifyPID.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ modifyPID_actionPerformed(e);
+ }
+ });
+ modifyConservation.setText(MessageManager
+ .getString("label.modify_conservation_threshold"));
+ modifyConservation.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ modifyConservation_actionPerformed(e);
+ }
+ });
+ sortByTreeMenu
+ .setText(MessageManager.getString("action.by_tree_order"));
+ sort.setText(MessageManager.getString("action.sort"));