gnucash maint: Multiple changes pushed
Christopher Lam
clam at code.gnucash.org
Sat Sep 26 14:38:24 EDT 2020
Updated via https://github.com/Gnucash/gnucash/commit/6ecbb814 (commit)
via https://github.com/Gnucash/gnucash/commit/d810e82f (commit)
via https://github.com/Gnucash/gnucash/commit/b72014c7 (commit)
via https://github.com/Gnucash/gnucash/commit/05bf2d7a (commit)
from https://github.com/Gnucash/gnucash/commit/e84fd6a9 (commit)
commit 6ecbb814e093da42d8c14e883bdec5130d2d23b4
Merge: e84fd6a95 d810e82f9
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sun Sep 27 02:36:39 2020 +0800
Merge branch 'maint-797893' into maint #789
commit d810e82f982ee6a498fbe54e87a6e7088cb041c5
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sat Sep 26 19:55:12 2020 +0800
[html-chart] use gensym instead of guid
... because technically guids should be freed when not needed. gensym
generates a guaranteed unique string with prefix within program lifecycle.
diff --git a/gnucash/report/html-chart.scm b/gnucash/report/html-chart.scm
index 3a0c79706..d3da4b47e 100644
--- a/gnucash/report/html-chart.scm
+++ b/gnucash/report/html-chart.scm
@@ -406,7 +406,7 @@ document.getElementById(chartid).onclick = function(evt) {
(push (lambda (l) (set! retval (cons l retval))))
;; Use a unique chart-id for each chart. This prevents charts
;; clashing on multi-column reports
- (id (guid-new-return)))
+ (id (symbol->string (gensym "chart"))))
(push (gnc:html-js-include
(gnc-path-find-localized-html-file "chartjs/Chart.bundle.min.js")))
@@ -417,12 +417,12 @@ document.getElementById(chartid).onclick = function(evt) {
(size->str (gnc:html-chart-width chart))
(size->str (gnc:html-chart-height chart))))
(push (format #f "<a id='jump-~a' href='' style='display:none'></a>\n" id))
- (push (format #f "<canvas id='chart-~a'></canvas>\n" id))
+ (push (format #f "<canvas id=~s></canvas>\n" id))
(push "</div>\n")
(push (format #f "<script id='script-~a'>\n" id))
(push (format #f "var curriso = ~s;\n" (gnc:html-chart-currency-iso chart)))
(push (format #f "var currsym = ~s;\n" (gnc:html-chart-currency-symbol chart)))
- (push (format #f "var chartid = 'chart-~a';\n" id))
+ (push (format #f "var chartid = ~s;\n" id))
(push (format #f "var jumpid = 'jump-~a';\n" id))
(push (format #f "var loadstring = ~s;\n" (G_ "Load")))
(push (format #f "var chartjsoptions = ~a;\n\n"
commit b72014c7de8e9cb7311b1d60ef3895f7060082d8
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sat Sep 26 17:43:17 2020 +0800
Bug 797893 - Unable to change font size in charts
The bug specifies chart fonts are not customisable. We can copy the
(gnucash) stylesheet properties which define <h3> and <body> font
styles onto chartjs properties.
diff --git a/gnucash/report/html-chart.scm b/gnucash/report/html-chart.scm
index 70d3d49ea..3a0c79706 100644
--- a/gnucash/report/html-chart.scm
+++ b/gnucash/report/html-chart.scm
@@ -186,7 +186,6 @@
(cons 'display #t)
(cons 'labelString "")))
(cons 'ticks (list
- (cons 'fontSize 12)
(cons 'maxRotation 30))))
;; the following another xAxis at the top
'((position . top)
@@ -205,7 +204,6 @@
(cons 'display 1.5)
(cons 'labelString "")))
(cons 'ticks (list
- (cons 'fontSize 10)
(cons 'beginAtZero #f))))
;; the following another yAxis on the right
'((position . right)
@@ -215,7 +213,6 @@
))))
(cons 'title (list
(cons 'display #t)
- (cons 'fontSize 16)
(cons 'fontStyle "")
(cons 'text ""))))))
"XXX" ;currency-iso
@@ -348,6 +345,17 @@ Chart.pluginService.register({
}
})
+// copy font info from css into chartjs.
+bodyStyle = window.getComputedStyle (document.querySelector ('body'));
+Chart.defaults.global.defaultFontSize = parseInt (bodyStyle.fontSize);
+Chart.defaults.global.defaultFontFamily = bodyStyle.fontFamily;
+Chart.defaults.global.defaultFontStyle = bodyStyle.fontStyle;
+
+titleStyle = window.getComputedStyle (document.querySelector ('h3'));
+chartjsoptions.options.title.fontSize = parseInt (titleStyle.fontSize);
+chartjsoptions.options.title.fontFamily = titleStyle.fontFamily;
+chartjsoptions.options.title.fontStyle = titleStyle.fontStyle;
+
document.getElementById(chartid).onclick = function(evt) {
var activepoints = myChart.getElementAtEvent(evt);
var anchor = document.getElementById(jumpid);
@@ -403,6 +411,8 @@ document.getElementById(chartid).onclick = function(evt) {
(push (gnc:html-js-include
(gnc-path-find-localized-html-file "chartjs/Chart.bundle.min.js")))
+ ;; the following hidden h3 is used to query style and copy onto chartjs
+ (push "<h3 style='display:none'></h3>")
(push (format #f "<div style='width:~a;height:~a;'>\n"
(size->str (gnc:html-chart-width chart))
(size->str (gnc:html-chart-height chart))))
@@ -428,7 +438,6 @@ document.getElementById(chartid).onclick = function(evt) {
(push "chartjsoptions.options.tooltips.callbacks.label = tooltipLabel;\n")
(push "chartjsoptions.options.tooltips.callbacks.title = tooltipTitle;\n")
- (push "Chart.defaults.global.defaultFontFamily = \"'Trebuchet MS', Arial, Helvetica, sans-serif\";\n")
(push JS-setup)
(push "var myChart = new Chart(chartid, chartjsoptions);\n")
commit 05bf2d7a9ccc35856ef17fbc60671fc892de1e32
Author: Christopher Lam <christopher.lck at gmail.com>
Date: Sat Sep 26 17:31:48 2020 +0800
[reports] use h3 instead of h2 for report-title
"Title" style applies to h3. Ensure that report titles are h3 to be
styled as requested by stylesheets.
diff --git a/gnucash/report/html-utilities.scm b/gnucash/report/html-utilities.scm
index a801111e1..d5bda78a3 100644
--- a/gnucash/report/html-utilities.scm
+++ b/gnucash/report/html-utilities.scm
@@ -228,13 +228,10 @@
(define (gnc:html-make-generic-simple-warning report-title-string message)
- (let ((p (gnc:make-html-text)))
- (gnc:html-text-append!
- p
- (gnc:html-markup-h2 (string-append report-title-string ":"))
- (gnc:html-markup-h2 "")
- (gnc:html-markup-p message))
- p))
+ (gnc:make-html-text
+ (gnc:html-markup-h3 (string-append report-title-string ":"))
+ (gnc:html-markup-h3 "")
+ (gnc:html-markup-p message)))
(define (gnc:html-make-options-link report-id)
@@ -301,14 +298,11 @@
(define (gnc:html-make-generic-warning
report-title-string report-id
warning-title-string warning-string)
- (let ((p (gnc:make-html-text)))
- (gnc:html-text-append!
- p
- (gnc:html-markup-h2 (string-append (G_ report-title-string) ":"))
- (gnc:html-markup-h2 warning-title-string)
- (gnc:html-markup-p warning-string)
- (gnc:html-make-options-link report-id))
- p))
+ (gnc:make-html-text
+ (gnc:html-markup-h3 (string-append (G_ report-title-string) ":"))
+ (gnc:html-markup-h3 warning-title-string)
+ (gnc:html-markup-p warning-string)
+ (gnc:html-make-options-link report-id)))
(define (gnc:html-make-generic-options-warning
report-title-string report-id)
diff --git a/gnucash/report/reports/example/welcome-to-gnucash.scm b/gnucash/report/reports/example/welcome-to-gnucash.scm
index 6675312ae..80a2e0768 100644
--- a/gnucash/report/reports/example/welcome-to-gnucash.scm
+++ b/gnucash/report/reports/example/welcome-to-gnucash.scm
@@ -37,7 +37,7 @@
(gnc:html-document-add-object!
doc
(gnc:make-html-text
- (gnc:html-markup-h2
+ (gnc:html-markup-h3
(format #f (G_ "Welcome to GnuCash ~a !")
gnc:version))
(gnc:html-markup-p
diff --git a/gnucash/report/reports/standard/new-owner-report.scm b/gnucash/report/reports/standard/new-owner-report.scm
index 8e0cbcad3..b64c4b02b 100644
--- a/gnucash/report/reports/standard/new-owner-report.scm
+++ b/gnucash/report/reports/standard/new-owner-report.scm
@@ -1079,7 +1079,7 @@ invoices and amounts.")))))
(gnc:html-document-add-object!
document
(gnc:make-html-text
- (gnc:html-markup-h2 (G_ "No transactions found."))
+ (gnc:html-markup-h3 (G_ "No transactions found."))
(gnc:html-markup-p (G_ "No matching transactions found"))
(gnc:html-make-options-link (gnc:report-id report-obj)))))
diff --git a/gnucash/report/reports/standard/price-scatter.scm b/gnucash/report/reports/standard/price-scatter.scm
index a10e7f130..787bd1333 100644
--- a/gnucash/report/reports/standard/price-scatter.scm
+++ b/gnucash/report/reports/standard/price-scatter.scm
@@ -192,7 +192,7 @@
(gnc:html-document-add-object!
document
(gnc:make-html-text
- (gnc:html-markup-h2 title)
+ (gnc:html-markup-h3 title)
(gnc:html-markup-p text))))
(gnc:html-chart-set-type! chart 'line)
Summary of changes:
gnucash/report/html-chart.scm | 23 ++++++++++++++-------
gnucash/report/html-utilities.scm | 24 ++++++++--------------
.../report/reports/example/welcome-to-gnucash.scm | 2 +-
.../report/reports/standard/new-owner-report.scm | 2 +-
gnucash/report/reports/standard/price-scatter.scm | 2 +-
5 files changed, 28 insertions(+), 25 deletions(-)
More information about the gnucash-changes
mailing list