static void gtvo_update_column_names (GncTreeView *view) { GncTreeViewOwnerPrivate *priv; const gchar *mnemonic; priv = GNC_TREE_VIEW_OWNER_GET_PRIVATE(view); mnemonic = gnc_commodity_get_mnemonic(gnc_default_report_currency()); gtvo_update_column_name(priv->balance_report_column, /* Translators: %s is a currency mnemonic.*/ _("Balance (%s)"), mnemonic); gnc_tree_view_set_show_column_menu(view, FALSE); gnc_tree_view_set_show_column_menu(view, TRUE); }
static void gnc_main_window_summary_refresh (GNCMainSummary * summary) { Account *root; char asset_string[256]; char profit_string[256]; GNCCurrencyAcc *currency_accum; GList *currency_list; GList *current; GNCSummarybarOptions options; options.default_currency = gnc_default_report_currency (); options.euro = gnc_gconf_get_bool(GCONF_GENERAL, KEY_ENABLE_EURO, NULL); options.grand_total = gnc_gconf_get_bool(GCONF_SECTION, KEY_GRAND_TOTAL, NULL); options.non_currency = gnc_gconf_get_bool(GCONF_SECTION, KEY_NON_CURRENCY, NULL); options.start_date = gnc_accounting_period_fiscal_start(); options.end_date = gnc_accounting_period_fiscal_end(); currency_list = NULL; /* grand total should be first in the list */ if (options.grand_total) { gnc_ui_get_currency_accumulator (¤cy_list, options.default_currency, TOTAL_GRAND_TOTAL); } /* Make sure there's at least one accumulator in the list. */ gnc_ui_get_currency_accumulator (¤cy_list, options.default_currency, TOTAL_SINGLE); root = gnc_get_current_root_account (); gnc_ui_accounts_recurse(root, ¤cy_list, options); { GtkTreeIter iter; char asset_amount_string[256], profit_amount_string[256]; struct lconv *lc; lc = gnc_localeconv(); g_object_ref(summary->datamodel); gtk_combo_box_set_model(GTK_COMBO_BOX(summary->totals_combo), NULL); gtk_list_store_clear(summary->datamodel); for (current = g_list_first(currency_list); current; current = g_list_next(current)) { const char *mnemonic; gchar *total_mode_label; currency_accum = current->data; if (gnc_commodity_equiv (currency_accum->currency, gnc_locale_default_currency ())) mnemonic = lc->currency_symbol; else mnemonic = gnc_commodity_get_mnemonic (currency_accum->currency); if (mnemonic == NULL) mnemonic = ""; *asset_string = '\0'; xaccSPrintAmount(asset_amount_string, currency_accum->assets, gnc_commodity_print_info(currency_accum->currency, TRUE)); *profit_string = '\0'; xaccSPrintAmount(profit_amount_string, currency_accum->profits, gnc_commodity_print_info(currency_accum->currency, TRUE)); gtk_list_store_append(summary->datamodel, &iter); total_mode_label = get_total_mode_label(mnemonic, currency_accum->total_mode); gtk_list_store_set(summary->datamodel, &iter, COLUMN_MNEMONIC_TYPE, total_mode_label, COLUMN_ASSETS, _("Assets:"), COLUMN_ASSETS_VALUE, asset_amount_string, COLUMN_PROFITS, _("Profits:"), COLUMN_PROFITS_VALUE, profit_amount_string, -1); g_free(total_mode_label); } gtk_combo_box_set_model(GTK_COMBO_BOX(summary->totals_combo), GTK_TREE_MODEL(summary->datamodel)); g_object_unref(summary->datamodel); gtk_combo_box_set_active(GTK_COMBO_BOX(summary->totals_combo), 0); } /* Free the list we created for this */ for (current = g_list_first(currency_list); current; current = g_list_next(current)) { g_free(current->data); } g_list_free(currency_list); }