From 807a314063c7c0c5a209504cc4ada00f936a190c Mon Sep 17 00:00:00 2001 From: bjorn Date: Wed, 22 Oct 2008 19:59:43 +0000 Subject: [PATCH] Added PGF.parse method to GWT client. --- src/server/Makefile | 2 +- .../src/se/chalmers/cs/gf/gwt/client/PGF.java | 27 +++++++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/src/server/Makefile b/src/server/Makefile index 1d4060391..1df20398e 100644 --- a/src/server/Makefile +++ b/src/server/Makefile @@ -9,7 +9,7 @@ pgf.fcgi: gwt: gwt/Translate-compile -gf-gwt.jar: gwt +gf-gwt.jar: jar -cf $@ -C gwt/src se cp $@ ../../lib/java diff --git a/src/server/gwt/src/se/chalmers/cs/gf/gwt/client/PGF.java b/src/server/gwt/src/se/chalmers/cs/gf/gwt/client/PGF.java index daf97c7ae..a47977747 100644 --- a/src/server/gwt/src/se/chalmers/cs/gf/gwt/client/PGF.java +++ b/src/server/gwt/src/se/chalmers/cs/gf/gwt/client/PGF.java @@ -154,6 +154,33 @@ public class PGF { public final native String getText() /*-{ return this.text; }-*/; } + /* Parsing */ + + public PGFRequest parse (String input, List fromLangs, String cat, final ParseCallback callback) { + List args = new ArrayList(); + args.add(new Arg("input", input)); + if (fromLangs != null) { + for (String from : fromLangs) { + args.add(new Arg("from", from)); + } + } + args.add(new Arg("cat", cat)); + return sendRequest("parse", args, callback); + } + + public interface ParseCallback extends GFCallback { } + + public static class ParseResults extends IterableJsArray { + protected ParseResults() { } + } + + public static class ParseResult extends JavaScriptObject { + protected ParseResult() { } + + public final native String getFrom() /*-{ return this.from; }-*/; + public final native String getTree() /*-{ return this.tree; }-*/; + } + /* Utilities */ private PGFRequest sendRequest (String resource, List vars, final GFCallback callback) {