Добавление / изменение SuggestOracle после построения SuggestBox в GWT - PullRequest
6 голосов
/ 05 января 2012

Вся информация, которую я могу найти для SuggestBox и MultiWordSuggestOracle, предполагает, что единственный способ установить оракул для окна подсказок - это когда он создан. Я не думаю, что это имеет смысл, так как есть конструктор по умолчанию, который не принимает оракула и создает его для вас, предположительно пустой. Это не очень хорошо. То, что я ищу, это методы типа setSuggestOracle(MultiWordSuggestOracle) или addToSuggestOracle(String), но я не могу найти ничего в документации, предлагающей, как это сделать.

1 Ответ

8 голосов
/ 05 января 2012

Не похоже, что вы можете изменить экземпляр SuggestOracle после создания SuggestBox, но вы можете получить к нему доступ с помощью SuggetBox::getSuggestOracle(). Оттуда вам придется приводить к реализующему классу, чтобы вносить в него изменения; сам базовый класс SuggestOracle ничего не предоставляет. Так что-то вроде:

SuggestOracle oracle = new MultiWordSuggestOracle();
SuggestBox box = new SuggestBox(oracle);

try {
  MultiWordSuggestOracle multiWordOracle = (MultiWordSuggestOracle)box.getOracle();
  multiWordOracle.add("This awesome suggestion.");
} catch (ClassCastException e ) {
  // the oracle was not what you thought it was
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...