72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
|
(s:p " Result Format: total / pass / fail / other")
(s:fieldset
(conc "Runs data for " tfilter)
;;
;; A very basic display
;;
(let* ((a-keys (sort (hash-table-keys ordered-data) string>=?))
(b-keys (delete-duplicates(sort (apply
append
(map (lambda (sub-key)
(let ((subdat (hash-table-ref ordered-data sub-key)))
(hash-table-keys subdat)))
a-keys))
string>=?))))
; (c-keys (delete-duplicates b-keys)))
(if #f ;; swap rows/cols
(s:table
(s:tr (s:td "")(map s:tr b-keys))
(map
(lambda (row-key)
(let ((subdat (hash-table-ref ordered-data row-key)))
(s:tr (s:td row-key)
(map
(lambda (col-key)
(s:td (let ((dat (hash-table-ref/default subdat col-key #f)))
(s:td (if dat
(list (vector-ref dat 0)(vector-ref dat 1))
"")))))
b-keys))))
a-keys))
(s:table
(s:tr (s:td "")(map s:td a-keys))
(map
(lambda (row-key)
(s:tr (s:td row-key)
(map
(lambda (col-key)
|
|
<
<
<
|
<
<
<
|
|
|
|
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
(s:p " Result Format: total / pass / fail / other")
(s:fieldset
(conc "Runs data for " tfilter)
;;
;; A very basic display
;;
(let* ((a-keys (pgdb:ordered-data->a-keys ordered-data))
(b-keys (pgdb:ordered-data->b-keys ordered-data a-keys)))
;; (c-keys (delete-duplicates b-keys)))
(if #f ;; swap rows/cols
(s:table
(s:tr (s:td "")(map s:tr b-keys))
(map
(lambda (row-key)
(let ((subdat (hash-table-ref ordered-data row-key)))
(s:tr (s:td row-key)
(map
(lambda (col-key)
(s:td (let ((dat (hash-table-ref/default subdat col-key #f)))
(s:td (if dat
(list (vector-ref dat 0)(vector-ref dat 1))
"")))))
b-keys))))
a-keys))
(s:table
(s:tr (s:td "")(map s:td a-keys))
(map
(lambda (row-key)
(s:tr (s:td row-key)
(map
(lambda (col-key)
|