package org.openswing.swing.util.client; import javax.swing.*; /** * <p>Title: OpenSwing Framework</p> * <p>Description: Interface implemented by combo control, list control and grid control to search items.</p> * <p>Copyright: Copyright (C) 2006 Mauro Carniel</p> * <p> </p> * @author Mauro Carniel * @version 1.0 */ public interface SearchControl { /** * @return the selected index in the input control */ public int getSelectedIndex(); /** * Set the selected index. */ public void setSelectedIndex(int index); /** * @return total rows count in the input control */ public int getRowCount(); /** * @return the element at the specified index, converted in String format */ public String getValueAt(int index); /** * @return combo control or list control or grid control */ public JComponent getComponent(); /** * @return <code>true</code> if the input control is in read only mode (so search is enabled), <code>false</code> otherwise */ public boolean isReadOnly(); /** * @return <code>true</code> to disable key listening on input control (for instance, in case of nested grids), <code>false</code> to listen for key events */ public boolean disableListener(); /** * Method invoked by SearchWindowManager when the specified "textToSeach" pattern has not matchings in the current content * of binded control. * This callback can be used to retrieve additional data into control and to search inside new data. * @param textToSeach patten of text to search * @return -1 if no additional data is available, otherwise the row index of data just added that satify the pattern */ public int search(String textToSeach); }