X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fjalview%2Fappletgui%2FExtJmol.java;h=e2b8f23d638a16f24a1ad5a26025036d2a572e8c;hb=9c970ce520ca5480fcd289c8ef32ed78284cde29;hp=8e42f2a6ebe8a3c487984674403942b77372b164;hpb=8449a33e712dfec13771d4e1b8be20bf625f190b;p=jalview.git
diff --git a/src/jalview/appletgui/ExtJmol.java b/src/jalview/appletgui/ExtJmol.java
index 8e42f2a..e2b8f23 100644
--- a/src/jalview/appletgui/ExtJmol.java
+++ b/src/jalview/appletgui/ExtJmol.java
@@ -1,124 +1,182 @@
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ *
+ * This file is part of Jalview.
+ *
+ * Jalview is free software: you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation, either version 3
+ * of the License, or (at your option) any later version.
+ *
+ * Jalview is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty
+ * of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE. See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with Jalview. If not, see .
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
package jalview.appletgui;
-import java.util.BitSet;
-import java.util.Hashtable;
-import java.util.Vector;
-
-import org.jmol.api.JmolViewer;
-
-import jalview.api.FeatureRenderer;
+import jalview.api.AlignmentViewPanel;
import jalview.api.SequenceRenderer;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
import jalview.ext.jmol.JalviewJmolBinding;
+import jalview.io.DataSourceType;
+
+import java.awt.Container;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.Vector;
+
+import org.jmol.api.JmolAppConsoleInterface;
+import javajs.util.BS;
+import org.jmol.viewer.Viewer;
/**
* bind an alignment view to an external Jmol instance.
+ *
* @author JimP
- *
+ *
*/
public class ExtJmol extends JalviewJmolBinding
{
private AlignmentPanel ap;
- protected ExtJmol(jalview.appletgui.AlignFrame alframe, PDBEntry[] pdbentry, SequenceI[] seq, String[] chains,
- String protocol)
+ protected ExtJmol(AlignFrame alframe, PDBEntry[] pdbentry,
+ SequenceI[][] seq, DataSourceType protocol)
{
- super(pdbentry, seq, chains, protocol);
+ super(alframe.alignPanel.getStructureSelectionManager(), pdbentry, seq,
+ protocol);
}
- public ExtJmol(JmolViewer viewer, AlignmentPanel alignPanel,
- SequenceI[] seqs)
+ public ExtJmol(Viewer viewer, AlignmentPanel alignPanel,
+ SequenceI[][] seqs)
{
- super(viewer);
+ super(alignPanel.getStructureSelectionManager(), seqs, viewer);
ap = alignPanel;
- this.sequence = seqs;
notifyFileLoaded(null, null, null, null, 0);
}
+ @Override
public void updateColours(Object source)
{
-
- // TODO Auto-generated method stub
-
}
+ @Override
public void showUrl(String arg0)
{
showUrl(arg0, "jmol");
}
- public FeatureRenderer getFeatureRenderer()
- {
- if (ap.av.showSequenceFeatures)
- {
- return ap.getFeatureRenderer();
- }
- else
- {
- return null;
- }
- }
-
- public SequenceRenderer getSequenceRenderer()
+ @Override
+ public SequenceRenderer getSequenceRenderer(AlignmentViewPanel alignment)
{
- return ap.getSequenceRenderer();
+ return ((AlignmentPanel) alignment).getSequenceRenderer();
}
+ @Override
public void notifyScriptTermination(String strStatus, int msWalltime)
{
// ignore
}
+ @Override
public void sendConsoleEcho(String strEcho)
{
// ignore
}
+ @Override
public void sendConsoleMessage(String strStatus)
{
// ignore
}
+ @Override
public void showUrl(String url, String target)
{
ap.alignFrame.showURL(url, target);
}
+ @Override
public void refreshGUI()
{
// ignore
}
- public void selectionChanged(BitSet arg0)
+ @Override
+ public void selectionChanged(BS arg0)
{
System.out.println(arg0);
}
+ @Override
public void refreshPdbEntries()
{
- Vector pdbe = new Vector();
- Hashtable fileids = new Hashtable();
+ List pdbe = new ArrayList<>();
+ List fileids = new ArrayList<>();
SequenceI[] sq = ap.av.getAlignment().getSequencesArray();
- for (int s=0;s pdbids = sq[s].getAllPDBEntries();
+ if (pdbids != null)
{
- for (int pe=0,peSize=pdbids.size(); pe getJSpecViewProperty(String arg0)
+ {
+ return null;
}
}