X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FViewSelectionMenu.java;h=f77f41054a4d7b6cf57c61c78341e7cf0f75874c;hb=fa9da54fb97cb2eacb1af7859024d90166bddb8f;hp=bfef2bea166810b7e79315bd456d20f6e13ad8a6;hpb=ab43013b7e357b84b4abade0dba949668dfb2a0e;p=jalview.git diff --git a/src/jalview/gui/ViewSelectionMenu.java b/src/jalview/gui/ViewSelectionMenu.java index bfef2be..f77f410 100644 --- a/src/jalview/gui/ViewSelectionMenu.java +++ b/src/jalview/gui/ViewSelectionMenu.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1) - * 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. * @@ -20,15 +20,17 @@ */ package jalview.gui; +import jalview.api.AlignmentViewPanel; import jalview.util.MessageManager; +import jalview.util.Platform; import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; +import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; -import java.awt.event.MouseListener; import java.util.List; import javax.swing.JCheckBoxMenuItem; @@ -56,19 +58,10 @@ public class ViewSelectionMenu extends JMenu private ViewSetProvider _allviews; - private List _selectedviews; + private List _selectedviews; private ItemListener _handler; - @Override - protected void finalize() throws Throwable - { - _selectedviews = null; - _handler = null; - _allviews = null; - super.finalize(); - } - /** * create a new view selection menu. This menu has some standard entries * (select all, invert selection), and a checkbox for every view. Mousing over @@ -88,7 +81,7 @@ public class ViewSelectionMenu extends JMenu * selection/deselection state */ public ViewSelectionMenu(String title, final ViewSetProvider allviews, - final List selectedviews, + final List selectedviews, final ItemListener handler) { super(title); @@ -150,9 +143,10 @@ public class ViewSelectionMenu extends JMenu { // ensure we update menu state to reflect external selection list state append = append || _selectedviews.size() > 1; - toggleview = new JCheckBoxMenuItem("Select many views", append); - toggleview.setToolTipText(MessageManager - .getString("label.toggle_enabled_views")); + toggleview = new JCheckBoxMenuItem( + MessageManager.getString("label.select_many_views"), append); + toggleview.setToolTipText( + MessageManager.getString("label.toggle_enabled_views")); toggleview.addItemListener(new ItemListener() { @@ -216,15 +210,15 @@ public class ViewSelectionMenu extends JMenu invertSel.setEnabled(append); selectAll.setEnabled(append); } - for (AlignmentPanel ap : allviews) + for (final AlignmentPanel ap : allviews) { - String nm = ((ap.getViewName() == null || ap.getViewName().length() == 0) ? "" - : ap.getViewName() + " for ") + String nm = ((ap.getViewName() == null + || ap.getViewName().length() == 0) ? "" + : ap.getViewName() + " for ") + ap.alignFrame.getTitle(); - final JCheckBoxMenuItem a = new JCheckBoxMenuItem(nm, + final JCheckBoxMenuItem checkBox = new JCheckBoxMenuItem(nm, _selectedviews.contains(ap)); - final AlignmentPanel p = ap; - a.addItemListener(new ItemListener() + checkBox.addItemListener(new ItemListener() { @Override public void itemStateChanged(ItemEvent e) @@ -235,15 +229,15 @@ public class ViewSelectionMenu extends JMenu { enabled = false; // toggle the inclusion state - if (_selectedviews.indexOf(p) == -1) + if (_selectedviews.indexOf(ap) == -1) { - _selectedviews.add(p); - a.setSelected(true); + _selectedviews.add(ap); + checkBox.setSelected(true); } else { - _selectedviews.remove(p); - a.setSelected(false); + _selectedviews.remove(ap); + checkBox.setSelected(false); } enabled = true; _handler.itemStateChanged(e); @@ -252,13 +246,13 @@ public class ViewSelectionMenu extends JMenu { // Deselect everything and select this item only _selectedviews.clear(); - _selectedviews.add(p); + _selectedviews.add(ap); enabled = false; for (Component c : getMenuComponents()) { if (c instanceof JCheckBoxMenuItem) { - ((JCheckBoxMenuItem) c).setSelected(a == c); + ((JCheckBoxMenuItem) c).setSelected(checkBox == c); } } enabled = true; @@ -268,54 +262,31 @@ public class ViewSelectionMenu extends JMenu } } }); - a.addMouseListener(new MouseListener() + final ViewSelectionMenu us = this; + checkBox.addMouseListener(new MouseAdapter() { - - @Override - public void mouseReleased(MouseEvent e) - { - // TODO Auto-generated method stub - - } - - @Override - public void mousePressed(MouseEvent e) - { - // TODO Auto-generated method stub - - } - @Override public void mouseExited(MouseEvent e) { try { - p.setSelected(false); } catch (Exception ex) { } - ; } @Override public void mouseEntered(MouseEvent e) { - try { - p.setSelected(true); + ap.setAlignFrameView(); } catch (Exception ex) { } - ; - } - - @Override - public void mouseClicked(MouseEvent e) - { } }); - add(a); + add(checkBox); } }