26#include <glib/gi18n.h>
28#include "gnc-plugin-csv-import.h"
35static void gnc_plugin_csv_import_finalize (GObject *
object);
38static void gnc_plugin_csv_import_tree_cmd (GSimpleAction *simple, GVariant *parameter, gpointer user_data);
39static void gnc_plugin_csv_import_trans_cmd (GSimpleAction *simple, GVariant *parameter, gpointer user_data);
40static void gnc_plugin_csv_import_price_cmd (GSimpleAction *simple, GVariant *parameter, gpointer user_data);
42#define PLUGIN_ACTIONS_NAME "gnc-plugin-csv-import-actions"
43#define PLUGIN_UI_FILENAME "gnc-plugin-csv-import.ui"
45static GActionEntry gnc_plugin_actions [] =
47 {
"CsvImportAccountAction", gnc_plugin_csv_import_tree_cmd, NULL, NULL, NULL },
48 {
"CsvImportTransAction", gnc_plugin_csv_import_trans_cmd, NULL, NULL, NULL },
49 {
"CsvImportPriceAction", gnc_plugin_csv_import_price_cmd, NULL, NULL, NULL },
52static guint gnc_plugin_n_actions = G_N_ELEMENTS(gnc_plugin_actions);
55static const gchar *gnc_plugin_load_ui_items [] =
66G_DEFINE_TYPE(GncPluginCsvImport, gnc_plugin_csv_import, GNC_TYPE_PLUGIN)
69gnc_plugin_csv_import_new (
void)
71 return GNC_PLUGIN (g_object_new (GNC_TYPE_PLUGIN_CSV_IMPORT, NULL));
75gnc_plugin_csv_import_class_init (GncPluginCsvImportClass *klass)
77 GObjectClass *object_class = G_OBJECT_CLASS (klass);
78 GncPluginClass *plugin_class = GNC_PLUGIN_CLASS (klass);
80 object_class->finalize = gnc_plugin_csv_import_finalize;
83 plugin_class->plugin_name = GNC_PLUGIN_CSV_IMPORT_NAME;
86 plugin_class->actions_name = PLUGIN_ACTIONS_NAME;
87 plugin_class->actions = gnc_plugin_actions;
88 plugin_class->n_actions = gnc_plugin_n_actions;
89 plugin_class->ui_filename = PLUGIN_UI_FILENAME;
90 plugin_class->ui_updates = gnc_plugin_load_ui_items;
94gnc_plugin_csv_import_init (GncPluginCsvImport *plugin)
99gnc_plugin_csv_import_finalize (GObject *
object)
101 g_return_if_fail (GNC_IS_PLUGIN_CSV_IMPORT (
object));
103 G_OBJECT_CLASS (gnc_plugin_csv_import_parent_class)->finalize (
object);
114gnc_plugin_csv_import_tree_cmd (GSimpleAction *simple,
122gnc_plugin_csv_import_trans_cmd (GSimpleAction *simple,
130gnc_plugin_csv_import_price_cmd (GSimpleAction *simple,
141gnc_plugin_csv_import_create_plugin (
void)
143 GncPlugin *plugin = gnc_plugin_csv_import_new ();
void gnc_file_csv_account_import(void)
The gnc_file_csv_account_import() will let the user import accounts from a delimited file.
void gnc_file_csv_price_import(void)
The gnc_file_csv_price_import() will let the user import the commodity prices from a file.
void gnc_file_csv_trans_import(void)
The gnc_file_csv_trans_import() will let the user import the account tree or transactions to a delimi...
Plugin management functions for the GnuCash UI.
void gnc_plugin_manager_add_plugin(GncPluginManager *manager, GncPlugin *plugin)
Add a plugin to the list maintained by the plugin manager.
GncPluginManager * gnc_plugin_manager_get(void)
Retrieve a pointer to the plugin manager.