X-Git-Url: http://source.jalview.org/gitweb/?p=jalviewjs.git;a=blobdiff_plain;f=site%2Fj2s%2Fjalview%2Fio%2FSequenceAnnotationReport.js;h=889211be7b883434adc3e6a66ca380a800802014;hp=15fa2ddc38b9a5672179069ede69dea11fc29cf3;hb=b9b7a352eee79b7764c3b09c9d19663075061d8c;hpb=7301a2415adab88038b291fc54caeeb3a5a47a44 diff --git a/site/j2s/jalview/io/SequenceAnnotationReport.js b/site/j2s/jalview/io/SequenceAnnotationReport.js index 15fa2dd..889211b 100644 --- a/site/j2s/jalview/io/SequenceAnnotationReport.js +++ b/site/j2s/jalview/io/SequenceAnnotationReport.js @@ -1,181 +1,181 @@ -Clazz.declarePackage ("jalview.io"); -Clazz.load (null, "jalview.io.SequenceAnnotationReport", ["jalview.util.DBRefUtils", "$.UrlLink", "java.lang.Float", "java.util.ArrayList"], function () { -c$ = Clazz.decorateAsClass (function () { -this.linkImageURL = null; -Clazz.instantialize (this, arguments); -}, jalview.io, "SequenceAnnotationReport"); -Clazz.makeConstructor (c$, -function (linkImageURL) { -this.linkImageURL = linkImageURL; -}, "~S"); -Clazz.defineMethod (c$, "appendFeatures", -function (tooltipText2, rpos, features) { -this.appendFeatures (tooltipText2, rpos, features, null); -}, "StringBuffer,~N,java.util.List"); -Clazz.defineMethod (c$, "appendFeatures", -function (tooltipText2, rpos, features, minmax) { -var tmpString; -if (features != null) { -for (var feature, $feature = features.iterator (); $feature.hasNext () && ((feature = $feature.next ()) || true);) { -if (feature.getType ().equals ("disulfide bond")) { -if (feature.getBegin () == rpos || feature.getEnd () == rpos) { -if (tooltipText2.length () > 6) { -tooltipText2.append ("
"); -}tooltipText2.append ("disulfide bond " + feature.getBegin () + ":" + feature.getEnd ()); -}} else { -if (tooltipText2.length () > 6) { -tooltipText2.append ("
"); -}var linkOnly = feature.getValue ("linkonly") != null; -if (!linkOnly) { -tooltipText2.append (feature.getType () + " "); -if (rpos != 0) { -tooltipText2.append ("" + feature.begin); -}if (feature.begin != feature.end) { -tooltipText2.append (" " + feature.end); -}if (feature.getDescription () != null && !feature.description.equals (feature.getType ())) { -tmpString = feature.getDescription (); -var tmp2up = tmpString.toUpperCase (); -var startTag = tmp2up.indexOf (""); -if (startTag > -1) { -tmpString = tmpString.substring (startTag + 6); -tmp2up = tmp2up.substring (startTag + 6); -}var endTag = tmp2up.indexOf (""); -if (endTag > -1) { -tmpString = tmpString.substring (0, endTag); -tmp2up = tmp2up.substring (0, endTag); -}endTag = tmp2up.indexOf (""); -if (endTag > -1) { -tmpString = tmpString.substring (0, endTag); -}if (startTag > -1) { -tooltipText2.append ("; " + tmpString); -} else { -if (tmpString.indexOf ("<") > -1 || tmpString.indexOf (">") > -1) { -tmpString = tmpString.replaceAll ("<", "<"); -tmpString = tmpString.replaceAll (">", ">"); -tooltipText2.append ("; "); -tooltipText2.append (tmpString); -} else { -tooltipText2.append ("; " + tmpString); -}}}if (!Float.isNaN (feature.getScore ())) { -var rng = (minmax == null) ? null : (minmax.get (feature.getType ())); -if (rng != null && rng[0] != null && rng[0][0] != rng[0][1]) { -tooltipText2.append (" Score=" + feature.getScore ()); -}}if (feature.getValue ("status") != null) { -var status = feature.getValue ("status").toString (); -if (status.length > 0) { -tooltipText2.append ("; (" + feature.getValue ("status") + ")"); -}}}}if (feature.links != null) { -if (this.linkImageURL != null) { -tooltipText2.append (" "); -} else { -for (var urlstring, $urlstring = feature.links.iterator (); $urlstring.hasNext () && ((urlstring = $urlstring.next ()) || true);) { -try { -for (var urllink, $urllink = 0, $$urllink = this.createLinksFrom (null, urlstring); $urllink < $$urllink.length && ((urllink = $$urllink[$urllink]) || true); $urllink++) { -tooltipText2.append ("
" + (urllink[0].toLowerCase ().equals (urllink[1].toLowerCase ()) ? urllink[0] : (urllink[0] + ":" + urllink[1])) + "
"); -} -} catch (x) { -if (Clazz.exceptionOf (x, Exception)) { -System.err.println ("problem when creating links from " + urlstring); -x.printStackTrace (); -} else { -throw x; -} -} -} -}}} -}}, "StringBuffer,~N,java.util.List,java.util.Hashtable"); -Clazz.defineMethod (c$, "createLinksFrom", -function (seq, link) { -var urlSets = new java.util.ArrayList (); -var uniques = new java.util.ArrayList (); -var urlLink = new jalview.util.UrlLink (link); -if (!urlLink.isValid ()) { -System.err.println (urlLink.getInvalidMessage ()); -return null; -}var target = urlLink.getTarget (); -var label = urlLink.getLabel (); -if (seq != null && urlLink.isDynamic ()) { -var dbr = jalview.util.DBRefUtils.selectRefs (seq.getDBRef (), Clazz.newArray (-1, [target])); -var id = seq.getName (); -var descr = seq.getDescription (); -if (descr != null && descr.length < 1) { -descr = null; -}if (dbr != null) { -for (var r = 0; r < dbr.length; r++) { -if (id != null && dbr[r].getAccessionId ().equals (id)) { -id = null; -}var urls = urlLink.makeUrls (dbr[r].getAccessionId (), true); -if (urls != null) { -for (var u = 0; u < urls.length; u += 2) { -var unq = urls[u] + "|" + urls[u + 1]; -if (!uniques.contains (unq)) { -urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); -uniques.add (unq); -}} -}} -}if (id != null) { -var urls = urlLink.makeUrls (id, true); -if (urls != null) { -for (var u = 0; u < urls.length; u += 2) { -var unq = urls[u] + "|" + urls[u + 1]; -if (!uniques.contains (unq)) { -urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); -uniques.add (unq); -}} -}}if (descr != null && urlLink.getRegexReplace () != null) { -var urls = urlLink.makeUrls (descr, true); -if (urls != null) { -for (var u = 0; u < urls.length; u += 2) { -var unq = urls[u] + "|" + urls[u + 1]; -if (!uniques.contains (unq)) { -urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); -uniques.add (unq); -}} -}}} else { -var unq = label + "|" + urlLink.getUrl_prefix (); -if (!uniques.contains (unq)) { -uniques.add (unq); -urlSets.add ( Clazz.newArray (-1, [target, label, null, urlLink.getUrl_prefix ()])); -}}return urlSets.toArray ( Clazz.newArray (-1, [])); -}, "jalview.datamodel.SequenceI,~S"); -Clazz.defineMethod (c$, "createSequenceAnnotationReport", -function (tip, sequence, showDbRefs, showNpFeats, minmax) { -this.createSequenceAnnotationReport (tip, sequence, showDbRefs, showNpFeats, true, minmax); -}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,java.util.Hashtable"); -Clazz.defineMethod (c$, "createSequenceAnnotationReport", -function (tip, sequence, showDbRefs, showNpFeats, tableWrap, minmax) { -var tmp; -tip.append (""); -var maxWidth = 0; -if (sequence.getDescription () != null) { -tmp = sequence.getDescription (); -tip.append ("
" + tmp); -maxWidth = Math.max (maxWidth, tmp.length); -}var ds = sequence; -while (ds.getDatasetSequence () != null) { -ds = ds.getDatasetSequence (); -} -var dbrefs = ds.getDBRef (); -if (showDbRefs && dbrefs != null) { -for (var i = 0; i < dbrefs.length; i++) { -tip.append ("
"); -tmp = dbrefs[i].getSource () + " " + dbrefs[i].getAccessionId (); -tip.append (tmp); -maxWidth = Math.max (maxWidth, tmp.length); -} -}var features = sequence.getSequenceFeatures (); -if (showNpFeats && features != null) { -for (var i = 0; i < features.length; i++) { -if (features[i].begin == 0 && features[i].end == 0) { -var sz = -tip.length (); -var tfeat = new java.util.ArrayList (); -tfeat.add (features[i]); -this.appendFeatures (tip, 0, tfeat, minmax); -sz += tip.length (); -maxWidth = Math.max (maxWidth, sz); -}} -}if (tableWrap && maxWidth > 60) { -tip.insert (0, "
"); -tip.append ("
"); -}}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,~B,java.util.Hashtable"); -}); +Clazz.declarePackage ("jalview.io"); +Clazz.load (null, "jalview.io.SequenceAnnotationReport", ["jalview.util.DBRefUtils", "$.UrlLink", "java.lang.Float", "java.util.ArrayList"], function () { +c$ = Clazz.decorateAsClass (function () { +this.linkImageURL = null; +Clazz.instantialize (this, arguments); +}, jalview.io, "SequenceAnnotationReport"); +Clazz.makeConstructor (c$, +function (linkImageURL) { +this.linkImageURL = linkImageURL; +}, "~S"); +Clazz.defineMethod (c$, "appendFeatures", +function (tooltipText2, rpos, features) { +this.appendFeatures (tooltipText2, rpos, features, null); +}, "StringBuffer,~N,java.util.List"); +Clazz.defineMethod (c$, "appendFeatures", +function (tooltipText2, rpos, features, minmax) { +var tmpString; +if (features != null) { +for (var feature, $feature = features.iterator (); $feature.hasNext () && ((feature = $feature.next ()) || true);) { +if (feature.getType ().equals ("disulfide bond")) { +if (feature.getBegin () == rpos || feature.getEnd () == rpos) { +if (tooltipText2.length () > 6) { +tooltipText2.append ("
"); +}tooltipText2.append ("disulfide bond " + feature.getBegin () + ":" + feature.getEnd ()); +}} else { +if (tooltipText2.length () > 6) { +tooltipText2.append ("
"); +}var linkOnly = feature.getValue ("linkonly") != null; +if (!linkOnly) { +tooltipText2.append (feature.getType () + " "); +if (rpos != 0) { +tooltipText2.append ("" + feature.begin); +}if (feature.begin != feature.end) { +tooltipText2.append (" " + feature.end); +}if (feature.getDescription () != null && !feature.description.equals (feature.getType ())) { +tmpString = feature.getDescription (); +var tmp2up = tmpString.toUpperCase (); +var startTag = tmp2up.indexOf (""); +if (startTag > -1) { +tmpString = tmpString.substring (startTag + 6); +tmp2up = tmp2up.substring (startTag + 6); +}var endTag = tmp2up.indexOf (""); +if (endTag > -1) { +tmpString = tmpString.substring (0, endTag); +tmp2up = tmp2up.substring (0, endTag); +}endTag = tmp2up.indexOf (""); +if (endTag > -1) { +tmpString = tmpString.substring (0, endTag); +}if (startTag > -1) { +tooltipText2.append ("; " + tmpString); +} else { +if (tmpString.indexOf ("<") > -1 || tmpString.indexOf (">") > -1) { +tmpString = tmpString.replaceAll ("<", "<"); +tmpString = tmpString.replaceAll (">", ">"); +tooltipText2.append ("; "); +tooltipText2.append (tmpString); +} else { +tooltipText2.append ("; " + tmpString); +}}}if (!Float.isNaN (feature.getScore ())) { +var rng = (minmax == null) ? null : (minmax.get (feature.getType ())); +if (rng != null && rng[0] != null && rng[0][0] != rng[0][1]) { +tooltipText2.append (" Score=" + feature.getScore ()); +}}if (feature.getValue ("status") != null) { +var status = feature.getValue ("status").toString (); +if (status.length > 0) { +tooltipText2.append ("; (" + feature.getValue ("status") + ")"); +}}}}if (feature.links != null) { +if (this.linkImageURL != null) { +tooltipText2.append (" "); +} else { +for (var urlstring, $urlstring = feature.links.iterator (); $urlstring.hasNext () && ((urlstring = $urlstring.next ()) || true);) { +try { +for (var urllink, $urllink = 0, $$urllink = this.createLinksFrom (null, urlstring); $urllink < $$urllink.length && ((urllink = $$urllink[$urllink]) || true); $urllink++) { +tooltipText2.append ("
" + (urllink[0].toLowerCase ().equals (urllink[1].toLowerCase ()) ? urllink[0] : (urllink[0] + ":" + urllink[1])) + "
"); +} +} catch (x) { +if (Clazz.exceptionOf (x, Exception)) { +System.err.println ("problem when creating links from " + urlstring); +x.printStackTrace (); +} else { +throw x; +} +} +} +}}} +}}, "StringBuffer,~N,java.util.List,java.util.Hashtable"); +Clazz.defineMethod (c$, "createLinksFrom", +function (seq, link) { +var urlSets = new java.util.ArrayList (); +var uniques = new java.util.ArrayList (); +var urlLink = new jalview.util.UrlLink (link); +if (!urlLink.isValid ()) { +System.err.println (urlLink.getInvalidMessage ()); +return null; +}var target = urlLink.getTarget (); +var label = urlLink.getLabel (); +if (seq != null && urlLink.isDynamic ()) { +var dbr = jalview.util.DBRefUtils.selectRefs (seq.getDBRef (), Clazz.newArray (-1, [target])); +var id = seq.getName (); +var descr = seq.getDescription (); +if (descr != null && descr.length < 1) { +descr = null; +}if (dbr != null) { +for (var r = 0; r < dbr.length; r++) { +if (id != null && dbr[r].getAccessionId ().equals (id)) { +id = null; +}var urls = urlLink.makeUrls (dbr[r].getAccessionId (), true); +if (urls != null) { +for (var u = 0; u < urls.length; u += 2) { +var unq = urls[u] + "|" + urls[u + 1]; +if (!uniques.contains (unq)) { +urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); +uniques.add (unq); +}} +}} +}if (id != null) { +var urls = urlLink.makeUrls (id, true); +if (urls != null) { +for (var u = 0; u < urls.length; u += 2) { +var unq = urls[u] + "|" + urls[u + 1]; +if (!uniques.contains (unq)) { +urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); +uniques.add (unq); +}} +}}if (descr != null && urlLink.getRegexReplace () != null) { +var urls = urlLink.makeUrls (descr, true); +if (urls != null) { +for (var u = 0; u < urls.length; u += 2) { +var unq = urls[u] + "|" + urls[u + 1]; +if (!uniques.contains (unq)) { +urlSets.add ( Clazz.newArray (-1, [target, label, urls[u], urls[u + 1]])); +uniques.add (unq); +}} +}}} else { +var unq = label + "|" + urlLink.getUrl_prefix (); +if (!uniques.contains (unq)) { +uniques.add (unq); +urlSets.add ( Clazz.newArray (-1, [target, label, null, urlLink.getUrl_prefix ()])); +}}return urlSets.toArray ( Clazz.newArray (-1, [])); +}, "jalview.datamodel.SequenceI,~S"); +Clazz.defineMethod (c$, "createSequenceAnnotationReport", +function (tip, sequence, showDbRefs, showNpFeats, minmax) { +this.createSequenceAnnotationReport (tip, sequence, showDbRefs, showNpFeats, true, minmax); +}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,java.util.Hashtable"); +Clazz.defineMethod (c$, "createSequenceAnnotationReport", +function (tip, sequence, showDbRefs, showNpFeats, tableWrap, minmax) { +var tmp; +tip.append (""); +var maxWidth = 0; +if (sequence.getDescription () != null) { +tmp = sequence.getDescription (); +tip.append ("
" + tmp); +maxWidth = Math.max (maxWidth, tmp.length); +}var ds = sequence; +while (ds.getDatasetSequence () != null) { +ds = ds.getDatasetSequence (); +} +var dbrefs = ds.getDBRef (); +if (showDbRefs && dbrefs != null) { +for (var i = 0; i < dbrefs.length; i++) { +tip.append ("
"); +tmp = dbrefs[i].getSource () + " " + dbrefs[i].getAccessionId (); +tip.append (tmp); +maxWidth = Math.max (maxWidth, tmp.length); +} +}var features = sequence.getSequenceFeatures (); +if (showNpFeats && features != null) { +for (var i = 0; i < features.length; i++) { +if (features[i].begin == 0 && features[i].end == 0) { +var sz = -tip.length (); +var tfeat = new java.util.ArrayList (); +tfeat.add (features[i]); +this.appendFeatures (tip, 0, tfeat, minmax); +sz += tip.length (); +maxWidth = Math.max (maxWidth, sz); +}} +}if (tableWrap && maxWidth > 60) { +tip.insert (0, "
"); +tip.append ("
"); +}}, "StringBuffer,jalview.datamodel.SequenceI,~B,~B,~B,java.util.Hashtable"); +});