mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-01 07:12:50 -06:00
GWT: changed input na doutput language boxes to not pretend that they allow multiple selections.
This commit is contained in:
@@ -16,7 +16,7 @@ public class CompletionOracle extends SuggestOracle {
|
|||||||
|
|
||||||
private ErrorHandler errorHandler;
|
private ErrorHandler errorHandler;
|
||||||
|
|
||||||
private List<String> inputLangs = null;
|
private String inputLang = null;
|
||||||
|
|
||||||
private JSONRequest jsonRequest = null;
|
private JSONRequest jsonRequest = null;
|
||||||
|
|
||||||
@@ -43,8 +43,8 @@ public class CompletionOracle extends SuggestOracle {
|
|||||||
clearState();
|
clearState();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setInputLangs(List<String> inputLangs) {
|
public void setInputLanguage(String inputLang) {
|
||||||
this.inputLangs = inputLangs;
|
this.inputLang = inputLang;
|
||||||
clearState();
|
clearState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -57,8 +57,8 @@ public class CompletionOracle extends SuggestOracle {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<String> getInputLangs() {
|
public String getInputLanguage() {
|
||||||
return inputLangs;
|
return inputLang;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setErrorHandler(ErrorHandler errorHandler) {
|
public void setErrorHandler(ErrorHandler errorHandler) {
|
||||||
@@ -130,7 +130,7 @@ public class CompletionOracle extends SuggestOracle {
|
|||||||
// hack: first report no completions, to hide suggestions until we get the new completions
|
// hack: first report no completions, to hide suggestions until we get the new completions
|
||||||
callback.onSuggestionsReady(request, new SuggestOracle.Response(Collections.<CompletionSuggestion>emptyList()));
|
callback.onSuggestionsReady(request, new SuggestOracle.Response(Collections.<CompletionSuggestion>emptyList()));
|
||||||
|
|
||||||
jsonRequest = pgf.complete(getGrammarName(), request.getQuery(), getInputLangs(), null, LIMIT_SCALE_FACTOR * request.getLimit(),
|
jsonRequest = pgf.complete(getGrammarName(), request.getQuery(), getInputLanguage(), null, LIMIT_SCALE_FACTOR * request.getLimit(),
|
||||||
new PGF.CompleteCallback() {
|
new PGF.CompleteCallback() {
|
||||||
public void onResult(PGF.Completions completions) {
|
public void onResult(PGF.Completions completions) {
|
||||||
jsonRequest = null;
|
jsonRequest = null;
|
||||||
|
|||||||
@@ -1,11 +1,26 @@
|
|||||||
package se.chalmers.cs.gf.gwt.client;
|
package se.chalmers.cs.gf.gwt.client;
|
||||||
|
|
||||||
public class InputLanguageBox extends MultiListBox {
|
import com.google.gwt.user.client.ui.ListBox;
|
||||||
|
|
||||||
|
public class InputLanguageBox extends ListBox {
|
||||||
|
|
||||||
public InputLanguageBox() {
|
public InputLanguageBox() {
|
||||||
setEnabled(false);
|
setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getLanguage() {
|
||||||
|
return getValue(getSelectedIndex());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLanguage(String lang) {
|
||||||
|
int c = getItemCount();
|
||||||
|
for (int i = 0; i < c; i++) {
|
||||||
|
if (getValue(i).equals(lang)) {
|
||||||
|
setSelectedIndex(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void setGrammar(PGF.Grammar grammar) {
|
public void setGrammar(PGF.Grammar grammar) {
|
||||||
clear();
|
clear();
|
||||||
addItem("Any language", "");
|
addItem("Any language", "");
|
||||||
|
|||||||
@@ -1,11 +1,26 @@
|
|||||||
package se.chalmers.cs.gf.gwt.client;
|
package se.chalmers.cs.gf.gwt.client;
|
||||||
|
|
||||||
public class OutputLanguageBox extends MultiListBox {
|
import com.google.gwt.user.client.ui.ListBox;
|
||||||
|
|
||||||
|
public class OutputLanguageBox extends ListBox {
|
||||||
|
|
||||||
public OutputLanguageBox() {
|
public OutputLanguageBox() {
|
||||||
setEnabled(false);
|
setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getLanguage() {
|
||||||
|
return getValue(getSelectedIndex());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setLanguage(String lang) {
|
||||||
|
int c = getItemCount();
|
||||||
|
for (int i = 0; i < c; i++) {
|
||||||
|
if (getValue(i).equals(lang)) {
|
||||||
|
setSelectedIndex(i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void setGrammar(PGF.Grammar grammar) {
|
public void setGrammar(PGF.Grammar grammar) {
|
||||||
clear();
|
clear();
|
||||||
addItem("All languages", "");
|
addItem("All languages", "");
|
||||||
|
|||||||
@@ -71,21 +71,13 @@ public class PGF {
|
|||||||
|
|
||||||
/* Translation */
|
/* Translation */
|
||||||
|
|
||||||
public JSONRequest translate (String pgfName, String input, List<String> fromLangs, String cat, List<String> toLangs,
|
public JSONRequest translate (String pgfName, String input, String fromLang, String cat, String toLang,
|
||||||
final TranslateCallback callback) {
|
final TranslateCallback callback) {
|
||||||
List<Arg> args = new ArrayList<Arg>();
|
List<Arg> args = new ArrayList<Arg>();
|
||||||
args.add(new Arg("input", input));
|
args.add(new Arg("input", input));
|
||||||
if (fromLangs != null) {
|
args.add(new Arg("from", fromLang));
|
||||||
for (String from : fromLangs) {
|
|
||||||
args.add(new Arg("from", from));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
args.add(new Arg("cat", cat));
|
args.add(new Arg("cat", cat));
|
||||||
if (toLangs != null) {
|
args.add(new Arg("to", toLang));
|
||||||
for (String to : toLangs) {
|
|
||||||
args.add(new Arg("to", to));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return sendGrammarRequest(pgfName, "translate", args, callback);
|
return sendGrammarRequest(pgfName, "translate", args, callback);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -110,14 +102,10 @@ public class PGF {
|
|||||||
* @param limit The number of suggestions to get.
|
* @param limit The number of suggestions to get.
|
||||||
* If -1 is passed, all available suggestions are retrieved.
|
* If -1 is passed, all available suggestions are retrieved.
|
||||||
*/
|
*/
|
||||||
public JSONRequest complete (String pgfName, String input, List<String> fromLangs, String cat, int limit, final CompleteCallback callback) {
|
public JSONRequest complete (String pgfName, String input, String fromLang, String cat, int limit, final CompleteCallback callback) {
|
||||||
List<Arg> args = new ArrayList<Arg>();
|
List<Arg> args = new ArrayList<Arg>();
|
||||||
args.add(new Arg("input", input));
|
args.add(new Arg("input", input));
|
||||||
if (fromLangs != null) {
|
args.add(new Arg("from", fromLang));
|
||||||
for (String from : fromLangs) {
|
|
||||||
args.add(new Arg("from", from));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
args.add(new Arg("cat", cat));
|
args.add(new Arg("cat", cat));
|
||||||
if (limit != -1) {
|
if (limit != -1) {
|
||||||
args.add(new Arg("limit", limit));
|
args.add(new Arg("limit", limit));
|
||||||
@@ -140,14 +128,10 @@ public class PGF {
|
|||||||
|
|
||||||
/* Parsing */
|
/* Parsing */
|
||||||
|
|
||||||
public JSONRequest parse (String pgfName, String input, List<String> fromLangs, String cat, final ParseCallback callback) {
|
public JSONRequest parse (String pgfName, String input, String fromLang, String cat, final ParseCallback callback) {
|
||||||
List<Arg> args = new ArrayList<Arg>();
|
List<Arg> args = new ArrayList<Arg>();
|
||||||
args.add(new Arg("input", input));
|
args.add(new Arg("input", input));
|
||||||
if (fromLangs != null) {
|
args.add(new Arg("from", fromLang));
|
||||||
for (String from : fromLangs) {
|
|
||||||
args.add(new Arg("from", from));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
args.add(new Arg("cat", cat));
|
args.add(new Arg("cat", cat));
|
||||||
return sendGrammarRequest(pgfName, "parse", args, callback);
|
return sendGrammarRequest(pgfName, "parse", args, callback);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -57,7 +57,7 @@ public class SettingsPanel extends Composite {
|
|||||||
|
|
||||||
public interface SettingsListener {
|
public interface SettingsListener {
|
||||||
public void grammarChanged(String pgfName);
|
public void grammarChanged(String pgfName);
|
||||||
public void languagesChanged(List<String> inputLangs, List<String> outputLangs);
|
public void languagesChanged(String inputLang, String outputLang);
|
||||||
public void settingsError(String msg, Throwable e);
|
public void settingsError(String msg, Throwable e);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -73,7 +73,7 @@ public class SettingsPanel extends Composite {
|
|||||||
|
|
||||||
void fireLanguagesChanged() {
|
void fireLanguagesChanged() {
|
||||||
for (SettingsListener listener : listeners) {
|
for (SettingsListener listener : listeners) {
|
||||||
listener.languagesChanged(getInputLanguages(), getOutputLanguages());
|
listener.languagesChanged(getInputLanguage(), getOutputLanguage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,16 +119,16 @@ public class SettingsPanel extends Composite {
|
|||||||
// Languages
|
// Languages
|
||||||
//
|
//
|
||||||
|
|
||||||
public List<String> getInputLanguages() {
|
public String getInputLanguage() {
|
||||||
return fromLangBox.getSelectedValues();
|
return fromLangBox.getLanguage();
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<String> getOutputLanguages() {
|
public String getOutputLanguage() {
|
||||||
return toLangBox.getSelectedValues();
|
return toLangBox.getLanguage();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setInputLanguages(List<String> langs) {
|
public void setInputLanguage(String lang) {
|
||||||
fromLangBox.setSelectedValues(langs);
|
fromLangBox.setLanguage(lang);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateAvailableLanguages() {
|
private void updateAvailableLanguages() {
|
||||||
|
|||||||
@@ -85,8 +85,8 @@ public class SuggestPanel extends Composite {
|
|||||||
oracle.setGrammarName(pgfName);
|
oracle.setGrammarName(pgfName);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setInputLangs(List<String> inputLangs) {
|
public void setInputLanguage(String inputLang) {
|
||||||
oracle.setInputLangs(inputLangs);
|
oracle.setInputLanguage(inputLang);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setLimit(int limit) {
|
public void setLimit(int limit) {
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
package se.chalmers.cs.gf.gwt.client;
|
package se.chalmers.cs.gf.gwt.client;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import com.google.gwt.core.client.EntryPoint;
|
import com.google.gwt.core.client.EntryPoint;
|
||||||
import com.google.gwt.user.client.ui.Label;
|
import com.google.gwt.user.client.ui.Label;
|
||||||
import com.google.gwt.user.client.ui.RootPanel;
|
import com.google.gwt.user.client.ui.RootPanel;
|
||||||
@@ -28,8 +26,8 @@ public class TranslateApp implements EntryPoint {
|
|||||||
setStatus("Translating...");
|
setStatus("Translating...");
|
||||||
pgf.translate(settingsPanel.getGrammarName(),
|
pgf.translate(settingsPanel.getGrammarName(),
|
||||||
suggestPanel.getText(),
|
suggestPanel.getText(),
|
||||||
settingsPanel.getInputLanguages(), null,
|
settingsPanel.getInputLanguage(), null,
|
||||||
settingsPanel.getOutputLanguages(),
|
settingsPanel.getOutputLanguage(),
|
||||||
new PGF.TranslateCallback() {
|
new PGF.TranslateCallback() {
|
||||||
public void onResult (PGF.Translations translations) {
|
public void onResult (PGF.Translations translations) {
|
||||||
for (PGF.Translation t : translations.iterable()) {
|
for (PGF.Translation t : translations.iterable()) {
|
||||||
@@ -74,7 +72,7 @@ public class TranslateApp implements EntryPoint {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void updateSelectedLanguages() {
|
private void updateSelectedLanguages() {
|
||||||
suggestPanel.setInputLangs(settingsPanel.getInputLanguages());
|
suggestPanel.setInputLanguage(settingsPanel.getInputLanguage());
|
||||||
suggestPanel.setEnabled(true);
|
suggestPanel.setEnabled(true);
|
||||||
clearStatus();
|
clearStatus();
|
||||||
translate();
|
translate();
|
||||||
@@ -102,7 +100,7 @@ public class TranslateApp implements EntryPoint {
|
|||||||
public void grammarChanged(String pgfName) {
|
public void grammarChanged(String pgfName) {
|
||||||
updateSelectedGrammar();
|
updateSelectedGrammar();
|
||||||
}
|
}
|
||||||
public void languagesChanged(List<String> inputLangs, List<String> outputLangs) {
|
public void languagesChanged(String inputLang, String outputLang) {
|
||||||
updateSelectedLanguages();
|
updateSelectedLanguages();
|
||||||
}
|
}
|
||||||
public void settingsError(String msg, Throwable e) {
|
public void settingsError(String msg, Throwable e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user