Mercurial > urweb
comparison demo/more/dbgrid.urs @ 961:8c37699de273
Grid sorting working
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 19 Sep 2009 13:32:33 -0400 |
parents | da3ec6014d2f |
children | fbc3a0eef45a |
comparison
equal
deleted
inserted
replaced
960:6f34950825b6 | 961:8c37699de273 |
---|---|
9 Display : input -> xbody, | 9 Display : input -> xbody, |
10 Edit : input -> xbody, | 10 Edit : input -> xbody, |
11 Validate : input -> signal bool, | 11 Validate : input -> signal bool, |
12 CreateFilter : transaction filter, | 12 CreateFilter : transaction filter, |
13 DisplayFilter : filter -> xbody, | 13 DisplayFilter : filter -> xbody, |
14 Filter : filter -> $row -> signal bool} | 14 Filter : filter -> $row -> signal bool, |
15 Sort : option ($row -> $row -> bool)} | |
15 | 16 |
16 con colMeta = fn (row :: {Type}) (global_input_filter :: (Type * Type * Type)) => | 17 con colMeta = fn (row :: {Type}) (global_input_filter :: (Type * Type * Type)) => |
17 {Initialize : transaction global_input_filter.1, | 18 {Initialize : transaction global_input_filter.1, |
18 Handlers : global_input_filter.1 -> colMeta' row global_input_filter.2 global_input_filter.3} | 19 Handlers : global_input_filter.1 -> colMeta' row global_input_filter.2 global_input_filter.3} |
19 | 20 |
28 Edit : actual_input_filter.2 -> xbody, | 29 Edit : actual_input_filter.2 -> xbody, |
29 Initialize : actual_input_filter.1 -> transaction actual_input_filter.2, | 30 Initialize : actual_input_filter.1 -> transaction actual_input_filter.2, |
30 Parse : actual_input_filter.2 -> signal (option actual_input_filter.1), | 31 Parse : actual_input_filter.2 -> signal (option actual_input_filter.1), |
31 CreateFilter : transaction actual_input_filter.3, | 32 CreateFilter : transaction actual_input_filter.3, |
32 DisplayFilter : actual_input_filter.3 -> xbody, | 33 DisplayFilter : actual_input_filter.3 -> xbody, |
33 Filter : actual_input_filter.3 -> actual_input_filter.1 -> signal bool} | 34 Filter : actual_input_filter.3 -> actual_input_filter.1 -> signal bool, |
35 Sort : actual_input_filter.1 -> actual_input_filter.1 -> bool} | |
34 | 36 |
35 datatype metaBoth actual input filter = | 37 datatype metaBoth actual input filter = |
36 NonNull of metaBase (actual, input, filter) * metaBase (option actual, input, filter) | 38 NonNull of metaBase (actual, input, filter) * metaBase (option actual, input, filter) |
37 | Nullable of metaBase (actual, input, filter) | 39 | Nullable of metaBase (actual, input, filter) |
38 | 40 |
77 con row :: {Type} | 79 con row :: {Type} |
78 con t :: Type | 80 con t :: Type |
79 val show_t : show t | 81 val show_t : show t |
80 val read_t : read t | 82 val read_t : read t |
81 val eq_t : eq t | 83 val eq_t : eq t |
84 val ord_t : ord t | |
82 val inj_t : sql_injectable t | 85 val inj_t : sql_injectable t |
83 con nm :: Name | 86 con nm :: Name |
84 constraint [nm] ~ row | 87 constraint [nm] ~ row |
85 table tab : ([nm = t] ++ row) | 88 table tab : ([nm = t] ++ row) |
86 val render : $([nm = t] ++ row) -> string | 89 val render : $([nm = t] ++ row) -> string |