Add check to display warning dialog for mismatched commodities

This commit is contained in:
jean 2020-04-02 22:23:19 -07:00
parent c39f8929d2
commit f19b707927

View File

@ -2619,27 +2619,38 @@ gnc_split_reg_determine_read_only( GNCSplitReg *gsr )
{ {
dialog_args *args; dialog_args *args;
char *string = NULL; char *string = NULL;
switch (gnc_split_reg_get_placeholder(gsr)) reg = gnc_ledger_display_get_split_register( gsr->ledger );
if(reg->mismatched_commodities)
{ {
case PLACEHOLDER_NONE: string = _("This account may not be edited because its"
/* stay as false. */ " subaccounts have mismatched commodities or currencies."
return; "You need to open each account individually to "
"edit transactions.");
}
else
{
switch (gnc_split_reg_get_placeholder(gsr))
{
case PLACEHOLDER_NONE:
/* stay as false. */
return;
case PLACEHOLDER_THIS: case PLACEHOLDER_THIS:
string = _("This account may not be edited. If you want " string = _("This account may not be edited. If you want "
"to edit transactions in this register, please " "to edit transactions in this register, please "
"open the account options and turn off the " "open the account options and turn off the "
"placeholder checkbox."); "placeholder checkbox.");
break; break;
default: default:
string = _("One of the sub-accounts selected may not be " string = _("One of the sub-accounts selected may not be "
"edited. If you want to edit transactions in " "edited. If you want to edit transactions in "
"this register, please open the sub-account " "this register, please open the sub-account "
"options and turn off the placeholder checkbox. " "options and turn off the placeholder checkbox. "
"You may also open an individual account instead " "You may also open an individual account instead "
"of a set of accounts."); "of a set of accounts.");
break; break;
}
} }
gsr->read_only = TRUE; gsr->read_only = TRUE;
/* Put up a warning dialog */ /* Put up a warning dialog */