diff options
author | Derrell Lipman <derrell@samba.org> | 2007-02-06 03:23:52 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:44:34 -0500 |
commit | ef256c958066c19bb10cbe9745bdf96b6514762d (patch) | |
tree | dbe379cb3021c5af2d1b8f74528e4fff968fc712 /webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html | |
parent | a8d0f5df6266aeacdb20326094c0401618ab62e8 (diff) | |
download | samba-ef256c958066c19bb10cbe9745bdf96b6514762d.tar.gz samba-ef256c958066c19bb10cbe9745bdf96b6514762d.tar.bz2 samba-ef256c958066c19bb10cbe9745bdf96b6514762d.zip |
r21167: - Upgrade to latest released qooxdoo. This is step 1 of the upgrade process,
which involves adding the latest SDK. This new version has not 2, but 4
icon themes. In order to quiet Andrew B. who thinks that 9000+ files in a
gui api is too many (come on, disk space is free these days :-), I have
removed 3 of the 4 icon themes, leaving only the default, Nuvola. That
lowers the file count by 1/3. I'm sure Andrew still isn't happy, but I hope
he's a bit happier... Step 2 will make him happier yet.
(This used to be commit d161c1382c36238105b85d0499d5a1011f580f52)
Diffstat (limited to 'webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html')
-rw-r--r-- | webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html new file mode 100644 index 0000000000..69744f4dd6 --- /dev/null +++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html @@ -0,0 +1,116 @@ +<html> +<head> + <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> + <title>qooxdoo » Demo » Sample</title> + <link type="text/css" rel="stylesheet" href="../../css/layout.css"/> + <!--[if IE]> + <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/> + <![endif]--> + <script type="text/javascript" src="../../script/sample.js"></script> + <script type="text/javascript" src=".qxrpc"></script> + <!-- With the above script, the service URL for a J2EE application can be + automatically determined, no matter on what path it's deployed. --> +</head> +<body> + <script type="text/javascript" src="../../script/layout.js"></script> + + <div id="demoDescription"> + <p><strong>Only works together with a RPC backend!</strong></p> + <p>Test for RPC functionality.</p> + <p> + This test calls a simple echo-style service on the server. The server + method accepts a string and sends back a string that says + "Client said: [input string]". + </p> + </div> + + <script type="text/javascript"> +// qx.Settings.setCustomOfClass("qx.io.remote.Exchange", "enableDebug", true); + qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true); + + qx.core.Init.getInstance().defineMain(function() { + var layout1 = new qx.ui.layout.VerticalBoxLayout(); + layout1.setTop(40); + layout1.setLeft(20); + layout1.setSpacing(4); + + var async = new qx.ui.form.CheckBox("Asynchronous (must be checked if cross-domain is selected)"); + layout1.add(async); + + var crossDomain = new qx.ui.form.CheckBox("Cross Domain"); + layout1.add(crossDomain); + + layout1.add(new qx.ui.basic.Label("URL:")); + var defaultURL = qx.io.remote.Rpc.makeServerURL(); + if (defaultURL == null) { + defaultURL = "/services/"; + } + var url = new qx.ui.form.TextField(defaultURL); + layout1.add(url); + + layout1.add(new qx.ui.basic.Label("Service:")); + var service = new qx.ui.form.TextField("qooxdoo.test"); + layout1.add(service); + + layout1.add(new qx.ui.basic.Label("Method:")); + var method = new qx.ui.form.TextField("echo"); + layout1.add(method); + + var layout2 = new qx.ui.layout.HorizontalBoxLayout(); + layout2.setHeight("auto"); + layout2.setVerticalChildrenAlign("middle"); + layout2.setSpacing(4); + var message = new qx.ui.form.TextField("Hello"); + message.setWidth(200); + layout2.add(message); + var send = new qx.ui.form.Button("Send to server"); + layout2.add(send); + var abort = new qx.ui.form.Button("Abort"); + abort.setEnabled(false); + layout2.add(abort); + layout1.add(layout2); + + // We'll be setting url and service upon execute; no need to do it now. + var rpc = new qx.io.remote.Rpc(); + rpc.setTimeout(10000); + var mycall = null; + + send.addEventListener("execute", function() { + // Allow the user to reset the URL and Service on each call + rpc.setUrl(url.getValue()); + rpc.setServiceName(service.getValue()); + rpc.setCrossDomain(crossDomain.isChecked()); + + if (async.isChecked()) { + send.setEnabled(false); + abort.setEnabled(true); + mycall = rpc.callAsync(function(result, ex, id) { + mycall = null; + if (ex == null) { + alert("Async(" + id + ") result: " + result); + } else { + alert("Async(" + id + ") exception: " + ex); + } + send.setEnabled(true); + abort.setEnabled(false); + }, method.getValue(), message.getValue()); + } else { + try { + var result = rpc.callSync(method.getValue(), message.getValue()); + alert("Sync result: " + result); + } catch (ex) { + alert("Sync exception: " + ex); + } + } + }); + + abort.addEventListener("execute", function() { + rpc.abort(mycall); + }); + + var d = qx.ui.core.ClientDocument.getInstance(); + d.add(layout1); + }); + </script> +</body> +</html> |