new_style_document_xpconnect_usage

git-svn-id: svn://10.0.0.236/trunk@242112 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
edburns%acm.org
2007-12-27 05:27:37 +00:00
parent 9d5cd19bfe
commit 115d1ad948
13 changed files with 186 additions and 32 deletions

View File

@@ -116,7 +116,7 @@ var strslen2 = {
<br />
<h2>Code Artifacts</h2>
<h2>Required Code Artifacts</h2>
<p>Creating a pluglet requires creating several code arifacts:</p>
@@ -367,33 +367,6 @@ var strslen2 = {
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw2">protected</span> <span class="kw4">void</span> finalize<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;--SimplePlugletInstance.finalize()<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript3<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg1, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg2<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript2<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;3 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot; arg1: &quot;</span> + arg1 + <span class="st0">&quot; arg2: &quot;</span> + arg2 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript2<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg1<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript2<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;2 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot; arg1: &quot;</span> + arg1 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript1<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript1<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;1 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript0<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript0<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;0 arg hard coded result&quot;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
@@ -562,6 +535,169 @@ var strslen2 = {
</ol>
<h2>Calling a Pluglet from JavaScript</h2>
<p>This release of pluglets allows a limited degree of communication
between JavaScript and the Pluglet class. Through the magic of
Netscape's XPConnect code, it is possible to invoke, from JavaScript in
the page in which the pluglet is embedded, an arbitrary method <u><i>on
the pluglet</i></u>, provided the method returns String, and takes
anywhere between zero and ten String arguments. <i>Such a method is
called a "<u>conforming method</u>" for the rest of this
discussion</i>.</p>
<p>In the above example, the four plain ole' HTML buttons labeled "Call
Pluglet N arg" (where N is a number between 0 and 3) call a Java method
on the pluglet. Click the Details button on the right to see the
JavaScript code.</p>
<div class="source"><a href="#" onclick="if (Element.visible('src4')) { new Effect.SlideUp('src4'); $('src4_btn').src = '../../../../style/page_white_code.gif'; } else { new Effect.SlideDown('src4'); $('src4_btn').src = '../../../../style/page_white_code_red.gif'; } return false;">Details <img id="src4_btn" src="../../../../style/page_white_code.gif" /></a>
<div id="src4" class="code" style="display: none; ">
<div class="syntax"><div class="javascript" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="kw2">var</span> embed = document.<span class="me1">embeds</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw2">function</span> callPluglet0<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">var</span> strs2 = <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; value : <span class="br0">&#91;</span><span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw2">var</span> strslen2 = <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; value : strs2.<span class="me1">value</span>.<span class="me1">length</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; embed.<span class="me1">callPlugletMethod</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript0&quot;</span>, strslen2, strs2<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; <span class="kw3">alert</span><span class="br0">&#40;</span><span class="st0">&quot;Pluglet returned &quot;</span> + strs2.<span class="me1">value</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2"><span class="kw2">function</span> callPluglet1<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2"><span class="kw2">var</span> strs2 = <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; value : <span class="br0">&#91;</span> <span class="st0">&quot;arg0&quot;</span> <span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="kw2">var</span> strslen2 = <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; value : strs2.<span class="me1">value</span>.<span class="me1">length</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; embed.<span class="me1">callPlugletMethod</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript1&quot;</span>, strslen2, strs2<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">alert</span><span class="br0">&#40;</span><span class="st0">&quot;Pluglet returned &quot;</span> + strs2.<span class="me1">value</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">function</span> callPluglet2<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">var</span> strs2 = <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; value : <span class="br0">&#91;</span> <span class="st0">&quot;arg0&quot;</span>, <span class="st0">&quot;arg1&quot;</span> <span class="br0">&#93;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1"><span class="kw2">var</span> strslen2 = <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; value : strs2.<span class="me1">value</span>.<span class="me1">length</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; embed.<span class="me1">callPlugletMethod</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript2&quot;</span>, strslen2, strs2<span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; <span class="kw3">alert</span><span class="br0">&#40;</span><span class="st0">&quot;Pluglet returned &quot;</span> + strs2.<span class="me1">value</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2"><span class="kw2">function</span> callPluglet3<span class="br0">&#40;</span><span class="br0">&#41;</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2"><span class="kw2">var</span> strs2 = <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; value : <span class="br0">&#91;</span> <span class="st0">&quot;arg0&quot;</span>, <span class="st0">&quot;arg1&quot;</span>, <span class="st0">&quot;arg2&quot;</span> <span class="br0">&#93;</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2"><span class="kw2">var</span> strslen2 = <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; value : strs2.<span class="me1">value</span>.<span class="me1">length</span></div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; embed.<span class="me1">callPlugletMethod</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript3&quot;</span>, strslen2, strs2<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw3">alert</span><span class="br0">&#40;</span><span class="st0">&quot;Pluglet returned &quot;</span> + strs2.<span class="me1">value</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2"><span class="br0">&#125;</span> </div></li></ol></div></div>
</div>
</div>
<p>Line 1 is standard JavaScript to get the 0th
<code>&lt;EMBED&gt;</code> element in the page, which happens to be our
pluglet. The functions <code>callPluglet0</code>,
<code>callPluglet1</code>, <code>callPluglet2</code> and
<code>callPluglet3</code>, declared on lines 3, 16, 29, and 42,
respectively, are called from the <code>onclick</code> handler of the
HTML buttons in the page. Each of these functions calls a Java method
implemented on the pluglet using the special
<code>callPlugletMethod</code> JavaScript function defined on the
XPConnect API for pluglet. The general form of this JavaScript method is:</p>
<br />
<div class="syntax"><div class="javascript" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="coMULTI">/** The return value of this function is a JavaScript associative array containing</span></div></li>
<li class="li2"><div class="de2"><span class="coMULTI">&nbsp; * an entry named 'value', whose value is a JavaScript String that is</span></div></li>
<li class="li1"><div class="de1"><span class="coMULTI">&nbsp; * the Java String returned by the <u>conforming method</u> named in the first argument.</span></div></li>
<li class="li2"><div class="de2"><span class="coMULTI">&nbsp; */</span></div></li>
<li class="li1"><div class="de1"><span class="kw2">function</span> callPlugletMethod<span class="br0">&#40;</span>&lt;<span class="st0">name of a conforming method implemented on Pluglet Class</span>&gt;,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;<span class="st0">JavaScript associative array containing an</span></div></li>
<li class="li1"><div class="de1"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;entry named 'value', whose value is</span></div></li>
<li class="li2"><div class="de2"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;JavaScript array (of length zero thru ten) of</span></div></li>
<li class="li1"><div class="de1"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;JavaScript strings.&nbsp; Each element in the</span></div></li>
<li class="li2"><div class="de2"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;array will be passed to the corresponding</span></div></li>
<li class="li1"><div class="de1"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;String argument in the conforming method.</span>&gt;,</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&lt;<span class="st0">JavaScript associative array containing an</span></div></li>
<li class="li1"><div class="de1"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;entry named 'value', whose value is a</span></div></li>
<li class="li2"><div class="de2"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;JavaScript number representing the length of</span></div></li>
<li class="li1"><div class="de1"><span class="st0">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;the array.</span>&gt;<span class="br0">&#41;</span>; </div></li></ol></div></div>
<p>The Java code for the methods <code>calledFromJavaScriptN</code>
(where N is a number between 0 and 3) can be seen by expanding the
Details button on the right. These methods are defined on the class
<code>SimplePlugletInstance</code>.</p>
<div class="source"><a href="#" onclick="if (Element.visible('src5')) { new Effect.SlideUp('src5'); $('src5_btn').src = '../../../../style/page_white_code.gif'; } else { new Effect.SlideDown('src5'); $('src5_btn').src = '../../../../style/page_white_code_red.gif'; } return false;">Details <img id="src5_btn" src="../../../../style/page_white_code.gif" /></a>
<div id="src5" class="code" style="display: none; ">
<div class="java" style="font-family: monospace;"><ol><li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript3<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg1, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg2<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript2<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;3 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot; arg1: &quot;</span> + arg1 + <span class="st0">&quot; arg2: &quot;</span> + arg2 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript2<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0, <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg1<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript2<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;2 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot; arg1: &quot;</span> + arg1 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript1<span class="br0">&#40;</span><a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> arg0<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript1<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;1 args.&nbsp; arg0: &quot;</span> + arg0 + <span class="st0">&quot;&quot;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; <span class="kw2">public</span> <a href="http://www.google.com/search?q=allinurl%3AString+java.sun.com&amp;bntl=1"><span class="kw3">String</span></a> calledFromJavaScript0<span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; org.<span class="me1">mozilla</span>.<span class="me1">util</span>.<span class="me1">DebugPluglet</span>.<span class="me1">print</span><span class="br0">&#40;</span><span class="st0">&quot;calledFromJavaScript0<span class="es0">\n</span>&quot;</span><span class="br0">&#41;</span>;</div></li>
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">return</span> <span class="st0">&quot;0 arg hard coded result&quot;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li2"><div class="de2">&nbsp;</div></li>
</div>
</div></div>
<p>NOTE: One convenient interchange format would be to return <a
href="http://json.org/">JSON strings</a> from your <u>conforming methods</u>.</p>
</div> <!-- content -->

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 399 B

After

Width:  |  Height:  |  Size: 567 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 403 B

After

Width:  |  Height:  |  Size: 237 B

View File

@@ -112,12 +112,12 @@ h4 a {
width: 100%;
}
#example:before {
background: transparent url(win.bg.tr.gif) scroll no-repeat top right;
background: transparent url(inner.bg.tr.gif) scroll no-repeat top right;
margin-bottom: -30px;
height: 30px;
display: block;
border: none;
content: url(win.bg.tl.gif);
content: url(inner.bg.tl.gif);
padding: 0;
line-height: 0.1;
font-size: 1px;
@@ -135,9 +135,9 @@ h4 a {
line-height: 0.1;
font-size: 1px;
text-align: left;
content: url(win.bg.bl.gif);
content: url(inner.bg.bl.gif);
background: white;
background: transparent url(win.bg.br.gif) no-repeat bottom right;
background: transparent url(inner.bg.br.gif) no-repeat bottom right;
padding: 0;
}
@@ -311,3 +311,21 @@ div.syntax a
.java .nu0 {color: #cc66cc;}
.java .me1 {color: #006600;}
.java .me2 {color: #006600;}
/* GeSHi (c) Nigel McNie 2004 (http://qbnz.com/highlighter) */
.javascript .de1, .javascript .de2 {font-family: 'Courier New', Courier, monospace; font-weight: normal;}
.javascript {font-family: monospace;}
.javascript .imp {font-weight: bold; color: red;}
.javascript li {background: #ffffff;}
.javascript li.li2 {background: #f8f8f8;}
.javascript .kw1 {color: #000066; font-weight: bold;}
.javascript .kw2 {color: #003366; font-weight: bold;}
.javascript .kw3 {color: #000066;}
.javascript .co1 {color: #009900; font-style: italic;}
.javascript .coMULTI {color: #009900; font-style: italic;}
.javascript .es0 {color: #000099; font-weight: bold;}
.javascript .br0 {color: #66cc66;}
.javascript .st0 {color: #3366CC;}
.javascript .nu0 {color: #CC0000;}
.javascript .me1 {color: #006600;}
.javascript .re0 {color: #0066FF;}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 B

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 160 B

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 186 B

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 B

After

Width:  |  Height:  |  Size: 185 B