001    package jigcell.compare.ui;
002    
003    import jigcell.compare.ITab;
004    
005    /**
006     * Represents a Comparator tab that has promised functionality for finding by name.  Components supporting only a subset of these features
007     * should throw an UnsupportedOperationException to indicate features that are not supported.
008     *
009     * <p>
010     * This code is licensed under the DARPA BioCOMP Open Source License.  See LICENSE for more details.
011     * </p>
012     *
013     * @author Nicholas Allen
014     */
015    
016    public interface INameFinderTab extends ITab {
017    
018       /**
019        * Starts a search operation using the user interface.
020        */
021    
022       void findByName ();
023    
024       /**
025        * Resumes a search for a name.  Returns whether an instance was found.
026        *
027        * @param forward Whether to search forwards
028        */
029    
030       boolean findByName (boolean forward);
031    
032       /**
033        * Performs a search operation using the user interface.
034        *
035        * @param resume Whether to resume the last search
036        * @param forward Whether to search forwards
037        */
038    
039       void findByName (boolean resume, boolean forward);
040    
041       /**
042        * Searches for a name.  Returns whether an instance was found.
043        *
044        * @param name Name to search for
045        * @param forward Whether to search forwards
046        */
047    
048       boolean findByName (String name, boolean forward);
049    
050       /**
051        * Text of the last search performed.
052        */
053    
054       String getLastSearchName ();
055    }