diff --git a/gnucash/report/html-document.scm b/gnucash/report/html-document.scm index a5a4c994be..36f82cde9e 100644 --- a/gnucash/report/html-document.scm +++ b/gnucash/report/html-document.scm @@ -22,6 +22,7 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (use-modules (gnucash html)) +(use-modules (srfi srfi-9)) (use-modules (ice-9 match)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -29,15 +30,35 @@ ;; this is the top-level object representing an entire HTML document. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -(define - (make-record-type "" - '(style-sheet style-stack style style-text title headline objects))) +(define-record-type + (make-html-document-internal style-sheet style-stack style + style-text title headline objects) + html-document? + (style-sheet html-document-style-sheet html-document-set-style-sheet) + (style-stack html-document-style-stack html-document-set-style-stack) + (style html-document-style html-document-set-style) + (style-text html-document-style-text html-document-set-style-text) + (title html-document-title html-document-set-title) + (headline html-document-headline html-document-set-headline) + (objects html-document-objects html-document-set-objects)) -(define gnc:html-document? - (record-predicate )) - -(define gnc:make-html-document-internal - (record-constructor )) +(define gnc:html-document-set-title! html-document-set-title) +(define gnc:html-document-title html-document-title) +(define gnc:html-document-set-headline! html-document-set-headline) +(define gnc:html-document-headline html-document-headline) +(define gnc:html-document-set-style-sheet! html-document-set-style-sheet) +(define gnc:html-document-set-style-sheet! html-document-set-style-sheet) +(define gnc:html-document-style-sheet html-document-style-sheet) +(define gnc:html-document-set-style-stack! html-document-set-style-stack) +(define gnc:html-document-style-stack html-document-style-stack) +(define gnc:html-document-set-style-text! html-document-set-style-text) +(define gnc:html-document-style-text html-document-style-text) +(define gnc:html-document-set-style-internal! html-document-set-style) +(define gnc:html-document-style html-document-style) +(define gnc:html-document-set-objects! html-document-set-objects) +(define gnc:html-document-objects html-document-objects) +(define gnc:html-document? html-document?) +(define gnc:make-html-document-internal make-html-document-internal) (define (gnc:make-html-document) (gnc:make-html-document-internal @@ -50,54 +71,6 @@ '() ;; subobjects )) -(define gnc:html-document-set-title! - (record-modifier 'title)) - -(define gnc:html-document-title - (record-accessor 'title)) - -(define gnc:html-document-set-headline! - (record-modifier 'headline)) - -(define gnc:html-document-headline - (record-accessor 'headline)) - -(define gnc:html-document-set-style-sheet! - (record-modifier 'style-sheet)) - -(define gnc:html-document-set-style-sheet! - (record-modifier 'style-sheet)) - -(define gnc:html-document-style-sheet - (record-accessor 'style-sheet)) - -(define gnc:html-document-set-style-stack! - (record-modifier 'style-stack)) - -(define gnc:html-document-style-stack - (record-accessor 'style-stack)) - -(define gnc:html-document-set-style-text! - (record-modifier 'style-text)) - -(define gnc:html-document-style-text - (record-accessor 'style-text)) - -(define gnc:html-document-set-style-internal! - (record-modifier 'style)) - -(define gnc:html-document-style - (record-accessor 'style)) - -(define gnc:html-document-set-objects! - (record-modifier 'objects)) - -(define gnc:html-document-objects - (record-accessor 'objects)) - -(define gnc:html-document? - (record-predicate )) - (define (gnc:html-document-set-style! doc tag . rest) (gnc:html-style-table-set! (gnc:html-document-style doc) tag