X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FPopupMenu.java;h=a3a24220119426f554e883955744c0810089b9a4;hb=f0efe3029537bbbbe788e16eb85cb0af9c0fb81e;hp=8710031224b66d4d562ae880ef61c95bf0799b2d;hpb=bd6ce8f5f9fc8e5bc8a6188d15987ce0ffd2c1ee;p=jalview.git diff --git a/src/jalview/gui/PopupMenu.java b/src/jalview/gui/PopupMenu.java index 8710031..a3a2422 100644 --- a/src/jalview/gui/PopupMenu.java +++ b/src/jalview/gui/PopupMenu.java @@ -360,23 +360,6 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener }); add(menuItem); - if (sequence.isHMMConsensusSequence()) - { - JMenuItem selectHMM = new JCheckBoxMenuItem(); - selectHMM.setText(MessageManager.getString("label.select_hmm")); - selectHMM.addActionListener(new ActionListener() - { - - @Override - public void actionPerformed(ActionEvent e) - { - selectHMM_actionPerformed(e); - } - }); - add(selectHMM); - } - - if (alignPanel.av.getSelectionGroup() != null && alignPanel.av.getSelectionGroup().getSize() > 1) { @@ -1370,13 +1353,6 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener jMenu1.add(displayNonconserved); } - - protected void selectHMM_actionPerformed(ActionEvent e) - { - SequenceI hmm = ap.av.getSequenceSelection()[0]; - ap.alignFrame.setSelectedHMMSequence(hmm); - } - /** * Constructs the entries for the colour menu */ @@ -1587,15 +1563,8 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener protected void hideInsertions_actionPerformed(ActionEvent actionEvent) { - - HiddenColumns hidden = new HiddenColumns(); - BitSet inserts = new BitSet(), mask = new BitSet(); - - // set mask to preserve existing hidden columns outside selected group - if (ap.av.hasHiddenColumns()) - { - ap.av.getAlignment().getHiddenColumns().markHiddenRegions(mask); - } + HiddenColumns hidden = ap.av.getAlignment().getHiddenColumns(); + BitSet inserts = new BitSet(); boolean markedPopup = false; // mark inserts in current selection @@ -1603,10 +1572,7 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener { // mark just the columns in the selection group to be hidden inserts.set(ap.av.getSelectionGroup().getStartRes(), - ap.av.getSelectionGroup().getEndRes() + 1); - - // and clear that part of the mask - mask.andNot(inserts); + ap.av.getSelectionGroup().getEndRes() + 1); // TODO why +1? // now clear columns without gaps for (SequenceI sq : ap.av.getSelectionGroup().getSequences()) @@ -1617,29 +1583,18 @@ public class PopupMenu extends JPopupMenu implements ColourChangeListener } inserts.and(sq.getInsertionsAsBits()); } - } - else - { - // initially, mark all columns to be hidden - inserts.set(0, ap.av.getAlignment().getWidth()); - - // and clear out old hidden regions completely - mask.clear(); + hidden.clearAndHideColumns(inserts, ap.av.getSelectionGroup().getStartRes(), + ap.av.getSelectionGroup().getEndRes()); } // now mark for sequence under popup if we haven't already done it - if (!markedPopup && sequence != null) + else if (!markedPopup && sequence != null) { - inserts.and(sequence.getInsertionsAsBits()); - } + inserts.or(sequence.getInsertionsAsBits()); - // finally, preserve hidden regions outside selection - inserts.or(mask); - - // and set hidden columns accordingly - hidden.hideMarkedBits(inserts); - - ap.av.getAlignment().setHiddenColumns(hidden); + // and set hidden columns accordingly + hidden.hideColumns(inserts); + } refresh(); }