/*
- * 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
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1)
+ * Copyright (C) 2014 The Jalview Authors
*
* This file is part of Jalview.
*
* 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 <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
package jalview.appletgui;
import java.util.*;
-
import java.awt.*;
import java.awt.event.*;
MenuItem unGroupMenuItem = new MenuItem();
+ MenuItem createGroupMenuItem = new MenuItem();
+
MenuItem nucleotideMenuItem = new MenuItem();
Menu colourMenu = new Menu();
MenuItem selSeqDetails = new MenuItem(MessageManager.getString("label.sequence_details") + "...");
+ MenuItem makeReferenceSeq = new MenuItem();
+
Sequence seq;
MenuItem revealAll = new MenuItem();
displayNonconserved.setState(sg.getShowNonconserved());
if (!ap.av.getAlignment().getGroups().contains(sg))
{
+ menu1.setLabel(MessageManager.getString("action.edit_new_group"));
groupMenu.remove(unGroupMenuItem);
+ } else {
+ menu1.setLabel(MessageManager.getString("action.edit_group"));
+ groupMenu.remove(createGroupMenuItem);
}
}
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()}));
}
else
unGroupMenuItem_actionPerformed();
}
+ else if (source == createGroupMenuItem)
+ {
+ createGroupMenuItem_actionPerformed();
+ }
+
else if (source == sequenceName)
{
editName();
}
+ else if (source == makeReferenceSeq)
+ {
+ makeReferenceSeq_actionPerformed();
+ }
else if (source == sequenceDetails)
{
showSequenceDetails();
private void jbInit() throws Exception
{
- groupMenu.setLabel(MessageManager.getString("label.group"));
groupMenu.setLabel(MessageManager.getString("label.selection"));
sequenceFeature.addActionListener(this);
unGroupMenuItem.setLabel(MessageManager.getString("action.remove_group"));
unGroupMenuItem.addActionListener(this);
+ createGroupMenuItem.setLabel(MessageManager.getString("action.create_group"));
+ createGroupMenuItem.addActionListener(this);
+
nucleotideMenuItem.setLabel(MessageManager.getString("label.nucleotide"));
nucleotideMenuItem.addActionListener(this);
conservationMenuItem.addItemListener(this);
seqMenu.setLabel(MessageManager.getString("label.sequence"));
pdb.setLabel(MessageManager.getString("label.view_pdb_structure"));
hideSeqs.setLabel(MessageManager.getString("action.hide_sequences"));
- repGroup.setLabel(MessageManager.getString("label.represent_group_with"));
+ repGroup.setLabel(MessageManager.formatMessage("label.represent_group_with", new String[]{""}));
revealAll.setLabel(MessageManager.getString("action.reveal_all"));
revealSeq.setLabel(MessageManager.getString("action.reveal_sequences"));
- menu1.setLabel(MessageManager.getString("label.group"));
+ menu1.setLabel(MessageManager.getString("label.group")+":");
add(groupMenu);
this.add(seqMenu);
this.add(hideSeqs);
this.add(revealSeq);
this.add(revealAll);
// groupMenu.add(selSeqDetails);
- groupMenu.add(editGroupName);
groupMenu.add(editMenu);
groupMenu.add(outputmenu);
groupMenu.add(sequenceFeature);
+ groupMenu.add(createGroupMenuItem);
+ groupMenu.add(unGroupMenuItem);
groupMenu.add(menu1);
colourMenu.add(noColourmenuItem);
toLower.addActionListener(this);
editMenu.add(toggleCase);
seqMenu.add(sequenceName);
+ seqMenu.add(makeReferenceSeq);
// seqMenu.add(sequenceDetails);
if (!ap.av.applet.useXtrnalSviewer)
seqMenu.add(pdb);
}
seqMenu.add(repGroup);
- menu1.add(unGroupMenuItem);
+ menu1.add(editGroupName);
menu1.add(colourMenu);
menu1.add(showBoxes);
menu1.add(showText);
repGroup.addActionListener(this);
revealAll.addActionListener(this);
revealSeq.addActionListener(this);
+ makeReferenceSeq.addActionListener(this);
}
void refresh()
ap.paintAlignment(true);
}
+ void createGroupMenuItem_actionPerformed()
+ {
+ getGroup(); // implicitly create group
+ refresh();
+ }
+
public void showColourText_itemStateChanged()
{
getGroup().setColourText(showColourText.getState());
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()
{