X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FChimeraViewFrame.java;h=e78938a9277883ca8c3df8ca800012cfd56e257a;hb=4a3def9f59cefe629c9a33d87483283aee085928;hp=9d98585289c510d3a7b0c9fae11cd62a431e2c55;hpb=cb8e52fbbc5f725e3f7f48c672cdddb0690bd978;p=jalview.git diff --git a/src/jalview/gui/ChimeraViewFrame.java b/src/jalview/gui/ChimeraViewFrame.java index 9d98585..e78938a 100644 --- a/src/jalview/gui/ChimeraViewFrame.java +++ b/src/jalview/gui/ChimeraViewFrame.java @@ -73,10 +73,11 @@ public class ChimeraViewFrame extends StructureViewerBase private int myHeight = 150; - private JMenuItem writeFeatures=null; + private JMenuItem writeFeatures = null; - private JMenu fetchAttributes=null; -/** + private JMenu fetchAttributes = null; + + /** * Initialise menu options. */ @Override @@ -89,8 +90,8 @@ public class ChimeraViewFrame extends StructureViewerBase writeFeatures = new JMenuItem( MessageManager.getString("label.create_viewer_attributes")); - writeFeatures.setToolTipText(MessageManager - .getString("label.create_viewer_attributes_tip")); + writeFeatures.setToolTipText( + MessageManager.getString("label.create_viewer_attributes_tip")); writeFeatures.addActionListener(new ActionListener() { @Override @@ -101,10 +102,10 @@ public class ChimeraViewFrame extends StructureViewerBase }); viewerActionMenu.add(writeFeatures); - fetchAttributes = new JMenu( - MessageManager.formatMessage("label.fetch_viewer_attributes",getViewerName())); - fetchAttributes.setToolTipText( - MessageManager.formatMessage("label.fetch_viewer_attributes_tip",getViewerName())); + fetchAttributes = new JMenu(MessageManager.formatMessage( + "label.fetch_viewer_attributes", getViewerName())); + fetchAttributes.setToolTipText(MessageManager.formatMessage( + "label.fetch_viewer_attributes_tip", getViewerName())); fetchAttributes.addMouseListener(new MouseAdapter() { @@ -116,6 +117,7 @@ public class ChimeraViewFrame extends StructureViewerBase }); viewerActionMenu.add(fetchAttributes); } + @Override protected void buildActionMenu() { @@ -123,8 +125,9 @@ public class ChimeraViewFrame extends StructureViewerBase // add these back in after menu is refreshed viewerActionMenu.add(writeFeatures); viewerActionMenu.add(fetchAttributes); - + }; + /** * Query the structure viewer for its residue attribute names and add them as * items off the attributes menu @@ -163,8 +166,8 @@ public class ChimeraViewFrame extends StructureViewerBase { // todo pull up? int count = jmb.sendFeaturesToViewer(getAlignmentPanel()); - statusBar.setText( - MessageManager.formatMessage("label.attributes_set", count, getViewerName())); + statusBar.setText(MessageManager.formatMessage("label.attributes_set", + count, getViewerName())); } /** @@ -213,7 +216,7 @@ public class ChimeraViewFrame extends StructureViewerBase initMenus(); addingStructures = false; - worker = new Thread(this); + worker = new Thread(this, "OpenChimera"); worker.start(); this.addInternalFrameListener(new InternalFrameAdapter() @@ -291,8 +294,7 @@ public class ChimeraViewFrame extends StructureViewerBase * @param ap */ public ChimeraViewFrame(PDBEntry[] pe, boolean alignAdded, - SequenceI[][] seqs, - AlignmentPanel ap) + SequenceI[][] seqs, AlignmentPanel ap) { this(); setAlignAddedStructures(alignAdded); @@ -331,6 +333,7 @@ public class ChimeraViewFrame extends StructureViewerBase getViewerName()), MessageManager.getString("label.error_loading_file"), JvOptionPane.ERROR_MESSAGE); + jmb.closeViewer(true); this.dispose(); return; } @@ -444,6 +447,12 @@ public class ChimeraViewFrame extends StructureViewerBase Console.error("Couldn't open Chimera viewer!", ex); } } + if (!jmb.isViewerRunning()) + { + // nothing to do + // TODO: ensure we tidy up JAL-3619 + return; + } int num = -1; for (PDBEntry pe : filePDB) {