1 Clazz.declarePackage ("jalview.bin");
\r
2 Clazz.load (["jalview.api.StructureSelectionManagerProvider", "jalview.javascript.JalviewLiteJsApi", "java.lang.Thread", "javax.swing.JApplet", "jalview.util.MessageManager", "java.util.Hashtable", "$.Vector", "javax.swing.JButton"], "jalview.bin.JalviewLite", ["jalview.analysis.SequenceIdMatcher", "jalview.appletgui.AlignFrame", "$.EmbmenuFrame", "$.FeatureSettings", "$.SplitFrame", "jalview.datamodel.Alignment", "$.AlignmentOrder", "$.ColumnSelection", "$.PDBEntry", "$.SequenceGroup", "jalview.io.AnnotationFile", "$.AppletFormatAdapter", "$.FileParse", "$.IdentifyFile", "$.JnetAnnotationMaker", "$.NewickFile", "jalview.javascript.JSFunctionExec", "$.JsSelectionSender", "$.MouseOverListener", "$.MouseOverStructureListener", "jalview.jsdev.GenericFileAdapter", "jalview.schemes.ColourSchemeProperty", "$.UserColourScheme", "jalview.structure.SelectionListener", "$.StructureSelectionManager", "java.awt.Color", "$.EventQueue", "$.Font", "java.awt.event.ActionListener", "$.WindowAdapter", "java.io.BufferedReader", "$.InputStreamReader", "java.lang.Error", "$.StringBuffer", "java.net.URL", "java.util.StringTokenizer", "netscape.javascript.JSObject"], function () {
\r
3 c$ = Clazz.decorateAsClass (function () {
\r
4 this.embedded = false;
\r
5 this.enableSplitFrame = false;
\r
6 this.showButton = true;
\r
7 this.checkForJmol = true;
\r
8 this.jalviewServletURL = null;
\r
9 this.startupFile = "No file";
\r
10 this.helpUrl = null;
\r
11 this.externalstructureviewer = null;
\r
14 this.labelColour = null;
\r
15 this.initjscallback = null;
\r
16 this.pdbFile = null;
\r
17 this.sequence = null;
\r
18 this.jnetFile = null;
\r
19 this.annotations = null;
\r
20 this.hideFeatureGroups = null;
\r
21 this.showFeatureGroups = null;
\r
22 this.features = null;
\r
23 this.showFeatureSettings = null;
\r
24 this.scoreFile = null;
\r
25 this.treeFile = null;
\r
26 this.windowWidth = null;
\r
27 this.windowHeight = null;
\r
28 this.defaultColour = null;
\r
31 this.centrecolumnlabels = null;
\r
32 this.userDefinedColour = null;
\r
33 this.widthScale = null;
\r
34 this.heightScale = null;
\r
35 this.upperCase = null;
\r
37 this.javascriptListeners = null;
\r
38 this.jsFunctionExec = null;
\r
39 this.fileFound = true;
\r
40 this.launcher = null;
\r
41 this.currentAlignFrame = null;
\r
42 this.initialAlignFrame = null;
\r
43 this.checkedForJmol = false;
\r
44 this.jmolAvailable = false;
\r
45 this.alignPdbStructures = false;
\r
46 this.useXtrnalSviewer = false;
\r
47 this.haveShownLoadMessage = false;
\r
48 if (!Clazz.isClassDefined ("jalview.bin.JalviewLite.LoadJmolThread")) {
\r
49 jalview.bin.JalviewLite.$JalviewLite$LoadJmolThread$ ();
\r
51 if (!Clazz.isClassDefined ("jalview.bin.JalviewLite.LoadingThread")) {
\r
52 jalview.bin.JalviewLite.$JalviewLite$LoadingThread$ ();
\r
54 this.separator = "\u00ac";
\r
55 this.jsfallbackEnabled = false;
\r
56 this.jshashes = null;
\r
57 this.jsmessages = null;
\r
58 this.jsExecQueue = null;
\r
59 Clazz.instantialize (this, arguments);
\r
60 }, jalview.bin, "JalviewLite", javax.swing.JApplet, [jalview.api.StructureSelectionManagerProvider, jalview.javascript.JalviewLiteJsApi]);
\r
61 Clazz.prepareFields (c$, function () {
\r
62 this.javascriptListeners = new java.util.Vector ();
\r
63 this.launcher = new javax.swing.JButton (jalview.util.MessageManager.getString ("label.start_jalview"));
\r
64 this.jshashes = new java.util.Hashtable ();
\r
65 this.jsmessages = new java.util.Hashtable ();
\r
66 this.jsExecQueue = new java.util.Vector ();
\r
68 Clazz.defineMethod (c$, "setParams",
\r
69 ($fz = function () {
\r
70 jalview.bin.JalviewLite.debug = "true".equalsIgnoreCase (this.getParameter ("debug"));
\r
71 this.enableSplitFrame = "true".equalsIgnoreCase (this.getParameter ("enableSplitFrame"));
\r
72 this.embedded = "true".equalsIgnoreCase (this.getParameter ("embedded"));
\r
73 this.showButton = !"false".equalsIgnoreCase (this.getParameter ("showbutton"));
\r
74 this.jalviewServletURL = this.getParameter ("APPLICATION_URL");
\r
75 this.startupFile = this.getParameter ("file");
\r
76 this.helpUrl = this.getParameter ("jalviewhelpurl");
\r
77 this.externalstructureviewer = this.getParameter ("externalstructureviewer");
\r
78 this.checkForJmol = !"true".equals (this.getParameter ("nojmol"));
\r
79 this.sep = this.getParameter ("separator");
\r
80 this.rgb = this.getParameter ("RGB");
\r
81 this.labelColour = this.getParameter ("label");
\r
82 this.initjscallback = this.getParameter ("oninit");
\r
83 this.pdbFile = this.getParameter ("PDBFILE");
\r
84 this.sequence = this.getParameter ("PDBSEQ");
\r
85 this.jnetFile = this.getParameter ("jnetfile");
\r
86 this.annotations = this.getParameter ("annotations");
\r
87 this.hideFeatureGroups = this.getParameter ("hidefeaturegroups");
\r
88 this.showFeatureGroups = this.getParameter ("showfeaturegroups");
\r
89 this.features = this.getParameter ("features");
\r
90 this.showFeatureSettings = this.getParameter ("showFeatureSettings");
\r
91 this.scoreFile = this.getParameter ("scoreFile");
\r
92 this.treeFile = this.getParameter ("tree");
\r
93 if (this.treeFile == null) this.treeFile = this.getParameter ("treeFile");
\r
94 this.windowWidth = this.getParameter ("windowWidth");
\r
95 this.windowHeight = this.getParameter ("windowHeight");
\r
96 this.defaultColour = this.getParameter ("defaultColour");
\r
97 this.sortBy = this.getParameter ("sortBy");
\r
98 this.wrap = this.getParameter ("wrap");
\r
99 this.centrecolumnlabels = this.getParameter ("centrecolumnlabels");
\r
100 this.userDefinedColour = this.getParameter ("userDefinedColour");
\r
101 this.widthScale = this.getParameter ("widthScale");
\r
102 this.heightScale = this.getParameter ("heightScale");
\r
103 this.upperCase = this.getParameter ("upperCase");
\r
104 this.file2 = this.getParameter ("file2");
\r
105 }, $fz.isPrivate = true, $fz));
\r
106 Clazz.defineMethod (c$, "getDefaultParameter",
\r
107 function (name, def) {
\r
109 if ((stn = this.getParameter (name)) == null) {
\r
111 }if (stn.toLowerCase ().equals ("true")) {
\r
115 Clazz.defineMethod (c$, "getLinkParams",
\r
119 for (var i = 1; i < 10; i++) {
\r
120 label = this.getParameter ("linkLabel_" + i);
\r
121 url = this.getParameter ("linkURL_" + i);
\r
122 if (label != null && url != null) {
\r
123 links.addElement (label + "|" + url);
\r
125 }, "java.util.Vector");
\r
126 Clazz.defineMethod (c$, "getStructureSelectionManager",
\r
128 return jalview.structure.StructureSelectionManager.getStructureSelectionManager (this);
\r
130 Clazz.defineMethod (c$, "getSelectedSequences",
\r
132 return this.getSelectedSequencesFrom (this.getDefaultTargetFrame ());
\r
134 Clazz.defineMethod (c$, "getSelectedSequences",
\r
136 return this.getSelectedSequencesFrom (this.getDefaultTargetFrame (), sep);
\r
138 Clazz.defineMethod (c$, "getSelectedSequencesFrom",
\r
140 return this.getSelectedSequencesFrom (alf, this.separator);
\r
141 }, "jalview.appletgui.AlignFrame");
\r
142 Clazz.defineMethod (c$, "getSelectedSequencesFrom",
\r
143 function (alf, sep) {
\r
144 var result = new StringBuffer ("");
\r
145 if (sep == null || sep.length == 0) {
\r
146 sep = this.separator;
\r
147 }if (alf.viewport.getSelectionGroup () != null) {
\r
148 var seqs = alf.viewport.getSelectionGroup ().getSequencesInOrder (alf.viewport.getAlignment ());
\r
149 for (var i = 0; i < seqs.length; i++) {
\r
150 result.append (seqs[i].getName ());
\r
151 result.append (sep);
\r
153 }return result.toString ();
\r
154 }, "jalview.appletgui.AlignFrame,~S");
\r
155 Clazz.overrideMethod (c$, "highlight",
\r
156 function (sequenceId, position, alignedPosition) {
\r
157 this.highlightIn (this.getDefaultTargetFrame (), sequenceId, position, alignedPosition);
\r
159 Clazz.overrideMethod (c$, "highlightIn",
\r
160 function (alf, sequenceId, position, alignedPosition) {
\r
161 var matcher = new jalview.analysis.SequenceIdMatcher (alf.viewport.getAlignment ().getSequencesArray ());
\r
162 var sq = matcher.findIdMatch (sequenceId);
\r
166 apos = new Integer (position).intValue ();
\r
169 if (Clazz.exceptionOf (ex, NumberFormatException)) {
\r
177 if (alignedPosition != null && (alignedPosition.trim ().length == 0 || alignedPosition.toLowerCase ().indexOf ("false") > -1)) {
\r
178 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$1") ? 0 : jalview.bin.JalviewLite.$JalviewLite$1$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$1, this, Clazz.cloneFinals ("me", me, "sq", sq, "pos", pos))));
\r
180 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$2") ? 0 : jalview.bin.JalviewLite.$JalviewLite$2$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$2, this, Clazz.cloneFinals ("me", me, "sq", sq, "pos", pos))));
\r
181 }}}, "jalview.appletgui.AlignFrame,~S,~S,~S");
\r
182 Clazz.defineMethod (c$, "select",
\r
183 function (sequenceIds, columns) {
\r
184 this.selectIn (this.getDefaultTargetFrame (), sequenceIds, columns, this.separator);
\r
186 Clazz.defineMethod (c$, "select",
\r
187 function (sequenceIds, columns, sep) {
\r
188 this.selectIn (this.getDefaultTargetFrame (), sequenceIds, columns, sep);
\r
190 Clazz.defineMethod (c$, "selectIn",
\r
191 function (alf, sequenceIds, columns) {
\r
192 this.selectIn (alf, sequenceIds, columns, this.separator);
\r
193 }, "jalview.appletgui.AlignFrame,~S,~S");
\r
194 Clazz.defineMethod (c$, "selectIn",
\r
195 function (alf, sequenceIds, columns, sep) {
\r
196 if (sep == null || sep.length == 0) {
\r
197 sep = this.separator;
\r
199 if (jalview.bin.JalviewLite.debug) {
\r
200 System.err.println ("Selecting region using separator string '" + this.separator + "'");
\r
201 }}var ids = this.separatorListToArray (sequenceIds, sep);
\r
202 var cols = this.separatorListToArray (columns, sep);
\r
203 var sel = new jalview.datamodel.SequenceGroup ();
\r
204 var csel = new jalview.datamodel.ColumnSelection ();
\r
205 var al = alf.viewport.getAlignment ();
\r
206 var matcher = new jalview.analysis.SequenceIdMatcher (alf.viewport.getAlignment ().getSequencesArray ());
\r
208 var end = al.getWidth ();
\r
209 var alw = al.getWidth ();
\r
210 var seqsfound = true;
\r
211 if (ids != null && ids.length > 0) {
\r
213 for (var i = 0; i < ids.length; i++) {
\r
214 if (ids[i].trim ().length == 0) {
\r
216 }var sq = matcher.findIdMatch (ids[i]);
\r
219 sel.addSequence (sq, false);
\r
221 }var inseqpos = false;
\r
222 if (cols != null && cols.length > 0) {
\r
224 for (var i = 0; i < cols.length; i++) {
\r
225 var cl = cols[i].trim ();
\r
226 if (cl.length == 0) {
\r
229 if ((p = cl.indexOf ("-")) > -1) {
\r
233 from = new Integer (cl.substring (0, p)).intValue ();
\r
236 if (Clazz.exceptionOf (ex, NumberFormatException)) {
\r
237 System.err.println ("ERROR: Couldn't parse first integer in range element column selection string '" + cl + "' - format is 'from-to'");
\r
244 to = new Integer (cl.substring (p + 1)).intValue ();
\r
247 if (Clazz.exceptionOf (ex, NumberFormatException)) {
\r
248 System.err.println ("ERROR: Couldn't parse second integer in range element column selection string '" + cl + "' - format is 'from-to'");
\r
254 if (from >= 0 && to >= 0) {
\r
264 if (start > from) {
\r
268 }}for (var r = from; r <= to; r++) {
\r
269 if (r >= 0 && r < alw) {
\r
270 csel.addElement (r);
\r
272 if (jalview.bin.JalviewLite.debug) {
\r
273 System.err.println ("Range '" + cl + "' deparsed as [" + from + "," + to + "]");
\r
275 System.err.println ("ERROR: Invalid Range '" + cl + "' deparsed as [" + from + "," + to + "]");
\r
279 r = new Integer (cl).intValue ();
\r
282 if (Clazz.exceptionOf (ex, NumberFormatException)) {
\r
283 if (cl.toLowerCase ().equals ("sequence")) {
\r
286 System.err.println ("ERROR: Couldn't parse integer from point selection element of column selection string '" + cl + "'");
\r
292 if (r >= 0 && r <= alw) {
\r
302 }}csel.addElement (r);
\r
303 if (jalview.bin.JalviewLite.debug) {
\r
304 System.err.println ("Point selection '" + cl + "' deparsed as [" + r + "]");
\r
306 System.err.println ("ERROR: Invalid Point selection '" + cl + "' deparsed as [" + r + "]");
\r
309 if (inseqpos && sel.getSize () > 0) {
\r
310 var rs = sel.getSequenceAt (0);
\r
311 start = rs.findIndex (start);
\r
312 end = rs.findIndex (end);
\r
313 if (csel != null) {
\r
314 var cs = csel.getSelected ();
\r
316 for (var selectedCol, $selectedCol = cs.iterator (); $selectedCol.hasNext () && ((selectedCol = $selectedCol.next ()) || true);) {
\r
317 csel.addElement (rs.findIndex ((selectedCol).intValue ()));
\r
319 }}sel.setStartRes (start);
\r
320 sel.setEndRes (end);
\r
321 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$3") ? 0 : jalview.bin.JalviewLite.$JalviewLite$3$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$3, this, Clazz.cloneFinals ("alf", alf, "sel", sel, "csel", csel))));
\r
322 }}, "jalview.appletgui.AlignFrame,~S,~S,~S");
\r
323 Clazz.overrideMethod (c$, "getSelectedSequencesAsAlignment",
\r
324 function (format, suffix) {
\r
325 return this.getSelectedSequencesAsAlignmentFrom (this.getDefaultTargetFrame (), format, suffix);
\r
327 Clazz.overrideMethod (c$, "getSelectedSequencesAsAlignmentFrom",
\r
328 function (alf, format, suffix) {
\r
330 var seqlimits = suffix.equalsIgnoreCase ("true");
\r
331 if (alf.viewport.getSelectionGroup () != null) {
\r
332 var reply = new jalview.io.AppletFormatAdapter ().formatSequences (format, new jalview.datamodel.Alignment (alf.viewport.getSelectionAsNewSequence ()), seqlimits);
\r
335 if (Clazz.exceptionOf (ex, Exception)) {
\r
336 ex.printStackTrace ();
\r
337 return "Error retrieving alignment in " + format + " format. ";
\r
343 }, "jalview.appletgui.AlignFrame,~S,~S");
\r
344 Clazz.overrideMethod (c$, "getAlignmentOrder",
\r
346 return this.getAlignmentOrderFrom (this.getDefaultTargetFrame ());
\r
348 Clazz.defineMethod (c$, "getAlignmentOrderFrom",
\r
350 return this.getAlignmentOrderFrom (alf, this.separator);
\r
351 }, "jalview.appletgui.AlignFrame");
\r
352 Clazz.defineMethod (c$, "getAlignmentOrderFrom",
\r
353 function (alf, sep) {
\r
354 var alorder = alf.getAlignViewport ().getAlignment ();
\r
355 var order = new Array (alorder.getHeight ());
\r
356 for (var i = 0; i < order.length; i++) {
\r
357 order[i] = alorder.getSequenceAt (i).getName ();
\r
359 return this.arrayToSeparatorList (order);
\r
360 }, "jalview.appletgui.AlignFrame,~S");
\r
361 Clazz.defineMethod (c$, "orderBy",
\r
362 function (order, undoName) {
\r
363 return this.orderBy (order, undoName, this.separator);
\r
365 Clazz.defineMethod (c$, "orderBy",
\r
366 function (order, undoName, sep) {
\r
367 return this.orderAlignmentBy (this.getDefaultTargetFrame (), order, undoName, sep);
\r
369 Clazz.overrideMethod (c$, "orderAlignmentBy",
\r
370 function (alf, order, undoName, sep) {
\r
371 var ids = this.separatorListToArray (order, sep);
\r
373 if (ids != null && ids.length > 0) {
\r
374 var matcher = new jalview.analysis.SequenceIdMatcher (alf.viewport.getAlignment ().getSequencesArray ());
\r
376 sqs = new Array (ids.length);
\r
377 for (var i = 0; i < ids.length; i++) {
\r
378 if (ids[i].trim ().length == 0) {
\r
380 }var sq = matcher.findIdMatch (ids[i]);
\r
385 var sqq = new Array (s);
\r
386 System.arraycopy (sqs, 0, sqq, 0, s);
\r
390 }}if (sqs == null) {
\r
392 };var aorder = new jalview.datamodel.AlignmentOrder (sqs);
\r
393 if (undoName != null && undoName.trim ().length == 0) {
\r
395 }var _undoName = undoName;
\r
396 return alf.sortBy (aorder, _undoName) ? "true" : "";
\r
397 }, "jalview.appletgui.AlignFrame,~S,~S,~S");
\r
398 Clazz.defineMethod (c$, "getAlignment",
\r
399 function (format) {
\r
400 return this.getAlignmentFrom (this.getDefaultTargetFrame (), format, "true");
\r
402 Clazz.defineMethod (c$, "getAlignmentFrom",
\r
403 function (alf, format) {
\r
404 return this.getAlignmentFrom (alf, format, "true");
\r
405 }, "jalview.appletgui.AlignFrame,~S");
\r
406 Clazz.defineMethod (c$, "getAlignment",
\r
407 function (format, suffix) {
\r
408 return this.getAlignmentFrom (this.getDefaultTargetFrame (), format, suffix);
\r
410 Clazz.defineMethod (c$, "getAlignmentFrom",
\r
411 function (alf, format, suffix) {
\r
413 var seqlimits = suffix.equalsIgnoreCase ("true");
\r
414 var reply = new jalview.io.AppletFormatAdapter ().formatSequences (format, alf.viewport.getAlignment (), seqlimits);
\r
417 if (Clazz.exceptionOf (ex, Exception)) {
\r
418 ex.printStackTrace ();
\r
419 return "Error retrieving alignment in " + format + " format. ";
\r
424 }, "jalview.appletgui.AlignFrame,~S,~S");
\r
425 Clazz.overrideMethod (c$, "loadAnnotation",
\r
426 function (annotation) {
\r
427 this.loadAnnotationFrom (this.getDefaultTargetFrame (), annotation);
\r
429 Clazz.overrideMethod (c$, "loadAnnotationFrom",
\r
430 function (alf, annotation) {
\r
431 if ( new jalview.io.AnnotationFile ().annotateAlignmentView (alf.getAlignViewport (), annotation, jalview.io.AppletFormatAdapter.PASTE)) {
\r
432 alf.alignPanel.fontChanged ();
\r
433 alf.alignPanel.setScrollValues (0, 0);
\r
435 alf.parseFeaturesFile (annotation, jalview.io.AppletFormatAdapter.PASTE);
\r
436 }}, "jalview.appletgui.AlignFrame,~S");
\r
437 Clazz.overrideMethod (c$, "loadFeatures",
\r
438 function (features, autoenabledisplay) {
\r
439 this.loadFeaturesFrom (this.getDefaultTargetFrame (), features, autoenabledisplay);
\r
441 Clazz.overrideMethod (c$, "loadFeaturesFrom",
\r
442 function (alf, features, autoenabledisplay) {
\r
443 return alf.parseFeaturesFile (features, jalview.io.AppletFormatAdapter.PASTE, autoenabledisplay);
\r
444 }, "jalview.appletgui.AlignFrame,~S,~B");
\r
445 Clazz.overrideMethod (c$, "getFeatures",
\r
446 function (format) {
\r
447 return this.getFeaturesFrom (this.getDefaultTargetFrame (), format);
\r
449 Clazz.overrideMethod (c$, "getFeaturesFrom",
\r
450 function (alf, format) {
\r
451 return alf.outputFeatures (false, format);
\r
452 }, "jalview.appletgui.AlignFrame,~S");
\r
453 Clazz.overrideMethod (c$, "getAnnotation",
\r
455 return this.getAnnotationFrom (this.getDefaultTargetFrame ());
\r
457 Clazz.overrideMethod (c$, "getAnnotationFrom",
\r
459 return alf.outputAnnotations (false);
\r
460 }, "jalview.appletgui.AlignFrame");
\r
461 Clazz.defineMethod (c$, "newView",
\r
463 return this.newViewFrom (this.getDefaultTargetFrame ());
\r
465 Clazz.defineMethod (c$, "newView",
\r
467 return this.newViewFrom (this.getDefaultTargetFrame (), name);
\r
469 Clazz.defineMethod (c$, "newViewFrom",
\r
471 return alf.newView (null);
\r
472 }, "jalview.appletgui.AlignFrame");
\r
473 Clazz.defineMethod (c$, "newViewFrom",
\r
474 function (alf, name) {
\r
475 return alf.newView (name);
\r
476 }, "jalview.appletgui.AlignFrame,~S");
\r
477 Clazz.overrideMethod (c$, "loadAlignment",
\r
478 function (text, title) {
\r
480 var format = new jalview.io.IdentifyFile ().Identify (text, jalview.io.AppletFormatAdapter.PASTE);
\r
482 al = new jalview.io.AppletFormatAdapter ().readFile (text, jalview.io.AppletFormatAdapter.PASTE, format);
\r
483 if (al.getHeight () > 0) {
\r
484 return new jalview.appletgui.AlignFrame (al, this, title, false);
\r
486 if (Clazz.exceptionOf (ex, java.io.IOException)) {
\r
487 ex.printStackTrace ();
\r
494 Clazz.defineMethod (c$, "setMouseoverListener",
\r
495 function (listener) {
\r
496 this.setMouseoverListener (this.currentAlignFrame, listener);
\r
498 Clazz.defineMethod (c$, "setMouseoverListener",
\r
499 function (af, listener) {
\r
500 if (listener != null) {
\r
501 listener = listener.trim ();
\r
502 if (listener.length == 0) {
\r
503 System.err.println ("jalview Javascript error: Ignoring empty function for mouseover listener.");
\r
505 }}var mol = new jalview.javascript.MouseOverListener (this, af, listener);
\r
506 this.javascriptListeners.addElement (mol);
\r
507 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).addStructureViewerListener (mol);
\r
508 if (jalview.bin.JalviewLite.debug) {
\r
509 System.err.println ("Added a mouseover listener for " + ((af == null) ? "All frames" : "Just views for " + af.getAlignViewport ().getSequenceSetId ()));
\r
510 System.err.println ("There are now " + this.javascriptListeners.size () + " listeners in total.");
\r
511 }}, "jalview.appletgui.AlignFrame,~S");
\r
512 Clazz.defineMethod (c$, "setSelectionListener",
\r
513 function (listener) {
\r
514 this.setSelectionListener (null, listener);
\r
516 Clazz.defineMethod (c$, "setSelectionListener",
\r
517 function (af, listener) {
\r
518 if (listener != null) {
\r
519 listener = listener.trim ();
\r
520 if (listener.length == 0) {
\r
521 System.err.println ("jalview Javascript error: Ignoring empty function for selection listener.");
\r
523 }}var mol = new jalview.javascript.JsSelectionSender (this, af, listener);
\r
524 this.javascriptListeners.addElement (mol);
\r
525 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).addSelectionListener (mol);
\r
526 if (jalview.bin.JalviewLite.debug) {
\r
527 System.err.println ("Added a selection listener for " + ((af == null) ? "All frames" : "Just views for " + af.getAlignViewport ().getSequenceSetId ()));
\r
528 System.err.println ("There are now " + this.javascriptListeners.size () + " listeners in total.");
\r
529 }}, "jalview.appletgui.AlignFrame,~S");
\r
530 Clazz.overrideMethod (c$, "setStructureListener",
\r
531 function (listener, modelSet) {
\r
532 if (listener != null) {
\r
533 listener = listener.trim ();
\r
534 if (listener.length == 0) {
\r
535 System.err.println ("jalview Javascript error: Ignoring empty function for selection listener.");
\r
537 }}var mol = new jalview.javascript.MouseOverStructureListener (this, listener, this.separatorListToArray (modelSet));
\r
538 this.javascriptListeners.addElement (mol);
\r
539 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).addStructureViewerListener (mol);
\r
540 if (jalview.bin.JalviewLite.debug) {
\r
541 System.err.println ("Added a javascript structure viewer listener '" + listener + "'");
\r
542 System.err.println ("There are now " + this.javascriptListeners.size () + " listeners in total.");
\r
544 Clazz.overrideMethod (c$, "removeJavascriptListener",
\r
545 function (af, listener) {
\r
546 if (listener != null) {
\r
547 listener = listener.trim ();
\r
548 if (listener.length == 0) {
\r
550 }}var rprt = false;
\r
551 for (var ms = 0, msSize = this.javascriptListeners.size (); ms < msSize; ) {
\r
552 var lstn = this.javascriptListeners.elementAt (ms);
\r
554 if ((af == null || lstner.getAlignFrame () === af) && (listener == null || lstner.getListenerFunction ().equals (listener))) {
\r
555 this.javascriptListeners.removeElement (lstner);
\r
557 if (Clazz.instanceOf (lstner, jalview.structure.SelectionListener)) {
\r
558 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).removeSelectionListener (lstner);
\r
560 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).removeStructureViewerListener (lstner, null);
\r
561 }rprt = jalview.bin.JalviewLite.debug;
\r
562 if (jalview.bin.JalviewLite.debug) {
\r
563 System.err.println ("Removed listener '" + listener + "'");
\r
568 System.err.println ("There are now " + this.javascriptListeners.size () + " listeners in total.");
\r
569 }}, "jalview.appletgui.AlignFrame,~S");
\r
570 Clazz.overrideMethod (c$, "stop",
\r
572 System.err.println ("Applet " + this.getName () + " stop().");
\r
575 Clazz.overrideMethod (c$, "destroy",
\r
577 System.err.println ("Applet " + this.getName () + " destroy().");
\r
580 Clazz.defineMethod (c$, "tidyUp",
\r
581 ($fz = function () {
\r
583 if (this.currentAlignFrame != null && this.currentAlignFrame.viewport != null && this.currentAlignFrame.viewport.applet != null) {
\r
584 var av = this.currentAlignFrame.viewport;
\r
585 this.currentAlignFrame.closeMenuItem_actionPerformed ();
\r
587 this.currentAlignFrame = null;
\r
588 }if (this.javascriptListeners != null) {
\r
589 while (this.javascriptListeners.size () > 0) {
\r
590 var mol = this.javascriptListeners.elementAt (0);
\r
591 this.javascriptListeners.removeElement (mol);
\r
592 if (Clazz.instanceOf (mol, jalview.structure.SelectionListener)) {
\r
593 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).removeSelectionListener (mol);
\r
595 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this).removeStructureViewerListener (mol, null);
\r
596 }mol.jvlite = null;
\r
598 }if (this.jsFunctionExec != null) {
\r
599 this.jsFunctionExec.stopQueue ();
\r
600 this.jsFunctionExec.jvlite = null;
\r
601 }this.initialAlignFrame = null;
\r
602 this.jsFunctionExec = null;
\r
603 this.javascriptListeners = null;
\r
604 jalview.structure.StructureSelectionManager.release (this);
\r
605 }, $fz.isPrivate = true, $fz));
\r
606 Clazz.overrideMethod (c$, "mouseOverStructure",
\r
607 function (pdbResNum, chain, pdbfile) {
\r
609 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$4") ? 0 : jalview.bin.JalviewLite.$JalviewLite$4$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$4, this, Clazz.cloneFinals ("me", me, "pdbResNum", pdbResNum, "chain", chain, "pdbfile", pdbfile))));
\r
611 Clazz.overrideMethod (c$, "scrollViewToIn",
\r
612 function (alf, topRow, leftHandColumn) {
\r
613 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$5") ? 0 : jalview.bin.JalviewLite.$JalviewLite$5$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$5, this, Clazz.cloneFinals ("alf", alf, "topRow", topRow, "leftHandColumn", leftHandColumn))));
\r
614 }, "jalview.appletgui.AlignFrame,~S,~S");
\r
615 Clazz.overrideMethod (c$, "scrollViewToRowIn",
\r
616 function (alf, topRow) {
\r
617 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$6") ? 0 : jalview.bin.JalviewLite.$JalviewLite$6$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$6, this, Clazz.cloneFinals ("alf", alf, "topRow", topRow))));
\r
618 }, "jalview.appletgui.AlignFrame,~S");
\r
619 Clazz.overrideMethod (c$, "scrollViewToColumnIn",
\r
620 function (alf, leftHandColumn) {
\r
621 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$7") ? 0 : jalview.bin.JalviewLite.$JalviewLite$7$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$7, this, Clazz.cloneFinals ("alf", alf, "leftHandColumn", leftHandColumn))));
\r
622 }, "jalview.appletgui.AlignFrame,~S");
\r
623 c$.initBuildDetails = Clazz.defineMethod (c$, "initBuildDetails",
\r
624 ($fz = function () {
\r
625 if (jalview.bin.JalviewLite.builddate == null) {
\r
626 jalview.bin.JalviewLite.builddate = "unknown";
\r
627 jalview.bin.JalviewLite.version = "test";
\r
628 jalview.bin.JalviewLite.installation = "Webstart";
\r
629 var url = jalview.bin.JalviewLite.getResource ("/.build_properties");
\r
632 var reader = new java.io.BufferedReader ( new java.io.InputStreamReader (url.openStream ()));
\r
634 while ((line = reader.readLine ()) != null) {
\r
635 if (line.indexOf ("VERSION") > -1) {
\r
636 jalview.bin.JalviewLite.version = line.substring (line.indexOf ("=") + 1);
\r
637 }if (line.indexOf ("BUILD_DATE") > -1) {
\r
638 jalview.bin.JalviewLite.builddate = line.substring (line.indexOf ("=") + 1);
\r
639 }if (line.indexOf ("INSTALLATION") > -1) {
\r
640 jalview.bin.JalviewLite.installation = line.substring (line.indexOf ("=") + 1);
\r
643 if (Clazz.exceptionOf (ex, Exception)) {
\r
644 ex.printStackTrace ();
\r
649 }}}, $fz.isPrivate = true, $fz));
\r
650 c$.getBuildDate = Clazz.defineMethod (c$, "getBuildDate",
\r
652 jalview.bin.JalviewLite.initBuildDetails ();
\r
653 return jalview.bin.JalviewLite.builddate;
\r
655 c$.getInstallation = Clazz.defineMethod (c$, "getInstallation",
\r
657 jalview.bin.JalviewLite.initBuildDetails ();
\r
658 return jalview.bin.JalviewLite.installation;
\r
660 c$.getVersion = Clazz.defineMethod (c$, "getVersion",
\r
662 jalview.bin.JalviewLite.initBuildDetails ();
\r
663 return jalview.bin.JalviewLite.version;
\r
665 Clazz.overrideMethod (c$, "init",
\r
669 if (jalview.bin.JalviewLite.debug) {
\r
670 System.err.println ("Applet context is '" + this.getAppletContext ().getClass ().toString () + "'");
\r
671 }var scriptObject = netscape.javascript.JSObject.getWindow (this);
\r
672 if (jalview.bin.JalviewLite.debug && scriptObject != null) {
\r
673 System.err.println ("Applet has Javascript callback support.");
\r
675 if (Clazz.exceptionOf (ex, Exception)) {
\r
676 System.err.println ("Warning: No JalviewLite javascript callbacks available.");
\r
677 if (jalview.bin.JalviewLite.debug) {
\r
678 ex.printStackTrace ();
\r
683 if (jalview.bin.JalviewLite.debug) {
\r
684 System.err.println ("JalviewLite Version " + jalview.bin.JalviewLite.getVersion ());
\r
685 System.err.println ("Build Date : " + jalview.bin.JalviewLite.getBuildDate ());
\r
686 System.err.println ("Installation : " + jalview.bin.JalviewLite.getInstallation ());
\r
687 }if (this.externalstructureviewer != null) {
\r
688 this.useXtrnalSviewer = this.externalstructureviewer.trim ().toLowerCase ().equals ("true");
\r
689 }if (this.sep != null) {
\r
690 if (this.sep.length > 0) {
\r
691 this.separator = this.sep;
\r
692 if (jalview.bin.JalviewLite.debug) {
\r
693 System.err.println ("Separator set to '" + this.separator + "'");
\r
695 throw new Error (jalview.util.MessageManager.getString ("error.invalid_separator_parameter"));
\r
699 if (this.rgb != null) {
\r
701 r = Integer.parseInt (this.rgb.substring (0, 2), 16);
\r
702 g = Integer.parseInt (this.rgb.substring (2, 4), 16);
\r
703 b = Integer.parseInt (this.rgb.substring (4, 6), 16);
\r
705 if (Clazz.exceptionOf (ex, Exception)) {
\r
713 }this.rgb = this.labelColour;
\r
714 if (this.rgb != null) {
\r
715 this.launcher.setLabel (this.rgb);
\r
716 }this.setBackground ( new java.awt.Color (r, g, b));
\r
717 if (this.startupFile == null) {
\r
718 var data = new StringBuffer ("PASTE");
\r
720 while ((this.startupFile = this.getParameter ("sequence" + i)) != null) {
\r
721 data.append (this.startupFile.toString () + "\n");
\r
724 if (data.length () > 5) {
\r
725 this.startupFile = data.toString ();
\r
726 }}if (!this.enableSplitFrame) {
\r
728 }if (this.embedded) {
\r
729 var loader = Clazz.innerTypeInstance (jalview.bin.JalviewLite.LoadingThread, this, null, this.startupFile, this.file2, this);
\r
732 }} else if (this.startupFile != null) {
\r
733 if (!this.showButton) {
\r
734 var loader = Clazz.innerTypeInstance (jalview.bin.JalviewLite.LoadingThread, this, null, this.startupFile, this.file2, this);
\r
737 this.add (this.launcher);
\r
738 this.launcher.addActionListener (((Clazz.isClassDefined ("jalview.bin.JalviewLite$8") ? 0 : jalview.bin.JalviewLite.$JalviewLite$8$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$8, this, null)));
\r
740 this.startupFile = "NO FILE";
\r
741 this.fileFound = false;
\r
742 this.callInitCallback ();
\r
744 Clazz.defineMethod (c$, "initLiveConnect",
\r
745 ($fz = function () {
\r
746 var notFailed = false;
\r
748 while (!notFailed && tries < 10) {
\r
750 System.err.println ("LiveConnect request thread going to sleep.");
\r
752 Thread.sleep (700 * (1 + tries));
\r
754 if (Clazz.exceptionOf (q, InterruptedException)) {
\r
759 ;if (tries++ > 0) {
\r
760 System.err.println ("LiveConnect request thread woken up.");
\r
762 var scriptObject = netscape.javascript.JSObject.getWindow (this);
\r
763 if (scriptObject.eval ("navigator") != null) {
\r
766 if (Clazz.exceptionOf (jsex, Exception)) {
\r
767 System.err.println ("Attempt " + tries + " to access LiveConnect javascript failed.");
\r
773 }, $fz.isPrivate = true, $fz));
\r
774 Clazz.defineMethod (c$, "callInitCallback",
\r
775 ($fz = function () {
\r
776 if (this.initjscallback == null) {
\r
778 }this.initjscallback = this.initjscallback.trim ();
\r
779 if (this.initjscallback.length > 0) {
\r
780 var scriptObject = null;
\r
782 scriptObject = netscape.javascript.JSObject.getWindow (this);
\r
784 if (Clazz.exceptionOf (ex, Exception)) {
\r
789 ;this.initLiveConnect ();
\r
790 if (scriptObject != null) {
\r
792 new jalview.javascript.JSFunctionExec (this).executeJavascriptFunction (true, this.initjscallback, null, "Calling oninit callback '" + this.initjscallback + "'.");
\r
794 if (Clazz.exceptionOf (e, Exception)) {
\r
795 System.err.println ("Exception when executing _oninit callback '" + this.initjscallback + "'.");
\r
796 e.printStackTrace ();
\r
802 System.err.println ("Not executing _oninit callback '" + this.initjscallback + "' - no scripting allowed.");
\r
803 }}}, $fz.isPrivate = true, $fz));
\r
804 c$.addFrame = Clazz.defineMethod (c$, "addFrame",
\r
805 function (frame, title, width, height) {
\r
806 frame.setLocation (jalview.bin.JalviewLite.lastFrameX, jalview.bin.JalviewLite.lastFrameY);
\r
807 jalview.bin.JalviewLite.lastFrameX += 40;
\r
808 jalview.bin.JalviewLite.lastFrameY += 40;
\r
809 frame.setSize (width, height);
\r
810 frame.setTitle (title);
\r
811 frame.addWindowListener (((Clazz.isClassDefined ("jalview.bin.JalviewLite$9") ? 0 : jalview.bin.JalviewLite.$JalviewLite$9$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$9, this, Clazz.cloneFinals ("frame", frame))));
\r
812 frame.setVisible (true);
\r
813 }, "javax.swing.JFrame,~S,~N,~N");
\r
814 Clazz.defineMethod (c$, "paintComponent",
\r
816 if (!this.fileFound) {
\r
817 g.setColor ( new java.awt.Color (200, 200, 200));
\r
818 g.setColor (java.awt.Color.cyan);
\r
819 g.fillRect (0, 0, this.getSize ().width, this.getSize ().height);
\r
820 g.setColor (java.awt.Color.red);
\r
821 g.drawString (jalview.util.MessageManager.getString ("label.jalview_cannot_open_file"), 5, 15);
\r
822 g.drawString ("\"" + this.startupFile + "\"", 5, 30);
\r
823 } else if (this.embedded && !this.haveShownLoadMessage) {
\r
824 g.setColor (java.awt.Color.black);
\r
825 g.setFont ( new java.awt.Font ("Arial", 1, 24));
\r
826 g.drawString (jalview.util.MessageManager.getString ("label.jalview_applet"), 50, Clazz.doubleToInt (this.getSize ().height / 2) - 30);
\r
827 g.drawString (jalview.util.MessageManager.getString ("label.loading_data") + "...", 50, Clazz.doubleToInt (this.getSize ().height / 2));
\r
828 this.haveShownLoadMessage = true;
\r
829 }}, "java.awt.Graphics");
\r
830 Clazz.defineMethod (c$, "getAppletWindow",
\r
831 function (class1) {
\r
832 var wnds = new java.util.Vector ();
\r
833 var cmp = this.getComponents ();
\r
835 for (var i = 0; i < cmp.length; i++) {
\r
836 if (class1.isAssignableFrom (cmp[i].getClass ())) {
\r
837 wnds.addElement (cmp);
\r
841 Clazz.defineMethod (c$, "getDefaultTargetFrame",
\r
843 if (this.currentAlignFrame != null) {
\r
844 return this.currentAlignFrame;
\r
845 }if (this.initialAlignFrame != null) {
\r
846 return this.initialAlignFrame;
\r
847 }System.err.println ("Implementation error: Jalview Applet API cannot work out which AlignFrame to use.");
\r
850 Clazz.defineMethod (c$, "separatorListToArray",
\r
852 return this.separatorListToArray (list, this.separator);
\r
854 Clazz.defineMethod (c$, "separatorListToArray",
\r
855 function (list, separator) {
\r
856 var seplen = separator.length;
\r
857 if (list == null || list.equals ("") || list.equals (separator)) {
\r
859 }var jv = new java.util.Vector ();
\r
862 while ((pos = list.indexOf (separator, cp)) > cp) {
\r
863 jv.addElement (list.substring (cp, pos));
\r
866 if (cp < list.length) {
\r
867 var c = list.substring (cp);
\r
868 if (!c.equals (separator)) {
\r
870 }}if (jv.size () > 0) {
\r
871 var v = new Array (jv.size ());
\r
872 for (var i = 0; i < v.length; i++) {
\r
873 v[i] = jv.elementAt (i);
\r
875 jv.removeAllElements ();
\r
876 if (jalview.bin.JalviewLite.debug) {
\r
877 System.err.println ("Array from '" + separator + "' separated List:\n" + v.length);
\r
878 for (var i = 0; i < v.length; i++) {
\r
879 System.err.println ("item " + i + " '" + v[i] + "'");
\r
882 }if (jalview.bin.JalviewLite.debug) {
\r
883 System.err.println ("Empty Array from '" + separator + "' separated List");
\r
886 Clazz.defineMethod (c$, "arrayToSeparatorList",
\r
888 return this.arrayToSeparatorList (list, this.separator);
\r
890 Clazz.defineMethod (c$, "arrayToSeparatorList",
\r
891 function (list, separator) {
\r
892 var v = new StringBuffer ();
\r
893 if (list != null && list.length > 0) {
\r
894 for (var i = 0, iSize = list.length; i < iSize; i++) {
\r
895 if (list[i] != null) {
\r
897 v.append (separator);
\r
898 }v.append (list[i]);
\r
900 if (jalview.bin.JalviewLite.debug) {
\r
901 System.err.println ("Returning '" + separator + "' separated List:\n");
\r
902 System.err.println (v);
\r
903 }return v.toString ();
\r
904 }if (jalview.bin.JalviewLite.debug) {
\r
905 System.err.println ("Returning empty '" + separator + "' separated List\n");
\r
906 }return "" + separator;
\r
908 Clazz.overrideMethod (c$, "getFeatureGroups",
\r
910 var lst = this.arrayToSeparatorList (this.getDefaultTargetFrame ().getFeatureGroups ());
\r
913 Clazz.overrideMethod (c$, "getFeatureGroupsOn",
\r
915 var lst = this.arrayToSeparatorList (alf.getFeatureGroups ());
\r
917 }, "jalview.appletgui.AlignFrame");
\r
918 Clazz.overrideMethod (c$, "getFeatureGroupsOfState",
\r
919 function (visible) {
\r
920 return this.arrayToSeparatorList (this.getDefaultTargetFrame ().getFeatureGroupsOfState (visible));
\r
922 Clazz.overrideMethod (c$, "getFeatureGroupsOfStateOn",
\r
923 function (alf, visible) {
\r
924 return this.arrayToSeparatorList (alf.getFeatureGroupsOfState (visible));
\r
925 }, "jalview.appletgui.AlignFrame,~B");
\r
926 Clazz.overrideMethod (c$, "setFeatureGroupStateOn",
\r
927 function (alf, groups, state) {
\r
929 java.awt.EventQueue.invokeLater (((Clazz.isClassDefined ("jalview.bin.JalviewLite$10") ? 0 : jalview.bin.JalviewLite.$JalviewLite$10$ ()), Clazz.innerTypeInstance (jalview.bin.JalviewLite$10, this, Clazz.cloneFinals ("alf", alf, "groups", groups, "st", st))));
\r
930 }, "jalview.appletgui.AlignFrame,~S,~B");
\r
931 Clazz.overrideMethod (c$, "setFeatureGroupState",
\r
932 function (groups, state) {
\r
933 this.setFeatureGroupStateOn (this.getDefaultTargetFrame (), groups, state);
\r
935 Clazz.overrideMethod (c$, "getSeparator",
\r
937 return this.separator;
\r
939 Clazz.overrideMethod (c$, "setSeparator",
\r
940 function (separator) {
\r
941 if (separator == null || separator.length < 1) {
\r
942 separator = "\u00ac";
\r
943 }this.separator = separator;
\r
944 if (jalview.bin.JalviewLite.debug) {
\r
945 System.err.println ("Default Separator now: '" + separator + "'");
\r
947 Clazz.overrideMethod (c$, "addPdbFile",
\r
948 function (alFrame, sequenceId, pdbEntryString, pdbFile) {
\r
949 return alFrame.addPdbFile (sequenceId, pdbEntryString, pdbFile);
\r
950 }, "jalview.appletgui.AlignFrame,~S,~S,~S");
\r
951 Clazz.defineMethod (c$, "setAlignPdbStructures",
\r
952 function (alignPdbStructures) {
\r
953 this.alignPdbStructures = alignPdbStructures;
\r
955 Clazz.defineMethod (c$, "isAlignPdbStructures",
\r
957 return this.alignPdbStructures;
\r
959 Clazz.overrideMethod (c$, "start",
\r
962 Clazz.defineMethod (c$, "setJsMessageSet",
\r
963 function (messageclass, viewId, colcommands) {
\r
964 var msgset = this.jsmessages.get (messageclass);
\r
965 if (msgset == null) {
\r
966 msgset = new java.util.Hashtable ();
\r
967 this.jsmessages.put (messageclass, msgset);
\r
968 }msgset.put (viewId, colcommands);
\r
969 var l = Clazz.newLongArray (colcommands.length, 0);
\r
970 for (var i = 0; i < colcommands.length; i++) {
\r
971 l[i] = colcommands[i].hashCode ();
\r
973 this.jshashes.put (messageclass + "|" + viewId, l);
\r
975 Clazz.overrideMethod (c$, "getJsMessage",
\r
976 function (messageclass, viewId) {
\r
977 var msgset = this.jsmessages.get (messageclass);
\r
978 if (msgset != null) {
\r
979 var msgs = msgset.get (viewId);
\r
980 if (msgs != null) {
\r
981 for (var i = 0; i < msgs.length; i++) {
\r
982 if (msgs[i] != null) {
\r
989 Clazz.defineMethod (c$, "isJsMessageSetChanged",
\r
990 function (string, string2, colcommands) {
\r
991 var l = this.jshashes.get (string + "|" + string2);
\r
992 if (l == null && colcommands != null) {
\r
994 }for (var i = 0; i < colcommands.length; i++) {
\r
995 if (l[i] != colcommands[i].hashCode ()) {
\r
1000 Clazz.defineMethod (c$, "getJsExecQueue",
\r
1002 return this.jsExecQueue;
\r
1004 Clazz.defineMethod (c$, "setExecutor",
\r
1005 function (jsFunctionExec2) {
\r
1006 this.jsFunctionExec = jsFunctionExec2;
\r
1007 }, "jalview.javascript.JSFunctionExec");
\r
1008 Clazz.defineMethod (c$, "getDefaultColourParameter",
\r
1009 function (colparam, defcolour) {
\r
1010 var colprop = this.getParameter (colparam);
\r
1011 if (colprop == null || colprop.trim ().length == 0) {
\r
1013 }var col = jalview.schemes.ColourSchemeProperty.getAWTColorFromName (colprop);
\r
1014 if (col == null) {
\r
1016 col = new jalview.schemes.UserColourScheme (colprop).findColour ('A');
\r
1018 if (Clazz.exceptionOf (ex, Exception)) {
\r
1019 System.err.println ("Couldn't parse '" + colprop + "' as a colour for " + colparam);
\r
1025 }return (col == null) ? defcolour : col;
\r
1026 }, "~S,java.awt.Color");
\r
1027 Clazz.defineMethod (c$, "openJalviewHelpUrl",
\r
1029 if (this.helpUrl == null || this.helpUrl.trim ().length < 5) {
\r
1030 this.helpUrl = "http://www.jalview.org/help.html";
\r
1031 }this.showURL (this.helpUrl, "HELP");
\r
1033 Clazz.defineMethod (c$, "resolveUrlForLocalOrAbsolute",
\r
1034 ($fz = function (url, localref) {
\r
1035 var codebase = localref.toString ();
\r
1036 var pt = codebase.indexOf ("?");
\r
1037 if (pt < 0) pt = codebase.length;
\r
1038 codebase = codebase.substring (0, pt);
\r
1039 codebase = codebase.substring (0, codebase.lastIndexOf ("/") + 1);
\r
1040 if (url.indexOf ("/") == 0 && !localref.getProtocol ().equals ("file")) {
\r
1041 pt = codebase.indexOf ("/", 8);
\r
1042 return codebase.substring (0, pt) + url;
\r
1043 }return codebase + url;
\r
1044 }, $fz.isPrivate = true, $fz), "~S,java.net.URL");
\r
1045 Clazz.defineMethod (c$, "showURL",
\r
1046 function (url, target) {
\r
1048 if (url.indexOf (":") == -1) {
\r
1050 url = this.resolveUrlForLocalOrAbsolute (url, prepend = this.getDefaultParameter ("resolvetocodebase", false) ? this.getDocumentBase () : this.getCodeBase ());
\r
1051 if (jalview.bin.JalviewLite.debug) {
\r
1052 System.err.println ("Show url (prepended " + prepend + " - toggle resolvetocodebase if code/docbase resolution is wrong): " + url);
\r
1054 if (jalview.bin.JalviewLite.debug) {
\r
1055 System.err.println ("Show url: " + url);
\r
1056 }}if (url.indexOf ("javascript:") == 0) {
\r
1057 this.getAppletContext ().showDocument ( new java.net.URL (url));
\r
1059 this.getAppletContext ().showDocument ( new java.net.URL (url), target);
\r
1061 if (Clazz.exceptionOf (ex, Exception)) {
\r
1062 ex.printStackTrace ();
\r
1068 c$.$JalviewLite$LoadJmolThread$ = function () {
\r
1070 c$ = Clazz.decorateAsClass (function () {
\r
1071 Clazz.prepareCallback (this, arguments);
\r
1072 this.running = false;
\r
1073 Clazz.instantialize (this, arguments);
\r
1074 }, jalview.bin.JalviewLite, "LoadJmolThread", Thread);
\r
1075 Clazz.overrideMethod (c$, "run",
\r
1077 if (this.running || this.b$["jalview.bin.JalviewLite"].checkedForJmol) {
\r
1079 }this.running = true;
\r
1080 if (this.b$["jalview.bin.JalviewLite"].checkForJmol) {
\r
1082 if (!System.getProperty ("java.version").startsWith ("1.1")) {
\r
1083 Class.forName ("org.jmol.adapter.smarter.SmarterJmolAdapter");
\r
1084 this.b$["jalview.bin.JalviewLite"].jmolAvailable = true;
\r
1085 }if (!this.b$["jalview.bin.JalviewLite"].jmolAvailable) {
\r
1086 System.out.println ("Jmol not available - Using MCview for structures");
\r
1088 if (Clazz.exceptionOf (ex, ClassNotFoundException)) {
\r
1094 this.b$["jalview.bin.JalviewLite"].jmolAvailable = false;
\r
1095 if (jalview.bin.JalviewLite.debug) {
\r
1096 System.err.println ("Skipping Jmol check. Will use MCView (probably)");
\r
1097 }}this.b$["jalview.bin.JalviewLite"].checkedForJmol = true;
\r
1098 this.running = false;
\r
1100 Clazz.defineMethod (c$, "notFinished",
\r
1102 return this.running || !this.b$["jalview.bin.JalviewLite"].checkedForJmol;
\r
1104 c$ = Clazz.p0p ();
\r
1106 c$.$JalviewLite$LoadingThread$ = function () {
\r
1108 c$ = Clazz.decorateAsClass (function () {
\r
1109 Clazz.prepareCallback (this, arguments);
\r
1110 this.protocol = null;
\r
1111 this._file = null;
\r
1112 this._file2 = null;
\r
1113 this.applet = null;
\r
1114 Clazz.instantialize (this, arguments);
\r
1115 }, jalview.bin.JalviewLite, "LoadingThread", Thread);
\r
1116 Clazz.defineMethod (c$, "dbgMsg",
\r
1117 ($fz = function (a) {
\r
1118 if (jalview.bin.JalviewLite.debug) {
\r
1119 System.err.println (a);
\r
1120 }}, $fz.isPrivate = true, $fz), "~S");
\r
1121 Clazz.defineMethod (c$, "setProtocolState",
\r
1123 if (a.startsWith ("PASTE")) {
\r
1124 a = a.substring (5);
\r
1125 this.protocol = jalview.io.AppletFormatAdapter.PASTE;
\r
1126 } else if (this.inArchive (a)) {
\r
1127 this.protocol = jalview.io.AppletFormatAdapter.CLASSLOADER;
\r
1129 a = this.addProtocol (a);
\r
1130 this.protocol = jalview.io.AppletFormatAdapter.URL;
\r
1131 }this.dbgMsg ("Protocol identified as '" + this.protocol + "'");
\r
1134 Clazz.makeConstructor (c$,
\r
1135 function (a, b, c) {
\r
1136 Clazz.superConstructor (this, jalview.bin.JalviewLite.LoadingThread, []);
\r
1140 }, "~S,~S,jalview.bin.JalviewLite");
\r
1141 Clazz.overrideMethod (c$, "run",
\r
1144 System.out.println("BYPASSING JMOL LOADING FOR NOW. THIS WILL BE DONE ANOTHER WAY")
\r
1145 }this.startLoading ();
\r
1147 Clazz.defineMethod (c$, "startLoading",
\r
1148 ($fz = function () {
\r
1149 this.dbgMsg ("Loading thread started with:\n>>file\n" + this._file + ">>endfile");
\r
1150 this.dbgMsg ("Loading started.");
\r
1151 var a = this.readAlignment (this._file);
\r
1152 var b = this.readAlignment (this._file2);
\r
1154 this.addToDisplay (a, b);
\r
1155 this.loadTree (a);
\r
1156 this.loadScoreFile (a);
\r
1157 this.loadFeatures (a);
\r
1158 this.loadAnnotations (a);
\r
1159 this.loadJnetFile (a);
\r
1160 this.loadPdbFiles (a);
\r
1162 this.b$["jalview.bin.JalviewLite"].fileFound = false;
\r
1163 this.applet.remove (this.b$["jalview.bin.JalviewLite"].launcher);
\r
1164 this.applet.repaint ();
\r
1165 }this.b$["jalview.bin.JalviewLite"].callInitCallback ();
\r
1166 }, $fz.isPrivate = true, $fz));
\r
1167 Clazz.defineMethod (c$, "addToDisplay",
\r
1170 a.addToDisplay (this.b$["jalview.bin.JalviewLite"].embedded);
\r
1172 var c = new jalview.appletgui.SplitFrame (a, b);
\r
1173 c.addToDisplay (this.b$["jalview.bin.JalviewLite"].embedded, this.b$["jalview.bin.JalviewLite"]);
\r
1174 }}, "jalview.appletgui.AlignFrame,jalview.appletgui.AlignFrame");
\r
1175 Clazz.defineMethod (c$, "readAlignment",
\r
1179 }var b = this.setProtocolState (a);
\r
1180 var c = new jalview.io.IdentifyFile ().Identify (b, this.protocol);
\r
1181 this.dbgMsg ("File identified as '" + c + "'");
\r
1184 d = new jalview.io.AppletFormatAdapter ().readFile (b, this.protocol, c);
\r
1185 if ((d != null) && (d.getHeight () > 0)) {
\r
1186 this.dbgMsg ("Successfully loaded file.");
\r
1187 d.setDataset (null);
\r
1188 var e = new jalview.appletgui.AlignFrame (d, this.applet, b, this.b$["jalview.bin.JalviewLite"].embedded, false);
\r
1190 if (this.b$["jalview.bin.JalviewLite"].initialAlignFrame == null) {
\r
1191 this.b$["jalview.bin.JalviewLite"].initialAlignFrame = e;
\r
1192 }this.b$["jalview.bin.JalviewLite"].currentAlignFrame = e;
\r
1193 if (this.protocol === jalview.io.AppletFormatAdapter.PASTE) {
\r
1194 e.setTitle (jalview.util.MessageManager.formatMessage ("label.sequences_from", Clazz.newArray (-1, [this.applet.getDocumentBase ().toString ()])));
\r
1195 }e.setStatus (jalview.util.MessageManager.formatMessage ("label.successfully_loaded_file", Clazz.newArray (-1, [b])));
\r
1198 if (Clazz.exceptionOf (ex, java.io.IOException)) {
\r
1199 this.dbgMsg ("File load exception.");
\r
1200 ex.printStackTrace ();
\r
1201 if (jalview.bin.JalviewLite.debug) {
\r
1203 var e = new jalview.io.FileParse (b, this.protocol);
\r
1205 this.dbgMsg (">>>Dumping contents of '" + b + "' " + "(" + this.protocol + ")");
\r
1206 while ((f = e.nextLine ()) != null) {
\r
1209 this.dbgMsg (">>>Dump finished.");
\r
1211 if (Clazz.exceptionOf (e, Exception)) {
\r
1212 System.err.println ("Exception when trying to dump the content of the file parameter.");
\r
1213 e.printStackTrace ();
\r
1224 Clazz.defineMethod (c$, "loadPdbFiles",
\r
1227 this.applet.setAlignPdbStructures (this.b$["jalview.bin.JalviewLite"].getDefaultParameter ("alignpdbfiles", false));
\r
1229 var d = new java.util.Vector ();
\r
1230 var e = (this.applet.getDefaultParameter ("relaxedidmatch", false)) ? new jalview.analysis.SequenceIdMatcher (a.getAlignViewport ().getAlignment ().getSequencesArray ()) : null;
\r
1234 f = this.applet.getParameter ("PDBFILE" + c);
\r
1236 f = this.b$["jalview.bin.JalviewLite"].pdbFile;
\r
1238 var g = new jalview.datamodel.PDBEntry ();
\r
1242 var k = new java.util.StringTokenizer (f, " ");
\r
1243 if (k.countTokens () < 2) {
\r
1244 if (this.b$["jalview.bin.JalviewLite"].sequence != null) {
\r
1245 i = Clazz.newArray (-1, [e == null ? a.getAlignViewport ().getAlignment ().findName (this.b$["jalview.bin.JalviewLite"].sequence) : e.findIdMatch (this.b$["jalview.bin.JalviewLite"].sequence)]);
\r
1247 f = k.nextToken ();
\r
1248 var l = new java.util.Vector ();
\r
1249 var m = new java.util.Vector ();
\r
1250 while (k.hasMoreTokens ()) {
\r
1251 h = k.nextToken ();
\r
1252 var n = new java.util.StringTokenizer (h, "=");
\r
1253 if (n.countTokens () > 1) {
\r
1254 m.addElement (n.nextToken ());
\r
1255 h = n.nextToken ();
\r
1256 }l.addElement (e == null ? a.getAlignViewport ().getAlignment ().findName (h) : e.findIdMatch (h));
\r
1258 i = new Array (l.size ());
\r
1260 if (m.size () == l.size ()) {
\r
1261 j = new Array (m.size ());
\r
1263 }}f = this.setProtocolState (f);
\r
1264 if (this.protocol === jalview.io.AppletFormatAdapter.CLASSLOADER && !this.b$["jalview.bin.JalviewLite"].useXtrnalSviewer) {
\r
1265 this.protocol = jalview.io.AppletFormatAdapter.URL;
\r
1266 f = this.addProtocol (f);
\r
1269 for (var l = 0; l < i.length; l++) {
\r
1270 if (i[l] != null) {
\r
1271 (i[l]).addPDBId (g);
\r
1272 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.applet).registerPDBEntry (g);
\r
1274 if (jalview.bin.JalviewLite.debug) {
\r
1275 System.err.println ("Warning: Possible input parsing error: Null sequence for attachment of PDB (sequence " + l + ")");
\r
1277 if (!this.b$["jalview.bin.JalviewLite"].alignPdbStructures) {
\r
1278 a.newStructureView (this.applet, g, i, j, this.protocol);
\r
1280 d.addElement ( Clazz.newArray (-1, [g, i, j, String.instantialize (this.protocol)]));
\r
1282 } while (f != null || c < 10);
\r
1283 if (d.size () > 0) {
\r
1284 var g = new Array (d.size ());
\r
1285 var h = new Array (d.size ());
\r
1286 var i = new Array (d.size ());
\r
1287 var j = new Array (d.size ());
\r
1288 for (var k = 0, l = d.size (); k < l; k++) {
\r
1289 var m = d.elementAt (k);
\r
1295 a.alignedStructureView (this.applet, h, g, i, j);
\r
1298 }, "jalview.appletgui.AlignFrame");
\r
1299 Clazz.defineMethod (c$, "loadJnetFile",
\r
1302 var c = this.b$["jalview.bin.JalviewLite"].jnetFile;
\r
1305 c = this.setProtocolState (c);
\r
1306 var d = jalview.jsdev.GenericFileAdapter.getFile ("JPredFile", [c, this.protocol]);
\r
1307 jalview.io.JnetAnnotationMaker.add_annotation (d, a.viewport.getAlignment (), 0, false);
\r
1308 var e = a.viewport.getAlignment ().getSequenceAt (0);
\r
1309 a.viewport.getAlignment ().setSeqrep (e);
\r
1310 var f = new jalview.datamodel.ColumnSelection ();
\r
1311 f.hideInsertionsFor (e);
\r
1312 a.viewport.setColumnSelection (f);
\r
1313 a.alignPanel.fontChanged ();
\r
1314 a.alignPanel.setScrollValues (0, 0);
\r
1317 if (Clazz.exceptionOf (ex, Exception)) {
\r
1318 ex.printStackTrace ();
\r
1324 }, "jalview.appletgui.AlignFrame");
\r
1325 Clazz.defineMethod (c$, "loadAnnotations",
\r
1328 var c = this.b$["jalview.bin.JalviewLite"].annotations;
\r
1330 c = this.setProtocolState (c);
\r
1331 if ( new jalview.io.AnnotationFile ().annotateAlignmentView (a.viewport, c, this.protocol)) {
\r
1332 a.alignPanel.fontChanged ();
\r
1333 a.alignPanel.setScrollValues (0, 0);
\r
1336 System.err.println ("Annotations were not added from annotation file '" + c + "'");
\r
1338 }, "jalview.appletgui.AlignFrame");
\r
1339 Clazz.defineMethod (c$, "loadFeatures",
\r
1342 var c = this.b$["jalview.bin.JalviewLite"].hideFeatureGroups;
\r
1344 a.setFeatureGroupState (this.b$["jalview.bin.JalviewLite"].separatorListToArray (c), false);
\r
1345 }c = this.b$["jalview.bin.JalviewLite"].showFeatureGroups;
\r
1347 a.setFeatureGroupState (this.b$["jalview.bin.JalviewLite"].separatorListToArray (c), true);
\r
1348 }c = this.b$["jalview.bin.JalviewLite"].features;
\r
1350 c = this.setProtocolState (c);
\r
1351 b = a.parseFeaturesFile (c, this.protocol);
\r
1352 }c = this.b$["jalview.bin.JalviewLite"].showFeatureSettings;
\r
1353 if (c != null && c.equalsIgnoreCase ("true")) {
\r
1354 a.viewport.setShowSequenceFeatures (true);
\r
1355 new jalview.appletgui.FeatureSettings (a.alignPanel);
\r
1357 }, "jalview.appletgui.AlignFrame");
\r
1358 Clazz.defineMethod (c$, "loadScoreFile",
\r
1361 if (this.b$["jalview.bin.JalviewLite"].scoreFile != null && !"".equals (this.b$["jalview.bin.JalviewLite"].scoreFile)) {
\r
1363 if (jalview.bin.JalviewLite.debug) {
\r
1364 System.err.println ("Attempting to load T-COFFEE score file from the scoreFile parameter");
\r
1365 }b = a.loadScoreFile (this.b$["jalview.bin.JalviewLite"].scoreFile);
\r
1367 System.err.println ("Failed to parse T-COFFEE parameter as a valid score file ('" + this.b$["jalview.bin.JalviewLite"].scoreFile + "')");
\r
1369 if (Clazz.exceptionOf (e, Exception)) {
\r
1370 System.err.printf ("Cannot read score file: '%s'. Cause: %s \n", [this.b$["jalview.bin.JalviewLite"].scoreFile, e.getMessage ()]);
\r
1376 }, "jalview.appletgui.AlignFrame");
\r
1377 Clazz.defineMethod (c$, "loadTree",
\r
1380 if (this.b$["jalview.bin.JalviewLite"].treeFile == null) {
\r
1381 this.b$["jalview.bin.JalviewLite"].treeFile = this.applet.getParameter ("treeFile");
\r
1382 }if (this.b$["jalview.bin.JalviewLite"].treeFile != null) {
\r
1384 this.b$["jalview.bin.JalviewLite"].treeFile = this.setProtocolState (this.b$["jalview.bin.JalviewLite"].treeFile);
\r
1385 var c = new jalview.io.NewickFile (this.b$["jalview.bin.JalviewLite"].treeFile, this.protocol);
\r
1387 if (c.getTree () != null) {
\r
1388 a.loadTree (c, this.b$["jalview.bin.JalviewLite"].treeFile);
\r
1390 this.dbgMsg ("Successfully imported tree.");
\r
1392 this.dbgMsg ("Tree parameter did not resolve to a valid tree.");
\r
1394 if (Clazz.exceptionOf (ex, Exception)) {
\r
1395 ex.printStackTrace ();
\r
1401 }, "jalview.appletgui.AlignFrame");
\r
1402 Clazz.defineMethod (c$, "inArchive",
\r
1405 var b = (this.getClass ().getResourceAsStream ("/" + a) != null);
\r
1406 if (jalview.bin.JalviewLite.debug) {
\r
1407 System.err.println ("Resource '" + a + "' was " + (b ? "" : "not") + " located by classloader.");
\r
1410 if (Clazz.exceptionOf (ex, Exception)) {
\r
1411 System.out.println ("Exception checking resources: " + a + " " + ex);
\r
1418 Clazz.defineMethod (c$, "addProtocol",
\r
1420 if (a.indexOf ("://") == -1) {
\r
1421 var b = this.applet.resolveUrlForLocalOrAbsolute (a, this.b$["jalview.bin.JalviewLite"].getDocumentBase ());
\r
1422 if (this.urlExists (b)) {
\r
1423 if (jalview.bin.JalviewLite.debug) {
\r
1424 System.err.println ("Prepended document base for resource: '" + a + "'");
\r
1426 }b = this.applet.resolveUrlForLocalOrAbsolute (a, this.b$["jalview.bin.JalviewLite"].getCodeBase ());
\r
1427 if (this.urlExists (b)) {
\r
1428 if (jalview.bin.JalviewLite.debug) {
\r
1429 System.err.println ("Prepended codebase for resource: '" + a + "'");
\r
1433 Clazz.defineMethod (c$, "urlExists",
\r
1434 ($fz = function (a) {
\r
1437 b = new java.net.URL (a).openStream ();
\r
1441 if (Clazz.exceptionOf (x, Exception)) {
\r
1450 if (Clazz.exceptionOf (e, java.io.IOException)) {
\r
1457 }, $fz.isPrivate = true, $fz), "~S");
\r
1458 c$ = Clazz.p0p ();
\r
1460 c$.$JalviewLite$1$ = function () {
\r
1462 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$1", null, Runnable);
\r
1463 Clazz.overrideMethod (c$, "run",
\r
1465 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.f$.me).mouseOverVamsasSequence (this.f$.sq, this.f$.sq.findIndex (this.f$.pos), null);
\r
1467 c$ = Clazz.p0p ();
\r
1469 c$.$JalviewLite$2$ = function () {
\r
1471 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$2", null, Runnable);
\r
1472 Clazz.overrideMethod (c$, "run",
\r
1474 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.f$.me).mouseOverVamsasSequence (this.f$.sq, this.f$.pos, null);
\r
1476 c$ = Clazz.p0p ();
\r
1478 c$.$JalviewLite$3$ = function () {
\r
1480 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$3", null, Runnable);
\r
1481 Clazz.overrideMethod (c$, "run",
\r
1483 this.f$.alf.select (this.f$.sel, this.f$.csel);
\r
1485 c$ = Clazz.p0p ();
\r
1487 c$.$JalviewLite$4$ = function () {
\r
1489 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$4", null, Runnable);
\r
1490 Clazz.overrideMethod (c$, "run",
\r
1493 jalview.structure.StructureSelectionManager.getStructureSelectionManager (this.f$.me).mouseOverStructure ( new Integer (this.f$.pdbResNum).intValue (), this.f$.chain, this.f$.pdbfile);
\r
1494 if (jalview.bin.JalviewLite.debug) {
\r
1495 System.err.println ("mouseOver for '" + this.f$.pdbResNum + "' in chain '" + this.f$.chain + "' in structure '" + this.f$.pdbfile + "'");
\r
1497 if (Clazz.exceptionOf (e, NumberFormatException)) {
\r
1498 System.err.println ("Ignoring invalid residue number string '" + this.f$.pdbResNum + "'");
\r
1504 c$ = Clazz.p0p ();
\r
1506 c$.$JalviewLite$5$ = function () {
\r
1508 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$5", null, Runnable);
\r
1509 Clazz.overrideMethod (c$, "run",
\r
1512 this.f$.alf.scrollTo ( new Integer (this.f$.topRow).intValue (), new Integer (this.f$.leftHandColumn).intValue ());
\r
1514 if (Clazz.exceptionOf (ex, Exception)) {
\r
1515 System.err.println ("Couldn't parse integer arguments (topRow='" + this.f$.topRow + "' and leftHandColumn='" + this.f$.leftHandColumn + "')");
\r
1516 ex.printStackTrace ();
\r
1522 c$ = Clazz.p0p ();
\r
1524 c$.$JalviewLite$6$ = function () {
\r
1526 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$6", null, Runnable);
\r
1527 Clazz.overrideMethod (c$, "run",
\r
1530 this.f$.alf.scrollToRow ( new Integer (this.f$.topRow).intValue ());
\r
1532 if (Clazz.exceptionOf (ex, Exception)) {
\r
1533 System.err.println ("Couldn't parse integer arguments (topRow='" + this.f$.topRow + "')");
\r
1534 ex.printStackTrace ();
\r
1540 c$ = Clazz.p0p ();
\r
1542 c$.$JalviewLite$7$ = function () {
\r
1544 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$7", null, Runnable);
\r
1545 Clazz.overrideMethod (c$, "run",
\r
1548 this.f$.alf.scrollToColumn ( new Integer (this.f$.leftHandColumn).intValue ());
\r
1550 if (Clazz.exceptionOf (ex, Exception)) {
\r
1551 System.err.println ("Couldn't parse integer arguments (leftHandColumn='" + this.f$.leftHandColumn + "')");
\r
1552 ex.printStackTrace ();
\r
1558 c$ = Clazz.p0p ();
\r
1560 c$.$JalviewLite$8$ = function () {
\r
1562 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$8", null, java.awt.event.ActionListener);
\r
1563 Clazz.overrideMethod (c$, "actionPerformed",
\r
1565 var loader = Clazz.innerTypeInstance (jalview.bin.JalviewLite.LoadingThread, this, null, this.b$["jalview.bin.JalviewLite"].startupFile, this.b$["jalview.bin.JalviewLite"].file2, this.b$["jalview.bin.JalviewLite"]);
\r
1567 }, "java.awt.event.ActionEvent");
\r
1568 c$ = Clazz.p0p ();
\r
1570 c$.$JalviewLite$9$ = function () {
\r
1572 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$9", java.awt.event.WindowAdapter);
\r
1573 Clazz.overrideMethod (c$, "windowClosing",
\r
1575 if (Clazz.instanceOf (this.f$.frame, jalview.appletgui.AlignFrame)) {
\r
1576 var vp = (this.f$.frame).viewport;
\r
1577 (this.f$.frame).closeMenuItem_actionPerformed ();
\r
1578 if (vp.applet.currentAlignFrame === this.f$.frame) {
\r
1579 vp.applet.currentAlignFrame = null;
\r
1580 }vp.applet = null;
\r
1582 }jalview.bin.JalviewLite.lastFrameX -= 40;
\r
1583 jalview.bin.JalviewLite.lastFrameY -= 40;
\r
1584 if (Clazz.instanceOf (this.f$.frame, jalview.appletgui.EmbmenuFrame)) {
\r
1585 (this.f$.frame).destroyMenus ();
\r
1586 }this.f$.frame.setMenuBar (null);
\r
1587 this.f$.frame.dispose ();
\r
1588 }, "java.awt.event.WindowEvent");
\r
1589 Clazz.defineMethod (c$, "windowActivated",
\r
1591 if (Clazz.instanceOf (this.f$.frame, jalview.appletgui.AlignFrame)) {
\r
1592 (this.f$.frame).viewport.applet.currentAlignFrame = this.f$.frame;
\r
1593 if (jalview.bin.JalviewLite.debug) {
\r
1594 System.err.println ("Activated window " + this.f$.frame);
\r
1595 }}Clazz.superCall (this, jalview.bin.JalviewLite$9, "windowActivated", [e]);
\r
1596 }, "java.awt.event.WindowEvent");
\r
1597 c$ = Clazz.p0p ();
\r
1599 c$.$JalviewLite$10$ = function () {
\r
1601 c$ = Clazz.declareAnonymous (jalview.bin, "JalviewLite$10", null, Runnable);
\r
1602 Clazz.overrideMethod (c$, "run",
\r
1604 this.f$.alf.setFeatureGroupState (this.b$["jalview.bin.JalviewLite"].separatorListToArray (this.f$.groups), this.f$.st);
\r
1606 c$ = Clazz.p0p ();
\r
1608 Clazz.defineStatics (c$,
\r
1612 "lastFrameX", 200,
\r
1613 "lastFrameY", 200,
\r
1614 "builddate", null,
\r
1616 "installation", null);
\r