If there are only two splits and the register is in "expanded" mode,

don't automatically update the price of the other split.


git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@7286 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
David Hampton 2002-10-07 01:30:41 +00:00
parent f9ecbf0aaf
commit 7eecd9ea66
5 changed files with 25 additions and 5 deletions

View File

@ -82,6 +82,20 @@
an alphabetic character has any modifiers applied to it, pass it
on to the window manager. Fixes 88520.
* src/register/ledger-core/split-register-model-save.c
(gnc_split_register_save_data_new): Add a new arg to the register
save data to indicate whether the transaction the user is working
on is in expanded mode. (gnc_split_register_save_cells): Don't
balance other split of two, when the register is in expanded mode.
* src/register/ledger-core/split-register-control.c
(gnc_split_register_auto_completion): Add new arg to function
call.
* src/register/ledger-core/split-register.c
(gnc_split_register_save): Add new arg to function call.
2002-10-05 David Hampton <hampton@employees.org>
* src/engine/gnc-engine-util.c (gnc_set_xxx_message):

View File

@ -689,7 +689,8 @@ gnc_split_register_auto_completion (SplitRegister *reg,
{
SRSaveData *sd;
sd = gnc_split_register_save_data_new (trans, blank_split);
sd = gnc_split_register_save_data_new (trans, blank_split,
info->trans_expanded);
gnc_table_save_cells (reg->table, sd);
gnc_split_register_save_data_destroy (sd);
}

View File

@ -42,6 +42,7 @@ struct sr_save_data
gboolean handled_dc; /* We have already handled the debit/credit cells. */
gboolean do_scrub; /* Scrub other split at the end. */
gboolean reg_expanded; /* Register is in expanded (split) mode */
};
/* This static indicates the debugging module that this .o belongs to. */
@ -384,7 +385,7 @@ gnc_split_register_save_cells (gpointer save_data,
xaccSplitScrub (sd->split);
if (other_split)
if (other_split && !sd->reg_expanded)
{
gnc_numeric value = xaccSplitGetValue (sd->split);
@ -630,7 +631,8 @@ gnc_template_register_model_add_save_handlers (TableModel *model)
}
SRSaveData *
gnc_split_register_save_data_new (Transaction *trans, Split *split)
gnc_split_register_save_data_new (Transaction *trans, Split *split,
gboolean expanded)
{
SRSaveData *sd;
@ -643,6 +645,7 @@ gnc_split_register_save_data_new (Transaction *trans, Split *split)
sd->split = split;
sd->handled_dc = FALSE;
sd->do_scrub = FALSE;
sd->reg_expanded = expanded;
return sd;
}

View File

@ -33,7 +33,8 @@ void gnc_template_register_model_add_save_handlers (TableModel *model);
typedef struct sr_save_data SRSaveData;
SRSaveData * gnc_split_register_save_data_new (Transaction *trans,
Split *split);
Split *split,
gboolean expanded);
void gnc_split_register_save_data_destroy (SRSaveData *sd);

View File

@ -1461,7 +1461,8 @@ gnc_split_register_save (SplitRegister *reg, gboolean do_commit)
{
SRSaveData *sd;
sd = gnc_split_register_save_data_new (trans, split);
sd = gnc_split_register_save_data_new (trans, split,
info->trans_expanded);
gnc_table_save_cells (reg->table, sd);
gnc_split_register_save_data_destroy (sd);
}