X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fappletgui%2FAppletJmolBinding.java;h=ffe00b54f535937c457a89fc577f8bb9d3aa902b;hb=74e0948bc8efef9a573f037e8c037c46fade0c6f;hp=7490edcd249d1078bcbec46334570783527163ca;hpb=153dd62dc91da13ae732600e6ea55ddbe15eab39;p=jalview.git diff --git a/src/jalview/appletgui/AppletJmolBinding.java b/src/jalview/appletgui/AppletJmolBinding.java index 7490edc..ffe00b5 100644 --- a/src/jalview/appletgui/AppletJmolBinding.java +++ b/src/jalview/appletgui/AppletJmolBinding.java @@ -20,8 +20,11 @@ package jalview.appletgui; import java.awt.Container; import java.util.BitSet; +import jalview.api.AlignmentViewPanel; +import jalview.datamodel.AlignmentI; import jalview.datamodel.PDBEntry; import jalview.datamodel.SequenceI; +import jalview.structure.StructureSelectionManager; import org.jmol.api.JmolAppConsoleInterface; import org.jmol.api.JmolViewer; @@ -36,31 +39,35 @@ class AppletJmolBinding extends jalview.ext.jmol.JalviewJmolBinding */ private AppletJmol appletJmolBinding; - public AppletJmolBinding(AppletJmol appletJmol, PDBEntry[] pdbentry, SequenceI[][] seq, - String[][] chains, String protocol) + public AppletJmolBinding(AppletJmol appletJmol, StructureSelectionManager sSm, PDBEntry[] pdbentry, + SequenceI[][] seq, String[][] chains, String protocol) { - super(pdbentry, seq, chains, protocol); + super(sSm, pdbentry, seq, chains, protocol); appletJmolBinding = appletJmol; } - public jalview.api.FeatureRenderer getFeatureRenderer() + public jalview.api.FeatureRenderer getFeatureRenderer(AlignmentViewPanel alignment) { + AlignmentPanel ap = (AlignmentPanel)alignment; if (appletJmolBinding.ap.av.showSequenceFeatures) { if (appletJmolBinding.fr == null) { - appletJmolBinding.fr = new jalview.appletgui.FeatureRenderer(appletJmolBinding.ap.av); + appletJmolBinding.fr = new jalview.appletgui.FeatureRenderer( + appletJmolBinding.ap.av); } - appletJmolBinding.fr.transferSettings(appletJmolBinding.ap.seqPanel.seqCanvas.getFeatureRenderer()); + appletJmolBinding.fr + .transferSettings(appletJmolBinding.ap.seqPanel.seqCanvas + .getFeatureRenderer()); } return appletJmolBinding.fr; } - public jalview.api.SequenceRenderer getSequenceRenderer() + public jalview.api.SequenceRenderer getSequenceRenderer(AlignmentViewPanel alignment) { - return new SequenceRenderer(appletJmolBinding.ap.av); + return new SequenceRenderer(((AlignmentPanel)alignment).av); } public void sendConsoleEcho(String strEcho) @@ -90,28 +97,30 @@ class AppletJmolBinding extends jalview.ext.jmol.JalviewJmolBinding { appletJmolBinding.updateTitleAndMenus(); } - + public void updateColours(Object source) { AlignmentPanel ap = (AlignmentPanel) source; - colourBySequence(ap.av.getShowSequenceFeatures(), ap.av.alignment); + colourBySequence(ap.av.getShowSequenceFeatures(), ap); } public void showUrl(String url) { try { - appletJmolBinding.ap.av.applet.getAppletContext().showDocument(new java.net.URL(url), - "jmol"); + appletJmolBinding.ap.av.applet.getAppletContext().showDocument( + new java.net.URL(url), "jmol"); } catch (java.net.MalformedURLException ex) { } } - public void newJmolPopup(boolean translateLocale, String menuName, boolean asPopup) + public void newJmolPopup(boolean translateLocale, String menuName, + boolean asPopup) { - - jmolpopup = JmolPopup.newJmolPopup(viewer,translateLocale, menuName,asPopup); + + jmolpopup = JmolPopup.newJmolPopup(viewer, translateLocale, menuName, + asPopup); } public void notifyScriptTermination(String strStatus, int msWalltime) @@ -122,13 +131,13 @@ class AppletJmolBinding extends jalview.ext.jmol.JalviewJmolBinding public void selectionChanged(BitSet arg0) { // TODO Auto-generated method stub - + } public void refreshPdbEntries() { // TODO Auto-generated method stub - + } @Override @@ -143,17 +152,30 @@ class AppletJmolBinding extends jalview.ext.jmol.JalviewJmolBinding { return new AppletConsole(viewer2, consolePanel); } + @Override protected void releaseUIResources() { appletJmolBinding = null; - if (console!=null) { - try { + if (console != null) + { + try + { console.setVisible(false); - } catch (Error e) {} catch (Exception x) {}; - console=null; + } catch (Error e) + { + } catch (Exception x) + { + } + ; + console = null; } - + + } + + @Override + public void releaseReferences(Object svl) + { } }