mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Add toolbar element for saving the current report.
2004-06-30 Christian Stimming <stimming@tuhh.de> * src/report/report-gnome/window-report.c: Add toolbar element for saving the current report. * src/report/report-system/report.scm, report-system.scm: Add function for saving one particular report to the ~/.gnucash/saved-reports-1.8 file. Add extra menu only for customized reports. * src/scm/main-window.scm, src/scm/main.scm: Remove the previous function for saving all reports since it is no longer necessary. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@10127 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
5a101b3354
commit
063e545fc0
13
ChangeLog
13
ChangeLog
@ -1,3 +1,16 @@
|
|||||||
|
2004-06-30 Christian Stimming <stimming@tuhh.de>
|
||||||
|
|
||||||
|
* src/report/report-gnome/window-report.c: Add toolbar element for
|
||||||
|
saving the current report.
|
||||||
|
|
||||||
|
* src/report/report-system/report.scm, report-system.scm: Add
|
||||||
|
function for saving one particular report to the
|
||||||
|
~/.gnucash/saved-reports-1.8 file. Add extra menu only for
|
||||||
|
customized reports.
|
||||||
|
|
||||||
|
* src/scm/main-window.scm, src/scm/main.scm: Remove the previous
|
||||||
|
function for saving all reports since it is no longer necessary.
|
||||||
|
|
||||||
2004-06-26 Derek Atkins <derek@ihtfp.com>
|
2004-06-26 Derek Atkins <derek@ihtfp.com>
|
||||||
|
|
||||||
* src/gnc-module/gnc-module.scm: create (and export) a re-export macro
|
* src/gnc-module/gnc-module.scm: create (and export) a re-export macro
|
||||||
|
@ -94,18 +94,21 @@
|
|||||||
(define menu (gnc:make-menu gnc:menuname-reports
|
(define menu (gnc:make-menu gnc:menuname-reports
|
||||||
(list gnc:window-name-main "_Actions")))
|
(list gnc:window-name-main "_Actions")))
|
||||||
(define menu-namer (gnc:new-menu-namer))
|
(define menu-namer (gnc:new-menu-namer))
|
||||||
(define tax-menu (gnc:make-menu gnc:menuname-taxes
|
|
||||||
(list gnc:window-name-main
|
|
||||||
gnc:menuname-reports "")))
|
|
||||||
(define income-expense-menu
|
|
||||||
(gnc:make-menu gnc:menuname-income-expense
|
|
||||||
(list gnc:window-name-main gnc:menuname-reports "")))
|
|
||||||
(define asset-liability-menu
|
(define asset-liability-menu
|
||||||
(gnc:make-menu gnc:menuname-asset-liability
|
(gnc:make-menu gnc:menuname-asset-liability
|
||||||
(list gnc:window-name-main gnc:menuname-reports "")))
|
(list gnc:window-name-main gnc:menuname-reports "")))
|
||||||
|
(define income-expense-menu
|
||||||
|
(gnc:make-menu gnc:menuname-income-expense
|
||||||
|
(list gnc:window-name-main gnc:menuname-reports "")))
|
||||||
(define utility-menu
|
(define utility-menu
|
||||||
(gnc:make-menu gnc:menuname-utility
|
(gnc:make-menu gnc:menuname-utility
|
||||||
(list gnc:window-name-main gnc:menuname-reports "")))
|
(list gnc:window-name-main gnc:menuname-reports "")))
|
||||||
|
(define custom-menu
|
||||||
|
(gnc:make-menu gnc:menuname-custom
|
||||||
|
(list gnc:window-name-main gnc:menuname-reports "")))
|
||||||
|
(define tax-menu
|
||||||
|
(gnc:make-menu gnc:menuname-taxes
|
||||||
|
(list gnc:window-name-main gnc:menuname-reports "")))
|
||||||
|
|
||||||
(gnc:add-extension menu)
|
(gnc:add-extension menu)
|
||||||
|
|
||||||
@ -113,6 +116,7 @@
|
|||||||
(gnc:add-extension income-expense-menu)
|
(gnc:add-extension income-expense-menu)
|
||||||
(gnc:add-extension asset-liability-menu)
|
(gnc:add-extension asset-liability-menu)
|
||||||
(gnc:add-extension utility-menu)
|
(gnc:add-extension utility-menu)
|
||||||
|
(gnc:add-extension custom-menu)
|
||||||
|
|
||||||
;; run report-hook danglers
|
;; run report-hook danglers
|
||||||
(gnc:hook-run-danglers gnc:*report-hook*)
|
(gnc:hook-run-danglers gnc:*report-hook*)
|
||||||
|
@ -534,6 +534,20 @@ gnc_report_window_params_cb(GtkWidget * w, gpointer data)
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
gnc_report_window_save_cb(GtkWidget * w, gpointer data)
|
||||||
|
{
|
||||||
|
gnc_report_window * report = data;
|
||||||
|
SCM save_func = gh_eval_str("gnc:report-save-to-savefile");
|
||||||
|
|
||||||
|
if(report->cur_report != SCM_BOOL_F)
|
||||||
|
{
|
||||||
|
gh_call1(save_func, report->cur_report);
|
||||||
|
}
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
/* We got a draw event. See if we need to reload the report */
|
/* We got a draw event. See if we need to reload the report */
|
||||||
static void
|
static void
|
||||||
gnc_report_window_draw_cb(GtkWidget *unused, GdkRectangle *unused1, gpointer data)
|
gnc_report_window_draw_cb(GtkWidget *unused, GdkRectangle *unused1, gpointer data)
|
||||||
@ -901,6 +915,15 @@ gnc_report_window_create_toolbar(gnc_report_window * win,
|
|||||||
GNOME_STOCK_PIXMAP_PRINT,
|
GNOME_STOCK_PIXMAP_PRINT,
|
||||||
0, 0, NULL
|
0, 0, NULL
|
||||||
},
|
},
|
||||||
|
{ GNOME_APP_UI_ITEM,
|
||||||
|
_("Save report"),
|
||||||
|
_("Save the current report for later use in ~/.gnucash/saved-reports-1.8 so that they are accessible as menu entries in the report menu. Will go into effect at the next startup of gnucash."),
|
||||||
|
gnc_report_window_save_cb, win,
|
||||||
|
NULL,
|
||||||
|
GNOME_APP_PIXMAP_STOCK,
|
||||||
|
GNOME_STOCK_PIXMAP_SAVE,
|
||||||
|
0, 0, NULL
|
||||||
|
},
|
||||||
GNOMEUIINFO_END
|
GNOMEUIINFO_END
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -96,6 +96,7 @@
|
|||||||
(export gnc:menuname-income-expense )
|
(export gnc:menuname-income-expense )
|
||||||
(export gnc:menuname-taxes)
|
(export gnc:menuname-taxes)
|
||||||
(export gnc:menuname-utility)
|
(export gnc:menuname-utility)
|
||||||
|
(export gnc:menuname-custom)
|
||||||
(export gnc:pagename-general)
|
(export gnc:pagename-general)
|
||||||
(export gnc:pagename-accounts)
|
(export gnc:pagename-accounts)
|
||||||
(export gnc:pagename-display)
|
(export gnc:pagename-display)
|
||||||
@ -149,6 +150,7 @@
|
|||||||
(export gnc:find-report-template)
|
(export gnc:find-report-template)
|
||||||
(export gnc:report-generate-restore-forms)
|
(export gnc:report-generate-restore-forms)
|
||||||
(export gnc:report-generate-saved-forms)
|
(export gnc:report-generate-saved-forms)
|
||||||
|
(export gnc:report-save-to-savefile)
|
||||||
(export gnc:report-render-html)
|
(export gnc:report-render-html)
|
||||||
(export gnc:report-run)
|
(export gnc:report-run)
|
||||||
(export gnc:report-templates-for-each)
|
(export gnc:report-templates-for-each)
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
(define gnc:menuname-income-expense (N_ "_Income & Expense"))
|
(define gnc:menuname-income-expense (N_ "_Income & Expense"))
|
||||||
(define gnc:menuname-taxes (N_ "_Taxes"))
|
(define gnc:menuname-taxes (N_ "_Taxes"))
|
||||||
(define gnc:menuname-utility (N_ "_Sample & Custom"))
|
(define gnc:menuname-utility (N_ "_Sample & Custom"))
|
||||||
|
(define gnc:menuname-custom (N_ "_Custom"))
|
||||||
(define gnc:pagename-general (N_ "General"))
|
(define gnc:pagename-general (N_ "General"))
|
||||||
(define gnc:pagename-accounts (N_ "Accounts"))
|
(define gnc:pagename-accounts (N_ "Accounts"))
|
||||||
(define gnc:pagename-display (N_ "Display"))
|
(define gnc:pagename-display (N_ "Display"))
|
||||||
@ -380,10 +381,17 @@
|
|||||||
(gnc:generate-restore-forms (gnc:report-options report) "options")
|
(gnc:generate-restore-forms (gnc:report-options report) "options")
|
||||||
" options))\n"
|
" options))\n"
|
||||||
(simple-format
|
(simple-format
|
||||||
#f " (gnc:define-report \n 'version 1\n 'name ~S\n 'options-generator options-gen\n 'renderer (gnc:report-template-renderer/name ~S)))\n\n"
|
#f " (gnc:define-report \n 'version 1\n 'name ~S\n 'options-generator options-gen\n 'menu-path (list gnc:menuname-custom)\n 'renderer (gnc:report-template-renderer/name ~S)))\n\n"
|
||||||
(gnc:report-name report)
|
(gnc:report-name report)
|
||||||
(gnc:report-type report))))
|
(gnc:report-type report))))
|
||||||
|
|
||||||
|
(define (gnc:report-save-to-savefile report)
|
||||||
|
(let ((conf-file-name gnc:current-saved-reports))
|
||||||
|
;;(display conf-file-name)
|
||||||
|
(display (gnc:report-generate-saved-forms report)
|
||||||
|
(open-file conf-file-name "a"))
|
||||||
|
(force-output)))
|
||||||
|
|
||||||
(define (gnc:report-render-html report headers?)
|
(define (gnc:report-render-html report headers?)
|
||||||
(if (and (not (gnc:report-dirty? report))
|
(if (and (not (gnc:report-dirty? report))
|
||||||
(gnc:report-ctext report))
|
(gnc:report-ctext report))
|
||||||
|
@ -162,18 +162,6 @@ the account instead of opening a register.") #f))
|
|||||||
(force-output)))
|
(force-output)))
|
||||||
(gnc:mdi-save (gnc:mdi-get-current) book-url)))))
|
(gnc:mdi-save (gnc:mdi-get-current) book-url)))))
|
||||||
|
|
||||||
(define (gnc:main-window-save-report)
|
|
||||||
(let ((conf-file-name gnc:current-saved-reports))
|
|
||||||
;;(display conf-file-name)
|
|
||||||
(with-output-to-port (open-file conf-file-name "a")
|
|
||||||
(lambda ()
|
|
||||||
(hash-fold
|
|
||||||
(lambda (k v p)
|
|
||||||
(display
|
|
||||||
(gnc:report-generate-saved-forms v)))
|
|
||||||
#t *gnc:_reports_*)
|
|
||||||
(force-output)))))
|
|
||||||
|
|
||||||
(define (gnc:main-window-book-close-handler session)
|
(define (gnc:main-window-book-close-handler session)
|
||||||
(gnc:main-window-save-state session)
|
(gnc:main-window-save-state session)
|
||||||
|
|
||||||
|
@ -79,7 +79,6 @@
|
|||||||
(export gnc:make-new-acct-tree-window)
|
(export gnc:make-new-acct-tree-window)
|
||||||
(export gnc:free-acct-tree-window)
|
(export gnc:free-acct-tree-window)
|
||||||
(export gnc:main-window-save-state)
|
(export gnc:main-window-save-state)
|
||||||
(export gnc:main-window-save-report)
|
|
||||||
|
|
||||||
;; from printing/print-check.scm
|
;; from printing/print-check.scm
|
||||||
(export make-print-check-format)
|
(export make-print-check-format)
|
||||||
@ -510,15 +509,6 @@ string and 'directories' must be a list of strings."
|
|||||||
(lambda ()
|
(lambda ()
|
||||||
(gnc:main-window-open-report (gnc:make-welcome-report) #f))))
|
(gnc:main-window-open-report (gnc:make-welcome-report) #f))))
|
||||||
|
|
||||||
;; The "save current report" entry
|
|
||||||
(gnc:add-extension
|
|
||||||
(gnc:make-menu-item
|
|
||||||
(N_ "_Save all current reports")
|
|
||||||
(N_ "Save all the current report in ~/.gnucash/saved-reports-1.8 so that they are accessible as menu entries in the report menu. Effects are only visible at next startup of gnucash.")
|
|
||||||
(list gnc:window-name-main "_File" "_Export")
|
|
||||||
(lambda ()
|
|
||||||
(gnc:main-window-save-report))))
|
|
||||||
|
|
||||||
(gnc:hook-run-danglers gnc:*startup-hook*)
|
(gnc:hook-run-danglers gnc:*startup-hook*)
|
||||||
|
|
||||||
(if (gnc:config-var-value-get gnc:*loglevel*)
|
(if (gnc:config-var-value-get gnc:*loglevel*)
|
||||||
|
Loading…
Reference in New Issue
Block a user