/*************************************************** * * cismet GmbH, Saarbruecken, Germany * * ... and it just works. * ****************************************************/ package Sirius.navigator.search.dynamic; import de.cismet.cids.server.search.MetaObjectNodeServerSearch; /** * A listener which is used by SearchControlPanel to customize the search process. * * @author jweintraut * @version $Revision$, $Date$ */ public interface SearchControlListener { //~ Methods ---------------------------------------------------------------- /** * Has to assemble a AbstractCidsServerSearch which corresponds to the current user input. * * @return A AbstractCidsServerSearch object reflecting the user input. */ MetaObjectNodeServerSearch assembleSearch(); /** * Is invoked by SearchControlPanel as soon as the user clicks the search button. */ void searchStarted(); /** * Is invoked by SearchControlPanel when the search is done. This means whether the search is done and didn't * provide a result or the SearchResultsTree is updated. * * @param numberOfResults Count of result objects. */ void searchDone(int numberOfResults); /** * Invoked by SearchControlPanel when the user canceled the search. */ void searchCanceled(); /** * Tells the SearchControlPanel to suppress or display a message if no result was found. * * @return <code>false</code> if SearchControlPanel should display a message if the search didn't provide a result. */ boolean suppressEmptyResultMessage(); }