/** * Sets the selected index. The reason we have this method is just for back compatibility. All the method do is just * to invoke {@link #setSelectedIndex(int, boolean)}. * <p/> * Please do NOT try to override this method. Always override {@link #setSelectedIndex(int, boolean)} instead. * * @param index the index to be selected * @param incremental a flag to enable multiple selection. If the flag is true, the element at the index should be * added to current selection. If false, you should clear previous selection and then select the * element. */ public void adjustSelectedIndex(int index, boolean incremental) { setSelectedIndex(index, incremental); }
/** * Select the index for the searching text. * * @param index the start offset * @param searchingText the searching text presented in the searchable event to be fired here. */ protected void select(int index, String searchingText) { if (index != -1) { setSelectedIndex(index, true); setCursor(index, true); Object element = getElementAt(index); fireSearchableEvent(new SearchableEvent(this, SearchableEvent.SEARCHABLE_MATCH, searchingText, element, convertElementToString(element))); } else { setSelectedIndex(-1, false); fireSearchableEvent(new SearchableEvent(this, SearchableEvent.SEARCHABLE_NOMATCH, searchingText)); } }
private void highlightAllOrNext() { if (_highlightsButton.isSelected()) { _previousCursor = _searchable.getCurrentIndex(); highlightAll(); } else { if (_previousCursor >= 0) { _searchable.setCursor(_previousCursor); _searchable.setSelectedIndex(_previousCursor, false); } highlightNext(); } }
private void setSelectedItem(Object item) { _selecting = true; for (int i = 0, n = getSearchable().getElementCount(); i < n; i++) { Object currentItem = getSearchable().getElementAt(i); // current item starts with the pattern? if (JideSwingUtilities.equals(item, currentItem)) { getSearchable().setSelectedIndex(i, false); } } _selecting = false; }
protected void select(int index, String searchingText, boolean incremental) { if (index != -1) { _searchable.setSelectedIndex(index, incremental); _searchable.setCursor(index, incremental); _textField.setBackground(UIDefaultsLookup.getColor("TextField.background")); _comboBox.getEditor().getEditorComponent().setBackground(UIDefaultsLookup.getColor("TextField.background")); } else { _searchable.setSelectedIndex(-1, false); _textField.setBackground(getMismatchBackground()); _comboBox.getEditor().getEditorComponent().setBackground(UIDefaultsLookup.getColor("TextField.background")); } _searchable.firePropertyChangeEvent(searchingText); if (index != -1) { Object element = _searchable.getElementAt(index); _searchable.fireSearchableEvent(new SearchableEvent(_searchable, SearchableEvent.SEARCHABLE_MATCH, searchingText, element, _searchable.convertElementToString(element))); } else { _searchable.fireSearchableEvent(new SearchableEvent(_searchable, SearchableEvent.SEARCHABLE_NOMATCH, searchingText)); } }
@Override protected void select(int index, KeyEvent e, String searchingText) { if (index != -1) { boolean incremental = e != null && isIncrementalSelectKey(e); setSelectedIndex(index, incremental); Searchable.this.setCursor(index, incremental); _textField.setForeground(Searchable.this.getForeground()); _noMatch.setText(""); } else { _textField.setForeground(getMismatchForeground()); _noMatch.setText(getResourceString("Searchable.noMatch")); } updatePopupBounds(); if (index != -1) { Object element = getElementAt(index); fireSearchableEvent(new SearchableEvent(Searchable.this, SearchableEvent.SEARCHABLE_MATCH, searchingText, element, convertElementToString(element))); } else { fireSearchableEvent(new SearchableEvent(Searchable.this, SearchableEvent.SEARCHABLE_NOMATCH, searchingText)); } }
_matchCount = -1; do { setSelectedIndex(newIndex, false); oldIndex = newIndex; newIndex = findNext(s); setSelectedIndex(selectedIndex, false); setReverseOrder(reverse);
setSelectedIndex(index, false); // clear side effect of ctrl-a will select all items Searchable.this.setCursor(index); // as setSelectedIndex is used directly, we have to manually set the cursor value.
if (getSearchable().getElementCount() > 0) { index = 0; getSearchable().setSelectedIndex(0, false); if (getSearchable().getElementCount() > 0) { index = 0; getSearchable().setSelectedIndex(0, false);
int index = _searchable.findFirst(text); if (index != -1) { _searchable.setSelectedIndex(index, false); // clear side effect of ctrl-a will select all items