More numerics conversion.

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@3135 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Dave Peticolas 2000-11-08 06:36:51 +00:00
parent 96cf94fe87
commit 53df065d52
8 changed files with 144 additions and 117 deletions

View File

@ -71,7 +71,9 @@ _gnc_euro_rate_compare_(const void * key,
{ {
const gnc_commodity * curr = key; const gnc_commodity * curr = key;
const gnc_euro_rate_struct * euro = value; const gnc_euro_rate_struct * euro = value;
if(!key || !value) return -1;
if (!key || !value)
return -1;
return strcasecmp(gnc_commodity_get_mnemonic(curr), euro->currency); return strcasecmp(gnc_commodity_get_mnemonic(curr), euro->currency);
@ -109,21 +111,21 @@ gnc_is_euro_currency(const gnc_commodity * currency) {
/* ------------------------------------------------------ */ /* ------------------------------------------------------ */
double gnc_numeric
gnc_convert_to_euro(const gnc_commodity * currency, double value) { gnc_convert_to_euro(const gnc_commodity * currency, gnc_numeric value) {
gnc_euro_rate_struct *result; gnc_euro_rate_struct *result;
const char *namespace; const char *namespace;
if (currency == NULL) if (currency == NULL)
return 0.0; return gnc_numeric_zero ();
namespace = gnc_commodity_get_namespace (currency); namespace = gnc_commodity_get_namespace (currency);
if (namespace == NULL) if (namespace == NULL)
return FALSE; return gnc_numeric_zero ();
if (strcmp (namespace, GNC_COMMODITY_NS_ISO) != 0) if (strcmp (namespace, GNC_COMMODITY_NS_ISO) != 0)
return FALSE; return gnc_numeric_zero ();
result = bsearch(currency, result = bsearch(currency,
_gnc_euro_rate_, _gnc_euro_rate_,
@ -132,29 +134,35 @@ gnc_convert_to_euro(const gnc_commodity * currency, double value) {
_gnc_euro_rate_compare_); _gnc_euro_rate_compare_);
if (result == NULL) if (result == NULL)
return 0.0; return gnc_numeric_zero ();
/* round to 2 decimal places */ /* round to 2 decimal places */
return (floor(((value / result->rate) * 100.0) + 0.5) / 100.0); {
gnc_numeric rate;
rate = double_to_gnc_numeric (result->rate, 100000, GNC_RND_ROUND);
return gnc_numeric_div (value, rate, 100, GNC_RND_FLOOR);
}
} }
/* ------------------------------------------------------ */ /* ------------------------------------------------------ */
double gnc_numeric
gnc_convert_from_euro(const gnc_commodity * currency, double value) { gnc_convert_from_euro(const gnc_commodity * currency, gnc_numeric value) {
gnc_euro_rate_struct * result; gnc_euro_rate_struct * result;
const char *namespace; const char *namespace;
if (currency == NULL) if (currency == NULL)
return 0.0; return gnc_numeric_zero ();
namespace = gnc_commodity_get_namespace (currency); namespace = gnc_commodity_get_namespace (currency);
if (namespace == NULL) if (namespace == NULL)
return FALSE; return gnc_numeric_zero ();
if (strcmp (namespace, GNC_COMMODITY_NS_ISO) != 0) if (strcmp (namespace, GNC_COMMODITY_NS_ISO) != 0)
return FALSE; return gnc_numeric_zero ();
result = bsearch(currency, result = bsearch(currency,
_gnc_euro_rate_, _gnc_euro_rate_,
@ -163,9 +171,16 @@ gnc_convert_from_euro(const gnc_commodity * currency, double value) {
_gnc_euro_rate_compare_); _gnc_euro_rate_compare_);
if (result == NULL) if (result == NULL)
return 0.0; return gnc_numeric_zero ();
return (value * result->rate); {
gnc_numeric rate;
rate = double_to_gnc_numeric (result->rate, 100000, GNC_RND_ROUND);
return gnc_numeric_mul (value, rate, gnc_commodity_get_fraction (currency),
GNC_RND_ROUND);
}
} }
/* ------------------------------------------------------ */ /* ------------------------------------------------------ */

View File

@ -25,10 +25,13 @@
#include <glib.h> #include <glib.h>
#include "gnc-commodity.h" #include "gnc-commodity.h"
#include "gnc-numeric.h"
gboolean gnc_is_euro_currency(const gnc_commodity * currency); gboolean gnc_is_euro_currency (const gnc_commodity * currency);
double gnc_convert_to_euro(const gnc_commodity * currency, double value); gnc_numeric gnc_convert_to_euro (const gnc_commodity * currency,
double gnc_convert_from_euro(const gnc_commodity * currency, double value); gnc_numeric value);
gnc_numeric gnc_convert_from_euro (const gnc_commodity * currency,
gnc_numeric value);
const gnc_commodity * gnc_get_euro (void); const gnc_commodity * gnc_get_euro (void);

View File

@ -996,11 +996,11 @@ gnc_account_tree_insert_row(GNCAccountTree *tree,
if (gnc_color_deficits()) if (gnc_color_deficits())
{ {
GtkStyle *style; GtkStyle *style;
double balance; gnc_numeric balance;
gboolean deficit; gboolean deficit;
balance = gnc_ui_account_get_balance(acc, FALSE); balance = gnc_ui_account_get_balance (acc, FALSE);
deficit = (balance < 0) && !DEQ(balance, 0); deficit = gnc_numeric_negative_p (balance);
if (deficit) if (deficit)
style = tree->deficit_style; style = tree->deficit_style;
@ -1012,7 +1012,7 @@ gnc_account_tree_insert_row(GNCAccountTree *tree,
tree->balance_column, style); tree->balance_column, style);
balance = gnc_ui_account_get_balance(acc, TRUE); balance = gnc_ui_account_get_balance(acc, TRUE);
deficit = (balance < 0) && !DEQ(balance, 0); deficit = gnc_numeric_negative_p (balance);
if (deficit) if (deficit)
style = tree->deficit_style; style = tree->deficit_style;

View File

@ -215,27 +215,27 @@ gnc_ui_get_account_field_name(int field)
} }
double gnc_numeric
gnc_ui_account_get_balance(Account *account, gboolean include_children) gnc_ui_account_get_balance(Account *account, gboolean include_children)
{ {
double balance; gnc_numeric balance;
if (account == NULL) if (account == NULL)
return 0.0; return gnc_numeric_zero ();
balance = DxaccAccountGetBalance (account); balance = xaccAccountGetBalance (account);
if (include_children) if (include_children)
{ {
AccountGroup *children; AccountGroup *children;
children = xaccAccountGetChildren (account); children = xaccAccountGetChildren (account);
balance += DxaccGroupGetBalance (children); balance = gnc_numeric_add_fixed (balance, xaccGroupGetBalance (children));
} }
/* reverse sign if needed */ /* reverse sign if needed */
if (gnc_reverse_balance (account)) if (gnc_reverse_balance (account))
balance = -balance; balance = gnc_numeric_neg (balance);
return balance; return balance;
} }
@ -274,9 +274,9 @@ gnc_ui_get_account_field_value_string(Account *account, int field)
break; break;
case ACCOUNT_BALANCE : case ACCOUNT_BALANCE :
{ {
double balance = gnc_ui_account_get_balance(account, FALSE); gnc_numeric balance = gnc_ui_account_get_balance(account, FALSE);
return DxaccPrintAmount(balance, return xaccPrintAmount(balance,
gnc_account_value_print_info (account, TRUE)); gnc_account_value_print_info (account, TRUE));
} }
break; break;
@ -284,19 +284,20 @@ gnc_ui_get_account_field_value_string(Account *account, int field)
{ {
const gnc_commodity * account_currency = const gnc_commodity * account_currency =
xaccAccountGetCurrency(account); xaccAccountGetCurrency(account);
double balance = gnc_ui_account_get_balance(account, FALSE); gnc_numeric balance = gnc_ui_account_get_balance(account, FALSE);
double euro_balance = gnc_convert_to_euro(account_currency, balance); gnc_numeric euro_balance = gnc_convert_to_euro(account_currency,
balance);
return DxaccPrintAmount(euro_balance, return xaccPrintAmount(euro_balance,
gnc_commodity_print_info (gnc_get_euro (), gnc_commodity_print_info (gnc_get_euro (),
TRUE)); TRUE));
} }
break; break;
case ACCOUNT_TOTAL : case ACCOUNT_TOTAL :
{ {
double balance = gnc_ui_account_get_balance(account, TRUE); gnc_numeric balance = gnc_ui_account_get_balance(account, TRUE);
return DxaccPrintAmount(balance, return xaccPrintAmount(balance,
gnc_account_value_print_info (account, TRUE)); gnc_account_value_print_info (account, TRUE));
} }
break; break;
@ -304,10 +305,11 @@ gnc_ui_get_account_field_value_string(Account *account, int field)
{ {
const gnc_commodity * account_currency = const gnc_commodity * account_currency =
xaccAccountGetCurrency(account); xaccAccountGetCurrency(account);
double balance = gnc_ui_account_get_balance(account, TRUE); gnc_numeric balance = gnc_ui_account_get_balance(account, TRUE);
double euro_balance = gnc_convert_to_euro(account_currency, balance); gnc_numeric euro_balance = gnc_convert_to_euro(account_currency,
balance);
return DxaccPrintAmount(euro_balance, return xaccPrintAmount(euro_balance,
gnc_commodity_print_info (gnc_get_euro (), gnc_commodity_print_info (gnc_get_euro (),
TRUE)); TRUE));
} }
@ -465,7 +467,7 @@ gnc_get_deficit_color(GdkColor *color)
* Returns: none * * Returns: none *
\*******************************************************************/ \*******************************************************************/
void void
gnc_set_label_color(GtkWidget *label, double value) gnc_set_label_color(GtkWidget *label, gnc_numeric value)
{ {
gboolean deficit; gboolean deficit;
GdkColormap *cm; GdkColormap *cm;
@ -479,7 +481,7 @@ gnc_set_label_color(GtkWidget *label, double value)
style = gtk_style_copy(style); style = gtk_style_copy(style);
deficit = (value < 0) && !DEQ(value, 0); deficit = gnc_numeric_negative_p (value);
if (deficit) if (deficit)
{ {

View File

@ -82,7 +82,8 @@ const char * gnc_ui_get_account_field_name(int field);
const char * gnc_ui_get_account_field_value_string(Account *account, const char * gnc_ui_get_account_field_value_string(Account *account,
int field); int field);
double gnc_ui_account_get_balance(Account *account, gboolean include_children); gnc_numeric gnc_ui_account_get_balance(Account *account,
gboolean include_children);
GtkWidget * gnc_ui_source_menu_create(Account *account); GtkWidget * gnc_ui_source_menu_create(Account *account);
@ -98,7 +99,7 @@ GtkToolbarStyle gnc_get_toolbar_style(void);
gboolean gnc_color_deficits (void); gboolean gnc_color_deficits (void);
void gnc_get_deficit_color(GdkColor *color); void gnc_get_deficit_color(GdkColor *color);
void gnc_set_label_color(GtkWidget *label, double value); void gnc_set_label_color(GtkWidget *label, gnc_numeric value);
char gnc_get_account_separator(void); char gnc_get_account_separator(void);

View File

@ -29,34 +29,33 @@
#include <string.h> #include <string.h>
#include "AccWindow.h" #include "AccWindow.h"
#include "global-options.h"
#include "dialog-options.h"
#include "FileDialog.h"
#include "gnucash.h"
#include "MainWindow.h"
#include "Destroy.h" #include "Destroy.h"
#include "gnc-ui.h" #include "EuroUtils.h"
#include "messages.h" #include "FileDialog.h"
#include "RegWindow.h" #include "MainWindow.h"
#include "Refresh.h" #include "Refresh.h"
#include "window-main.h" #include "RegWindow.h"
#include "window-reconcile.h" #include "Scrub.h"
#include "window-register.h"
#include "window-help.h"
#include "account-tree.h" #include "account-tree.h"
#include "dialog-transfer.h"
#include "dialog-account.h" #include "dialog-account.h"
#include "dialog-fincalc.h" #include "dialog-fincalc.h"
#include "dialog-find-transactions.h" #include "dialog-find-transactions.h"
#include "dialog-options.h"
#include "dialog-totd.h" #include "dialog-totd.h"
#include "dialog-transfer.h"
#include "file-history.h" #include "file-history.h"
#include "gtkselect.h" #include "global-options.h"
#include "EuroUtils.h"
#include "Scrub.h"
#include "gnc-engine-util.h"
#include "gnc-commodity.h" #include "gnc-commodity.h"
#include "gnc-engine-util.h"
#include "gnc-engine.h" #include "gnc-engine.h"
#include "gnc-ui.h"
#include "gnucash.h"
#include "gtkselect.h" #include "gtkselect.h"
#include "messages.h"
#include "window-help.h"
#include "window-main.h"
#include "window-reconcile.h"
#include "window-register.h"
/* FIXME get rid of these */ /* FIXME get rid of these */
#include <g-wrap.h> #include <g-wrap.h>
@ -102,8 +101,8 @@ static GNCMainInfo * gnc_get_main_info(void);
* be better ways to do this, but none occurred. */ * be better ways to do this, but none occurred. */
struct _GNCCurrencyAcc { struct _GNCCurrencyAcc {
const gnc_commodity * currency; const gnc_commodity * currency;
double assets; gnc_numeric assets;
double profits; gnc_numeric profits;
}; };
typedef struct _GNCCurrencyAcc GNCCurrencyAcc; typedef struct _GNCCurrencyAcc GNCCurrencyAcc;
@ -117,7 +116,7 @@ struct _GNCCurrencyItem {
GtkWidget *listitem; GtkWidget *listitem;
GtkWidget *assets_label; GtkWidget *assets_label;
GtkWidget *profits_label; GtkWidget *profits_label;
gint touched:1; gint touched : 1;
}; };
typedef struct _GNCCurrencyItem GNCCurrencyItem; typedef struct _GNCCurrencyItem GNCCurrencyItem;
@ -208,11 +207,11 @@ gnc_ui_get_currency_accumulator(GList **list, const gnc_commodity * currency)
} }
} }
found = g_new0(GNCCurrencyAcc, 1); found = g_new0 (GNCCurrencyAcc, 1);
found->currency = currency; found->currency = currency;
found->assets = 0.0; found->assets = gnc_numeric_zero ();
found->profits = 0.0; found->profits = gnc_numeric_zero ();
*list = g_list_append(*list, found); *list = g_list_append (*list, found);
return found; return found;
} }
@ -253,7 +252,7 @@ static void
gnc_ui_accounts_recurse (AccountGroup *group, GList **currency_list, gnc_ui_accounts_recurse (AccountGroup *group, GList **currency_list,
gboolean euro) gboolean euro)
{ {
double amount; gnc_numeric amount;
AccountGroup *children; AccountGroup *children;
Account *account; Account *account;
int num_accounts; int num_accounts;
@ -276,6 +275,8 @@ gnc_ui_accounts_recurse (AccountGroup *group, GList **currency_list,
euro_accum = gnc_ui_get_currency_accumulator(currency_list, euro_accum = gnc_ui_get_currency_accumulator(currency_list,
euro_commodity); euro_commodity);
} }
else
euro_commodity = NULL;
num_accounts = xaccGroupGetNumAccounts(group); num_accounts = xaccGroupGetNumAccounts(group);
for (i = 0; i < num_accounts; i++) for (i = 0; i < num_accounts; i++)
@ -297,20 +298,35 @@ gnc_ui_accounts_recurse (AccountGroup *group, GList **currency_list,
case MUTUAL: case MUTUAL:
case CREDIT: case CREDIT:
case LIABILITY: case LIABILITY:
amount = DxaccAccountGetBalance(account); amount = xaccAccountGetBalance(account);
currency_accum->assets += amount; currency_accum->assets =
if(euro) gnc_numeric_add (currency_accum->assets, amount,
euro_accum->assets += gnc_convert_to_euro(account_currency, amount); gnc_commodity_get_fraction (account_currency),
GNC_RND_ROUND);
if (euro)
euro_accum->assets =
gnc_numeric_add (euro_accum->assets,
gnc_convert_to_euro(account_currency, amount),
gnc_commodity_get_fraction (euro_commodity),
GNC_RND_ROUND);
if (children != NULL) if (children != NULL)
gnc_ui_accounts_recurse(children, currency_list, euro); gnc_ui_accounts_recurse(children, currency_list, euro);
break; break;
case INCOME: case INCOME:
case EXPENSE: case EXPENSE:
amount = DxaccAccountGetBalance(account); amount = xaccAccountGetBalance(account);
currency_accum->profits -= amount; currency_accum->profits =
if(euro) gnc_numeric_sub (currency_accum->profits, amount,
euro_accum->profits -= gnc_convert_to_euro(account_currency, amount); gnc_commodity_get_fraction (account_currency),
GNC_RND_ROUND);
if (euro)
gnc_numeric_sub (euro_accum->profits,
gnc_convert_to_euro(account_currency, amount),
gnc_commodity_get_fraction (euro_commodity),
GNC_RND_ROUND);
if (children != NULL) if (children != NULL)
gnc_ui_accounts_recurse(children, currency_list, euro); gnc_ui_accounts_recurse(children, currency_list, euro);
@ -392,15 +408,13 @@ gnc_ui_refresh_statusbar (void)
main_info->totals_combo); main_info->totals_combo);
currency_item->touched = 1; currency_item->touched = 1;
DxaccSPrintAmount(asset_string, currency_accum->assets, xaccSPrintAmount(asset_string, currency_accum->assets,
gnc_commodity_print_info (currency_accum->currency, gnc_commodity_print_info(currency_accum->currency, TRUE));
TRUE));
gtk_label_set_text(GTK_LABEL(currency_item->assets_label), asset_string); gtk_label_set_text(GTK_LABEL(currency_item->assets_label), asset_string);
gnc_set_label_color(currency_item->assets_label, currency_accum->assets); gnc_set_label_color(currency_item->assets_label, currency_accum->assets);
DxaccSPrintAmount(profit_string, currency_accum->profits, xaccSPrintAmount(profit_string, currency_accum->profits,
gnc_commodity_print_info (currency_accum->currency, gnc_commodity_print_info(currency_accum->currency, TRUE));
TRUE));
gtk_label_set_text(GTK_LABEL(currency_item->profits_label), profit_string); gtk_label_set_text(GTK_LABEL(currency_item->profits_label), profit_string);
gnc_set_label_color(currency_item->profits_label, currency_accum->profits); gnc_set_label_color(currency_item->profits_label, currency_accum->profits);
@ -479,16 +493,16 @@ gnc_refresh_main_window()
} }
static void static void
gnc_ui_find_transactions_cb ( GtkWidget *widget, gpointer data ) gnc_ui_find_transactions_cb (GtkWidget *widget, gpointer data)
{ {
gnc_ui_find_transactions_dialog_create(NULL); gnc_ui_find_transactions_dialog_create(NULL);
} }
static void static void
gnc_ui_exit_cb ( GtkWidget *widget, gpointer data ) gnc_ui_exit_cb (GtkWidget *widget, gpointer data)
{ {
gnc_shutdown(0); gnc_shutdown (0);
} }
static void static void
@ -517,19 +531,19 @@ gnc_ui_totd_cb (GtkWidget *widget, gpointer data)
} }
static void static void
gnc_ui_help_cb ( GtkWidget *widget, gpointer data ) gnc_ui_help_cb (GtkWidget *widget, gpointer data)
{ {
helpWindow(NULL, NULL, HH_MAIN); helpWindow(NULL, NULL, HH_MAIN);
} }
static void static void
gnc_ui_add_account ( GtkWidget *widget, gpointer data ) gnc_ui_add_account (GtkWidget *widget, gpointer data)
{ {
gnc_ui_new_account_window (NULL); gnc_ui_new_account_window (NULL);
} }
static void static void
gnc_ui_delete_account ( Account *account ) gnc_ui_delete_account (Account *account)
{ {
/* Step 1: Delete associated windows */ /* Step 1: Delete associated windows */
xaccAccountWindowDestroy(account); xaccAccountWindowDestroy(account);
@ -547,7 +561,7 @@ gnc_ui_delete_account ( Account *account )
} }
static void static void
gnc_ui_delete_account_cb ( GtkWidget *widget, gpointer data ) gnc_ui_delete_account_cb (GtkWidget *widget, gpointer data)
{ {
Account *account = gnc_get_current_account(); Account *account = gnc_get_current_account();
@ -575,7 +589,7 @@ gnc_ui_delete_account_cb ( GtkWidget *widget, gpointer data )
} }
static void static void
gnc_ui_mainWindow_toolbar_open ( GtkWidget *widget, gpointer data ) gnc_ui_mainWindow_toolbar_open (GtkWidget *widget, gpointer data)
{ {
RegWindow *regData; RegWindow *regData;
Account *account = gnc_get_current_account(); Account *account = gnc_get_current_account();
@ -615,7 +629,7 @@ gnc_ui_mainWindow_toolbar_open_subs(GtkWidget *widget, gpointer data)
} }
static void static void
gnc_ui_mainWindow_toolbar_edit ( GtkWidget *widget, gpointer data ) gnc_ui_mainWindow_toolbar_edit (GtkWidget *widget, gpointer data)
{ {
Account *account = gnc_get_current_account(); Account *account = gnc_get_current_account();
AccountWindow *edit_window_data; AccountWindow *edit_window_data;

View File

@ -199,8 +199,7 @@ recnRecalculateBalance(RecnWindow *recnData)
starting = gnc_numeric_neg (starting); starting = gnc_numeric_neg (starting);
amount = xaccPrintAmount(starting, print_info); amount = xaccPrintAmount(starting, print_info);
gnc_set_label_color(recnData->starting, gnc_set_label_color(recnData->starting, starting);
gnc_numeric_to_double (starting));
gtk_label_set_text(GTK_LABEL(recnData->starting), amount); gtk_label_set_text(GTK_LABEL(recnData->starting), amount);
if (reverse_balance) if (reverse_balance)
starting = gnc_numeric_neg (starting); starting = gnc_numeric_neg (starting);
@ -210,8 +209,7 @@ recnRecalculateBalance(RecnWindow *recnData)
if (reverse_balance) if (reverse_balance)
ending = gnc_numeric_neg (ending); ending = gnc_numeric_neg (ending);
amount = xaccPrintAmount(ending, print_info); amount = xaccPrintAmount(ending, print_info);
gnc_set_label_color(recnData->ending, gnc_set_label_color(recnData->ending, ending);
gnc_numeric_to_double (ending));
gtk_label_set_text(GTK_LABEL(recnData->ending), amount); gtk_label_set_text(GTK_LABEL(recnData->ending), amount);
if (reverse_balance) if (reverse_balance)
ending = gnc_numeric_neg (ending); ending = gnc_numeric_neg (ending);
@ -236,8 +234,7 @@ recnRecalculateBalance(RecnWindow *recnData)
if (reverse_balance) if (reverse_balance)
reconciled = gnc_numeric_neg (reconciled); reconciled = gnc_numeric_neg (reconciled);
amount = xaccPrintAmount(reconciled, print_info); amount = xaccPrintAmount(reconciled, print_info);
gnc_set_label_color(recnData->reconciled, gnc_set_label_color(recnData->reconciled, reconciled);
gnc_numeric_to_double (reconciled));
gtk_label_set_text(GTK_LABEL(recnData->reconciled), amount); gtk_label_set_text(GTK_LABEL(recnData->reconciled), amount);
if (reverse_balance) if (reverse_balance)
reconciled = gnc_numeric_neg (reconciled); reconciled = gnc_numeric_neg (reconciled);
@ -247,8 +244,7 @@ recnRecalculateBalance(RecnWindow *recnData)
if (reverse_balance) if (reverse_balance)
diff = gnc_numeric_neg (diff); diff = gnc_numeric_neg (diff);
amount = xaccPrintAmount(diff, print_info); amount = xaccPrintAmount(diff, print_info);
gnc_set_label_color(recnData->difference, gnc_set_label_color(recnData->difference, diff);
gnc_numeric_to_double (diff));
gtk_label_set_text(GTK_LABEL(recnData->difference), amount); gtk_label_set_text(GTK_LABEL(recnData->difference), amount);
if (reverse_balance) if (reverse_balance)
diff = gnc_numeric_neg (diff); diff = gnc_numeric_neg (diff);

View File

@ -1844,14 +1844,12 @@ regRefresh(xaccLedgerDisplay *ledger)
if (euro) if (euro)
{ {
strcat(string, " / "); strcat(string, " / ");
DxaccSPrintAmount(string + strlen(string), xaccSPrintAmount(string + strlen(string),
gnc_convert_to_euro(currency, gnc_convert_to_euro(currency, amount),
gnc_numeric_to_double (amount)),
gnc_commodity_print_info (gnc_get_euro (), TRUE)); gnc_commodity_print_info (gnc_get_euro (), TRUE));
} }
gnc_set_label_color(regData->balance_label, gnc_set_label_color(regData->balance_label, amount);
gnc_numeric_to_double (amount));
gtk_label_set_text(GTK_LABEL(regData->balance_label), string); gtk_label_set_text(GTK_LABEL(regData->balance_label), string);
} }
@ -1865,14 +1863,12 @@ regRefresh(xaccLedgerDisplay *ledger)
if (euro) if (euro)
{ {
strcat(string, " / "); strcat(string, " / ");
DxaccSPrintAmount(string + strlen(string), xaccSPrintAmount(string + strlen(string),
gnc_convert_to_euro(currency, gnc_convert_to_euro(currency, amount),
gnc_numeric_to_double (amount)),
gnc_commodity_print_info (gnc_get_euro (), TRUE)); gnc_commodity_print_info (gnc_get_euro (), TRUE));
} }
gnc_set_label_color(regData->cleared_label, gnc_set_label_color(regData->cleared_label, amount);
gnc_numeric_to_double (amount));
gtk_label_set_text(GTK_LABEL(regData->cleared_label), string); gtk_label_set_text(GTK_LABEL(regData->cleared_label), string);
} }