]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/scl/expressions/SCLExpressionItemFilter.java
View for used SCL expressions
[simantics/platform.git] / bundles / org.simantics.modeling.ui / src / org / simantics / modeling / ui / scl / expressions / SCLExpressionItemFilter.java
diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/scl/expressions/SCLExpressionItemFilter.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/scl/expressions/SCLExpressionItemFilter.java
new file mode 100644 (file)
index 0000000..bcc8b02
--- /dev/null
@@ -0,0 +1,24 @@
+package org.simantics.modeling.ui.scl.expressions;
+
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerFilter;
+
+public class SCLExpressionItemFilter extends ViewerFilter {
+
+    private String searchString;
+
+    public void setSearchText(String s) {
+        // ensure that the value can be used for matching
+        this.searchString = (".*" + s + ".*").toLowerCase();
+    }
+
+    @Override
+    public boolean select(Viewer viewer, Object parentElement, Object element) {
+        if (searchString == null || searchString.length() == 0)
+            return true;
+        SCLExpressionTableEntry entry = (SCLExpressionTableEntry) element;
+        if (entry.getContent().toLowerCase().matches(searchString))
+            return true;
+        return false;
+    }
+}
\ No newline at end of file