diff --git a/gnucash/gnome/gnc-plugin-page-register.c b/gnucash/gnome/gnc-plugin-page-register.c index 3a50ab9351..a3d73f0c1e 100644 --- a/gnucash/gnome/gnc-plugin-page-register.c +++ b/gnucash/gnome/gnc-plugin-page-register.c @@ -193,6 +193,8 @@ static void gnc_plugin_page_register_cmd_find_account (GtkAction* action, GncPluginPageRegister* plugin_page); static void gnc_plugin_page_register_cmd_find_transactions (GtkAction* action, GncPluginPageRegister* plugin_page); +static void gnc_plugin_page_register_cmd_edit_tax_options (GtkAction* action, + GncPluginPageRegister* plugin_page); static void gnc_plugin_page_register_cmd_cut_transaction (GtkAction* action, GncPluginPageRegister* plugin_page); static void gnc_plugin_page_register_cmd_copy_transaction (GtkAction* action, @@ -363,6 +365,18 @@ static GtkActionEntry gnc_plugin_page_register_actions [] = N_ ("Find transactions with a search"), G_CALLBACK (gnc_plugin_page_register_cmd_find_transactions) }, + { + "EditTaxOptionsAction", NULL, + /* Translators: remember to reuse this * + * translation in dialog-account.glade */ + N_("Ta_x Report Options"), NULL, + /* Translators: currently implemented are * + * US: income tax and * + * DE: VAT * + * So adjust this string */ + N_("Setup relevant accounts for tax reports, e.g. US income tax"), + G_CALLBACK (gnc_plugin_page_register_cmd_edit_tax_options) + }, /* Transaction menu */ @@ -3810,7 +3824,6 @@ gnc_plugin_page_register_cmd_find_account (GtkAction* action, } - static void gnc_plugin_page_register_cmd_find_transactions (GtkAction* action, GncPluginPageRegister* page) @@ -3828,6 +3841,24 @@ gnc_plugin_page_register_cmd_find_transactions (GtkAction* action, } +static void +gnc_plugin_page_register_cmd_edit_tax_options (GtkAction* action, + GncPluginPageRegister* page) +{ + GncPluginPageRegisterPrivate* priv; + GtkWidget *window; + Account* account; + + g_return_if_fail (GNC_IS_PLUGIN_PAGE_REGISTER (page)); + + ENTER ("(action %p, page %p)", action, page); + priv = GNC_PLUGIN_PAGE_REGISTER_GET_PRIVATE (page); + window = gnc_plugin_page_get_window (GNC_PLUGIN_PAGE (page)); + account = gnc_plugin_page_register_get_account (page); + gnc_tax_info_dialog (window, account); + LEAVE (" "); +} + static void gnc_plugin_page_register_cmd_cut_transaction (GtkAction* action, GncPluginPageRegister* plugin_page) diff --git a/gnucash/gnome/gnc-plugin-page-register2.c b/gnucash/gnome/gnc-plugin-page-register2.c index 48853d0f0c..5151b4a52e 100644 --- a/gnucash/gnome/gnc-plugin-page-register2.c +++ b/gnucash/gnome/gnc-plugin-page-register2.c @@ -78,6 +78,7 @@ #include "gnc-icons.h" #include "gnc-prefs.h" #include "gnc-split-reg2.h" +#include "gnc-ui.h" #include "gnc-ui-util.h" #include "gnc-window.h" #include "gnc-main-window.h" @@ -140,6 +141,7 @@ static void gnc_plugin_page_register2_cmd_paste (GtkAction *action, GncPluginPag static void gnc_plugin_page_register2_cmd_edit_account (GtkAction *action, GncPluginPageRegister2 *plugin_page); static void gnc_plugin_page_register2_cmd_find_account (GtkAction *action, GncPluginPageRegister2 *plugin_page); static void gnc_plugin_page_register2_cmd_find_transactions (GtkAction *action, GncPluginPageRegister2 *plugin_page); +static void gnc_plugin_page_register2_cmd_edit_tax_options (GtkAction *action, GncPluginPageRegister2 *plugin_page); static void gnc_plugin_page_register2_cmd_cut_transaction (GtkAction *action, GncPluginPageRegister2 *plugin_page); static void gnc_plugin_page_register2_cmd_copy_transaction (GtkAction *action, GncPluginPageRegister2 *plugin_page); static void gnc_plugin_page_register2_cmd_paste_transaction (GtkAction *action, GncPluginPageRegister2 *plugin_page); @@ -254,6 +256,18 @@ static GtkActionEntry gnc_plugin_page_register2_actions [] = N_("Find transactions with a search"), G_CALLBACK (gnc_plugin_page_register2_cmd_find_transactions) }, + { + "EditTaxOptionsAction", NULL, + /* Translators: remember to reuse this * + * translation in dialog-account.glade */ + N_("Ta_x Report Options"), NULL, + /* Translators: currently implemented are * + * US: income tax and * + * DE: VAT * + * So adjust this string */ + N_("Setup relevant accounts for tax reports, e.g. US income tax"), + G_CALLBACK (gnc_plugin_page_register2_cmd_edit_tax_options) + }, /* Transaction menu */ @@ -2780,6 +2794,25 @@ gnc_plugin_page_register2_cmd_find_transactions (GtkAction *action, LEAVE(" "); } +static void +gnc_plugin_page_register2_cmd_edit_tax_options (GtkAction *action, + GncPluginPageRegister2 *page) // this works +{ + GncPluginPageRegister2Private *priv; + GtkWidget *window; + Account* account; + + g_return_if_fail(GNC_IS_PLUGIN_PAGE_REGISTER2(page)); + + ENTER("(action %p, page %p)", action, page); + priv = GNC_PLUGIN_PAGE_REGISTER2_GET_PRIVATE(page); + + window = gnc_plugin_page_get_window (GNC_PLUGIN_PAGE (page)); + account = gnc_plugin_page_register2_get_account (page); + gnc_tax_info_dialog (window, account); + LEAVE(" "); +} + static void gnc_plugin_page_register2_cmd_cut_transaction (GtkAction *action, GncPluginPageRegister2 *page) // this works diff --git a/gnucash/ui/gnc-plugin-page-register-ui.xml b/gnucash/ui/gnc-plugin-page-register-ui.xml index 8fae493a68..a32b3bd5ab 100644 --- a/gnucash/ui/gnc-plugin-page-register-ui.xml +++ b/gnucash/ui/gnc-plugin-page-register-ui.xml @@ -5,6 +5,7 @@ +