You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pivot.apache.org by gb...@apache.org on 2009/03/17 17:17:21 UTC
svn commit: r755298 - in /incubator/pivot/trunk: demos/src/pivot/demos/dom/
demos/src/pivot/demos/dom/DOMTest.java
wtk/src/pivot/wtk/BrowserApplicationContext.java
Author: gbrown
Date: Tue Mar 17 16:17:21 2009
New Revision: 755298
URL: http://svn.apache.org/viewvc?rev=755298&view=rev
Log:
Add Pivot/DOM interaction demo.
Added:
incubator/pivot/trunk/demos/src/pivot/demos/dom/
incubator/pivot/trunk/demos/src/pivot/demos/dom/DOMTest.java
Modified:
incubator/pivot/trunk/wtk/src/pivot/wtk/BrowserApplicationContext.java
Added: incubator/pivot/trunk/demos/src/pivot/demos/dom/DOMTest.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/demos/src/pivot/demos/dom/DOMTest.java?rev=755298&view=auto
==============================================================================
--- incubator/pivot/trunk/demos/src/pivot/demos/dom/DOMTest.java (added)
+++ incubator/pivot/trunk/demos/src/pivot/demos/dom/DOMTest.java Tue Mar 17 16:17:21 2009
@@ -0,0 +1,70 @@
+/*
+ * Copyright (c) 2009 VMware, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package pivot.demos.dom;
+
+import pivot.collections.Dictionary;
+import pivot.wtk.Alert;
+import pivot.wtk.Application;
+import pivot.wtk.BrowserApplicationContext;
+import pivot.wtk.Button;
+import pivot.wtk.ButtonPressListener;
+import pivot.wtk.Display;
+import pivot.wtk.FlowPane;
+import pivot.wtk.HorizontalAlignment;
+import pivot.wtk.PushButton;
+import pivot.wtk.Window;
+
+public class DOMTest implements Application {
+ private Window window = null;
+ private PushButton helloButton = null;
+
+ public void startup(Display display, Dictionary<String, String> properties)
+ throws Exception {
+ FlowPane flowPane = new FlowPane();
+ flowPane.getStyles().put("horizontalAlignment", HorizontalAlignment.CENTER);
+
+ helloButton = new PushButton("Say Hello");
+ flowPane.add(helloButton);
+
+ helloButton.getButtonPressListeners().add(new ButtonPressListener() {
+ public void buttonPressed(Button button) {
+ BrowserApplicationContext.eval("sayHello(\"Hello from Java!\")");
+ }
+ });
+
+ window = new Window(flowPane);
+ window.setMaximized(true);
+ window.open(display);
+ }
+
+ public boolean shutdown(boolean optional) {
+ if (window != null) {
+ window.close();
+ }
+
+ return true;
+ }
+
+ public void suspend() {
+ }
+
+ public void resume() {
+ }
+
+ public void sayHello(String helloText) {
+ Alert.alert(helloText, window);
+ }
+}
Modified: incubator/pivot/trunk/wtk/src/pivot/wtk/BrowserApplicationContext.java
URL: http://svn.apache.org/viewvc/incubator/pivot/trunk/wtk/src/pivot/wtk/BrowserApplicationContext.java?rev=755298&r1=755297&r2=755298&view=diff
==============================================================================
--- incubator/pivot/trunk/wtk/src/pivot/wtk/BrowserApplicationContext.java (original)
+++ incubator/pivot/trunk/wtk/src/pivot/wtk/BrowserApplicationContext.java Tue Mar 17 16:17:21 2009
@@ -254,6 +254,10 @@
* documentation on the <tt>separate_jvm</tt> applet parameter.
*/
public static Object eval(String script) {
+ if (hostApplet == null) {
+ throw new IllegalStateException("Application is not running in a web browser.");
+ }
+
try {
JSObject window = JSObject.getWindow(hostApplet);
return window.eval(script);