mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
misc changes
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@488 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
c9e8127c2b
commit
dabf234517
13
src/Ledger.c
13
src/Ledger.c
@ -44,6 +44,7 @@ xaccSaveRegEntry (BasicRegister *reg)
|
|||||||
{
|
{
|
||||||
Split *split;
|
Split *split;
|
||||||
Transaction *trans;
|
Transaction *trans;
|
||||||
|
Account * acc;
|
||||||
|
|
||||||
/* get the handle to the current split and transaction */
|
/* get the handle to the current split and transaction */
|
||||||
split = xaccGetCurrentSplit (reg);
|
split = xaccGetCurrentSplit (reg);
|
||||||
@ -60,6 +61,16 @@ xaccSaveRegEntry (BasicRegister *reg)
|
|||||||
xaccSplitSetMemo (split, reg->memoCell->value);
|
xaccSplitSetMemo (split, reg->memoCell->value);
|
||||||
xaccSplitSetAction (split, reg->actionCell->cell.value);
|
xaccSplitSetAction (split, reg->actionCell->cell.value);
|
||||||
xaccSplitSetReconcile (split, reg->recnCell->value[0]);
|
xaccSplitSetReconcile (split, reg->recnCell->value[0]);
|
||||||
|
|
||||||
|
/* hack alert -- do transfers */
|
||||||
|
|
||||||
|
/* lets assume that the amount changed, and
|
||||||
|
* refresh all related accounts & account windows */
|
||||||
|
xaccTransRecomputeBalance (trans);
|
||||||
|
acc = (Account *) split->acc;
|
||||||
|
accRefresh (acc);
|
||||||
|
acc = (Account *) trans->credit_split.acc;
|
||||||
|
accRefresh (acc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ======================================================== */
|
/* ======================================================== */
|
||||||
@ -174,6 +185,8 @@ void xaccLoadXferCell (ComboCell *cell, AccountGroup *grp)
|
|||||||
Account * acc;
|
Account * acc;
|
||||||
int n;
|
int n;
|
||||||
|
|
||||||
|
xaccAddComboCellMenuItem (cell, SPLIT_STR);
|
||||||
|
|
||||||
if (!grp) return;
|
if (!grp) return;
|
||||||
|
|
||||||
/* build the xfer menu out of account names */
|
/* build the xfer menu out of account names */
|
||||||
|
@ -91,6 +91,7 @@ static RegWindow **fullList = NULL; /* all registers */
|
|||||||
/** PROTOTYPES ******************************************************/
|
/** PROTOTYPES ******************************************************/
|
||||||
RegWindow * regWindowLedger( Widget parent, Account *lead, Account **acclist, int type);
|
RegWindow * regWindowLedger( Widget parent, Account *lead, Account **acclist, int type);
|
||||||
void accRefresh (Account *acc);
|
void accRefresh (Account *acc);
|
||||||
|
void regRefresh (RegWindow *regData);
|
||||||
|
|
||||||
static void closeRegWindow( Widget mw, XtPointer cd, XtPointer cb );
|
static void closeRegWindow( Widget mw, XtPointer cd, XtPointer cb );
|
||||||
static void startRecnCB( Widget mw, XtPointer cd, XtPointer cb );
|
static void startRecnCB( Widget mw, XtPointer cd, XtPointer cb );
|
||||||
@ -632,7 +633,7 @@ regWindowLedger( Widget parent, Account *lead_acc, Account **acclist, int ledger
|
|||||||
/******************************************************************/
|
/******************************************************************/
|
||||||
XtManageChild(pane);
|
XtManageChild(pane);
|
||||||
|
|
||||||
accRefresh (regData->leader);
|
regRefresh (regData);
|
||||||
|
|
||||||
XtPopup( regData->dialog, XtGrabNone );
|
XtPopup( regData->dialog, XtGrabNone );
|
||||||
|
|
||||||
@ -679,6 +680,9 @@ void accRefresh (Account *acc)
|
|||||||
n++;
|
n++;
|
||||||
regData = fullList[n];
|
regData = fullList[n];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* hack alert -- refesh adjbwindow too */
|
||||||
|
recnRefresh (acc);
|
||||||
}
|
}
|
||||||
|
|
||||||
/********************************************************************\
|
/********************************************************************\
|
||||||
@ -861,6 +865,8 @@ deleteCB( Widget mw, XtPointer cd, XtPointer cb )
|
|||||||
xaccRemoveSplit (acc, split);
|
xaccRemoveSplit (acc, split);
|
||||||
xaccFreeSplit (split);
|
xaccFreeSplit (split);
|
||||||
|
|
||||||
|
accRefresh (acc);
|
||||||
|
|
||||||
i++;
|
i++;
|
||||||
split = trans->debit_splits[i];
|
split = trans->debit_splits[i];
|
||||||
}
|
}
|
||||||
@ -869,6 +875,7 @@ deleteCB( Widget mw, XtPointer cd, XtPointer cb )
|
|||||||
acc = (Account *) (trans->credit_split.acc);
|
acc = (Account *) (trans->credit_split.acc);
|
||||||
xaccRemoveSplit (acc, &(trans->credit_split));
|
xaccRemoveSplit (acc, &(trans->credit_split));
|
||||||
xaccFreeTransaction (trans);
|
xaccFreeTransaction (trans);
|
||||||
|
accRefresh (acc);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
Account *credit_acc, *debit_acc;
|
Account *credit_acc, *debit_acc;
|
||||||
|
@ -337,6 +337,7 @@ void xaccMoveCursor (Table *table, int virt_row, int virt_col)
|
|||||||
|
|
||||||
table->current_cursor_row = virt_row;
|
table->current_cursor_row = virt_row;
|
||||||
table->current_cursor_col = virt_col;
|
table->current_cursor_col = virt_col;
|
||||||
|
table->cursor->user_data = NULL;
|
||||||
|
|
||||||
if ((0 > virt_row) || (0 > virt_col)) return;
|
if ((0 > virt_row) || (0 > virt_col)) return;
|
||||||
if (virt_row >= table->num_rows) return;
|
if (virt_row >= table->num_rows) return;
|
||||||
@ -375,6 +376,7 @@ void xaccMoveCursorGUI (Table *table, int virt_row, int virt_col)
|
|||||||
|
|
||||||
table->current_cursor_row = virt_row;
|
table->current_cursor_row = virt_row;
|
||||||
table->current_cursor_col = virt_col;
|
table->current_cursor_col = virt_col;
|
||||||
|
table->cursor->user_data = NULL;
|
||||||
|
|
||||||
if ((0 > virt_row) || (0 > virt_col)) return;
|
if ((0 > virt_row) || (0 > virt_col)) return;
|
||||||
if (virt_row >= table->num_rows) return;
|
if (virt_row >= table->num_rows) return;
|
||||||
|
Loading…
Reference in New Issue
Block a user