List of usage examples for com.google.gwt.user.client.ui SuggestBox SuggestBox
public SuggestBox(SuggestOracle oracle)
From source file:cc.alcina.framework.gwt.client.gwittir.widget.BoundSuggestBox.java
License:Apache License
public void suggestOracle(BoundSuggestOracle suggestOracle) { this.suggestOracle = suggestOracle; base = new SuggestBox(suggestOracle); ((DefaultSuggestionDisplay) base.getSuggestionDisplay()).setPopupStyleName("bound-suggest-box-popup"); ((DefaultSuggestionDisplay) base.getSuggestionDisplay()).setMatchTextBoxWidth(true); ((DefaultSuggestionDisplay) base.getSuggestionDisplay()).setMatchTextBoxAdjust(-4); if (withPlaceholder) { base.getValueBox().getElement().setPropertyString("placeholder", placeholderText); }//from www . j a v a 2 s . c om base.addSelectionHandler(evt -> { if (evt.getSelectedItem() != null) { setValue((T) ((BoundSuggestOracleSuggestion) evt.getSelectedItem()).typedValue); } }); base.addFocusListener(new FocusListener() { @Override public void onFocus(Widget sender) { TextBoxBase baseBox = (TextBoxBase) base.getValueBox(); String baseTextAtFocusTime = base.getText(); if (showOnFocus || !Ax.isBlank(baseTextAtFocusTime)) { showOnFocus = false; if (!Ax.isBlank(baseTextAtFocusTime) && !base.isInSuggestionCallback()) { Scheduler.get().scheduleDeferred(() -> { if (baseBox.getText().equals(baseTextAtFocusTime)) { baseBox.setSelectionRange(0, baseBox.getText().length()); } }); base.showSuggestions(baseTextAtFocusTime); } } } @Override public void onLostFocus(Widget sender) { if (!Objects.equals(base.getText(), renderer.apply(value))) { setValue(null); } } }); super.initWidget(base); }
From source file:ch.heftix.mailxel.client.AddressEditBar.java
License:Open Source License
public AddressEditBar(final MailServiceAsync mailxelService, final MailxelPanel mailxelPanel) { // mlPanel = new MultiLinePanel(100, new Label(","), 1); mlPanel = new MultiLinePanel(100, null); AddressSuggestOracle oracle = new AddressSuggestOracle(mailxelService, mailxelPanel); sb = new SuggestBox(oracle); sb.setWidth("80px"); sb.addSelectionHandler(new SelectionHandler<Suggestion>() { public void onSelection(SelectionEvent<Suggestion> event) { AddressSuggestion s = (AddressSuggestion) event.getSelectedItem(); AddressTO aTO = s.getAddressTO(); addAddress(aTO);/*from w w w . j av a2s . c om*/ sb.setValue(""); } }); Image add = new Image("img/plus.png"); add.setTitle("add recipient"); add.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { String tmp = sb.getText(); if (null != tmp && tmp.length() > 3 && tmp.contains("@")) { AddressTO aTO = new AddressTO(); aTO.address = tmp.trim(); addAddress(aTO); sb.setValue(""); } } }); Image erase = new Image("img/eraser.png"); erase.setTitle("remove all recipients"); erase.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { for (DeletableItem<AddressTO> di : items) { mlPanel.removeWidget(di); } items.clear(); } }); add(sb); add(add); add(erase); add(mlPanel); }
From source file:ch.heftix.mailxel.client.CategorizationToolbar.java
License:Open Source License
public CategorizationToolbar(final HasPrevNext prevNextProvider, final MailDetailDisplay mailDetailDisplay, final MailServiceAsync mailxelService, final MailxelPanel mailxelPanel) { this.prevNextProvider = prevNextProvider; this.mailDetailDisplay = mailDetailDisplay; final AsyncCallback<Void> markCatCallback = new AsyncCallback<Void>() { public void onSuccess(Void result) { // mailxelPanel.setWorking(false); showNext();/* w w w . j a v a2 s.co m*/ mailxelPanel.updateMailCounts(); } public void onFailure(Throwable caught) { // mailxelPanel.setWorking(false); mailxelPanel.statusError("set categories failed", caught); } }; Image fwd = new Image("img/resultset_next.png"); fwd.setTitle("Next"); fwd.setStylePrimaryName("mailxel-toolbar-item"); fwd.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { showNext(); } }); Image prev = new Image("img/resultset_previous.png"); prev.setTitle("Next"); prev.setStylePrimaryName("mailxel-toolbar-item"); prev.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { showPrev(); } }); Image scheduleForLater = new Image("img/clock_go.png"); scheduleForLater.setTitle("Schedule for Later"); scheduleForLater.setStylePrimaryName("mailxel-toolbar-item"); scheduleForLater.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 999, markCatCallback); } } }); // Image scheduleForToday = new Image("img/target.png"); // scheduleForToday.setTitle("Schedule for Today"); // scheduleForToday.setStylePrimaryName("mailxel-toolbar-item"); // scheduleForToday.addClickHandler(new ClickHandler() { // // public void onClick(ClickEvent sender) { // if (currentMessageId > 0) { // mailxelService.markStatus(currentMessageId, 992, markCatCallback); // } // } // }); Image imgLike = new Image("img/star-small.png"); imgLike.setTitle("Like"); imgLike.setStylePrimaryName("mailxel-toolbar-item"); imgLike.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 989, markCatCallback); } } }); Image ignore = new Image("img/ignore.png"); ignore.setTitle("Ignore"); ignore.setStylePrimaryName("mailxel-toolbar-item"); ignore.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 994, markCatCallback); } } }); Image tookNote = new Image("img/eye.png"); tookNote.setTitle("Took Note"); tookNote.setStylePrimaryName("mailxel-toolbar-item"); tookNote.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 993, markCatCallback); } } }); Image waitForAnswer = new Image("img/hourglass.png"); waitForAnswer.setTitle("waiting for answer"); waitForAnswer.setStylePrimaryName("mailxel-toolbar-item"); waitForAnswer.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 998, markCatCallback); } } }); Image done = new Image("img/tick.png"); done.setTitle("task completed"); done.setStylePrimaryName("mailxel-toolbar-item"); done.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { mailxelService.markStatus(currentMessageId, 997, markCatCallback); } } }); Image trash = new Image("img/bin.png"); trash.setTitle("trash"); trash.setStylePrimaryName("mailxel-toolbar-item"); trash.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { if (currentMessageId > 0) { List<Integer> ids = new ArrayList<Integer>(); ids.add(currentMessageId); mailxelService.markAsDeleted(ids, markCatCallback); } } }); CategorySuggestOracle oracle = new CategorySuggestOracle(mailxelService); final SuggestBox gtdSb = new SuggestBox(oracle); gtdSb.setWidth("50px"); gtdSb.setTitle("add category"); Image categorize = new Image("img/categorize.png"); categorize.setTitle("categorize"); categorize.setStylePrimaryName("mailxel-toolbar-item"); categorize.addClickHandler(new ClickHandler() { public void onClick(ClickEvent sender) { String gtd = gtdSb.getText(); if (currentMessageId > 0 && null != gtd) { List<Integer> ids = new ArrayList<Integer>(); ids.add(currentMessageId); mailxelService.updateCategories(ids, gtd, markCatCallback); } } }); HorizontalPanel gtdBar = new HorizontalPanel(); gtdBar.add(gtdSb); gtdBar.add(categorize); add(prev); add(scheduleForLater); // add(scheduleForToday); add(imgLike); add(waitForAnswer); add(done); add(tookNote); add(ignore); add(trash); add(gtdBar); add(fwd); }
From source file:co.fxl.gui.gwt.GWTContainer.java
License:Open Source License
@Override public ISuggestField suggestField() { GWTSuggestField.OracleAdapter suggestOracle = new GWTSuggestField.OracleAdapter(); setComponent((T) new SuggestBox(suggestOracle)); GWTSuggestField gsf = new GWTSuggestField((GWTContainer<SuggestBox>) this); suggestOracle.element = gsf;/*from ww w. j a v a 2 s.c o m*/ element = gsf; return (ISuggestField) element; }
From source file:com.appspot.socialinquirer.client.view.HomeViewImpl.java
License:Apache License
/** * Instantiates a new home view impl./*w ww.ja va2 s.c om*/ * * @param constants the constants * @param oracle the oracle */ public HomeViewImpl(final EverScribeConstants constants, SingleWordSuggestOracle oracle) { this.constants = constants; questionsTable = new CellTable<Question>(); SimplePager.Resources ideasPagerResources = GWT.create(SimplePager.Resources.class); questionsPaginator = new SimplePager(TextLocation.CENTER, ideasPagerResources, false, 0, true); questionsPaginator.setDisplay(questionsTable); final SelectionModel<Question> questionsSelectionModel = new SingleSelectionModel<Question>( new KeyProvider<Question>()); questionsTable.setSelectionModel(questionsSelectionModel, DefaultSelectionEventManager.<Question>createCheckboxManager()); initTableColumns(questionsTable, questionsSelectionModel); questionsSearchBox = new SuggestBox(oracle); templatesTable = new CellTable<Message>(); SimplePager.Resources linkedHubPagerResources = GWT.create(SimplePager.Resources.class); templatesPaginator = new SimplePager(TextLocation.CENTER, linkedHubPagerResources, false, 0, true); templatesPaginator.setPageSize(5); templatesTable.setPageSize(5); templatesPaginator.setDisplay(templatesTable); // final SelectionModel<Message> linkedHubConnectionsSelectionModel = new MultiSelectionModel<Message>( // new KeyProvider<Message>()); // templatesTable.setSelectionModel(linkedHubConnectionsSelectionModel, // DefaultSelectionEventManager.<Message>createCheckboxManager()); initTableColumns(templatesTable); initWidget(uiBinder.createAndBindUi(this)); searchResults.setVisible(false); introduction.setVisible(true); feeds.setVisible(false); viewMenu.setCommand(new Command() { @Override public void execute() { presenter.onViewClicked(getSelectedQuestion()); } }); // followMenu.setCommand(new Command() { // @Override // public void execute() { // presenter.onFollowClicked(getSelectedQuestion()); // } // }); analyzeMenu.setCommand(new Command() { @Override public void execute() { presenter.onAnalyzeClicked(getSelectedQuestion()); } }); summarizeMenu.setCommand(new Command() { @Override public void execute() { presenter.onSummarizeClicked(getSelectedQuestion()); } }); suggestAnswerMenu.setCommand(new Command() { @Override public void execute() { presenter.onSuggestAnswerClicked(getSelectedQuestion()); } }); spellCheckMenu.setCommand(new Command() { @Override public void execute() { presenter.onSpellCheckClicked(getSelectedQuestion()); } }); speakMenu.setCommand(new Command() { @Override public void execute() { presenter.onSpeakClicked(getSelectedQuestion()); } }); runCodeMenu.setCommand(new Command() { @Override public void execute() { presenter.onRunCodeClicked(getSelectedQuestion()); } }); for (final TextLanguage language : TextLanguage.values()) { MenuItem menuItem = new MenuItem(language.name(), new Command() { @Override public void execute() { presenter.onTranslateClicked(getSelectedQuestion(), language); } }); menuItem.setEnabled(true); languageBar.addItem(menuItem); } }
From source file:com.appspot.socialinquirer.client.view.XmppSettingsViewImpl.java
License:Apache License
/** * Instantiates a new xmpp settings view impl. * * @param oracle the oracle//from ww w .j a va 2s .co m */ public XmppSettingsViewImpl(SingleWordSuggestOracle oracle) { showRelatedMode = new ListBox(false); translateMode = new ListBox(false); textToSpeechMode = new ListBox(false); summarizeMode = new ListBox(false); spellCheckMode = new ListBox(false); grammarCheckMode = new ListBox(false); for (ReplyMode mode : ReplyMode.values()) { showRelatedMode.addItem(mode.value(), mode.name()); translateMode.addItem(mode.value(), mode.name()); textToSpeechMode.addItem(mode.value(), mode.name()); summarizeMode.addItem(mode.value(), mode.name()); } for (CheckMode mode : CheckMode.values()) { spellCheckMode.addItem(mode.value(), mode.name()); grammarCheckMode.addItem(mode.value(), mode.name()); } identifyingTags = new SuggestBox(oracle); initWidget(uiBinder.createAndBindUi(this)); advancedOptions.setAnimationEnabled(true); }
From source file:com.apress.progwt.client.calculator.Calculator.java
License:Apache License
public Calculator() { DockPanel dockPanel = new DockPanel(); Grid controls = new Grid(5, 2); Grid numbersP = new Grid(4, 3); // initialize the 1-9 buttons for (int row = 0; row < 3; row++) { for (int col = 0; col < 3; col++) { numbersP.setWidget(row, col, new NumberButton(this, row * 3 + col + 1)); }/*from w ww.j a v a2s. c om*/ } numbersP.setWidget(3, 0, new NumberButton(this, 0)); numbersP.setWidget(3, 1, new NumberButton(this, ".")); numbersP.setWidget(3, 2, new ControlButton(this, new ControlAction(this, "+/-") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { return -1 * current; } })); controls.setWidget(0, 0, new ControlButton(this, new ControlAction(this, "/") { @Override public double performAction(ControlAction lastAction, double previous, double current) { return previous / current; } })); controls.setWidget(0, 1, new ControlButton(this, new ControlAction(this, "sqrt") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { return Math.sqrt(current); } })); controls.setWidget(1, 0, new ControlButton(this, new ControlAction(this, "*") { @Override public double performAction(ControlAction lastAction, double previous, double current) { return previous * current; } })); controls.setWidget(1, 1, new ControlButton(this, new ControlAction(this, "%") { @Override public double performAction(ControlAction lastAction, double previous, double current) { return previous % current; } })); controls.setWidget(2, 0, new ControlButton(this, new ControlAction(this, "-") { @Override public double performAction(ControlAction lastAction, double previous, double current) { return previous - current; } })); controls.setWidget(2, 1, new ControlButton(this, new ControlAction(this, "1/x") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { return 1 / current; } })); controls.setWidget(3, 0, new ControlButton(this, new ControlAction(this, "+") { @Override public double performAction(ControlAction lastAction, double previous, double current) { return previous + current; } })); controls.setWidget(3, 1, new ControlButton(this, new ControlAction(this, "=") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { if (lastAction == null) { return current; } return lastAction.performAction(null, previous, current); } })); controls.setWidget(4, 0, new ControlButton(this, new ControlAction(this, "bksp") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { String cStr = current + ""; if (cStr.endsWith(".0")) { cStr = cStr.substring(0, cStr.length() - 3); } else { cStr = cStr.substring(0, cStr.length() - 1); } if (cStr.equals("")) { cStr = "0"; } return Double.parseDouble(cStr); } })); controls.setWidget(4, 1, new ControlButton(this, new ControlAction(this, "clear") { @Override public boolean isMultiArg() { return false; } @Override public double performAction(ControlAction lastAction, double previous, double current) { return 0; } })); dockPanel.add(numbersP, DockPanel.CENTER); dockPanel.add(controls, DockPanel.EAST); inputBox = new TextBox(); inputBox.addStyleName("ResultBox"); dockPanel.add(inputBox, DockPanel.NORTH); ticker = new TextArea(); ticker.setSize("7em", "140px"); MultiWordSuggestOracle oracle = new MultiWordSuggestOracle(); oracle.add("Jill"); oracle.add("Jeff"); oracle.add("James"); oracle.add("Jennifer"); SuggestBox box = new SuggestBox(oracle); box.addEventHandler(new SuggestionHandler() { public void onSuggestionSelected(SuggestionEvent suggE) { String selected = suggE.getSelectedSuggestion().getReplacementString(); // do something with selected suggestion } }); dockPanel.add(box, DockPanel.SOUTH); HorizontalPanel mainP = new HorizontalPanel(); mainP.add(dockPanel); mainP.add(ticker); initWidget(mainP); setResult(0); }
From source file:com.apress.progwt.client.suggest.AbstractCompleter.java
License:Apache License
public AbstractCompleter(AbstractSuggestOracle<T> oracle, CompleteListener<T> completeListener) { super();/*from www .jav a 2 s .c o m*/ this.oracle = oracle; this.completeListener = completeListener; suggestBox = new SuggestBox(oracle); suggestBox.addEventHandler(new SuggestionHandler() { public void onSuggestionSelected(SuggestionEvent event) { Log.debug("On Suggestion Selected! " + event.getSelectedSuggestion().getReplacementString()); // Important, this prevents duplications if (keyboardEnterTimer != null) { keyboardEnterTimer.cancel(); } complete(event.getSelectedSuggestion().getReplacementString()); } }); suggestBox.addKeyboardListener(new KeyboardListenerAdapter() { // @Override public void onKeyPress(Widget sender, char keyCode, int modifiers) { if (keyCode == KEY_ENTER) { keyboardEnterTimer = new Timer() { // @Override public void run() { complete(suggestBox.getText()); } }; keyboardEnterTimer.schedule(400); } } }); initWidget(suggestBox); }
From source file:com.cubusmail.client.widgets.SuggestBoxItem.java
License:Open Source License
public SuggestBoxItem(String s, String s1, SuggestOracle suggestOracle) { super(s, s1); suggestBoxField = new SuggestBox(suggestOracle); suggestBoxField.setWidth("100%"); suggestBoxField.setStyleName("gwt-SuggestBox"); suggestBoxField.setHeight(getHeight() + "px"); canvas.setHeight(getHeight());/*from w ww. j a va 2s . c o m*/ canvas.setStyleName("gwt-SuggestBoxCanvas"); canvas.addChild(suggestBoxField); setCanvas(canvas); }
From source file:com.dawg6.gwt.client.widgets.SearchableComboBox.java
License:Open Source License
public SearchableComboBox(ComboBox<T> comboBox) { VerticalPanel panel = new VerticalPanel(); initWidget(panel);//from ww w .ja v a 2 s .c om this.comboBox = comboBox; this.oracle = new MultiWordSuggestOracle(); this.textField = new SuggestBox(oracle); panel.add(textField); panel.add(comboBox); comboBox.setWidth("100%"); comboBox.addObserver(new ListChangedHandler<T>() { @Override public void listChanged(List<T> list) { setSuggestions(list); } }); textField.addSelectionHandler(new SelectionHandler<Suggestion>() { @Override public void onSelection(SelectionEvent<Suggestion> event) { suggestionSelected(event); } }); }