mirror of
https://github.com/Gnucash/gnucash.git
synced 2026-07-29 23:58:03 -05:00
More work on printing currencies correctly.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@2267 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
@@ -1,5 +1,20 @@
|
||||
2000-05-06 Dave Peticolas <peticola@cs.ucdavis.edu>
|
||||
|
||||
* src/gnome/reconcile-list.c (gnc_reconcile_list_fill): print the
|
||||
amount using the account's currency.
|
||||
|
||||
* src/gnome/dialog-transfer.c (gnc_xfer_dialog_create): remove the
|
||||
currency symobl from the dialog and use the account currency, if
|
||||
available, in printing amounts.
|
||||
|
||||
* src/gnome/window-adjust.c: remove the currency symbol from the
|
||||
dialog and use the account currency in printing amounts.
|
||||
|
||||
2000-05-05 Dave Peticolas <peticola@cs.ucdavis.edu>
|
||||
|
||||
* src/SplitLedger.c (xaccSRSaveRegEntry): set the date entered
|
||||
time of the blank split transaction.
|
||||
|
||||
* src/gnome/window-reconcile.c: print different currencies
|
||||
correctly. Print reconciled balance so far.
|
||||
|
||||
|
||||
@@ -1285,7 +1285,10 @@ xaccSRSaveRegEntry (SplitRegister *reg, Transaction *new_trans)
|
||||
|
||||
/* If we are committing the blank split, add it to the account now */
|
||||
if (xaccTransGetSplit(trans, 0) == info->blank_split)
|
||||
{
|
||||
xaccAccountInsertSplit (info->default_source_account, info->blank_split);
|
||||
xaccTransSetDateEnteredSecs(trans, time(NULL));
|
||||
}
|
||||
|
||||
if (split == NULL) {
|
||||
/* If we were asked to save data for a row for which there is no
|
||||
|
||||
+16
-12
@@ -133,10 +133,17 @@ static gboolean
|
||||
gnc_xfer_update_cb(GtkWidget *widget, GdkEventFocus *event, gpointer data)
|
||||
{
|
||||
GtkEntry *entry = GTK_ENTRY(widget);
|
||||
XferDialog *xferData = data;
|
||||
Account *account;
|
||||
gchar *new_string;
|
||||
gchar *currency;
|
||||
gchar *string;
|
||||
double value;
|
||||
|
||||
account = gnc_account_tree_get_current_account(xferData->from);
|
||||
if (account == NULL)
|
||||
account = gnc_account_tree_get_current_account(xferData->to);
|
||||
|
||||
string = gtk_entry_get_text(entry);
|
||||
|
||||
if ((string == NULL) || (*string == 0))
|
||||
@@ -144,7 +151,9 @@ gnc_xfer_update_cb(GtkWidget *widget, GdkEventFocus *event, gpointer data)
|
||||
|
||||
value = xaccParseAmount(string, GNC_T);
|
||||
|
||||
new_string = xaccPrintAmount(value, PRTSEP, NULL);
|
||||
currency = xaccAccountGetCurrency(account);
|
||||
|
||||
new_string = xaccPrintAmount(value, PRTSEP, currency);
|
||||
|
||||
if (safe_strcmp(string, new_string) == 0)
|
||||
return FALSE;
|
||||
@@ -203,14 +212,9 @@ gnc_xfer_dialog_create(GtkWidget * parent, Account * initial,
|
||||
|
||||
{
|
||||
GtkWidget *amount;
|
||||
gchar *currency_symbol;
|
||||
gchar *string;
|
||||
|
||||
currency_symbol = gnc_localeconv()->currency_symbol;
|
||||
string = g_strconcat(AMOUNT_C_STR, " ", currency_symbol, NULL);
|
||||
label = gtk_label_new(string);
|
||||
g_free(string);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
label = gtk_label_new(AMOUNT_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
amount = gtk_entry_new();
|
||||
@@ -218,7 +222,7 @@ gnc_xfer_dialog_create(GtkWidget * parent, Account * initial,
|
||||
xferData->amount_entry = amount;
|
||||
|
||||
gtk_signal_connect(GTK_OBJECT(amount), "focus-out-event",
|
||||
GTK_SIGNAL_FUNC(gnc_xfer_update_cb), NULL);
|
||||
GTK_SIGNAL_FUNC(gnc_xfer_update_cb), xferData);
|
||||
|
||||
gnome_dialog_editable_enters(GNOME_DIALOG(dialog), GTK_EDITABLE(amount));
|
||||
}
|
||||
@@ -227,7 +231,7 @@ gnc_xfer_dialog_create(GtkWidget * parent, Account * initial,
|
||||
GtkWidget *date;
|
||||
|
||||
label = gtk_label_new(DATE_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
date = gnc_date_edit_new(time(NULL), FALSE, FALSE);
|
||||
@@ -253,11 +257,11 @@ gnc_xfer_dialog_create(GtkWidget * parent, Account * initial,
|
||||
gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new(DESC_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new(MEMO_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -93,7 +93,7 @@ gnc_ui_create_account_label(int field_type)
|
||||
label_string = g_strconcat(label_string, ":", NULL);
|
||||
|
||||
label = gtk_label_new (label_string);
|
||||
gtk_misc_set_alignment (GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment (GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_widget_show(label);
|
||||
|
||||
g_free(label_string);
|
||||
@@ -324,7 +324,7 @@ gnc_ui_account_source_box_create(AccountEditInfo * info)
|
||||
gtk_widget_show(hbox);
|
||||
|
||||
widget = gtk_label_new(QUOTE_SRC_MSG);
|
||||
gtk_misc_set_alignment (GTK_MISC(widget), 0.95, 0.5);
|
||||
gtk_misc_set_alignment (GTK_MISC(widget), 1.0, 0.5);
|
||||
gtk_widget_show(widget);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(hbox), widget, FALSE, FALSE, 5);
|
||||
|
||||
@@ -524,6 +524,7 @@ gnc_reconcile_list_fill(GNCReconcileList *list)
|
||||
Transaction *trans;
|
||||
Split *split;
|
||||
gboolean reconciled;
|
||||
char *currency;
|
||||
int num_splits;
|
||||
int account_type;
|
||||
double amount;
|
||||
@@ -535,6 +536,7 @@ gnc_reconcile_list_fill(GNCReconcileList *list)
|
||||
|
||||
account_type = xaccAccountGetType(list->account);
|
||||
num_splits = xaccAccountGetNumSplits(list->account);
|
||||
currency = xaccAccountGetCurrency(list->account);
|
||||
strings[4] = recn_str;
|
||||
strings[5] = NULL;
|
||||
|
||||
@@ -565,7 +567,7 @@ gnc_reconcile_list_fill(GNCReconcileList *list)
|
||||
strings[0] = xaccTransGetDateStr(trans);
|
||||
strings[1] = xaccTransGetNum(trans);
|
||||
strings[2] = xaccTransGetDescription(trans);
|
||||
strings[3] = xaccPrintAmount(DABS(amount), shares, NULL);
|
||||
strings[3] = xaccPrintAmount(DABS(amount), shares, currency);
|
||||
|
||||
reconciled = g_hash_table_lookup(list->reconciled, split) != NULL;
|
||||
|
||||
|
||||
@@ -154,7 +154,9 @@ static gboolean
|
||||
gnc_adjust_update_cb(GtkWidget *widget, GdkEventFocus *event, gpointer data)
|
||||
{
|
||||
GtkEntry *entry = GTK_ENTRY(widget);
|
||||
Account *account = data;
|
||||
gchar *new_string;
|
||||
gchar *currency;
|
||||
gchar *string;
|
||||
double value;
|
||||
|
||||
@@ -162,7 +164,9 @@ gnc_adjust_update_cb(GtkWidget *widget, GdkEventFocus *event, gpointer data)
|
||||
|
||||
value = xaccParseAmount(string, GNC_T);
|
||||
|
||||
new_string = xaccPrintAmount(value, PRTSEP, NULL);
|
||||
currency = xaccAccountGetCurrency(account);
|
||||
|
||||
new_string = xaccPrintAmount(value, PRTSEP, currency);
|
||||
|
||||
if (safe_strcmp(string, new_string) == 0)
|
||||
return FALSE;
|
||||
@@ -244,7 +248,7 @@ adjBWindow(Account *account)
|
||||
GtkWidget *hbox, *vbox;
|
||||
GtkWidget *amount, *date;
|
||||
GtkWidget *label;
|
||||
gchar *currency_symbol;
|
||||
gchar *currency;
|
||||
gchar *string;
|
||||
|
||||
hbox = gtk_hbox_new(FALSE, 5);
|
||||
@@ -258,15 +262,14 @@ adjBWindow(Account *account)
|
||||
string = g_strconcat(DATE_STR, ":", NULL);
|
||||
label = gtk_label_new(string);
|
||||
g_free(string);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0);
|
||||
|
||||
/* new balance label */
|
||||
currency_symbol = gnc_localeconv()->currency_symbol;
|
||||
string = g_strconcat(NEW_BALN_STR, ": ", currency_symbol, NULL);
|
||||
string = g_strconcat(NEW_BALN_STR, ":", NULL);
|
||||
label = gtk_label_new(string);
|
||||
g_free(string);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0);
|
||||
|
||||
gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 0);
|
||||
@@ -282,11 +285,13 @@ adjBWindow(Account *account)
|
||||
gtk_box_pack_start(GTK_BOX(vbox), amount, TRUE, TRUE, 0);
|
||||
adjBData->balance_entry = amount;
|
||||
|
||||
gtk_entry_set_text(GTK_ENTRY(amount), xaccPrintAmount(0.0, PRTSEP, NULL));
|
||||
currency = xaccAccountGetCurrency(account);
|
||||
string = xaccPrintAmount(0.0, PRTSEP, currency);
|
||||
gtk_entry_set_text(GTK_ENTRY(amount), string);
|
||||
gtk_entry_select_region(GTK_ENTRY(amount), 0, -1);
|
||||
|
||||
gtk_signal_connect(GTK_OBJECT(amount), "focus-out-event",
|
||||
GTK_SIGNAL_FUNC(gnc_adjust_update_cb), NULL);
|
||||
GTK_SIGNAL_FUNC(gnc_adjust_update_cb), account);
|
||||
|
||||
gnome_dialog_editable_enters(GNOME_DIALOG(dialog), GTK_EDITABLE(amount));
|
||||
|
||||
|
||||
@@ -1080,11 +1080,11 @@ mainWindow()
|
||||
gtk_box_pack_end(GTK_BOX(statusbar), hbox, FALSE, FALSE, 5);
|
||||
|
||||
label = gtk_label_new(ASSETS_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new("");
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
main_info->assets_label = label;
|
||||
|
||||
@@ -1092,11 +1092,11 @@ mainWindow()
|
||||
gtk_box_pack_end(GTK_BOX(statusbar), hbox, FALSE, FALSE, 5);
|
||||
|
||||
label = gtk_label_new(PROFITS_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new("");
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
main_info->profits_label = label;
|
||||
}
|
||||
|
||||
@@ -895,11 +895,11 @@ gnc_register_create_status_bar(RegWindow *regData)
|
||||
gtk_box_pack_end(GTK_BOX(statusbar), hbox, FALSE, FALSE, 5);
|
||||
|
||||
label = gtk_label_new(CLEARED_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new("");
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
regData->cleared_label = label;
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
@@ -907,11 +907,11 @@ gnc_register_create_status_bar(RegWindow *regData)
|
||||
gtk_box_pack_end(GTK_BOX(statusbar), hbox, FALSE, FALSE, 5);
|
||||
|
||||
label = gtk_label_new(BALN_C_STR);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
label = gtk_label_new("");
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 0.95, 0.5);
|
||||
gtk_misc_set_alignment(GTK_MISC(label), 1.0, 0.5);
|
||||
regData->balance_label = label;
|
||||
gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user