[Gnucash-changes] Reports are now opened in the window where the
menu was selected.
David Hampton
hampton at cvs.gnucash.org
Sun Jun 5 03:28:00 EDT 2005
Log Message:
-----------
Reports are now opened in the window where the menu was
selected. Other updates for recent changes.
Tags:
----
gnucash-gnome2-dev
Modified Files:
--------------
gnucash/src/business/business-gnome:
business-gnome.scm
gnucash/src/report/report-gnome:
Makefile.am
gnc-plugin-page-report.c
gnc-plugin-page-report.h
gw-report-gnome-spec.scm
report-gnome.scm
gnucash/src/report/report-system:
report.scm
Revision Data
-------------
Index: business-gnome.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-gnome/business-gnome.scm,v
retrieving revision 1.47.4.5
retrieving revision 1.47.4.6
diff -Lsrc/business/business-gnome/business-gnome.scm -Lsrc/business/business-gnome/business-gnome.scm -u -r1.47.4.5 -r1.47.4.6
--- src/business/business-gnome/business-gnome.scm
+++ src/business/business-gnome/business-gnome.scm
@@ -14,7 +14,6 @@
(use-modules (gnucash report business-reports))
(use-modules (gnucash main)) ;for gnc:debug
-(define main-window gnc:window-name-main)
(define top-level (N_ "_Business"))
(define new-label (N_ "New"))
(define find-label (N_ "Find"))
@@ -34,7 +33,7 @@
(define (business-report-function)
(gnc:add-extension
(gnc:make-menu gnc:menuname-business-reports
- (list "Main" gnc:menuname-reports))))
+ (list gnc:menuname-reports))))
(define (business-book-opened session)
(remind-bills-due session))
Index: gw-report-gnome-spec.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-gnome/gw-report-gnome-spec.scm,v
retrieving revision 1.5.4.1
retrieving revision 1.5.4.2
diff -Lsrc/report/report-gnome/gw-report-gnome-spec.scm -Lsrc/report/report-gnome/gw-report-gnome-spec.scm -u -r1.5.4.1 -r1.5.4.2
--- src/report/report-gnome/gw-report-gnome-spec.scm
+++ src/report/report-gnome/gw-report-gnome-spec.scm
@@ -9,6 +9,7 @@
(use-modules (g-wrap gw-wct-spec))
(use-modules (g-wrap gw-glib-spec))
+(use-modules (g-wrapped gw-gnc-spec))
(use-modules (g-wrapped gw-engine-spec))
(use-modules (g-wrapped gw-gnome-utils-spec))
@@ -18,6 +19,7 @@
(gw:wrapset-depends-on ws "gw-wct")
(gw:wrapset-depends-on ws "gw-glib")
+ (gw:wrapset-depends-on ws "gw-gnc")
(gw:wrapset-depends-on ws "gw-engine")
(gw:wrapset-depends-on ws "gw-gnome-utils")
@@ -29,12 +31,9 @@
(list
"#include <dialog-column-view.h>\n"
"#include <dialog-style-sheet.h>\n"
+ "#include <gnc-plugin-page-report.h>\n"
"#include <window-report.h>\n")))
- (gw:wrap-as-wct ws
- '<gnc:report-window*>
- "gnc_report_window*" "const gnc_report_window*")
-
(gw:wrap-function
ws
'gnc:report-window
@@ -45,22 +44,6 @@
(gw:wrap-function
ws
- 'gnc:report-window-reload
- '<gw:void>
- "gnc_report_window_reload"
- '((<gnc:report-window*> wind))
- "Force reload of a report window")
-
- (gw:wrap-function
- ws
- 'gnc:report-window-add-edited-report
- '<gw:void>
- "gnc_report_window_add_edited_report"
- '((<gnc:report-window*> wind) (<gw:scm> report))
- "Add a report to the list of reports with open editors")
-
- (gw:wrap-function
- ws
'gnc:print-report
'<gw:void>
"gnc_print_report"
@@ -80,7 +63,7 @@
'gnc:main-window-open-report
'<gw:void>
"gnc_main_window_open_report"
- '((<gw:int> report-id) (<gw:bool> top-level))
+ '((<gw:int> report-id) (<gnc:MainWindow*> window))
"Show report window")
(gw:wrap-function
Index: gnc-plugin-page-report.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-gnome/Attic/gnc-plugin-page-report.h,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -Lsrc/report/report-gnome/gnc-plugin-page-report.h -Lsrc/report/report-gnome/gnc-plugin-page-report.h -u -r1.1.2.3 -r1.1.2.4
--- src/report/report-gnome/gnc-plugin-page-report.h
+++ src/report/report-gnome/gnc-plugin-page-report.h
@@ -35,7 +35,7 @@
#define __GNC_PLUGIN_PAGE_REPORT_H
#include <gtk/gtkwindow.h>
-#include "gnc-plugin-page.h"
+#include "gnc-plugin.h"
G_BEGIN_DECLS
@@ -82,6 +82,11 @@
*/
GncPluginPage *gnc_plugin_page_report_new( int reportId );
+// entry-point from scm menu-extension callback [gnc:menu-extension].
+void gnc_main_window_open_report (int report_id, GncMainWindow *window);
+// directly called through from above
+void gnc_main_window_open_report_url (const char * url, GncMainWindow *window);
+
G_END_DECLS
#endif /* __GNC_PLUGIN_PAGE_REPORT_H */
Index: gnc-plugin-page-report.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-gnome/Attic/gnc-plugin-page-report.c,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -Lsrc/report/report-gnome/gnc-plugin-page-report.c -Lsrc/report/report-gnome/gnc-plugin-page-report.c -u -r1.1.2.8 -r1.1.2.9
--- src/report/report-gnome/gnc-plugin-page-report.c
+++ src/report/report-gnome/gnc-plugin-page-report.c
@@ -1047,3 +1047,34 @@
{
gnc_html_print(report->priv->html);
}
+
+/********************************************************************
+ * gnc_main_window_open_report()
+ * open an report in a top level window from an ID number
+ ********************************************************************/
+
+void
+gnc_main_window_open_report(int report_id, GncMainWindow *window)
+{
+ GncPluginPage *reportPage;
+
+ if (window)
+ g_return_if_fail(GNC_IS_MAIN_WINDOW(window));
+
+ reportPage = gnc_plugin_page_report_new( report_id );
+ gnc_main_window_open_page( window, reportPage );
+}
+
+void
+gnc_main_window_open_report_url(const char * url, GncMainWindow *window)
+{
+ GncPluginPage *reportPage;
+
+ printf( "report url: [%s]\n", url );
+
+ if (window)
+ g_return_if_fail(GNC_IS_MAIN_WINDOW(window));
+
+ reportPage = gnc_plugin_page_report_new( 42 /* url? */ );
+ gnc_main_window_open_page( window, reportPage );
+}
Index: Makefile.am
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-gnome/Makefile.am,v
retrieving revision 1.14.4.7
retrieving revision 1.14.4.8
diff -Lsrc/report/report-gnome/Makefile.am -Lsrc/report/report-gnome/Makefile.am -u -r1.14.4.7 -r1.14.4.8
--- src/report/report-gnome/Makefile.am
+++ src/report/report-gnome/Makefile.am
@@ -105,6 +105,7 @@
(set! %load-path (cons \"${top_builddir}/src/engine\" %load-path)) \
(set! %load-path (cons \"${top_builddir}/src/app-utils\" %load-path)) \
(set! %load-path (cons \"${top_builddir}/src/gnome-utils\" %load-path)) \
+ (set! %load-path (cons \"${top_builddir}/src/gnome\" %load-path)) \
(primitive-load \"./gw-report-gnome-spec.scm\") \
(gw:generate-wrapset \"gw-report-gnome\")"
Index: report-gnome.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-gnome/report-gnome.scm,v
retrieving revision 1.9.4.4
retrieving revision 1.9.4.5
diff -Lsrc/report/report-gnome/report-gnome.scm -Lsrc/report/report-gnome/report-gnome.scm -u -r1.9.4.4 -r1.9.4.5
--- src/report/report-gnome/report-gnome.scm
+++ src/report/report-gnome/report-gnome.scm
@@ -59,7 +59,7 @@
(if (not menu-path)
(set! menu-path '()))
- (set! menu-path (append (list gnc:window-name-main gnc:menuname-reports) menu-path))
+ (set! menu-path (append (list gnc:menuname-reports) menu-path))
(if (not menu-tip)
(set! menu-tip
@@ -70,10 +70,10 @@
((menu-namer 'add-name) name)
menu-tip
menu-path
- (lambda ()
+ (lambda (window)
(let ((report (gnc:make-report
(gnc:report-template-name template))))
- (gnc:main-window-open-report report #f)))))
+ (gnc:main-window-open-report report window)))))
(gnc:add-extension item))))
(define (add-template name template)
@@ -91,29 +91,19 @@
(sort *template-items* sort-templates)))
(define (gnc:report-menu-setup)
- ;; since this menu gets added to every child window, we say it
- ;; comes after the "_Actions" menu;
- (define menu (gnc:make-menu gnc:menuname-reports
- (list gnc:window-name-main)))
(define menu-namer (gnc:new-menu-namer))
(define asset-liability-menu
- (gnc:make-menu gnc:menuname-asset-liability
- (list gnc:window-name-main gnc:menuname-reports)))
+ (gnc:make-menu gnc:menuname-asset-liability (list gnc:menuname-reports)))
(define income-expense-menu
- (gnc:make-menu gnc:menuname-income-expense
- (list gnc:window-name-main gnc:menuname-reports)))
+ (gnc:make-menu gnc:menuname-income-expense (list gnc:menuname-reports)))
(define utility-menu
- (gnc:make-menu gnc:menuname-utility
- (list gnc:window-name-main gnc:menuname-reports)))
+ (gnc:make-menu gnc:menuname-utility (list gnc:menuname-reports)))
(define custom-menu
- (gnc:make-menu gnc:menuname-custom
- (list gnc:window-name-main gnc:menuname-reports)))
+ (gnc:make-menu gnc:menuname-custom (list gnc:menuname-reports)))
(define tax-menu
- (gnc:make-menu gnc:menuname-taxes
- (list gnc:window-name-main gnc:menuname-reports)))
+ (gnc:make-menu gnc:menuname-taxes (list gnc:menuname-reports)))
(gnc:warn "report-menu-setup")
- (gnc:add-extension menu)
;; (gnc:add-extension tax-menu)
(gnc:add-extension income-expense-menu)
Index: report.scm
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/report/report-system/report.scm,v
retrieving revision 1.12.4.2
retrieving revision 1.12.4.3
diff -Lsrc/report/report-system/report.scm -Lsrc/report/report-system/report.scm -u -r1.12.4.2 -r1.12.4.3
--- src/report/report-system/report.scm
+++ src/report/report-system/report.scm
@@ -36,7 +36,7 @@
(define *gnc:_report-next-serial_* 0)
;; Define those strings here to make changes easier and avoid typos.
-(define gnc:menuname-reports (N_ "_Reports"))
+(define gnc:menuname-reports "Reports")
(define gnc:menuname-asset-liability (N_ "_Assets & Liabilities"))
(define gnc:menuname-income-expense (N_ "_Income & Expense"))
(define gnc:menuname-taxes (N_ "_Taxes"))
More information about the gnucash-changes
mailing list