|
|
|
|
@ -53,18 +53,6 @@
|
|
|
|
|
|
|
|
|
|
options))
|
|
|
|
|
|
|
|
|
|
(define (make-child-options-callback view child)
|
|
|
|
|
(let* ((view-opts (gnc:report-options view))
|
|
|
|
|
(child-opts (gnc:report-options child))
|
|
|
|
|
(id
|
|
|
|
|
(gnc:options-register-callback
|
|
|
|
|
#f #f
|
|
|
|
|
(lambda ()
|
|
|
|
|
(gnc:report-set-dirty?! child #t)
|
|
|
|
|
(gnc:options-touch view-opts))
|
|
|
|
|
child-opts)))
|
|
|
|
|
id))
|
|
|
|
|
|
|
|
|
|
(define (render-view report)
|
|
|
|
|
(let* ((view-doc (gnc:make-html-document))
|
|
|
|
|
(options (gnc:report-options report))
|
|
|
|
|
@ -80,17 +68,6 @@
|
|
|
|
|
(current-width 0)
|
|
|
|
|
(current-row-num 0))
|
|
|
|
|
|
|
|
|
|
;; make sure each subreport has an option change callback that
|
|
|
|
|
;; pings the parent
|
|
|
|
|
(let loop ((reports reports) (new-reports '()))
|
|
|
|
|
(match reports
|
|
|
|
|
(() (gnc:option-set-value report-opt (reverse new-reports)))
|
|
|
|
|
(((child rowspan colspan callback) . rest)
|
|
|
|
|
(let ((callback (or callback
|
|
|
|
|
(make-child-options-callback
|
|
|
|
|
report (gnc-report-find child)))))
|
|
|
|
|
(loop rest (cons (list child rowspan colspan callback) new-reports))))))
|
|
|
|
|
|
|
|
|
|
;; we really would rather do something smart here with the
|
|
|
|
|
;; report's cached text if possible. For the moment, we'll have
|
|
|
|
|
;; to rerun every report, every time... FIXME
|
|
|
|
|
|