/*
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2)
- * Copyright (C) 2014 The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
*
* This file is part of Jalview.
*
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
+import java.util.List;
import java.util.Vector;
public class APopupMenu extends java.awt.PopupMenu implements
Menu editMenu = new Menu(MessageManager.getString("action.edit"));
- MenuItem copy = new MenuItem(
- MessageManager.getString("label.jalview_copy"));
+ MenuItem copy = new MenuItem(MessageManager.getString("action.copy"));
- MenuItem cut = new MenuItem(MessageManager.getString("label.jalview_cut"));
+ MenuItem cut = new MenuItem(MessageManager.getString("action.cut"));
MenuItem toUpper = new MenuItem(
MessageManager.getString("label.to_upper_case"));
MenuItem selSeqDetails = new MenuItem(
MessageManager.getString("label.sequence_details") + "...");
+ MenuItem makeReferenceSeq = new MenuItem();
+
Sequence seq;
MenuItem revealAll = new MenuItem();
if (seq != null)
{
seqMenu.setLabel(seq.getName());
+ if (seq == ap.av.getAlignment().getSeqrep())
+ {
+ makeReferenceSeq.setLabel(MessageManager
+ .getString("action.unmark_as_reference"));// Unmark
+ // representative");
+ }
+ else
+ {
+ makeReferenceSeq.setLabel(MessageManager
+ .getString("action.set_as_reference")); // );
+ }
repGroup.setLabel(MessageManager.formatMessage(
"label.represent_group_with", new String[]
{ seq.getName() }));
{
editName();
}
+ else if (source == makeReferenceSeq)
+ {
+ makeReferenceSeq_actionPerformed();
+ }
else if (source == sequenceDetails)
{
showSequenceDetails();
else if (source == toUpper || source == toLower || source == toggleCase)
{
SequenceGroup sg = ap.av.getSelectionGroup();
- Vector regions = new Vector();
if (sg != null)
{
- int[][] startEnd = ap.av.getVisibleRegionBoundaries(
+ List<int[]> startEnd = ap.av.getVisibleRegionBoundaries(
sg.getStartRes(), sg.getEndRes() + 1);
String description;
// TODO consider using getSequenceSelection instead here
cap.setText(new jalview.io.AppletFormatAdapter().formatSequences(
- e.getActionCommand(),
- ap.av.showJVSuffix, ap.av, true));
+ e.getActionCommand(), ap.av.getShowJVSuffix(), ap.av, true));
}
toLower.addActionListener(this);
editMenu.add(toggleCase);
seqMenu.add(sequenceName);
+ seqMenu.add(makeReferenceSeq);
// seqMenu.add(sequenceDetails);
if (!ap.av.applet.useXtrnalSviewer)
repGroup.addActionListener(this);
revealAll.addActionListener(this);
revealSeq.addActionListener(this);
+ makeReferenceSeq.addActionListener(this);
}
void refresh()
int threshold = SliderPanel.setPIDSliderSource(ap, sg.cs, getGroup()
.getName());
- sg.cs.setThreshold(threshold, ap.av.getIgnoreGapsConsensus());
+ sg.cs.setThreshold(threshold, ap.av.isIgnoreGapsConsensus());
SliderPanel.showPIDSlider();
else
// remove PIDColouring
{
- sg.cs.setThreshold(0, ap.av.getIgnoreGapsConsensus());
+ sg.cs.setThreshold(0, ap.av.isIgnoreGapsConsensus());
}
refresh();
getGroup().setDisplayText(showText.getState());
refresh();
}
+ public void makeReferenceSeq_actionPerformed()
+ {
+ if (!ap.av.getAlignment().hasSeqrep())
+ {
+ // initialise the display flags so the user sees something happen
+ ap.av.setDisplayReferenceSeq(true);
+ ap.av.setColourByReferenceSeq(true);
+ ap.av.getAlignment().setSeqrep(seq);
+ }
+ else
+ {
+ if (ap.av.getAlignment().getSeqrep() == seq)
+ {
+ ap.av.getAlignment().setSeqrep(null);
+ }
+ else
+ {
+ ap.av.getAlignment().setSeqrep(seq);
+ }
+ }
+ refresh();
+ }
public void showNonconserved_itemStateChanged()
{