From 24f99305fcda201f67c8de846bb2d683011099b7 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Tue, 15 Sep 2009 16:27:24 -0400 Subject: Filters displaying properly --- demo/more/dbgrid.ur | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'demo') diff --git a/demo/more/dbgrid.ur b/demo/more/dbgrid.ur index 59214348..eb30a990 100644 --- a/demo/more/dbgrid.ur +++ b/demo/more/dbgrid.ur @@ -109,7 +109,11 @@ structure Direct = struct Parse = fn s => v <- signal s; return (m.Parse v), CreateFilter = source m.CreateFilter, DisplayFilter = m.DisplayFilter, - Filter = fn f v => f <- signal f; return (m.Filter f v)}, + Filter = fn f v => f <- signal f; + return (if m.FilterIsNull f then + True + else + m.Filter f v)}, {Display = fn s => , Edit = m.Edit, Initialize = fn v => source (case v of @@ -126,7 +130,7 @@ structure Direct = struct DisplayFilter = m.DisplayFilter, Filter = fn f v => f <- signal f; return (if m.FilterIsNull f then - Option.isNone v + True else case v of None => False @@ -143,13 +147,13 @@ structure Direct = struct type intFilter = basicFilter string val int : meta (intGlobal, int, intInput, intFilter) = basic {Display = fn s => {[s]}, - Edit = fn s => , + Edit = fn s => , Initialize = fn n => show n, InitializeNull = "", IsNull = eq "", Parse = fn v => read v, CreateFilter = "", - DisplayFilter = fn s => : xbody, + DisplayFilter = fn s => : xbody, Filter = fn s n => case read s of None => True -- cgit v1.2.3