* 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:
Dave Peticolas 2001-12-20 11:04:20 +00:00
parent cdb59aa5db
commit 2b2e9ab4b7

View File

@ -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))