X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FPopupMenu.java;h=d778125ad4c104d4950a81e4cd58b69fbed782ce;hb=7c28880430765f06ccd5ec8ad3caf17871336e97;hp=477136f8284c9d2254c979e8b4116905449a16fb;hpb=793968f15efc19ba0b8a91b0078e6b23ee4e2ff9;p=jalview.git diff --git a/src/jalview/gui/PopupMenu.java b/src/jalview/gui/PopupMenu.java index 477136f..d778125 100644 --- a/src/jalview/gui/PopupMenu.java +++ b/src/jalview/gui/PopupMenu.java @@ -208,11 +208,11 @@ public class PopupMenu extends JPopupMenu e.printStackTrace(); } + JMenuItem menuItem; if (seq != null) { sequenceMenu.setText(sequence.getName()); - JMenuItem menuItem; if (seq.getDatasetSequence().getPDBId() != null && seq.getDatasetSequence().getPDBId().size() > 0) { @@ -297,7 +297,11 @@ public class PopupMenu extends JPopupMenu }); add(menuItem); } - + } + } + // for the case when no sequences are even visible + if (ap.av.hasHiddenRows) { + { menuItem = new JMenuItem("Reveal All"); menuItem.addActionListener(new ActionListener() { @@ -318,7 +322,7 @@ public class PopupMenu extends JPopupMenu SequenceGroup sg = ap.av.getSelectionGroup(); - if (sg != null) + if (sg != null&& sg.getSize()>0) { groupName.setText("Name: "+sg.getName()); groupName.setText("Edit name and description of current group."); @@ -387,6 +391,7 @@ public class PopupMenu extends JPopupMenu } // Add a 'show all structures' for the current selection Hashtable pdbe=new Hashtable(); + SequenceI sqass=null; for (SequenceI sq: ap.av.getSequenceSelection()) { Vector pes = (Vector) sq.getDatasetSequence().getPDBId(); @@ -394,6 +399,10 @@ public class PopupMenu extends JPopupMenu for (PDBEntry pe: pes) { pdbe.put(pe.getId(), pe); + if (sqass==null) + { + sqass = sq; + } } } } @@ -401,7 +410,12 @@ public class PopupMenu extends JPopupMenu { final PDBEntry[] pe = pdbe.values().toArray(new PDBEntry[pdbe.size()]); final JMenuItem gpdbview; - structureMenu.add(gpdbview=new JMenuItem("View "+pdbe.size()+" structures.")); + if (pdbe.size()==1) + { + structureMenu.add(gpdbview=new JMenuItem("View structure for "+sqass.getDisplayId(false))); + } else { + structureMenu.add(gpdbview=new JMenuItem("View all "+pdbe.size()+" structures.")); + } gpdbview.setToolTipText("Open a new Jmol view with all structures associated with the current selection and superimpose them using the alignment."); gpdbview.addActionListener(new ActionListener() { @@ -431,7 +445,7 @@ public class PopupMenu extends JPopupMenu structureMenu.setVisible(false); } - if (links != null && links.size() > 0) + if (seq !=null && links != null && links.size() > 0) { JMenu linkMenu = new JMenu("Link");