Ejemplo n.º 1
0
gint
libgncmod_aqbanking_gnc_module_end(gint refcount)
{
    /* Delete the shared AB_BANKING object */
    gnc_AB_BANKING_delete(NULL);

    /* Finalize gwen library */
    gnc_GWEN_Fini();

    return 1;
}
Ejemplo n.º 2
0
void
dai_destroy_cb(GtkObject *object, gpointer user_data)
{
    ABInitialInfo *info = user_data;

    gnc_unregister_gui_component_by_data(DRUID_AB_INITIAL_CM_CLASS, info);

    if (info->deferred_info)
    {
        g_message("Online Banking druid is being closed but the wizard is still "
                  "running.  Inoring.");

        /* Tell child_exit_cb() that there is no druid anymore */
        info->deferred_info->initial_info = NULL;
    }

    if (info->gnc_hash)
    {
#ifdef AQBANKING_VERSION_4_PLUS
        AB_Banking_OnlineFini(info->api, 0);
#else
        AB_Banking_OnlineFini(info->api);
#endif
        g_hash_table_destroy(info->gnc_hash);
        info->gnc_hash = NULL;
    }

    if (info->api)
    {
        gnc_AB_BANKING_delete(info->api);
        info->api = NULL;
    }

    gtk_widget_destroy(info->window);
    info->window = NULL;

    g_free(info);
}