1 package eu
.etaxonomy
.taxeditor
.editor
.view
.checklist
.filter
;
3 import org
.eclipse
.jface
.viewers
.Viewer
;
4 import org
.eclipse
.jface
.viewers
.ViewerFilter
;
6 import eu
.etaxonomy
.cdm
.hibernate
.HibernateProxyHelper
;
7 import eu
.etaxonomy
.cdm
.model
.name
.NonViralName
;
8 import eu
.etaxonomy
.cdm
.model
.reference
.Reference
;
9 import eu
.etaxonomy
.cdm
.model
.taxon
.Taxon
;
11 public class ChecklistEditorFilter
extends ViewerFilter
{
13 private String searchString
;
15 public void setSearchText(String s
) {
16 // Search must be a substring of the existing value
20 this.searchString
= "(?i).*" + s
+ ".*";
24 public boolean select(Viewer viewer
, Object parentElement
, Object element
) {
25 if (searchString
== null || searchString
.length() == 0) {
28 Taxon taxon
= (Taxon
) element
;
29 NonViralName
<?
> nonVirlaName
= HibernateProxyHelper
.deproxy(taxon
.getName(), NonViralName
.class);
30 Reference reference
= HibernateProxyHelper
.deproxy(nonVirlaName
.getNomenclaturalReference(), Reference
.class);
31 String rank
= taxon
.getName().getRank().toString();
33 if (nonVirlaName
.getNameCache()!=null && nonVirlaName
.getNameCache().matches(searchString
)) {
37 if (nonVirlaName
.getAuthorshipCache() != null && nonVirlaName
.getAuthorshipCache().matches(searchString
)) {
41 if(reference
!= null && reference
.getAbbrevTitleCache().matches(searchString
)){
45 if (rank
!= null && rank
.matches(searchString
)) {