mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
* src/report/report-gnome/report-gnome.scm: move some report
menu setup functionality here git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@6403 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
cdb59aa5db
commit
2b2e9ab4b7
@ -9,12 +9,17 @@
|
||||
(use-modules (gnucash main)) ;; FIXME: delete after we finish modularizing.
|
||||
(use-modules (gnucash gnc-module))
|
||||
|
||||
(use-modules (ice-9 slib))
|
||||
(require 'printf)
|
||||
|
||||
(use-modules (g-wrapped gw-report-gnome))
|
||||
|
||||
(gnc:module-load "gnucash/gnome-utils" 0)
|
||||
(gnc:module-load "gnucash/report/report-system" 0)
|
||||
|
||||
(export gnc:report-edit-options)
|
||||
(export gnc:report-menu-setup)
|
||||
(export gnc:add-report-template-menu-items)
|
||||
|
||||
(define (gnc:report-options-editor report)
|
||||
(if (equal? (gnc:report-type report) "Multicolumn View")
|
||||
@ -34,3 +39,67 @@
|
||||
report))
|
||||
(gnc:report-set-editor-widget! report editor-widg))
|
||||
(gnc:warning-dialog (_ "This report has no options.")))))))
|
||||
|
||||
(define (gnc:add-report-template-menu-items)
|
||||
(define menu-namer (gnc:new-menu-namer))
|
||||
|
||||
(define (add-template-menu-item name template)
|
||||
(if (gnc:report-template-in-menu? template)
|
||||
(let ((title (string-append (_ "Report") ": " (_ name)))
|
||||
(menu-path (gnc:report-template-menu-path template))
|
||||
(menu-name (gnc:report-template-menu-name template))
|
||||
(menu-tip (gnc:report-template-menu-tip template))
|
||||
(item #f))
|
||||
|
||||
(if (not menu-path)
|
||||
(set! menu-path '(""))
|
||||
(set! menu-path
|
||||
(append menu-path '(""))))
|
||||
|
||||
(set! menu-path (append (list gnc:menuname-reports) menu-path))
|
||||
|
||||
(if menu-name (set! name menu-name))
|
||||
|
||||
(if (not menu-tip)
|
||||
(set! menu-tip
|
||||
(sprintf #f (_ "Display the %s report") (_ name))))
|
||||
|
||||
(set! item
|
||||
(gnc:make-menu-item
|
||||
((menu-namer 'add-name) name)
|
||||
menu-tip
|
||||
menu-path
|
||||
(lambda ()
|
||||
(let ((report (gnc:make-report
|
||||
(gnc:report-template-name template))))
|
||||
(gnc:main-window-open-report report #f)))))
|
||||
(gnc:add-extension item))))
|
||||
|
||||
(gnc:report-templates-for-each add-template-menu-item))
|
||||
|
||||
(define (gnc:report-menu-setup)
|
||||
;; since this menu gets added to every child window, we say it
|
||||
;; comes after the "_File" menu.
|
||||
(define menu (gnc:make-menu gnc:menuname-reports (list "_File")))
|
||||
(define menu-namer (gnc:new-menu-namer))
|
||||
(define tax-menu (gnc:make-menu gnc:menuname-taxes
|
||||
(list gnc:menuname-reports "")))
|
||||
(define income-expense-menu
|
||||
(gnc:make-menu gnc:menuname-income-expense
|
||||
(list gnc:menuname-reports "")))
|
||||
(define asset-liability-menu
|
||||
(gnc:make-menu gnc:menuname-asset-liability
|
||||
(list gnc:menuname-reports "")))
|
||||
(define utility-menu
|
||||
(gnc:make-menu gnc:menuname-utility
|
||||
(list gnc:menuname-reports "")))
|
||||
|
||||
(gnc:add-extension menu)
|
||||
|
||||
;; (gnc:add-extension tax-menu)
|
||||
(gnc:add-extension income-expense-menu)
|
||||
(gnc:add-extension asset-liability-menu)
|
||||
(gnc:add-extension utility-menu)
|
||||
|
||||
;; push reports (new items added on top of menu)
|
||||
(gnc:add-report-template-menu-items))
|
||||
|
Loading…
Reference in New Issue
Block a user