X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=bin%2Fjalview%2Fjavascript%2FMouseOverStructureListener.js;h=c897252b605373e18e9ef059156a673c67db95f9;hp=12d1e2f4179cc80324deae176638cfaa01605cf6;hb=7301a2415adab88038b291fc54caeeb3a5a47a44;hpb=6154cb57a6eac3bb1344b8342495f5bb701ee921 diff --git a/bin/jalview/javascript/MouseOverStructureListener.js b/bin/jalview/javascript/MouseOverStructureListener.js index 12d1e2f..c897252 100644 --- a/bin/jalview/javascript/MouseOverStructureListener.js +++ b/bin/jalview/javascript/MouseOverStructureListener.js @@ -1,143 +1,143 @@ -Clazz.declarePackage ("jalview.javascript"); -Clazz.load (["jalview.javascript.JSFunctionExec", "$.JsCallBack", "jalview.structure.StructureListener"], "jalview.javascript.MouseOverStructureListener", ["jalview.api.AlignmentViewPanel", "jalview.appletgui.FeatureRenderer", "jalview.ext.jmol.JmolCommands", "jalview.structure.StructureSelectionManager", "java.net.URL", "java.util.ArrayList"], function () { -c$ = Clazz.decorateAsClass (function () { -this._listenerfn = null; -this.modelSet = null; -Clazz.instantialize (this, arguments); -}, jalview.javascript, "MouseOverStructureListener", jalview.javascript.JSFunctionExec, [jalview.javascript.JsCallBack, jalview.structure.StructureListener]); -Clazz.makeConstructor (c$, -function (jalviewLite, listener, modelList) { -Clazz.superConstructor (this, jalview.javascript.MouseOverStructureListener, [jalviewLite]); -this._listenerfn = listener; -this.modelSet = modelList; -if (this.modelSet != null) { -for (var i = 0; i < this.modelSet.length; i++) { -try { -if ( new java.net.URL (this.modelSet[i]).openConnection () != null) { -continue; -}} catch (x) { -if (Clazz.exceptionOf (x, Exception)) { -} else { -throw x; -} -} -;try { -var db = this.jvlite.getDocumentBase ().toString (); -db = db.substring (0, db.lastIndexOf ("/")); -if ( new java.net.URL (db + "/" + this.modelSet[i]).openConnection () != null) { -this.modelSet[i] = db + "/" + this.modelSet[i]; -continue; -}} catch (x) { -if (Clazz.exceptionOf (x, Exception)) { -} else { -throw x; -} -} -;try { -if ( new java.net.URL (this.jvlite.getCodeBase () + this.modelSet[i]).openConnection () != null) { -this.modelSet[i] = this.jvlite.getCodeBase () + this.modelSet[i]; -continue; -}} catch (x) { -if (Clazz.exceptionOf (x, Exception)) { -} else { -throw x; -} -} -;} -}}, "jalview.bin.JalviewLite,~S,~A"); -Clazz.overrideMethod (c$, "getPdbFile", -function () { -return this.modelSet; -}); -Clazz.defineMethod (c$, "mouseOverStructure", -function (atomIndex, strInfo) { -}, "~N,~S"); -Clazz.overrideMethod (c$, "highlightAtoms", -function (atoms) { -for (var atom, $atom = atoms.iterator (); $atom.hasNext () && ((atom = $atom.next ()) || true);) { -try { -this.executeJavascriptFunction (this._listenerfn, Clazz.newArray (-1, ["mouseover", "" + atom.getPdbFile (), "" + atom.getChain (), "" + (atom.getPdbResNum ()), "" + atom.getAtomIndex ()])); -} catch (ex) { -if (Clazz.exceptionOf (ex, Exception)) { -System.err.println ("Couldn't execute callback with " + this._listenerfn + " for atomSpec: " + atom); -ex.printStackTrace (); -} else { -throw ex; -} -} -} -}, "java.util.List"); -Clazz.overrideMethod (c$, "updateColours", -function (srce) { -var source = srce; -var ssm = jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.jvlite); -if (Clazz.instanceOf (source, jalview.api.AlignmentViewPanel)) { -var sequence = new Array (this.modelSet.length); -for (var m = 0; m < this.modelSet.length; m++) { -var sm = ssm.getMapping (this.modelSet[m]); -if (sm != null && sm.length > 0) { -sequence[m] = new Array (sm.length); -for (var i = 0; i < sm.length; i++) { -sequence[m][i] = sm[i].getSequence (); -} -} else { -sequence[m] = new Array (0); -}} -var sr = (source).getSequenceRenderer (); -var fr = (source).av.isShowSequenceFeatures () ? new jalview.appletgui.FeatureRenderer ((source).av) : null; -if (fr != null) { -(fr).transferSettings ((source).getFeatureRenderer ()); -};var ccomands = new java.util.ArrayList (); -var pdbfn = new java.util.ArrayList (); -var colcommands = jalview.ext.jmol.JmolCommands.getColourBySequenceCommand (ssm, this.modelSet, sequence, sr, fr, (source).getAlignment ()); -if (colcommands == null) { -return; -}var sz = 0; -for (var ccset, $ccset = 0, $$ccset = colcommands; $ccset < $$ccset.length && ((ccset = $$ccset[$ccset]) || true); $ccset++) { -sz += ccset.commands.length; -ccomands.add (ccset.commands); -pdbfn.add (ccset.mapping); -} -var mclass; -var mhandle; -var ccomandset = new Array (sz); -sz = 0; -for (var ccset, $ccset = ccomands.iterator (); $ccset.hasNext () && ((ccset = $ccset.next ()) || true);) { -System.arraycopy (ccset, 0, ccomandset, sz, ccset.length); -sz += ccset.length; -} -if (this.jvlite.isJsMessageSetChanged (mclass = "colourstruct", mhandle = (source).av.getViewId (), ccomandset)) { -this.jvlite.setJsMessageSet (mclass, mhandle, ccomandset); -var st = Clazz.newArray (-1, ["colourstruct", "" + (source).av.getViewId (), "" + ccomandset.length, this.jvlite.arrayToSeparatorList (pdbfn.toArray ( new Array (pdbfn.size ())))]); -try { -this.executeJavascriptFunction (true, this._listenerfn, st); -} catch (ex) { -if (Clazz.exceptionOf (ex, Exception)) { -System.err.println ("Couldn't execute callback with " + this._listenerfn + " using args { " + st[0] + ", " + st[1] + ", " + st[2] + "," + st[3] + "}"); -ex.printStackTrace (); -} else { -throw ex; -} -} -}}}, "~O"); -Clazz.overrideMethod (c$, "getAlignFrame", -function () { -return null; -}); -Clazz.overrideMethod (c$, "getListenerFunction", -function () { -return this._listenerfn; -}); -Clazz.defineMethod (c$, "finalise", -function () { -this.jvlite = null; -Clazz.superCall (this, jalview.javascript.MouseOverStructureListener, "finalize", []); -}); -Clazz.overrideMethod (c$, "releaseReferences", -function (svl) { -}, "~O"); -Clazz.overrideMethod (c$, "isListeningFor", -function (seq) { -return true; -}, "jalview.datamodel.SequenceI"); -}); +Clazz.declarePackage ("jalview.javascript"); +Clazz.load (["jalview.javascript.JSFunctionExec", "$.JsCallBack", "jalview.structure.StructureListener"], "jalview.javascript.MouseOverStructureListener", ["jalview.api.AlignmentViewPanel", "jalview.appletgui.FeatureRenderer", "jalview.ext.jmol.JmolCommands", "jalview.structure.StructureSelectionManager", "java.net.URL", "java.util.ArrayList"], function () { +c$ = Clazz.decorateAsClass (function () { +this._listenerfn = null; +this.modelSet = null; +Clazz.instantialize (this, arguments); +}, jalview.javascript, "MouseOverStructureListener", jalview.javascript.JSFunctionExec, [jalview.javascript.JsCallBack, jalview.structure.StructureListener]); +Clazz.makeConstructor (c$, +function (jalviewLite, listener, modelList) { +Clazz.superConstructor (this, jalview.javascript.MouseOverStructureListener, [jalviewLite]); +this._listenerfn = listener; +this.modelSet = modelList; +if (this.modelSet != null) { +for (var i = 0; i < this.modelSet.length; i++) { +try { +if ( new java.net.URL (this.modelSet[i]).openConnection () != null) { +continue; +}} catch (x) { +if (Clazz.exceptionOf (x, Exception)) { +} else { +throw x; +} +} +;try { +var db = this.jvlite.getDocumentBase ().toString (); +db = db.substring (0, db.lastIndexOf ("/")); +if ( new java.net.URL (db + "/" + this.modelSet[i]).openConnection () != null) { +this.modelSet[i] = db + "/" + this.modelSet[i]; +continue; +}} catch (x) { +if (Clazz.exceptionOf (x, Exception)) { +} else { +throw x; +} +} +;try { +if ( new java.net.URL (this.jvlite.getCodeBase () + this.modelSet[i]).openConnection () != null) { +this.modelSet[i] = this.jvlite.getCodeBase () + this.modelSet[i]; +continue; +}} catch (x) { +if (Clazz.exceptionOf (x, Exception)) { +} else { +throw x; +} +} +;} +}}, "jalview.bin.JalviewLite,~S,~A"); +Clazz.overrideMethod (c$, "getPdbFile", +function () { +return this.modelSet; +}); +Clazz.defineMethod (c$, "mouseOverStructure", +function (atomIndex, strInfo) { +}, "~N,~S"); +Clazz.overrideMethod (c$, "highlightAtoms", +function (atoms) { +for (var atom, $atom = atoms.iterator (); $atom.hasNext () && ((atom = $atom.next ()) || true);) { +try { +this.executeJavascriptFunction (this._listenerfn, Clazz.newArray (-1, ["mouseover", "" + atom.getPdbFile (), "" + atom.getChain (), "" + (atom.getPdbResNum ()), "" + atom.getAtomIndex ()])); +} catch (ex) { +if (Clazz.exceptionOf (ex, Exception)) { +System.err.println ("Couldn't execute callback with " + this._listenerfn + " for atomSpec: " + atom); +ex.printStackTrace (); +} else { +throw ex; +} +} +} +}, "java.util.List"); +Clazz.overrideMethod (c$, "updateColours", +function (srce) { +var source = srce; +var ssm = jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.jvlite); +if (Clazz.instanceOf (source, jalview.api.AlignmentViewPanel)) { +var sequence = new Array (this.modelSet.length); +for (var m = 0; m < this.modelSet.length; m++) { +var sm = ssm.getMapping (this.modelSet[m]); +if (sm != null && sm.length > 0) { +sequence[m] = new Array (sm.length); +for (var i = 0; i < sm.length; i++) { +sequence[m][i] = sm[i].getSequence (); +} +} else { +sequence[m] = new Array (0); +}} +var sr = (source).getSequenceRenderer (); +var fr = (source).av.isShowSequenceFeatures () ? new jalview.appletgui.FeatureRenderer ((source).av) : null; +if (fr != null) { +(fr).transferSettings ((source).getFeatureRenderer ()); +};var ccomands = new java.util.ArrayList (); +var pdbfn = new java.util.ArrayList (); +var colcommands = jalview.ext.jmol.JmolCommands.getColourBySequenceCommand (ssm, this.modelSet, sequence, sr, fr, (source).getAlignment ()); +if (colcommands == null) { +return; +}var sz = 0; +for (var ccset, $ccset = 0, $$ccset = colcommands; $ccset < $$ccset.length && ((ccset = $$ccset[$ccset]) || true); $ccset++) { +sz += ccset.commands.length; +ccomands.add (ccset.commands); +pdbfn.add (ccset.mapping); +} +var mclass; +var mhandle; +var ccomandset = new Array (sz); +sz = 0; +for (var ccset, $ccset = ccomands.iterator (); $ccset.hasNext () && ((ccset = $ccset.next ()) || true);) { +System.arraycopy (ccset, 0, ccomandset, sz, ccset.length); +sz += ccset.length; +} +if (this.jvlite.isJsMessageSetChanged (mclass = "colourstruct", mhandle = (source).av.getViewId (), ccomandset)) { +this.jvlite.setJsMessageSet (mclass, mhandle, ccomandset); +var st = Clazz.newArray (-1, ["colourstruct", "" + (source).av.getViewId (), "" + ccomandset.length, this.jvlite.arrayToSeparatorList (pdbfn.toArray ( new Array (pdbfn.size ())))]); +try { +this.executeJavascriptFunction (true, this._listenerfn, st); +} catch (ex) { +if (Clazz.exceptionOf (ex, Exception)) { +System.err.println ("Couldn't execute callback with " + this._listenerfn + " using args { " + st[0] + ", " + st[1] + ", " + st[2] + "," + st[3] + "}"); +ex.printStackTrace (); +} else { +throw ex; +} +} +}}}, "~O"); +Clazz.overrideMethod (c$, "getAlignFrame", +function () { +return null; +}); +Clazz.overrideMethod (c$, "getListenerFunction", +function () { +return this._listenerfn; +}); +Clazz.defineMethod (c$, "finalise", +function () { +this.jvlite = null; +Clazz.superCall (this, jalview.javascript.MouseOverStructureListener, "finalize", []); +}); +Clazz.overrideMethod (c$, "releaseReferences", +function (svl) { +}, "~O"); +Clazz.overrideMethod (c$, "isListeningFor", +function (seq) { +return true; +}, "jalview.datamodel.SequenceI"); +});