@Inject public LiveSearchDropDown(View view, ManagedInstance<LiveSearchSelectorItem<TYPE>> liveSearchSelectorItems) { this.view = view; this.liveSearchSelectorItems = liveSearchSelectorItems; this.view.init(this); searchHint = view.getDefaultSearchHintI18nMessage(); selectorHint = view.getDefaultSelectorHintI18nMessage(); notFoundMessage = view.getDefaultNotFoundI18nMessage(); }
protected void addNewItem(LiveSearchEntry<TYPE> entry) { LiveSearchSelectorItem<TYPE> itemInstance = liveSearchSelectorItems.get(); itemInstance.init(entry.getKey(), entry.getValue()); selectionHandler.selectItem(itemInstance); searchCache.clear(); String pattern = lastSearch; lastSearch = null; search(pattern); view.restoreFooter(); }
public void setSelectedItem(final TYPE key) { searchService.searchEntry(key, results -> { if(results.size() == 1) { LiveSearchEntry<TYPE> entry = results.get(0); changeCallbackEnabled = false; LiveSearchSelectorItem<TYPE> item = getSelectorItemForEntry(entry); selectionHandler.selectItem(item); item.select(); view.clearItems(); lastSearch = null; changeCallbackEnabled = true; } }); }
public void setSelectedItem(final TYPE key) { searchService.searchEntry(key, results -> { if(results.size() == 1) { LiveSearchEntry<TYPE> entry = results.get(0); changeCallbackEnabled = false; LiveSearchSelectorItem<TYPE> item = getSelectorItemForEntry(entry); selectionHandler.selectItem(item); item.select(); view.clearItems(); lastSearch = null; changeCallbackEnabled = true; } }); }
@Override public Widget asWidget() { return view.asWidget(); }
void onItemsShown() { Scheduler.get().scheduleDeferred(() -> { search(lastSearch); view.restoreFooter(); }); }
@Override public Widget asWidget() { return view.asWidget(); }
public void showResults(LiveSearchResults<TYPE> results) { view.clearItems(); if (results.isEmpty()) { view.noItems(notFoundMessage); } else { results.forEach(LiveSearchDropDown.this::getSelectorItemForEntry); } }
public void clear() { lastSearch = null; view.clearSearch(); view.clearItems(); view.setDropDownText(selectorHint); }
public LiveSearchSelectorItem<TYPE> getSelectorItemForEntry(LiveSearchEntry<TYPE> entry) { LiveSearchSelectorItem<TYPE> item = liveSearchSelectorItems.get(); item.init(entry.getKey(), entry.getValue()); selectionHandler.registerItem(item); view.addItem(item); return item; }
public void clear() { lastSearch = null; view.clearSearch(); view.clearItems(); view.setDropDownText(selectorHint); }
public LiveSearchSelectorItem<TYPE> getSelectorItemForEntry(LiveSearchEntry<TYPE> entry) { LiveSearchSelectorItem<TYPE> item = liveSearchSelectorItems.get(); item.init(entry.getKey(), entry.getValue()); selectionHandler.registerItem(item); view.addItem(item); return item; }
@Inject public LiveSearchDropDown(View view, ManagedInstance<LiveSearchSelectorItem<TYPE>> liveSearchSelectorItems) { this.view = view; this.liveSearchSelectorItems = liveSearchSelectorItems; this.view.init(this); searchHint = view.getDefaultSearchHintI18nMessage(); selectorHint = view.getDefaultSelectorHintI18nMessage(); notFoundMessage = view.getDefaultNotFoundI18nMessage(); }
void onItemsShown() { Scheduler.get().scheduleDeferred(() -> { search(lastSearch); view.restoreFooter(); }); }
protected void addNewItem(LiveSearchEntry<TYPE> entry) { LiveSearchSelectorItem<TYPE> itemInstance = liveSearchSelectorItems.get(); itemInstance.init(entry.getKey(), entry.getValue()); selectionHandler.selectItem(itemInstance); searchCache.clear(); String pattern = lastSearch; lastSearch = null; search(pattern); view.restoreFooter(); }
public void showResults(LiveSearchResults<TYPE> results) { view.clearItems(); if (results.isEmpty()) { view.noItems(notFoundMessage); } else { results.forEach(LiveSearchDropDown.this::getSelectorItemForEntry); } }