X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjbgui%2FGStructureViewer.java;h=418e4132178c295b016144e256db43fbdcd1a143;hb=e1a435a213f105bac3ea0258c6fe26f11df2a392;hp=d8f3f611877d68b663879ed6b6939809469b8865;hpb=136c0793b90b72b928c4d77dc109dd5c644e00d3;p=jalview.git diff --git a/src/jalview/jbgui/GStructureViewer.java b/src/jalview/jbgui/GStructureViewer.java index d8f3f61..418e413 100644 --- a/src/jalview/jbgui/GStructureViewer.java +++ b/src/jalview/jbgui/GStructureViewer.java @@ -28,7 +28,10 @@ import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; +import java.util.ArrayList; +import java.util.List; +import javax.swing.JCheckBoxMenuItem; import javax.swing.JInternalFrame; import javax.swing.JLabel; import javax.swing.JMenu; @@ -37,8 +40,8 @@ import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JRadioButtonMenuItem; -public abstract class GStructureViewer extends JInternalFrame implements - JalviewStructureDisplayI, ColourChangeListener +public abstract class GStructureViewer extends JInternalFrame + implements JalviewStructureDisplayI, ColourChangeListener { // private AAStructureBindingModel bindingModel; @@ -54,6 +57,8 @@ public abstract class GStructureViewer extends JInternalFrame implements protected JMenuItem alignStructs; + protected JCheckBoxMenuItem showAlignmentOnly; + protected JMenuItem fitToWindow; protected JRadioButtonMenuItem seqColour; @@ -93,7 +98,8 @@ public abstract class GStructureViewer extends JInternalFrame implements fileMenu.setText(MessageManager.getString("action.file")); savemenu = new JMenu(); - savemenu.setActionCommand(MessageManager.getString("action.save_image")); + savemenu.setActionCommand( + MessageManager.getString("action.save_image")); savemenu.setText(MessageManager.getString("action.save_as")); JMenuItem pdbFile = new JMenuItem(); @@ -170,8 +176,8 @@ public abstract class GStructureViewer extends JInternalFrame implements } }); alignStructs = new JMenuItem(); - alignStructs.setText(MessageManager - .getString("label.superpose_structures")); + alignStructs.setText( + MessageManager.getString("label.superpose_structures")); alignStructs.addActionListener(new ActionListener() { @Override @@ -266,4 +272,27 @@ public abstract class GStructureViewer extends JInternalFrame implements { } + + /** + * Saves the selected entries in the 'View Chain' menu into a list. Entries are + * formatted as "pdbid:chainid". Only the selected chains should be drawn in the + * structure display. + */ + protected void setSelectedChains() + { + List chains = new ArrayList<>(); + for (int i = 0; i < chainMenu.getItemCount(); i++) + { + JMenuItem menuItem = chainMenu.getItem(i); + if (menuItem instanceof JCheckBoxMenuItem) + { + JCheckBoxMenuItem item = (JCheckBoxMenuItem) menuItem; + if (item.isSelected()) + { + chains.add(item.getText()); + } + } + } + getBinding().setChainsToShow(chains); + } }