List of usage examples for com.google.gwt.user.client.ui SuggestBox addKeyUpHandler
public HandlerRegistration addKeyUpHandler(KeyUpHandler handler)
From source file:com.phideltcmu.recruiter.client.ui.popup.AdminAdd.java
License:Creative Commons License
private void fillSuggest(List<InternalUser> list, final SuggestBox suggestbox) { MultiWordSuggestOracle oracle = (MultiWordSuggestOracle) suggestbox.getSuggestOracle(); // Populate the suggestion oracle for (InternalUser person : list) { oracle.add(person.getName());/*from ww w. ja v a 2 s. c om*/ } // When a suggestion is selected, switch to that client suggestbox.addSelectionHandler(new SelectionHandler<SuggestOracle.Suggestion>() { @Override public void onSelection(SelectionEvent<SuggestOracle.Suggestion> suggestionSelectionEvent) { } }); // If the user hits enter in the search box, inspect the company suggestbox.addKeyUpHandler(new KeyUpHandler() { private int keyUpCount = 0; @Override public void onKeyUp(KeyUpEvent event) { // Bug in GWT 2.0.3. KeyUpEvent gets fired twice... keyUpCount++; if (keyUpCount % 2 == 0) { return; } if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { suggestbox.setFocus(false); } } }); this.display(); }
From source file:de.uni_koeln.spinfo.maalr.webapp.ui.common.client.ConfigurableSearchArea.java
License:Apache License
private Widget buildOracle(final UiField field) { MultiWordSuggestOracle oracle = new MultiWordSuggestOracle() { @Override// ww w .j a v a 2s . c om public void requestSuggestions(final Request request, final Callback callback) { service.getSuggestions(field.getId(), request.getQuery(), request.getLimit(), new AsyncCallback<List<String>>() { @Override public void onFailure(Throwable caught) { } @Override public void onSuccess(List<String> result) { Response response = new Response(); List<Suggestion> suggestions = new ArrayList<Suggestion>(); for (String string : result) { suggestions.add(new MultiWordSuggestion(string, string)); } response.setSuggestions(suggestions); callback.onSuggestionsReady(request, response); } }); } }; final SuggestBox box = new SuggestBox(oracle); box.setValue(field.getInitialValue()); box.getValueBox().addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { String old = oracleHistory.get(field.getId()); if (old != null) { box.getValueBox().setText(old); } box.getValueBox().selectAll(); box.showSuggestionList(); } }); box.addKeyDownHandler(new KeyDownHandler() { @Override public void onKeyDown(KeyDownEvent event) { if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { box.getValueBox().selectAll(); event.stopPropagation(); event.preventDefault(); box.setFocus(true); fireDelayedUpdate(); } } }); box.addKeyUpHandler(new KeyUpHandler() { @Override public void onKeyUp(KeyUpEvent event) { if (box.getValue() == null || box.getValue().trim().length() == 0) { currentValues.remove(field.getId()); } else { currentValues.put(field.getId(), box.getValue()); } oracleHistory.put(field.getId(), box.getValue()); //fireDelayedUpdate(); } }); box.addSelectionHandler(new SelectionHandler<SuggestOracle.Suggestion>() { @Override public void onSelection(SelectionEvent<Suggestion> event) { String string = event.getSelectedItem().getReplacementString(); if (box.getValue() == null || box.getValue().trim().length() == 0) { currentValues.remove(field.getId()); } else { currentValues.put(field.getId(), string); } fireDelayedUpdate(); } }); return box; }