30 #include <glib/gi18n.h>
32 #include "gnc-helpers.h"
33 #include "qif-import-p.h"
34 #include "qif-objects-p.h"
35 #include "qif-defaults.h"
38 static GList *stock_list = NULL;
39 static GList *ext_stock_list = NULL;
40 static GList *income_list = NULL;
41 static GList *expense_list = NULL;
42 static GList *equity_list = NULL;
44 #define RETURN_ACCT(c,n,l) { if (stock_list == NULL) acct_type_init(); \
45 return find_or_make_acct(c, n, l); \
51 stock_list = qif_parse_acct_type(
"__stock__", -1);
52 ext_stock_list = qif_parse_acct_type(
"__extstock__", -1);
53 income_list = qif_parse_acct_type(
"__income__", -1);
54 expense_list = qif_parse_acct_type(
"__expense__", -1);
55 equity_list = qif_parse_acct_type(
"__equity__", -1);
60 char *name = g_strdup(_(
"Retained Earnings"));
61 RETURN_ACCT(ctx, name, equity_list);
66 char *name = g_strdup_printf(
"%s%s%s", _(
"Margin Interest"),
68 ctx->current_acct->name);
69 RETURN_ACCT(ctx, name, expense_list);
74 char *name = g_strdup_printf(
"%s%s%s", _(
"Commissions"),
76 ctx->current_acct->name);
77 RETURN_ACCT(ctx, name, expense_list);
82 char *name = g_strdup_printf(
"%s%s%s", ctx->current_acct->name,
85 RETURN_ACCT(ctx, name, stock_list);
90 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Cap. gain (long)"),
92 ctx->current_acct->name,
95 RETURN_ACCT(ctx, name, income_list);
100 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Cap. gain (mid)"),
102 ctx->current_acct->name,
105 RETURN_ACCT(ctx, name, income_list);
110 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Cap. gain (short)"),
112 ctx->current_acct->name,
115 RETURN_ACCT(ctx, name, income_list);
120 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Dividends"),
122 ctx->current_acct->name,
125 RETURN_ACCT(ctx, name, income_list);
130 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Interest"),
132 ctx->current_acct->name,
135 RETURN_ACCT(ctx, name, income_list);
140 char *name = g_strdup_printf(
"%s%s%s%s%s", _(
"Cap Return"),
142 ctx->current_acct->name,
145 RETURN_ACCT(ctx, name, income_list);
150 return qif_default_equity_acct(ctx);
const gchar * gnc_get_account_separator_string(void)