private List doSearch (String prefix) { List results = new ArrayList (); // do search forward the selected index int startIndex = getSelectedIndex () == -1 ? 0 : getSelectedIndex(); int size = getModel ().getSize (); while (true) { startIndex = startIndex % size; startIndex = getNextMatch (prefix, startIndex, Position.Bias.Forward); if (startIndex != -1 && !results.contains(new Integer (startIndex))) { results.add (new Integer (startIndex)); String elementName = getModel().getElementAt(startIndex).toString(); // initialize prefix if (maxPrefix == null) { maxPrefix = elementName; } maxPrefix = findMaxPrefix (maxPrefix, elementName); // try next element startIndex ++; } else { break; } } return results; }
private List doSearch (String prefix) { List results = new ArrayList (); // do search forward the selected index int startIndex = getSelectedIndex () == -1 ? 0 : getSelectedIndex(); int size = getModel ().getSize (); while (true) { startIndex = startIndex % size; startIndex = getNextMatch (prefix, startIndex, Position.Bias.Forward); if (startIndex != -1 && !results.contains(new Integer (startIndex))) { results.add (new Integer (startIndex)); String elementName = getModel().getElementAt(startIndex).toString(); // initialize prefix if (maxPrefix == null) { maxPrefix = elementName; } maxPrefix = findMaxPrefix (maxPrefix, elementName); // try next element startIndex ++; } else { break; } } return results; }
private List<Integer> doSearch(String prefix) { List<Integer> results = new ArrayList<Integer>(); // do search forward the selected index int startIndex = (getSelectedIndex() == -1) ? 0 : getSelectedIndex(); int size = getModel().getSize(); if (size == 0) return results; // nothing to search while (true) { startIndex = startIndex % size; startIndex = getNextMatch(prefix, startIndex, Position.Bias.Forward); if ((startIndex != -1) && !results.contains(new Integer(startIndex))) { results.add(Integer.valueOf(startIndex)); String elementName = getModel().getElementAt(startIndex).toString(); // initialize prefix if (maxPrefix == null) { maxPrefix = elementName; } maxPrefix = findMaxPrefix(maxPrefix, elementName); // try next element startIndex++; } else { break; } } return results; }
/** * Adds the search field to the tree. */ private void displaySearchField() { if (getModel().getSize() > 0 && !searchTextField.isDisplayable()) { JViewport viewport = ListView.this.getViewport(); originalScrollMode = viewport.getScrollMode(); viewport.setScrollMode(JViewport.SIMPLE_SCROLL_MODE); //Rectangle visibleTreeRect = getVisibleRect(); prepareSearchPanel(); add(searchpanel); revalidate(); repaint(); System.err.println("Displayed search field"); // bugfix #28501, avoid the chars duplicated on jdk1.3 SwingUtilities.invokeLater(new Runnable() { public void run() { searchTextField.requestFocus(); } }); } else { System.err.println("Not setting up search: " + searchTextField.isDisplayable()); } }
/** * Adds the search field to the tree. */ private void displaySearchField() { if (getModel().getSize() > 0 && !searchTextField.isDisplayable()) { JViewport viewport = ListView.this.getViewport(); originalScrollMode = viewport.getScrollMode(); viewport.setScrollMode(JViewport.SIMPLE_SCROLL_MODE); //Rectangle visibleTreeRect = getVisibleRect(); prepareSearchPanel(); add(searchpanel); revalidate(); repaint(); System.err.println("Displayed search field"); // bugfix #28501, avoid the chars duplicated on jdk1.3 SwingUtilities.invokeLater(new Runnable() { public void run() { searchTextField.requestFocus(); } }); } else { System.err.println("Not setting up search: " + searchTextField.isDisplayable()); } }
/** * Adds the search field to the tree. */ private void displaySearchField() { if ((getModel().getSize() > 0) && !searchTextField.isDisplayable()) { JViewport viewport = ListView.this.getViewport(); originalScrollMode = viewport.getScrollMode(); viewport.setScrollMode(JViewport.SIMPLE_SCROLL_MODE); //Rectangle visibleTreeRect = getVisibleRect(); prepareSearchPanel(); add(searchpanel); revalidate(); repaint(); // bugfix #28501, avoid the chars duplicated on jdk1.3 SwingUtilities.invokeLater( new Runnable() { public void run() { searchTextField.requestFocus(); } } ); } }