int seqIndex = 0;
- int resIndex = 0;
+ int resIndex = -1;
public Finder(final AlignmentPanel ap)
{
else if (evt.getSource() == findAll)
{
- resIndex = 0;
+ resIndex = -1;
seqIndex = 0;
doSearch(true);
}
resIndex = finder.getResIndex();
searchResults = finder.getSearchResults();
Vector idMatch = finder.getIdMatch();
-
- if (searchResults.getSize() == 0 && idMatch.size() > 0)
+ boolean haveResults=false;
+ // set or reset the GUI
+ if ((idMatch.size() > 0))
{
+ haveResults=true;
ap.idPanel.highlightSearchResults(idMatch);
+ } else {
+ ap.idPanel.highlightSearchResults(null);
}
if (searchResults.getSize() > 0)
{
+ haveResults=true;
createNewGroup.setEnabled(true);
}
else
{
searchResults = null;
- resIndex = 0;
- seqIndex = 0;
}
// if allResults is null, this effectively switches displaySearch flag in
// seqCanvas
ap.highlightSearchResults(searchResults);
-
+ // TODO: add enablers for 'SelectSequences' or 'SelectColumns' or
+ // 'SelectRegion' selection
+ if (!haveResults)
+ {
+ ap.alignFrame.statusBar.setText("Finished searching.");
+ resIndex = -1;
+ seqIndex = 0;
+ }
if (findAll)
{
- String message = (searchResults == null ? 0 : searchResults.getSize())
- + " matches found.";
+ String message = (idMatch.size()>0) ? ""+idMatch.size()+" IDs" : "";
+ if (idMatch.size()>0 && searchResults!=null && searchResults.getSize()>0) {
+ message += " and ";
+ }
+ if (searchResults!=null) {
+ message += searchResults.getSize() + " subsequence matches.";
+ }
ap.alignFrame.statusBar.setText("Search results: " + searchString
+ " : " + message);
+
}
}