package prefuse.visual.expression; import prefuse.data.expression.ColumnExpression; import prefuse.data.expression.Expression; import prefuse.data.expression.Function; import prefuse.data.expression.NotPredicate; import prefuse.data.expression.Predicate; import prefuse.visual.VisualItem; /** * Expression that indicates if an item is currently under the mouse * pointer. * * @author <a href="http://jheer.org">jeffrey heer</a> */ public class HoverPredicate extends ColumnExpression implements Predicate, Function { /** Convenience instance for the hover == true case. */ public static final Predicate TRUE = new HoverPredicate(); /** Convenience instance for the hover == false case. */ public static final Predicate FALSE = new NotPredicate(TRUE); /** * Create a new HoverPredicate. */ public HoverPredicate() { super(VisualItem.HOVER); } /** * @see prefuse.data.expression.Function#getName() */ public String getName() { return "HOVER"; } /** * @see prefuse.data.expression.Function#addParameter(prefuse.data.expression.Expression) */ public void addParameter(Expression e) { throw new IllegalStateException("This function takes 0 parameters"); } /** * @see prefuse.data.expression.Function#getParameterCount() */ public int getParameterCount() { return 0; } /** * @see java.lang.Object#toString() */ public String toString() { return getName()+"()"; } } // end of class HoverPredicate