mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Switch to the GTK2.4 UI description language.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/branches/gnucash-gnome2-dev@9346 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
19
ChangeLog
19
ChangeLog
@@ -1,3 +1,22 @@
|
||||
2003-09-16 David Hampton <hampton@employees.org>
|
||||
|
||||
* lib/egg/egg-menu-merge.[ch]: Back port the GTK2.4 UI description
|
||||
language.
|
||||
|
||||
* src/business/business-gnome/ui/gnc-plugin-business-ui.xml:
|
||||
* src/gnome/ui/gnc-main-window-ui.xml:
|
||||
* src/gnome/ui/gnc-plugin-account-tree-ui.xml:
|
||||
* src/gnome/ui/gnc-plugin-page-account-tree-ui.xml:
|
||||
* src/gnome/ui/gnc-plugin-page-register-ui.xml:
|
||||
* src/gnome/ui/gnc-plugin-register-ui.xml:
|
||||
* src/import-export/qif-import/gnc-plugin-qif-import-ui.xml:
|
||||
Switch to the new UI description language.
|
||||
|
||||
* src/gnome/gnc-main-window.c:
|
||||
* src/gnome/gnc-plugin-page-account-tree.c:
|
||||
* src/gnome/gnc-plugin-page-register.c: Check the error return
|
||||
value after calling the menu-merge routines.
|
||||
|
||||
2003-09-13 David Hampton <hampton@employees.org>
|
||||
|
||||
* src/gnome/gnc-main-window.c: Collapse common functions into one.
|
||||
|
||||
@@ -114,12 +114,9 @@ egg_menu_merge_init (EggMenuMerge *self)
|
||||
|
||||
|
||||
merge_id = egg_menu_merge_next_merge_id(self);
|
||||
node = get_child_node(self, NULL, "Root", 4,
|
||||
node = get_child_node(self, NULL, "ui", 4,
|
||||
EGG_MENU_MERGE_ROOT, TRUE, FALSE);
|
||||
egg_menu_merge_node_prepend_ui_reference(NODE_INFO(node), merge_id, 0);
|
||||
node = get_child_node(self, self->root_node, "popups", 6,
|
||||
EGG_MENU_MERGE_POPUPS, TRUE, FALSE);
|
||||
egg_menu_merge_node_prepend_ui_reference(NODE_INFO(node), merge_id, 0);
|
||||
}
|
||||
|
||||
EggMenuMerge *
|
||||
@@ -337,7 +334,6 @@ typedef enum {
|
||||
STATE_ROOT,
|
||||
STATE_MENU,
|
||||
STATE_TOOLBAR,
|
||||
STATE_POPUPS,
|
||||
STATE_MENUITEM,
|
||||
STATE_TOOLITEM,
|
||||
STATE_END
|
||||
@@ -369,18 +365,15 @@ start_element_handler (GMarkupParseContext *context,
|
||||
|
||||
gint i;
|
||||
const gchar *node_name;
|
||||
GQuark verb_quark;
|
||||
const gchar *action;
|
||||
GQuark action_quark;
|
||||
gboolean top;
|
||||
|
||||
gboolean raise_error = TRUE;
|
||||
gchar *error_attr = NULL;
|
||||
|
||||
//g_message("starting element %s", element_name);
|
||||
|
||||
/* work out a name for this node. Either the name attribute, or
|
||||
* element name */
|
||||
node_name = element_name;
|
||||
verb_quark = 0;
|
||||
node_name = NULL;
|
||||
action = NULL;
|
||||
action_quark = 0;
|
||||
top = FALSE;
|
||||
for (i = 0; attribute_names[i] != NULL; i++)
|
||||
{
|
||||
@@ -388,34 +381,56 @@ start_element_handler (GMarkupParseContext *context,
|
||||
{
|
||||
node_name = attribute_values[i];
|
||||
}
|
||||
else if (!strcmp(attribute_names[i], "verb"))
|
||||
else if (!strcmp(attribute_names[i], "action"))
|
||||
{
|
||||
verb_quark = g_quark_from_string(attribute_values[i]);
|
||||
action = attribute_values[i];
|
||||
action_quark = g_quark_from_string(attribute_values[i]);
|
||||
}
|
||||
else if (!strcmp(attribute_names[i], "pos"))
|
||||
else if (!strcmp(attribute_names[i], "position"))
|
||||
{
|
||||
top = !strcmp(attribute_values[i], "top");
|
||||
}
|
||||
else
|
||||
{
|
||||
gint line_number, char_number;
|
||||
|
||||
g_markup_parse_context_get_position (context,
|
||||
&line_number, &char_number);
|
||||
g_set_error (error,
|
||||
G_MARKUP_ERROR,
|
||||
G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
|
||||
_("Unknown attribute '%s' on line %d char %d"),
|
||||
attribute_names[i],
|
||||
line_number, char_number);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/* Work out a name for this node. Either the name attribute, or
|
||||
* the action, or the element name */
|
||||
if (node_name == NULL)
|
||||
{
|
||||
if (action != NULL)
|
||||
node_name = action;
|
||||
else
|
||||
node_name = element_name;
|
||||
}
|
||||
/* if no verb, then set it to the node's name */
|
||||
if (verb_quark == 0)
|
||||
verb_quark = g_quark_from_string(node_name);
|
||||
|
||||
switch (element_name[0])
|
||||
{
|
||||
case 'R':
|
||||
if (ctx->state == STATE_START && !strcmp(element_name, "Root"))
|
||||
case 'u':
|
||||
if (ctx->state == STATE_START && !strcmp(element_name, "ui"))
|
||||
{
|
||||
ctx->state = STATE_ROOT;
|
||||
ctx->current = self->root_node;
|
||||
raise_error = FALSE;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
}
|
||||
break;
|
||||
case 'm':
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "menu"))
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "menubar"))
|
||||
{
|
||||
ctx->state = STATE_MENU;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
@@ -423,10 +438,25 @@ start_element_handler (GMarkupParseContext *context,
|
||||
EGG_MENU_MERGE_MENUBAR,
|
||||
TRUE, FALSE);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = verb_quark;
|
||||
NODE_INFO(ctx->current)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
else if (ctx->state == STATE_MENU && !strcmp(element_name, "menu"))
|
||||
{
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_MENU,
|
||||
TRUE, top);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
@@ -441,60 +471,28 @@ start_element_handler (GMarkupParseContext *context,
|
||||
EGG_MENU_MERGE_MENUITEM,
|
||||
TRUE, top);
|
||||
if (NODE_INFO(node)->action_name == 0)
|
||||
NODE_INFO(node)->action_name = verb_quark;
|
||||
NODE_INFO(node)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (node),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(node)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
break;
|
||||
case 'd':
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "dockitem"))
|
||||
{
|
||||
ctx->state = STATE_TOOLBAR;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_TOOLBAR,
|
||||
TRUE, FALSE);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = verb_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
break;
|
||||
case 'p':
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "popups"))
|
||||
{
|
||||
ctx->state = STATE_POPUPS;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_POPUPS,
|
||||
TRUE, FALSE);
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
else if (ctx->state == STATE_POPUPS && !strcmp(element_name, "popup"))
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "popup"))
|
||||
{
|
||||
ctx->state = STATE_MENU;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_MENU,
|
||||
EGG_MENU_MERGE_POPUP,
|
||||
TRUE, FALSE);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = verb_quark;
|
||||
NODE_INFO(ctx->current)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
@@ -502,66 +500,66 @@ start_element_handler (GMarkupParseContext *context,
|
||||
else if ((ctx->state == STATE_MENU || ctx->state == STATE_TOOLBAR) &&
|
||||
!strcmp(element_name, "placeholder"))
|
||||
{
|
||||
if (ctx->state == STATE_MENU)
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_MENU_PLACEHOLDER,
|
||||
TRUE, top);
|
||||
else
|
||||
if (ctx->state == STATE_TOOLBAR)
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_TOOLBAR_PLACEHOLDER,
|
||||
TRUE, top);
|
||||
else
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_MENU_PLACEHOLDER,
|
||||
TRUE, top);
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
break;
|
||||
case 's':
|
||||
if (ctx->state == STATE_MENU && !strcmp(element_name, "submenu"))
|
||||
{
|
||||
ctx->state = STATE_MENU;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_MENU,
|
||||
TRUE, top);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = verb_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, verb_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
else if ((ctx->state == STATE_MENU || ctx->state == STATE_TOOLBAR) &&
|
||||
if ((ctx->state == STATE_MENU || ctx->state == STATE_TOOLBAR) &&
|
||||
!strcmp(element_name, "separator"))
|
||||
{
|
||||
GNode *node;
|
||||
|
||||
if (ctx->state == STATE_MENU)
|
||||
ctx->state = STATE_MENUITEM;
|
||||
else
|
||||
if (ctx->state == STATE_TOOLBAR)
|
||||
ctx->state = STATE_TOOLITEM;
|
||||
else
|
||||
ctx->state = STATE_MENUITEM;
|
||||
node = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_SEPARATOR,
|
||||
TRUE, top);
|
||||
if (NODE_INFO(node)->action_name == 0)
|
||||
NODE_INFO(node)->action_name = verb_quark;
|
||||
NODE_INFO(node)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (node),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(node)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
break;
|
||||
case 't':
|
||||
if (ctx->state == STATE_TOOLBAR && !strcmp(element_name, "toolitem"))
|
||||
if (ctx->state == STATE_ROOT && !strcmp(element_name, "toolbar"))
|
||||
{
|
||||
ctx->state = STATE_TOOLBAR;
|
||||
ctx->current = get_child_node(self, ctx->current,
|
||||
node_name, strlen(node_name),
|
||||
EGG_MENU_MERGE_TOOLBAR,
|
||||
TRUE, FALSE);
|
||||
if (NODE_INFO(ctx->current)->action_name == 0)
|
||||
NODE_INFO(ctx->current)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (ctx->current),
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(ctx->current)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
}
|
||||
else if (ctx->state == STATE_TOOLBAR && !strcmp(element_name, "toolitem"))
|
||||
{
|
||||
GNode *node;
|
||||
|
||||
@@ -571,10 +569,10 @@ start_element_handler (GMarkupParseContext *context,
|
||||
EGG_MENU_MERGE_TOOLITEM,
|
||||
TRUE, top);
|
||||
if (NODE_INFO(node)->action_name == 0)
|
||||
NODE_INFO(node)->action_name = verb_quark;
|
||||
NODE_INFO(node)->action_name = action_quark;
|
||||
|
||||
egg_menu_merge_node_prepend_ui_reference (NODE_INFO (node),
|
||||
ctx->merge_id, verb_quark);
|
||||
ctx->merge_id, action_quark);
|
||||
NODE_INFO(node)->dirty = TRUE;
|
||||
|
||||
raise_error = FALSE;
|
||||
@@ -589,20 +587,12 @@ start_element_handler (GMarkupParseContext *context,
|
||||
|
||||
g_markup_parse_context_get_position (context,
|
||||
&line_number, &char_number);
|
||||
if (error_attr)
|
||||
g_set_error (error,
|
||||
G_MARKUP_ERROR,
|
||||
G_MARKUP_ERROR_UNKNOWN_ATTRIBUTE,
|
||||
_("Unknown attribute '%s' on line %d char %d"),
|
||||
error_attr,
|
||||
line_number, char_number);
|
||||
else
|
||||
g_set_error (error,
|
||||
G_MARKUP_ERROR,
|
||||
G_MARKUP_ERROR_UNKNOWN_ELEMENT,
|
||||
_("Unknown tag '%s' on line %d char %d"),
|
||||
element_name,
|
||||
line_number, char_number);
|
||||
g_set_error (error,
|
||||
G_MARKUP_ERROR,
|
||||
G_MARKUP_ERROR_UNKNOWN_ELEMENT,
|
||||
_("Unknown tag '%s' on line %d char %d"),
|
||||
element_name,
|
||||
line_number, char_number);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -633,8 +623,6 @@ end_element_handler (GMarkupParseContext *context,
|
||||
ctx->current = ctx->current->parent;
|
||||
if (NODE_INFO(ctx->current)->type == EGG_MENU_MERGE_ROOT) /* menubar */
|
||||
ctx->state = STATE_ROOT;
|
||||
else if (NODE_INFO(ctx->current)->type == EGG_MENU_MERGE_POPUPS) /* popup */
|
||||
ctx->state = STATE_POPUPS;
|
||||
/* else, stay in STATE_MENU state */
|
||||
break;
|
||||
case STATE_TOOLBAR:
|
||||
@@ -645,10 +633,6 @@ end_element_handler (GMarkupParseContext *context,
|
||||
ctx->state = STATE_ROOT;
|
||||
/* else, stay in STATE_TOOLBAR state */
|
||||
break;
|
||||
case STATE_POPUPS:
|
||||
ctx->current = ctx->current->parent;
|
||||
ctx->state = STATE_ROOT;
|
||||
break;
|
||||
case STATE_MENUITEM:
|
||||
ctx->state = STATE_MENU;
|
||||
break;
|
||||
@@ -794,6 +778,7 @@ find_menu_position (GNode *node, GtkWidget **menushell_p, gint *pos_p)
|
||||
|
||||
g_return_val_if_fail(node != NULL, FALSE);
|
||||
g_return_val_if_fail(NODE_INFO(node)->type == EGG_MENU_MERGE_MENU ||
|
||||
NODE_INFO(node)->type == EGG_MENU_MERGE_POPUP ||
|
||||
NODE_INFO(node)->type == EGG_MENU_MERGE_MENU_PLACEHOLDER ||
|
||||
NODE_INFO(node)->type == EGG_MENU_MERGE_MENUITEM ||
|
||||
NODE_INFO(node)->type == EGG_MENU_MERGE_SEPARATOR,
|
||||
@@ -808,6 +793,7 @@ find_menu_position (GNode *node, GtkWidget **menushell_p, gint *pos_p)
|
||||
switch (NODE_INFO(parent)->type)
|
||||
{
|
||||
case EGG_MENU_MERGE_MENUBAR:
|
||||
case EGG_MENU_MERGE_POPUP:
|
||||
menushell = NODE_INFO(parent)->proxy;
|
||||
pos = 0;
|
||||
break;
|
||||
@@ -823,10 +809,6 @@ find_menu_position (GNode *node, GtkWidget **menushell_p, gint *pos_p)
|
||||
pos = g_list_index(GTK_MENU_SHELL(menushell)->children,
|
||||
NODE_INFO(parent)->proxy) + 1;
|
||||
break;
|
||||
case EGG_MENU_MERGE_POPUPS:
|
||||
menushell = NULL;
|
||||
pos = 0;
|
||||
break;
|
||||
default:
|
||||
g_warning("%s: bad parent node type %d", G_STRLOC,
|
||||
NODE_INFO(parent)->type);
|
||||
@@ -1005,6 +987,14 @@ update_node (EggMenuMerge *self, GNode *node)
|
||||
g_signal_emit (self, merge_signals[ADD_WIDGET], 0, info->proxy);
|
||||
}
|
||||
break;
|
||||
case EGG_MENU_MERGE_POPUP:
|
||||
if (info->proxy == NULL)
|
||||
{
|
||||
info->proxy = gtk_menu_new ();
|
||||
gtk_menu_set_accel_group (GTK_MENU (info->proxy),
|
||||
self->accel_group);
|
||||
}
|
||||
break;
|
||||
case EGG_MENU_MERGE_MENU:
|
||||
{
|
||||
GtkWidget *prev_submenu = NULL;
|
||||
@@ -1133,8 +1123,6 @@ update_node (EggMenuMerge *self, GNode *node)
|
||||
}
|
||||
}
|
||||
break;
|
||||
case EGG_MENU_MERGE_POPUPS:
|
||||
break;
|
||||
case EGG_MENU_MERGE_MENUITEM:
|
||||
/* remove the proxy if it is of the wrong type ... */
|
||||
if (info->proxy && G_OBJECT_TYPE(info->proxy) !=
|
||||
|
||||
@@ -26,7 +26,7 @@ typedef enum {
|
||||
EGG_MENU_MERGE_TOOLBAR,
|
||||
EGG_MENU_MERGE_MENU_PLACEHOLDER,
|
||||
EGG_MENU_MERGE_TOOLBAR_PLACEHOLDER,
|
||||
EGG_MENU_MERGE_POPUPS,
|
||||
EGG_MENU_MERGE_POPUP,
|
||||
EGG_MENU_MERGE_MENUITEM,
|
||||
EGG_MENU_MERGE_TOOLITEM,
|
||||
EGG_MENU_MERGE_SEPARATOR,
|
||||
|
||||
@@ -1,41 +1,39 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<ui>
|
||||
<menubar>
|
||||
<placeholder name="AdditionalMenusPlaceholder">
|
||||
<menu action="BusinessAction">
|
||||
<menu name="CustomerMenu" action="CustomerMenuAction">
|
||||
<menuitem name="CustomerNewCustomerOpen" action="CustomerNewCustomerOpenAction"/>
|
||||
<menuitem name="CustomerFindCustomerOpen" action="CustomerFindCustomerOpenAction"/>
|
||||
<menuitem name="CustomerNewInvoiceOpen" action="CustomerNewInvoiceOpenAction"/>
|
||||
<menuitem name="CustomerFindInvoiceOpen" action="CustomerFindInvoiceOpenAction"/>
|
||||
<menuitem name="CustomerNewJobOpen" action="CustomerNewJobOpenAction"/>
|
||||
<menuitem name="CustomerFindJobOpen" action="CustomerFindJobOpenAction"/>
|
||||
<menuitem name="CustomerProcessPayment" action="CustomerProcessPaymentAction"/>
|
||||
</menu>
|
||||
|
||||
<placeholder name="AdditionalMenusPlaceholder">
|
||||
<submenu verb="BusinessAction">
|
||||
<submenu name="CustomerMenu" verb="CustomerMenuAction">
|
||||
<menuitem name="CustomerNewCustomerOpen" verb="CustomerNewCustomerOpenAction"/>
|
||||
<menuitem name="CustomerFindCustomerOpen" verb="CustomerFindCustomerOpenAction"/>
|
||||
<menuitem name="CustomerNewInvoiceOpen" verb="CustomerNewInvoiceOpenAction"/>
|
||||
<menuitem name="CustomerFindInvoiceOpen" verb="CustomerFindInvoiceOpenAction"/>
|
||||
<menuitem name="CustomerNewJobOpen" verb="CustomerNewJobOpenAction"/>
|
||||
<menuitem name="CustomerFindJobOpen" verb="CustomerFindJobOpenAction"/>
|
||||
<menuitem name="CustomerProcessPayment" verb="CustomerProcessPaymentAction"/>
|
||||
</submenu>
|
||||
<menu name="VendorMenu" action="VendorMenuAction">
|
||||
<menuitem name="VendorNewVendorOpen" action="VendorNewVendorOpenAction"/>
|
||||
<menuitem name="VendorFindVendorOpen" action="VendorFindVendorOpenAction"/>
|
||||
<menuitem name="VendorNewBillOpen" action="VendorNewBillOpenAction"/>
|
||||
<menuitem name="VendorFindBillOpen" action="VendorFindBillOpenAction"/>
|
||||
<menuitem name="VendorNewJobOpen" action="VendorNewJobOpenAction"/>
|
||||
<menuitem name="VendorFindJobOpen" action="VendorFindJobOpenAction"/>
|
||||
<menuitem name="VendorProcessPayment" action="VendorProcessPaymentAction"/>
|
||||
</menu>
|
||||
|
||||
<submenu name="VendorMenu" verb="VendorMenuAction">
|
||||
<menuitem name="VendorNewVendorOpen" verb="VendorNewVendorOpenAction"/>
|
||||
<menuitem name="VendorFindVendorOpen" verb="VendorFindVendorOpenAction"/>
|
||||
<menuitem name="VendorNewBillOpen" verb="VendorNewBillOpenAction"/>
|
||||
<menuitem name="VendorFindBillOpen" verb="VendorFindBillOpenAction"/>
|
||||
<menuitem name="VendorNewJobOpen" verb="VendorNewJobOpenAction"/>
|
||||
<menuitem name="VendorFindJobOpen" verb="VendorFindJobOpenAction"/>
|
||||
<menuitem name="VendorProcessPayment" verb="VendorProcessPaymentAction"/>
|
||||
</submenu>
|
||||
<menu name="EmployeeMenu" action="EmployeeMenuAction">
|
||||
<menuitem name="EmployeeNewEmployeeOpen" action="EmployeeNewEmployeeOpenAction"/>
|
||||
<menuitem name="EmployeeFindEmployeeOpen" action="EmployeeFindEmployeeOpenAction"/>
|
||||
<menuitem name="EmployeeNewExpenseOpen" action="EmployeeNewExpenseVoucherOpenAction"/>
|
||||
<menuitem name="EmployeeFindExpenseOpen" action="EmployeeFindExpenseVoucherOpenAction"/>
|
||||
<menuitem name="EmployeeProcessPayment" action="EmployeeProcessPaymentAction"/>
|
||||
</menu>
|
||||
|
||||
<submenu name="EmployeeMenu" verb="EmployeeMenuAction">
|
||||
<menuitem name="EmployeeNewEmployeeOpen" verb="EmployeeNewEmployeeOpenAction"/>
|
||||
<menuitem name="EmployeeFindEmployeeOpen" verb="EmployeeFindEmployeeOpenAction"/>
|
||||
<menuitem name="EmployeeNewExpenseOpen" verb="EmployeeNewExpenseVoucherOpenAction"/>
|
||||
<menuitem name="EmployeeFindExpenseOpen" verb="EmployeeFindExpenseVoucherOpenAction"/>
|
||||
<menuitem name="EmployeeProcessPayment" verb="EmployeeProcessPaymentAction"/>
|
||||
</submenu>
|
||||
|
||||
<menuitem name="TaxTablesOpen" verb="TaxTablesOpenAction"/>
|
||||
<menuitem name="BillingTermsOpen" verb="BillingTermsOpenAction"/>
|
||||
<menuitem name="BillsDueReminderOpen" verb="BillsDueReminderOpenAction"/>
|
||||
</submenu>
|
||||
</placeholder>
|
||||
|
||||
</menu>
|
||||
</Root>
|
||||
<menuitem name="TaxTablesOpen" action="TaxTablesOpenAction"/>
|
||||
<menuitem name="BillingTermsOpen" action="BillingTermsOpenAction"/>
|
||||
<menuitem name="BillsDueReminderOpen" action="BillsDueReminderOpenAction"/>
|
||||
</menu>
|
||||
</placeholder>
|
||||
</menubar>
|
||||
</ui>
|
||||
|
||||
@@ -389,6 +389,7 @@ gnc_main_window_merge_actions (GncMainWindow *window,
|
||||
GncMainWindowActionData *data;
|
||||
guint i;
|
||||
MergedActionEntry *entry;
|
||||
GError *error = NULL;
|
||||
|
||||
g_return_if_fail (GNC_IS_MAIN_WINDOW (window));
|
||||
g_return_if_fail (group_name != NULL);
|
||||
@@ -408,10 +409,17 @@ gnc_main_window_merge_actions (GncMainWindow *window,
|
||||
entry->action_group = egg_action_group_new (group_name);
|
||||
egg_action_group_add_actions (entry->action_group, actions, n_actions);
|
||||
egg_menu_merge_insert_action_group (window->ui_merge, entry->action_group, 0);
|
||||
entry->merge_id = egg_menu_merge_add_ui_from_file (window->ui_merge, ui_file, NULL);
|
||||
egg_menu_merge_ensure_update (window->ui_merge);
|
||||
|
||||
g_hash_table_insert (window->priv->merged_actions_table, g_strdup (group_name), entry);
|
||||
entry->merge_id = egg_menu_merge_add_ui_from_file (window->ui_merge, ui_file, &error);
|
||||
g_assert(entry->merge_id || error);
|
||||
if (entry->merge_id) {
|
||||
egg_menu_merge_ensure_update (window->ui_merge);
|
||||
g_hash_table_insert (window->priv->merged_actions_table, g_strdup (group_name), entry);
|
||||
} else {
|
||||
g_critical("Failed to load ui file.\n Filename %s\n Error %s",
|
||||
ui_file, error->message);
|
||||
g_error_free(error);
|
||||
g_free(entry);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
@@ -524,9 +532,10 @@ static void
|
||||
gnc_main_window_setup_window (GncMainWindow *window)
|
||||
{
|
||||
GtkWidget *main_vbox;
|
||||
guint i;
|
||||
guint i, merge_id;
|
||||
GncPluginManager *manager;
|
||||
GList *plugins;
|
||||
GError *error = NULL;
|
||||
|
||||
/* Create widgets and add them to the window */
|
||||
main_vbox = gtk_vbox_new (FALSE, 0);
|
||||
@@ -566,9 +575,19 @@ gnc_main_window_setup_window (GncMainWindow *window)
|
||||
|
||||
g_signal_connect (G_OBJECT (window->ui_merge), "add_widget",
|
||||
G_CALLBACK (gnc_main_window_add_widget), window);
|
||||
egg_menu_merge_add_ui_from_file (window->ui_merge, GNC_UI_DIR "/gnc-main-window-ui.xml", NULL);
|
||||
gtk_window_add_accel_group (GTK_WINDOW (window), window->ui_merge->accel_group);
|
||||
egg_menu_merge_ensure_update (window->ui_merge);
|
||||
merge_id = egg_menu_merge_add_ui_from_file (window->ui_merge,
|
||||
GNC_UI_DIR "/gnc-main-window-ui.xml",
|
||||
&error);
|
||||
g_assert(merge_id || error);
|
||||
if (merge_id) {
|
||||
gtk_window_add_accel_group (GTK_WINDOW (window), window->ui_merge->accel_group);
|
||||
egg_menu_merge_ensure_update (window->ui_merge);
|
||||
} else {
|
||||
g_critical("Failed to load ui file.\n Filename %s\n Error %s",
|
||||
GNC_UI_DIR "/gnc-main-window-ui.xml", error->message);
|
||||
g_error_free(error);
|
||||
g_assert(merge_id != 0);
|
||||
}
|
||||
|
||||
/* GncPluginManager stuff */
|
||||
manager = gnc_plugin_manager_get ();
|
||||
|
||||
@@ -504,6 +504,7 @@ gnc_plugin_page_account_tree_merge_actions (GncPluginPage *plugin_page,
|
||||
EggMenuMerge *ui_merge)
|
||||
{
|
||||
GncPluginPageAccountTree *plugin_page_account_tree = GNC_PLUGIN_PAGE_ACCOUNT_TREE(plugin_page);
|
||||
GError *error = NULL;
|
||||
|
||||
ENTER("page %p, ui_merge %p", plugin_page, ui_merge);
|
||||
g_return_if_fail (GNC_IS_PLUGIN_PAGE_ACCOUNT_TREE (plugin_page_account_tree));
|
||||
@@ -514,12 +515,18 @@ gnc_plugin_page_account_tree_merge_actions (GncPluginPage *plugin_page,
|
||||
plugin_page_account_tree->priv->merge_id =
|
||||
egg_menu_merge_add_ui_from_file (ui_merge,
|
||||
GNC_UI_DIR "/gnc-plugin-page-account-tree-ui.xml",
|
||||
NULL);
|
||||
&error);
|
||||
DEBUG("merge_id is %d", plugin_page_account_tree->priv->merge_id);
|
||||
|
||||
egg_menu_merge_ensure_update (ui_merge);
|
||||
|
||||
plugin_page_account_tree->priv->ui_merge = ui_merge;
|
||||
g_assert(plugin_page_account_tree->priv->merge_id || error);
|
||||
if (plugin_page_account_tree->priv->merge_id) {
|
||||
egg_menu_merge_ensure_update (ui_merge);
|
||||
plugin_page_account_tree->priv->ui_merge = ui_merge;
|
||||
} else {
|
||||
g_critical("Failed to load ui file.\n Filename %s\n Error %s",
|
||||
"gnc-plugin-page-account-tree-ui.xml", error->message);
|
||||
g_error_free(error);
|
||||
}
|
||||
LEAVE(" ");
|
||||
}
|
||||
|
||||
@@ -581,24 +588,14 @@ gnc_plugin_page_account_tree_button_press_cb (GtkWidget *widget,
|
||||
GdkEventButton *event,
|
||||
GncPluginPageAccountTree *page)
|
||||
{
|
||||
const gchar *popup;
|
||||
gchar *path;
|
||||
GtkWidget *menuitem, *menu;
|
||||
GtkWidget *menu;
|
||||
|
||||
if (event->button == 3 && page->priv->ui_merge != NULL) {
|
||||
/* Maybe show a different popup menu if no account is selected. */
|
||||
popup = "AccountPopup";
|
||||
|
||||
path = g_strconcat ("/popups/", popup, NULL);
|
||||
menuitem = egg_menu_merge_get_widget (page->priv->ui_merge, path);
|
||||
g_free (path);
|
||||
|
||||
g_return_val_if_fail (menuitem != NULL, FALSE);
|
||||
menu = gtk_menu_item_get_submenu(GTK_MENU_ITEM(menuitem));
|
||||
g_return_val_if_fail (menu != NULL, FALSE);
|
||||
|
||||
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL, event->button, event->time);
|
||||
|
||||
menu = egg_menu_merge_get_widget (page->priv->ui_merge, "/AccountPopup");
|
||||
if (menu)
|
||||
gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
|
||||
event->button, event->time);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
@@ -332,17 +332,26 @@ gnc_plugin_page_register_merge_actions (GncPluginPage *plugin_page,
|
||||
EggMenuMerge *ui_merge)
|
||||
{
|
||||
GncPluginPageRegister *plugin_page_register = GNC_PLUGIN_PAGE_REGISTER(plugin_page);
|
||||
GError *error = NULL;
|
||||
|
||||
g_return_if_fail (GNC_IS_PLUGIN_PAGE_REGISTER (plugin_page_register));
|
||||
|
||||
egg_menu_merge_insert_action_group (ui_merge, plugin_page_register->priv->action_group, 0);
|
||||
|
||||
plugin_page_register->priv->merge_id = egg_menu_merge_add_ui_from_file (ui_merge,
|
||||
GNC_UI_DIR "/gnc-plugin-page-register-ui.xml",
|
||||
NULL);
|
||||
egg_menu_merge_ensure_update (ui_merge);
|
||||
plugin_page_register->priv->merge_id =
|
||||
egg_menu_merge_add_ui_from_file (ui_merge,
|
||||
GNC_UI_DIR "/gnc-plugin-page-register-ui.xml",
|
||||
&error);
|
||||
|
||||
plugin_page_register->priv->ui_merge = ui_merge;
|
||||
g_assert(plugin_page_register->priv->merge_id || error);
|
||||
if (plugin_page_register->priv->merge_id) {
|
||||
egg_menu_merge_ensure_update (ui_merge);
|
||||
plugin_page_register->priv->ui_merge = ui_merge;
|
||||
} else {
|
||||
g_critical("Failed to load ui file.\n Filename %s\n Error %s",
|
||||
"gnc-plugin-page-register-ui.xml", error->message);
|
||||
g_error_free(error);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
@@ -1,82 +1,83 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="File" verb="FileAction">
|
||||
<menuitem name="FileNew" verb="FileNewAction"/>
|
||||
<placeholder name="FileNewPlaceholder"/>
|
||||
<separator name="FileSep1"/>
|
||||
<menuitem name="FileOpen" verb="FileOpenAction"/>
|
||||
<placeholder name="FileOpenPlaceholder"/>
|
||||
<menuitem name="FileOpenNewWindow" verb="FileOpenNewWindowAction"/>
|
||||
<submenu name="FileOpenRecent" verb="FileOpenRecentAction"/>
|
||||
<separator name="FileSep2"/>
|
||||
<menuitem name="FileSave" verb="FileSaveAction"/>
|
||||
<menuitem name="FileSaveAs" verb="FileSaveAsAction"/>
|
||||
<placeholder name="FileSavePlaceholder"/>
|
||||
<separator name="FileSep3"/>
|
||||
<submenu name="FileImport" verb="FileImportAction">
|
||||
<placeholder name="FileImportPlaceholder"/>
|
||||
</submenu>
|
||||
<submenu name="FileExport" verb="FileExportAction">
|
||||
<menuitem name="FileExportAccounts" verb="FileExportAccountsAction"/>
|
||||
<placeholder name="FileExportPlaceholder"/>
|
||||
</submenu>
|
||||
<separator name="FileSep4"/>
|
||||
<menuitem name="FilePrint" verb="FilePrintAction"/>
|
||||
<separator name="FileSep5"/>
|
||||
<menuitem name="FileClose" verb="FileCloseAction"/>
|
||||
<menuitem name="FileQuit" verb="FileQuitAction"/>
|
||||
</submenu>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="File" action="FileAction">
|
||||
<menuitem name="FileNew" action="FileNewAction"/>
|
||||
<placeholder name="FileNewPlaceholder"/>
|
||||
<separator name="FileSep1"/>
|
||||
<menuitem name="FileOpen" action="FileOpenAction"/>
|
||||
<placeholder name="FileOpenPlaceholder"/>
|
||||
<menuitem name="FileOpenNewWindow" action="FileOpenNewWindowAction"/>
|
||||
<menu name="FileOpenRecent" action="FileOpenRecentAction"/>
|
||||
<separator name="FileSep2"/>
|
||||
<menuitem name="FileSave" action="FileSaveAction"/>
|
||||
<menuitem name="FileSaveAs" action="FileSaveAsAction"/>
|
||||
<placeholder name="FileSavePlaceholder"/>
|
||||
<separator name="FileSep3"/>
|
||||
<menu name="FileImport" action="FileImportAction">
|
||||
<placeholder name="FileImportPlaceholder"/>
|
||||
</menu>
|
||||
<menu name="FileExport" action="FileExportAction">
|
||||
<menuitem name="FileExportAccounts" action="FileExportAccountsAction"/>
|
||||
<placeholder name="FileExportPlaceholder"/>
|
||||
</menu>
|
||||
<separator name="FileSep4"/>
|
||||
<menuitem name="FilePrint" action="FilePrintAction"/>
|
||||
<separator name="FileSep5"/>
|
||||
<menuitem name="FileClose" action="FileCloseAction"/>
|
||||
<menuitem name="FileQuit" action="FileQuitAction"/>
|
||||
</menu>
|
||||
|
||||
<menu name="Edit" action="EditAction">
|
||||
<menuitem name="EditCut" action="EditCutAction"/>
|
||||
<menuitem name="EditCopy" action="EditCopyAction"/>
|
||||
<menuitem name="EditPaste" action="EditPasteAction"/>
|
||||
<separator name="EditSep1"/>
|
||||
<placeholder name="EditPlaceholder"/>
|
||||
<menuitem name="EditPreferences" action="EditPreferencesAction"/>
|
||||
<placeholder name="EditPreferencesPlaceholder"/>
|
||||
<menuitem name="EditTaxOptions" action="EditTaxOptionsAction"/>
|
||||
</menu>
|
||||
|
||||
<menu name="View" action="ViewAction">
|
||||
<menuitem name="ViewRefresh" action="ViewRefreshAction"/>
|
||||
<separator name="ViewSep1"/>
|
||||
<menuitem name="ViewToolbar" action="ViewToolbarAction"/>
|
||||
<menuitem name="ViewSummary" action="ViewSummaryAction"/>
|
||||
<menuitem name="ViewStatusbar" action="ViewStatusbarAction"/>
|
||||
</menu>
|
||||
|
||||
<menu name="Actions" action="ActionsAction">
|
||||
<menu name="ActionsScheduledTransactions" action="ActionsScheduledTransactionsAction">
|
||||
<menuitem name="ActionsScheduledTransactionEditor" action="ActionsScheduledTransactionEditorAction"/>
|
||||
<menuitem name="ActionsSinceLastRun" action="ActionsSinceLastRunAction"/>
|
||||
<menuitem name="ActionsMortgageLoan" action="ActionsMortgageLoanAction"/>
|
||||
</menu>
|
||||
<placeholder name="ActionsPlaceholder"/>
|
||||
</menu>
|
||||
|
||||
<placeholder name="AdditionalMenusPlaceholder"/>
|
||||
|
||||
<menu name="Tools" action="ToolsAction">
|
||||
<placeholder name="ToolsPlaceholder"/>
|
||||
<menuitem name="ToolsPriceEditor" action="ToolsPriceEditorAction"/>
|
||||
<menuitem name="ToolsCommodityEditor" action="ToolsCommodityEditorAction"/>
|
||||
<menuitem name="ToolsFinancialCalculator" action="ToolsFinancialCalculatorAction"/>
|
||||
<menuitem name="ToolsFindTransactions" action="ToolsFindTransactionsAction"/>
|
||||
</menu>
|
||||
|
||||
<menu name="Help" action="HelpAction">
|
||||
<menuitem name="HelpTutorial" action="HelpTutorialAction"/>
|
||||
<menuitem name="HelpTipsOfTheDay" action="HelpTipsOfTheDayAction"/>
|
||||
<menuitem name="HelpContents" action="HelpContentsAction"/>
|
||||
<menuitem name="HelpAbout" action="HelpAboutAction"/>
|
||||
</menu>
|
||||
</menubar>
|
||||
|
||||
<submenu name="Edit" verb="EditAction">
|
||||
<menuitem name="EditCut" verb="EditCutAction"/>
|
||||
<menuitem name="EditCopy" verb="EditCopyAction"/>
|
||||
<menuitem name="EditPaste" verb="EditPasteAction"/>
|
||||
<separator name="EditSep1"/>
|
||||
<placeholder name="EditPlaceholder"/>
|
||||
<menuitem name="EditPreferences" verb="EditPreferencesAction"/>
|
||||
<placeholder name="EditPreferencesPlaceholder"/>
|
||||
<menuitem name="EditTaxOptions" verb="EditTaxOptionsAction"/>
|
||||
</submenu>
|
||||
|
||||
<submenu name="View" verb="ViewAction">
|
||||
<menuitem name="ViewRefresh" verb="ViewRefreshAction"/>
|
||||
<separator name="ViewSep1"/>
|
||||
<menuitem name="ViewToolbar" verb="ViewToolbarAction"/>
|
||||
<menuitem name="ViewSummary" verb="ViewSummaryAction"/>
|
||||
<menuitem name="ViewStatusbar" verb="ViewStatusbarAction"/>
|
||||
</submenu>
|
||||
|
||||
<submenu name="Actions" verb="ActionsAction">
|
||||
<submenu name="ActionsScheduledTransactions" verb="ActionsScheduledTransactionsAction">
|
||||
<menuitem name="ActionsScheduledTransactionEditor" verb="ActionsScheduledTransactionEditorAction"/>
|
||||
<menuitem name="ActionsSinceLastRun" verb="ActionsSinceLastRunAction"/>
|
||||
<menuitem name="ActionsMortgageLoan" verb="ActionsMortgageLoanAction"/>
|
||||
</submenu>
|
||||
<placeholder name="ActionsPlaceholder"/>
|
||||
</submenu>
|
||||
|
||||
<placeholder name="AdditionalMenusPlaceholder"/>
|
||||
|
||||
<submenu name="Tools" verb="ToolsAction">
|
||||
<placeholder name="ToolsPlaceholder"/>
|
||||
<menuitem name="ToolsPriceEditor" verb="ToolsPriceEditorAction"/>
|
||||
<menuitem name="ToolsCommodityEditor" verb="ToolsCommodityEditorAction"/>
|
||||
<menuitem name="ToolsFinancialCalculator" verb="ToolsFinancialCalculatorAction"/>
|
||||
<menuitem name="ToolsFindTransactions" verb="ToolsFindTransactionsAction"/>
|
||||
</submenu>
|
||||
|
||||
<submenu name="Help" verb="HelpAction">
|
||||
<menuitem name="HelpTutorial" verb="HelpTutorialAction"/>
|
||||
<menuitem name="HelpTipsOfTheDay" verb="HelpTipsOfTheDayAction"/>
|
||||
<menuitem name="HelpContents" verb="HelpContentsAction"/>
|
||||
<menuitem name="HelpAbout" verb="HelpAboutAction"/>
|
||||
</submenu>
|
||||
</menu>
|
||||
<dockitem name="DefaultToolbar">
|
||||
<toolitem name="ToolbarSave" verb="FileSaveAction"/>
|
||||
<toolitem name="ToolbarClose" verb="FileCloseAction"/>
|
||||
<placeholder name="DefaultToolbarPlaceholder"/>
|
||||
<separator name="ToolbarSep1"/>
|
||||
<toolitem name="ToolbarQuit" verb="FileQuitAction"/>
|
||||
</dockitem>
|
||||
</Root>
|
||||
<toolbar name="DefaultToolbar">
|
||||
<toolitem name="ToolbarSave" action="FileSaveAction"/>
|
||||
<toolitem name="ToolbarClose" action="FileCloseAction"/>
|
||||
<placeholder name="DefaultToolbarPlaceholder"/>
|
||||
<separator name="ToolbarSep1"/>
|
||||
<toolitem name="ToolbarQuit" action="FileQuitAction"/>
|
||||
</toolbar>
|
||||
</ui>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="File" verb="FileAction">
|
||||
<placeholder name="FileNewPlaceholder">
|
||||
<menuitem name="FileNewAccountTree" verb="FileNewAccountTreeAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
</menu>
|
||||
</Root>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="File" action="FileAction">
|
||||
<placeholder name="FileNewPlaceholder">
|
||||
<menuitem name="FileNewAccountTree" action="FileNewAccountTreeAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
</menubar>
|
||||
</ui>
|
||||
|
||||
@@ -1,71 +1,71 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="File" verb="FileAction">
|
||||
<placeholder name="FileNewPlaceholder">
|
||||
<menuitem name="FileNewAccount" verb="FileNewAccountAction"/>
|
||||
</placeholder>
|
||||
<placeholder name="FileOpenPlaceholder">
|
||||
<menuitem name="FileOpenAccount" verb="FileOpenAccountAction"/>
|
||||
<menuitem name="FileOpenSubaccounts" verb="FileOpenSubaccountsAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
<submenu name="Edit" verb="EditAction">
|
||||
<placeholder name="EditPlaceholder">
|
||||
<menuitem name="EditEditAccount" verb="EditEditAccountAction"/>
|
||||
<menuitem name="EditDeleteAccount" verb="EditDeleteAccountAction"/>
|
||||
<separator name="EditSep2"/>
|
||||
</placeholder>
|
||||
<placeholder name="EditPreferencesPlaceholder">
|
||||
<menuitem name="EditAccountViewOptions" verb="EditAccountViewOptionsAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
<submenu name="Actions" verb="ActionsAction">
|
||||
<placeholder name="ActionsPlaceholder">
|
||||
<separator name="ActionsSep1"/>
|
||||
<menuitem name="ActionsReconcile" verb="ActionsReconcileAction"/>
|
||||
<menuitem name="ActionsTransfer" verb="ActionsTransferAction"/>
|
||||
<menuitem name="ActionsStockSplit" verb="ActionsStockSplitAction"/>
|
||||
<separator name="ActionsSep2"/>
|
||||
<submenu name="ScrubMenu" verb="ScrubMenuAction">
|
||||
<menuitem name="Scrub" verb="ScrubAction"/>
|
||||
<menuitem name="ScrubSub" verb="ScrubSubAction"/>
|
||||
<menuitem name="ScrubAll" verb="ScrubAllAction"/>
|
||||
</submenu>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
</menu>
|
||||
<popups>
|
||||
<popup name="AccountPopup" verb="FakeToplevel">
|
||||
<menuitem name="AccountOpenAccount" verb="FileOpenAccountAction"/>
|
||||
<menuitem name="AccountOpenSubaccounts" verb="FileOpenSubaccountsAction"/>
|
||||
<menuitem name="AccountEditAccount" verb="EditEditAccountAction"/>
|
||||
<separator name="AccountSep1"/>
|
||||
<menuitem name="AccountReconcile" verb="ActionsReconcileAction"/>
|
||||
<menuitem name="AccountTransfer" verb="ActionsTransferAction"/>
|
||||
<menuitem name="AccountStockSplit" verb="ActionsStockSplitAction"/>
|
||||
<separator name="AccountSep2"/>
|
||||
<menuitem name="AccountNewAccount" verb="FileNewAccountAction"/>
|
||||
<menuitem name="AccountDeleteAccount" verb="EditDeleteAccountAction"/>
|
||||
<separator name="AccountSep3"/>
|
||||
<submenu name="ScrubMenu" verb="ScrubMenuAction">
|
||||
<menuitem name="Scrub" verb="ScrubAction"/>
|
||||
<menuitem name="ScrubSub" verb="ScrubSubAction"/>
|
||||
<menuitem name="ScrubAll" verb="ScrubAllAction"/>
|
||||
</submenu>
|
||||
<separator name="AccountSep4"/>
|
||||
<menuitem name="AccountViewOptions" verb="EditAccountViewOptionsAction"/>
|
||||
</popup>
|
||||
</popups>
|
||||
<dockitem name="DefaultToolbar">
|
||||
<placeholder name="DefaultToolbarPlaceholder">
|
||||
<separator name="ToolbarSep2"/>
|
||||
<toolitem name="ToolbarOpenAccount" verb="FileOpenAccountAction"/>
|
||||
<toolitem name="ToolbarEditAccount" verb="EditEditAccountAction"/>
|
||||
<separator name="ToolbarSep3"/>
|
||||
<toolitem name="ToolbarAccountViewOptions" verb="EditAccountViewOptionsAction"/>
|
||||
<separator name="ToolbarSep4"/>
|
||||
<toolitem name="ToolbarNewAccount" verb="FileNewAccountAction"/>
|
||||
<toolitem name="ToolbarDeleteAccount" verb="EditDeleteAccountAction"/>
|
||||
</placeholder>
|
||||
</dockitem>
|
||||
</Root>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="File" action="FileAction">
|
||||
<placeholder name="FileNewPlaceholder">
|
||||
<menuitem name="FileNewAccount" action="FileNewAccountAction"/>
|
||||
</placeholder>
|
||||
<placeholder name="FileOpenPlaceholder">
|
||||
<menuitem name="FileOpenAccount" action="FileOpenAccountAction"/>
|
||||
<menuitem name="FileOpenSubaccounts" action="FileOpenSubaccountsAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
<menu name="Edit" action="EditAction">
|
||||
<placeholder name="EditPlaceholder">
|
||||
<menuitem name="EditEditAccount" action="EditEditAccountAction"/>
|
||||
<menuitem name="EditDeleteAccount" action="EditDeleteAccountAction"/>
|
||||
<separator name="EditSep2"/>
|
||||
</placeholder>
|
||||
<placeholder name="EditPreferencesPlaceholder">
|
||||
<menuitem name="EditAccountViewOptions" action="EditAccountViewOptionsAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
<menu name="Actions" action="ActionsAction">
|
||||
<placeholder name="ActionsPlaceholder">
|
||||
<separator name="ActionsSep1"/>
|
||||
<menuitem name="ActionsReconcile" action="ActionsReconcileAction"/>
|
||||
<menuitem name="ActionsTransfer" action="ActionsTransferAction"/>
|
||||
<menuitem name="ActionsStockSplit" action="ActionsStockSplitAction"/>
|
||||
<separator name="ActionsSep2"/>
|
||||
<menu name="ScrubMenu" action="ScrubMenuAction">
|
||||
<menuitem name="Scrub" action="ScrubAction"/>
|
||||
<menuitem name="ScrubSub" action="ScrubSubAction"/>
|
||||
<menuitem name="ScrubAll" action="ScrubAllAction"/>
|
||||
</menu>
|
||||
</placeholder>
|
||||
</menu>
|
||||
</menubar>
|
||||
|
||||
<popup name="AccountPopup" action="FakeToplevel">
|
||||
<menuitem name="AccountOpenAccount" action="FileOpenAccountAction"/>
|
||||
<menuitem name="AccountOpenSubaccounts" action="FileOpenSubaccountsAction"/>
|
||||
<menuitem name="AccountEditAccount" action="EditEditAccountAction"/>
|
||||
<separator name="AccountSep1"/>
|
||||
<menuitem name="AccountReconcile" action="ActionsReconcileAction"/>
|
||||
<menuitem name="AccountTransfer" action="ActionsTransferAction"/>
|
||||
<menuitem name="AccountStockSplit" action="ActionsStockSplitAction"/>
|
||||
<separator name="AccountSep2"/>
|
||||
<menuitem name="AccountNewAccount" action="FileNewAccountAction"/>
|
||||
<menuitem name="AccountDeleteAccount" action="EditDeleteAccountAction"/>
|
||||
<separator name="AccountSep3"/>
|
||||
<menu name="ScrubMenu" action="ScrubMenuAction">
|
||||
<menuitem name="Scrub" action="ScrubAction"/>
|
||||
<menuitem name="ScrubSub" action="ScrubSubAction"/>
|
||||
<menuitem name="ScrubAll" action="ScrubAllAction"/>
|
||||
</menu>
|
||||
<separator name="AccountSep4"/>
|
||||
<menuitem name="AccountViewOptions" action="EditAccountViewOptionsAction"/>
|
||||
</popup>
|
||||
|
||||
<toolbar name="DefaultToolbar">
|
||||
<placeholder name="DefaultToolbarPlaceholder">
|
||||
<separator name="ToolbarSep2"/>
|
||||
<toolitem name="ToolbarOpenAccount" action="FileOpenAccountAction"/>
|
||||
<toolitem name="ToolbarEditAccount" action="EditEditAccountAction"/>
|
||||
<separator name="ToolbarSep3"/>
|
||||
<toolitem name="ToolbarAccountViewOptions" action="EditAccountViewOptionsAction"/>
|
||||
<separator name="ToolbarSep4"/>
|
||||
<toolitem name="ToolbarNewAccount" action="FileNewAccountAction"/>
|
||||
<toolitem name="ToolbarDeleteAccount" action="EditDeleteAccountAction"/>
|
||||
</placeholder>
|
||||
</toolbar>
|
||||
</ui>
|
||||
|
||||
@@ -1,44 +1,23 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="Actions">
|
||||
<placeholder name="ActionsPlaceholder">
|
||||
<separator name="ActionsSep3"/>
|
||||
<menuitem name="RecordTransaction" verb="RecordTransactionAction"/>
|
||||
<menuitem name="CancelTransaction" verb="CancelTransactionAction"/>
|
||||
<menuitem name="DeleteTransaction" verb="DeleteTransactionAction"/>
|
||||
<menuitem name="DuplicateTransaction" verb="DuplicateTransactionAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
</menu>
|
||||
<!--popups>
|
||||
<popup name="AccountPopup" verb="FakeToplevel">
|
||||
<menuitem name="AccountOpenAccount" verb="FileOpenAccountAction"/>
|
||||
<menuitem name="AccountOpenSubaccounts" verb="FileOpenSubaccountsAction"/>
|
||||
<menuitem name="AccountEditAccount" verb="EditEditAccountAction"/>
|
||||
<separator name="AccountSep1"/>
|
||||
<menuitem name="AccountReconcile" verb="ActionsReconcileAction"/>
|
||||
<menuitem name="AccountTransfer" verb="ActionsTransferAction"/>
|
||||
<menuitem name="AccountStockSplit" verb="ActionsStockSplitAction"/>
|
||||
<separator name="AccountSep2"/>
|
||||
<menuitem name="AccountNewAccount" verb="FileNewAccountAction"/>
|
||||
<menuitem name="AccountDeleteAccount" verb="EditDeleteAccountAction"/>
|
||||
<separator name="AccountSep3"/>
|
||||
<submenu name="ScrubMenu" verb="ScrubMenuAction">
|
||||
<menuitem name="Scrub" verb="ScrubAction"/>
|
||||
<menuitem name="ScrubSub" verb="ScrubSubAction"/>
|
||||
<menuitem name="ScrubAll" verb="ScrubAllAction"/>
|
||||
</submenu>
|
||||
<separator name="AccountSep4"/>
|
||||
<menuitem name="AccountViewOptions" verb="EditAccountViewOptionsAction"/>
|
||||
</popup>
|
||||
</popups-->
|
||||
<dockitem name="DefaultToolbar">
|
||||
<placeholder name="DefaultToolbarPlaceholder">
|
||||
<separator name="ToolbarSep2"/>
|
||||
<toolitem name="ToolbarRecordTransaction" verb="RecordTransactionAction"/>
|
||||
<toolitem name="ToolbarCancelTransaction" verb="CancelTransactionAction"/>
|
||||
<toolitem name="ToolbarDeleteTransaction" verb="DeleteTransactionAction"/>
|
||||
<toolitem name="ToolbarDuplicateTransaction" verb="DuplicateTransactionAction"/>
|
||||
</placeholder>
|
||||
</dockitem>
|
||||
</Root>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="Actions">
|
||||
<placeholder name="ActionsPlaceholder">
|
||||
<separator name="ActionsSep3"/>
|
||||
<menuitem name="RecordTransaction" action="RecordTransactionAction"/>
|
||||
<menuitem name="CancelTransaction" action="CancelTransactionAction"/>
|
||||
<menuitem name="DeleteTransaction" action="DeleteTransactionAction"/>
|
||||
<menuitem name="DuplicateTransaction" action="DuplicateTransactionAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
</menubar>
|
||||
|
||||
<toolbar name="DefaultToolbar">
|
||||
<placeholder name="DefaultToolbarPlaceholder">
|
||||
<separator name="ToolbarSep2"/>
|
||||
<toolitem name="ToolbarRecordTransaction" action="RecordTransactionAction"/>
|
||||
<toolitem name="ToolbarCancelTransaction" action="CancelTransactionAction"/>
|
||||
<toolitem name="ToolbarDeleteTransaction" action="DeleteTransactionAction"/>
|
||||
<toolitem name="ToolbarDuplicateTransaction" action="DuplicateTransactionAction"/>
|
||||
</placeholder>
|
||||
</toolbar>
|
||||
</ui>
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="Tools" verb="ToolsAction">
|
||||
<placeholder name="ToolsPlaceholder">
|
||||
<menuitem name="ToolsGeneralLedger" verb="ToolsGeneralLedgerAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
</menu>
|
||||
</Root>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="Tools" action="ToolsAction">
|
||||
<placeholder name="ToolsPlaceholder">
|
||||
<menuitem name="ToolsGeneralLedger" action="ToolsGeneralLedgerAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
</menubar>
|
||||
</ui>
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
<Root>
|
||||
<menu>
|
||||
<submenu name="File" verb="FileAction">
|
||||
<submenu name="FileImport" verb="FileImportAction">
|
||||
<placeholder name="FileImportPlaceholder">
|
||||
<menuitem name="FileQIFImport" verb="QIFImportAction"/>
|
||||
</placeholder>
|
||||
</submenu>
|
||||
</submenu>
|
||||
</menu>
|
||||
</Root>
|
||||
<ui>
|
||||
<menubar>
|
||||
<menu name="File" action="FileAction">
|
||||
<menu name="FileImport" action="FileImportAction">
|
||||
<placeholder name="FileImportPlaceholder">
|
||||
<menuitem name="FileQIFImport" action="QIFImportAction"/>
|
||||
</placeholder>
|
||||
</menu>
|
||||
</menu>
|
||||
</menubar>
|
||||
</ui>
|
||||
|
||||
Reference in New Issue
Block a user