/**
- * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8)
- * Copyright (C) 2012 J Procter, AM Waterhouse, LM Lui, J Engelhardt, G Barton, M Clamp, S Searle
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ The Jalview Authors
*
* This file is part of Jalview.
*
* 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 <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
*/
+
+
+
+
+
+
+
+
+
// default console to report messages
var _console = document.getElementById("stdout");
var _jvapps = new Array();
// counter for jmol structures
var mnum = 1;
+function getDocumentBase() {
+ var dburi = document.baseURI;
+ // IE does not support document.baseURI
+ // logic from patch to TYPO3:
+ // http://forge.typo3.org/projects/typo3cms-core/repository/revisions/f61358afad28adb6dcaeb270ba480e998dfb0b79/diff/typo3/sysext/rtehtmlarea/htmlarea/htmlarea.js
+ if (!dburi) {
+ var baseTags = document.getElementsByTagName('base');
+ if (baseTags.length > 0) {
+ dburi = baseTags[0].href;
+ } else {
+ dburi = document.URL;
+ }
+ }
+ return dburi.substring(0, dburi.lastIndexOf("/") + 1);
+}
function setConsole(console) {
_console = console;
}
var sep = applet.getSeparator();
var oldjm=jmolView;
// recover full id of Jmol applet
- jmolView=_jmolGetApplet(jmolView).id;
+ jmolView=jmolFindTarget(jmolView)._id; // Jmol 14.2.14
var jmbinding=_jvjmols.get(jmolView);
if (!jmbinding)
{
jmbinding._jmol=jmolView;
// now update structureListener list
mtf="";
- var dbase = document.baseURI.substring(0,document.baseURI.lastIndexOf("/")+1);
+ var dbase = getDocumentBase();
for (m in jmbinding._modelstofiles)
{ if (m>0) { mtf+=sep; }
mtf+=jmbinding._modelstofiles[m];
("" + list4));
// 1 is pdb file, 2 is residue number, 3 is chain
// list1 = new Object(list1);
- var base = list[1].indexOf(document.baseURI
- .substring(0, document.baseURI.lastIndexOf('/'))
- ); // .indexOf(_path);
- if (base==0) { base = document.baseURI.lastIndexOf('/'); }
+ var base = list[1].indexOf(getDocumentBase()); // .indexOf(_path);
+ if (base==0) { base = getDocumentBase(); }
var sid = list[1]; // .substring(base);
base = list[1].substring(0, base);
if (_console) {
}
// use atomlabel[5] to look up model filename so we can highlight associated positions in any jalviews
for (ap in _jvapps) {
- _jvapps[ap].mouseOverStructure(atomlabel[2], atomlabel[3],
- document.baseURI
- .substring(0, document.baseURI.lastIndexOf('/'))
- + "/" +
- modeltofiles[atomlabel[5]]);
+ pdb = getDocumentBase() + modeltofiles[atomlabel[5]];
+ _jvapps[ap].mouseOverStructure(atomlabel[2], atomlabel[3], pdb);
msg = _jmolhovermsg;
}
}
}
}
+
+
+ function lJvApp() {
+ setTimeout(function() {
+ //alert("in lJvApp");
+ var jvapp = document.getElementById("jvapp");
+ var jvfollower = document.getElementById("jvfollower");
+ //console.log(">>>>>>>> lJvApp" + jvapp);
+ linkJvJmol(jvapp);
+ }, 200);
+ setConsole(document.getElementById("stdout"));
+ };
+
+ function lJvFollow() {
+ setTimeout(function() {
+ //alert("in lJvFollow");
+ var jvapp = document.getElementById("jvapp");
+ var jvfollower = document.getElementById("jvfollower");
+ console.log(">>>>>>> lJvFollow" + jvfollower);
+ linkJvJmol(jvfollower);
+ }, 200);
+ };
+
+ function lJvA() {
+ setTimeout(function() {
+ //alert("lJvA");
+ jvfollower = document.getElementById("jvA");
+ setConsole(document.getElementById("stdout"));
+ //sep = jvfollower.getSeparator();
+ //jvapp.setSeparator(""+jvapp.getSeparator());
+ linkJvJmol(jvfollower, "jmolView", modeltofiles);
+ }, 100);
+ };
+