X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FAppJmolBinding.java;h=df62eabe1b33c15475b192dd86e03c4784e883d6;hb=3eef76298c55f3def21eed2516b5ace4405bed0a;hp=231d4e2053657321714d1f57f0ad3fea103986c7;hpb=296224a34569a6b13564fe000b5d7891de60ac91;p=jalview.git diff --git a/src/jalview/gui/AppJmolBinding.java b/src/jalview/gui/AppJmolBinding.java index 231d4e2..df62eab 100644 --- a/src/jalview/gui/AppJmolBinding.java +++ b/src/jalview/gui/AppJmolBinding.java @@ -1,6 +1,6 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.6) - * Copyright (C) 2010 J Procter, AM Waterhouse, G Barton, M Clamp, S Searle + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.7) + * Copyright (C) 2011 J Procter, AM Waterhouse, J Engelhardt, LM Lui, G Barton, M Clamp, S Searle * * This file is part of Jalview. * @@ -31,6 +31,7 @@ import jalview.bin.Cache; 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; @@ -45,10 +46,10 @@ public class AppJmolBinding extends jalview.ext.jmol.JalviewJmolBinding */ private AppJmol appJmolWindow; - public AppJmolBinding(AppJmol appJmol, PDBEntry[] pdbentry, + public AppJmolBinding(AppJmol appJmol, StructureSelectionManager sSm, PDBEntry[] pdbentry, SequenceI[][] sequenceIs, String[][] chains, String protocol) { - super(pdbentry, sequenceIs, chains, protocol); + super(sSm, pdbentry, sequenceIs, chains, protocol); appJmolWindow = appJmol; } @@ -60,13 +61,12 @@ public class AppJmolBinding extends jalview.ext.jmol.JalviewJmolBinding AlignmentPanel ap = (alignment==null) ? appJmolWindow.ap : (AlignmentPanel) alignment; if (ap.av.showSequenceFeatures) { - if (fr == null) + if (fr==null) { - fr = new FeatureRenderer(ap); + fr=ap.cloneFeatureRenderer(); + } else { + ap.updateFeatureRenderer(fr); } - - fr.transferSettings(ap. - seqPanel.seqCanvas.getFeatureRenderer()); } return fr; @@ -126,8 +126,8 @@ public class AppJmolBinding extends jalview.ext.jmol.JalviewJmolBinding public void updateColours(Object source) { AlignmentPanel ap = (AlignmentPanel) source,topap; - // ignore events from unrelated or non-user interactive frames - if ((topap=appJmolWindow.getAlignmentPanelFor(ap.av.getAlignment()))==null || topap.alignFrame.getCurrentView() != ap.av || !appJmolWindow.isUsedforcolourby(ap)) + // ignore events from panels not used to colour this view + if (!appJmolWindow.isUsedforcolourby(ap)) return; if (!isLoadingFromArchive()) { colourBySequence(ap.av.getShowSequenceFeatures(), ap); @@ -151,7 +151,8 @@ public class AppJmolBinding extends jalview.ext.jmol.JalviewJmolBinding boolean asPopup) { - jmolpopup = JmolPopup.newJmolPopup(viewer, translateLocale, menuName, + jmolpopup = new JmolPopup(); + jmolpopup.initialize(viewer, translateLocale, menuName, asPopup); }