r21730 - gnucash/trunk - [Decruftification] Remove gnc-associate-account

John Ralls jralls at code.gnucash.org
Thu Dec 15 19:12:53 EST 2011


Author: jralls
Date: 2011-12-15 19:12:52 -0500 (Thu, 15 Dec 2011)
New Revision: 21730
Trac: http://svn.gnucash.org/trac/changeset/21730

Removed:
   gnucash/trunk/src/engine/gnc-associate-account.c
   gnucash/trunk/src/engine/gnc-associate-account.h
Modified:
   gnucash/trunk/po/POTFILES.in
   gnucash/trunk/src/engine/Makefile.am
   gnucash/trunk/src/import-export/ofx/gnc-ofx-import.c
Log:
[Decruftification] Remove gnc-associate-account


Carried over from somewhere in 2000, only maintained as part of global changes since. Not used anywhere.

Modified: gnucash/trunk/po/POTFILES.in
===================================================================
--- gnucash/trunk/po/POTFILES.in	2011-12-13 01:00:56 UTC (rev 21729)
+++ gnucash/trunk/po/POTFILES.in	2011-12-16 00:12:52 UTC (rev 21730)
@@ -149,7 +149,6 @@
 src/engine/engine-helpers.c
 src/engine/glib-helpers.c
 src/engine/gncAddress.c
-src/engine/gnc-associate-account.c
 src/engine/gncBillTerm.c
 src/engine/gnc-budget.c
 src/engine/gncBusGuile.c

Modified: gnucash/trunk/src/engine/Makefile.am
===================================================================
--- gnucash/trunk/src/engine/Makefile.am	2011-12-13 01:00:56 UTC (rev 21729)
+++ gnucash/trunk/src/engine/Makefile.am	2011-12-16 00:12:52 UTC (rev 21730)
@@ -27,7 +27,6 @@
   Transaction.c \
   cap-gains.c \
   cashobjects.c \
-  gnc-associate-account.c \
   gnc-budget.c \
   gnc-commodity.c \
   gnc-engine.c \
@@ -79,7 +78,6 @@
   cashobjects.h \
   engine-helpers.h \
   glib-helpers.h \
-  gnc-associate-account.h \
   gnc-budget.h \
   gnc-commodity.h \
   gnc-engine.h \

Deleted: gnucash/trunk/src/engine/gnc-associate-account.c
===================================================================
--- gnucash/trunk/src/engine/gnc-associate-account.c	2011-12-13 01:00:56 UTC (rev 21729)
+++ gnucash/trunk/src/engine/gnc-associate-account.c	2011-12-16 00:12:52 UTC (rev 21730)
@@ -1,458 +0,0 @@
-/********************************************************************\
- * gnc-associate-account.h : api for associating income and         *
- * expense accounts with stock/mutual fund accounts, for tracking   *
- * dividends, brokerage, and other stock-related expenses and       *
- * income so that they can be reported                              *
- * Copyright 2000 Gnumatic Incorporated                             *
- * Written by Robert Merkel <rgmerk at mira.net>                       *
- *                                                                  *
- * WARNING WARNING WARNING: THIS STUFF IS TOTALLY UNTESTED AND      *
- * IS ONLY IN CVS FOR SAFEKEEPING                                   *
- * This program is free software; you can redistribute it and/or    *
- * modify it under the terms of the GNU General Public License as   *
- * published by the Free Software Foundation; either version 2 of   *
- * the License, or (at your option) any later version.              *
- *                                                                  *
- * This program is distributed in the hope that it will be useful,  *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of   *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    *
- * GNU General Public License for more details.                     *
- *                                                                  *
- * You should have received a copy of the GNU General Public License*
- * along with this program; if not, contact:                        *
- *                                                                  *
- * Free Software Foundation           Voice:  +1-617-542-5942       *
- * 51 Franklin Street, Fifth Floor    Fax:    +1-617-542-2652       *
- * Boston, MA  02110-1301,  USA       gnu at gnu.org                   *
-\********************************************************************/
-
-#include "config.h"
-
-#include "gnc-associate-account.h"
-#include "gnc-engine.h"
-#include "qof.h"
-
-static QofLogModule log_module = GNC_MOD_ENGINE;
-
-/* Maps GNCTrackingIncomeCategory to string keys.  If this enum
-   changes, update */
-
-static char * income_to_key[] = {"income-miscellaneous",
-                                 "income-interest",
-                                 "income-dividend"
-                                 "income-long-term-capital-gain",
-                                 "income-short-term-capital-gain"
-                                };
-
-/* Maps GNCTrackingExpenseCategory to string keys.  If this enum
-   changes, update */
-
-static char * expense_to_key[] = {"expense-miscellaneous",
-                                  "expense-commission"
-                                 };
-
-static KvpFrame *
-get_assoc_acc_frame(KvpFrame *account_frame)
-{
-    KvpFrame *assoc_acc_frame;
-    KvpValue *assoc_acc_frame_kvpvalue =
-        kvp_frame_get_slot(account_frame, "associated-accounts");
-
-    assoc_acc_frame = kvp_value_get_frame(assoc_acc_frame_kvpvalue);
-    if (!assoc_acc_frame)
-    {
-        assoc_acc_frame = kvp_frame_new();
-        assoc_acc_frame_kvpvalue = kvp_value_new_frame(assoc_acc_frame);
-        kvp_frame_set_slot(account_frame, "associated-accounts",
-                           assoc_acc_frame_kvpvalue);
-    }
-
-    return assoc_acc_frame;
-}
-
-static void
-back_associate_expense_accounts(Account *stock_account,
-                                GList *accounts,
-                                GNCTrackingExpenseCategory category)
-{
-    KvpFrame *acc_frame;
-    KvpValue *val, *stock_acc_guid_kvpval, *stock_acc_category_kvpval;
-    const GncGUID *stock_acc_guid;
-    const GncGUID *existing_acc_guid;
-
-    stock_acc_guid = xaccAccountGetGUID(stock_account);
-    stock_acc_guid_kvpval = kvp_value_new_guid(stock_acc_guid);
-
-    stock_acc_category_kvpval = kvp_value_new_string(expense_to_key[category]);
-
-    for (; accounts; accounts = g_list_next(accounts))
-    {
-        acc_frame = xaccAccountGetSlots(accounts->data);
-        g_return_if_fail((val = kvp_frame_get_slot(acc_frame,
-                                "associated-stock-account")));
-        g_return_if_fail(kvp_value_get_type(val) == KVP_TYPE_GUID);
-        existing_acc_guid = kvp_value_get_guid(val);
-
-        kvp_frame_set_slot_nc(acc_frame, "associated-stock-account",
-                              stock_acc_guid_kvpval);
-
-        kvp_frame_set_slot_nc(acc_frame, "associated-stock-account-category",
-                              stock_acc_category_kvpval);
-    }
-
-    return;
-}
-
-static void
-back_associate_income_accounts(Account *stock_account,
-                               GList *accounts,
-                               GNCTrackingIncomeCategory category)
-{
-    KvpFrame *acc_frame;
-    KvpValue *val, *stock_acc_guid_kvpval, *stock_acc_category_kvpval;
-    const GncGUID *stock_acc_guid;
-    const GncGUID *existing_acc_guid;
-
-    stock_acc_guid = xaccAccountGetGUID(stock_account);
-    stock_acc_guid_kvpval = kvp_value_new_guid(stock_acc_guid);
-
-    stock_acc_category_kvpval = kvp_value_new_string(income_to_key[category]);
-
-    for (; accounts; accounts = g_list_next(accounts))
-    {
-        acc_frame = xaccAccountGetSlots(accounts->data);
-        g_return_if_fail((val = kvp_frame_get_slot(acc_frame,
-                                "associated-stock-account")));
-        g_return_if_fail(kvp_value_get_type(val) == KVP_TYPE_GUID);
-        existing_acc_guid = kvp_value_get_guid(val);
-
-        kvp_frame_set_slot_nc(acc_frame, "associated-stock-account",
-                              stock_acc_guid_kvpval);
-        kvp_frame_set_slot_nc(acc_frame, "associated-stock-account-category",
-                              stock_acc_category_kvpval);
-    }
-
-    return;
-}
-
-static KvpValue *
-make_kvpd_on_list(GList *account_list)
-{
-    GList *iter;
-    KvpValue *retval;
-    KvpValue *guid_kvp;
-    GList  *kvp_acc_list = NULL;
-    const GncGUID *acc_id;
-
-    for (iter = account_list; iter; iter = g_list_next(iter))
-    {
-        GNCAccountType type;
-        Account *current_account;
-
-        current_account = iter->data;
-        type = xaccAccountGetType(current_account);
-        g_return_val_if_fail(type == ACCT_TYPE_INCOME || type == ACCT_TYPE_EXPENSE,
-                             NULL);
-
-        acc_id = xaccAccountGetGUID(current_account);
-        guid_kvp = kvp_value_new_guid(acc_id);
-        kvp_acc_list = g_list_prepend(kvp_acc_list, guid_kvp);
-    }
-
-    kvp_acc_list = g_list_reverse(kvp_acc_list);
-
-    retval = kvp_value_new_glist_nc(kvp_acc_list);
-    return retval;
-}
-
-static GList *
-de_kvp_account_list(KvpValue *kvpd_list, QofBook *book)
-{
-    GList *guid_account_list = kvp_value_get_glist(kvpd_list);
-    if (guid_account_list)
-    {
-        GList *expense_acc_list = NULL;
-        for (; guid_account_list; guid_account_list = g_list_next(guid_account_list))
-        {
-            expense_acc_list = g_list_prepend(expense_acc_list,
-                                              xaccAccountLookup(guid_account_list->data, book));
-        }
-
-        expense_acc_list = g_list_reverse(expense_acc_list);
-        return expense_acc_list;
-    }
-    else
-    {
-        return NULL;
-    }
-}
-
-/*********************************************************************\
- * gnc_tracking_associate_income_accounts                            *
- *   associate a list of income accounts with a stock account        *
- *                                                                   *
- *  NOTE: Please disassociate all the accounts in account_list       *
- *  using gnc_tracking_dissociate_accounts if necessary, BEFORE      *
- *  calling this function                                            *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *        category - the type of association                         *
- *        account_list - a GList of Account *'s of the accounts      *
- *        to associate with the stock account                        *
- *                                                                   *
- * Returns : void                                                    *
-\*********************************************************************/
-
-void
-gnc_tracking_associate_income_accounts(Account *stock_account,
-                                       GNCTrackingIncomeCategory category,
-                                       GList *account_list)
-{
-    KvpFrame *account_frame, *inc_account_frame;
-    KvpValue *kvpd_on_account_list;
-
-    g_return_if_fail(stock_account);
-    g_return_if_fail(xaccAccountIsPriced(stock_account));
-    account_frame = xaccAccountGetSlots(stock_account);
-    g_return_if_fail(account_frame);
-    g_return_if_fail(category >= 0);
-    g_return_if_fail(category < GNC_TR_INC_N_CATEGORIES);
-
-    inc_account_frame = get_assoc_acc_frame(account_frame);
-    kvpd_on_account_list = make_kvpd_on_list(account_list);
-
-    back_associate_income_accounts(stock_account, account_list, category);
-
-    kvp_frame_set_slot_nc(inc_account_frame,
-                          income_to_key[category],
-                          kvpd_on_account_list);
-}
-
-/*********************************************************************\
- * gnc_tracking_associate_expense_accounts                           *
- *   associate a list of expense accounts with a stock account       *
- *                                                                   *
- *  NOTE: Please disassociate all the accounts in account_list       *
- *  using gnc_tracking_dissociate_accounts if necessary, BEFORE      *
- *  calling this function                                            *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *        category - the type of association                         *
- *        account_list - a GList of Account *'s of the accounts      *
- *        to associate with the stock account                        *
- *                                                                   *
- * Returns : void                                                    *
-\*********************************************************************/
-/*********************************************************************\
- * gnc_tracking_find_expense_accounts                                *
- *   find out which accounts are associated with a particular        *
- *   account in a particular way                                     *
- *                                                                   *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *        category - the type of association                         *
- *                                                                   *
- * Returns : A GList of Account *'s listing the accounts             *
-\*********************************************************************/
-
-GList *
-gnc_tracking_find_expense_accounts(Account *stock_account,
-                                   GNCTrackingExpenseCategory category)
-{
-    KvpFrame *account_frame, *expense_acc_frame;
-    KvpValue *kvpd_on_account_list;
-
-    g_return_val_if_fail(xaccAccountIsPriced(stock_account), NULL);
-    g_return_val_if_fail(category >= 0 && category < GNC_TR_EXP_N_CATEGORIES,
-                         NULL);
-
-    account_frame = xaccAccountGetSlots(stock_account);
-    g_return_val_if_fail(account_frame, NULL);
-
-    expense_acc_frame = get_assoc_acc_frame(account_frame);
-    kvpd_on_account_list = kvp_frame_get_slot(account_frame,
-                           expense_to_key[category]);
-
-    return de_kvp_account_list(kvpd_on_account_list,
-                               gnc_account_get_book(stock_account));
-}
-
-/*********************************************************************\
- * gnc_tracking_find_income_accounts                                 *
- *   find out which accounts are associated with a particular        *
- *   account in a particular way                                     *
- *                                                                   *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *        category - the type of association                         *
- *                                                                   *
- * Returns : A GList of Account *'s listing the accounts             *
-\*********************************************************************/
-GList *
-gnc_tracking_find_income_accounts(Account *stock_account,
-                                  GNCTrackingIncomeCategory category)
-{
-    KvpFrame *account_frame, *income_acc_frame;
-    KvpValue *kvpd_on_account_list;
-
-    g_return_val_if_fail(xaccAccountIsPriced(stock_account), NULL);
-    g_return_val_if_fail(category >= 0 && category < GNC_TR_INC_N_CATEGORIES,
-                         NULL);
-
-    account_frame = xaccAccountGetSlots(stock_account);
-    g_return_val_if_fail(account_frame, NULL);
-
-    income_acc_frame = get_assoc_acc_frame(account_frame);
-    kvpd_on_account_list = kvp_frame_get_slot(income_acc_frame,
-                           income_to_key[category]);
-
-    return de_kvp_account_list(kvpd_on_account_list,
-                               gnc_account_get_book(stock_account));
-}
-
-/*********************************************************************\
- * gnc_tracking_find_all_expense_accounts                            *
- *   find all expense accounts associated with a stock account       *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *                                                                   *
- * Returns : A GList of Account *'s listing the accounts             *
-\*********************************************************************/
-
-GList *
-gnc_tracking_find_all_expense_accounts(Account *stock_account)
-{
-    GList *complete_list = NULL;
-    int i;
-
-    for (i = 0; i < GNC_TR_EXP_N_CATEGORIES; i++)
-    {
-        complete_list =
-            g_list_concat(complete_list,
-                          gnc_tracking_find_expense_accounts(stock_account, i));
-    }
-
-    return complete_list;
-}
-
-/*********************************************************************\
- * gnc_tracking_find_all_income_accounts                             *
- *   find all income accounts associated with a stock account        *
- *                                                                   *
- *  Args: stock_account - the stock account                          *
- *                                                                   *
- * Returns : A GList of Account *'s listing the accounts             *
-\*********************************************************************/
-
-GList *
-gnc_tracking_find_all_income_accounts(Account *stock_account)
-{
-    GList *complete_list = NULL;
-    int i;
-
-    for (i = 0; i < GNC_TR_EXP_N_CATEGORIES; i++)
-    {
-        complete_list = g_list_concat(complete_list,
-                                      gnc_tracking_find_expense_accounts(stock_account,
-                                              i));
-    }
-    return complete_list;
-}
-
-/*********************************************************************\
- * gnc_tracking_find_stock_account                                   *
- *   find the stock account associated with this expense/income      *
- *   account.  If there is no association, return NULL               *
- *                                                                   *
- *  Args: inc_or_expense_acc - the expense/income account            *
- *                                                                   *
- *                                                                   *
- * Returns : The associated stock account                            *
-\*********************************************************************/
-
-Account *
-gnc_tracking_find_stock_account(Account *inc_or_expense_acc)
-{
-    return NULL;
-}
-
-/*********************************************************************\
- * gnc_tracking_dissociate_account                                   *
- *   remove any association between this income/expense account      *
- *   and any stock account it is presently associated with           *
- *   account.                                                        *
- *                                                                   *
- *  Args: inc_or_expense_acc - the expense/income account            *
- *                                                                   *
- *                                                                   *
- * Returns : void                                                    *
-\*********************************************************************/
-
-void
-gnc_tracking_dissociate_account(Account *inc_or_expense_account)
-{
-    GNCAccountType type;
-    KvpFrame *stock_account_kvpframe, *assoc_acc_kvpframe;
-    KvpFrame *current_account_kvpframe;
-    KvpValue *stock_account_kvpval, *acc_list_kvpval, *category_kvpval;
-    const GncGUID *stock_account_guid, *inc_or_expense_account_guid, *current_guid;
-    Account *stock_account;
-    char *category_name;
-    GList *assoc_acc_list, *assoc_acc_list_start;
-
-    type = xaccAccountGetType(inc_or_expense_account);
-
-    g_return_if_fail(type == ACCT_TYPE_INCOME || type == ACCT_TYPE_EXPENSE);
-
-    current_account_kvpframe = xaccAccountGetSlots(inc_or_expense_account);
-
-    stock_account_kvpval = kvp_frame_get_slot(current_account_kvpframe,
-                           "associated-stock-account");
-
-    stock_account_guid = kvp_value_get_guid(stock_account_kvpval);
-
-    category_kvpval = kvp_frame_get_slot(current_account_kvpframe,
-                                         "associated-stock-account-category");
-    category_name = kvp_value_get_string(category_kvpval);
-
-
-    inc_or_expense_account_guid = xaccAccountGetGUID(inc_or_expense_account);
-    stock_account = xaccAccountLookup
-                    (stock_account_guid, gnc_account_get_book(inc_or_expense_account));
-
-    stock_account_kvpframe = xaccAccountGetSlots(stock_account);
-
-    g_return_if_fail((stock_account_kvpval =
-                          kvp_frame_get_slot(stock_account_kvpframe,
-                                  "associated-accounts")));
-
-    assoc_acc_kvpframe = kvp_value_get_frame(stock_account_kvpval);
-
-    g_return_if_fail((acc_list_kvpval = kvp_frame_get_slot(assoc_acc_kvpframe,
-                                        category_name)));
-    g_return_if_fail((assoc_acc_list_start =
-                          kvp_value_get_glist(acc_list_kvpval)));
-
-    for (assoc_acc_list = assoc_acc_list_start;
-            assoc_acc_list;
-            assoc_acc_list = g_list_next(assoc_acc_list))
-    {
-        g_return_if_fail((current_guid = kvp_value_get_guid(assoc_acc_list->data)));
-        if (guid_equal(current_guid, inc_or_expense_account_guid))
-        {
-            assoc_acc_list_start =
-                g_list_remove_link(assoc_acc_list_start, assoc_acc_list);
-            g_list_free_1(assoc_acc_list);
-            acc_list_kvpval = kvp_value_new_glist_nc(assoc_acc_list);
-            kvp_frame_set_slot_nc(assoc_acc_kvpframe,
-                                  category_name,
-                                  acc_list_kvpval);
-            return;
-        }
-    }
-
-    /* should never happen */
-    PERR("Income/Expense account and stock account disagree on association");
-}
-
-/* ========================== END OF FILE ===================== */

Deleted: gnucash/trunk/src/engine/gnc-associate-account.h
===================================================================
--- gnucash/trunk/src/engine/gnc-associate-account.h	2011-12-13 01:00:56 UTC (rev 21729)
+++ gnucash/trunk/src/engine/gnc-associate-account.h	2011-12-16 00:12:52 UTC (rev 21730)
@@ -1,86 +0,0 @@
-/********************************************************************\
- * gnc-associate-account.h : api for associating income and        *
- * expense accounts with stock/mutual fund accounts, for tracking   *
- * dividends, brokerage, and other stock-related expenses and       *
- * income so that they can be reported                              *
- * Copyright 2000 Gnumatic Incorporated                             *
- * Written by Robert Merkel <rgmerk at mira.net>                       *
- *
- * WARNING WARNING WARNING: THIS CODE IS TOTALLY UNTESTED.          *
- * THE ONLY REASON IT'S IN CVS IS FOR SAFEKEEPING                   *
- *                                                                  *
- *                                                                  *
- * This program is free software; you can redistribute it and/or    *
- * modify it under the terms of the GNU General Public License as   *
- * published by the Free Software Foundation; either version 2 of   *
- * the License, or (at your option) any later version.              *
- *                                                                  *
- * This program is distributed in the hope that it will be useful,  *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of   *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    *
- * GNU General Public License for more details.                     *
- *                                                                  *
- * You should have received a copy of the GNU General Public License*
- * along with this program; if not, contact:                        *
- *                                                                  *
- * Free Software Foundation           Voice:  +1-617-542-5942       *
- * 51 Franklin Street, Fifth Floor    Fax:    +1-617-542-2652       *
- * Boston, MA  02110-1301,  USA       gnu at gnu.org                   *
-\********************************************************************/
-
-#include <Account.h>
-#include <glib.h>
-
-/*
- * account_list is a list of account *'s, all of which much be expense
- * accounts
- */
-typedef enum {GNC_TR_INC_MISC,
-              GNC_TR_INC_INTEREST,
-              GNC_TR_INC__DIVIDEND,
-              GNC_TR_INC_LT_CG,
-              GNC_TR_INC_ST_CG,
-              GNC_TR_INC_N_CATEGORIES
-             } GNCTrackingIncomeCategory;
-
-typedef enum {GNC_TR_EXP_MISC,
-              GNC_TR_EXP_COMMISSION,
-              GNC_TR_EXP_N_CATEGORIES
-             } GNCTrackingExpenseCategory;
-
-
-/*
- * account_list is a list of account *'s, all of which much be expense
- * accounts.  You can clear associations by setting account_list to NULL
- */
-
-void gnc_tracking_associate_income_accounts(Account *stock_account,
-        GNCTrackingIncomeCategory category,
-        AccountList *account_list);
-
-/*
- * returns a list of account *'s,
- * returns null if no association specified
- */
-
-AccountList *gnc_tracking_find_expense_accounts(Account *stock_account,
-        GNCTrackingExpenseCategory category);
-
-AccountList *gnc_tracking_find_income_accounts(Account *stock_account,
-        GNCTrackingIncomeCategory category);
-
-/* for ROI purposes we don't care about categories, these are "grab
-all" for that purpose */
-
-AccountList *gnc_tracking_find_all_expense_accounts(Account *stock_account);
-
-AccountList *gnc_tracking_find_all_income_accounts(Account *stock_account);
-
-
-/*
- * reverse lookup - obviously returns a stock account (or NULL if none
- * associated), and argument must be an income or expense account
- */
-Account *gnc_tracking_find_stock_account(Account *inc_or_expense_acc);
-
-void gnc_tracking_dissociate_account(Account *inc_or_expense_account);

Modified: gnucash/trunk/src/import-export/ofx/gnc-ofx-import.c
===================================================================
--- gnucash/trunk/src/import-export/ofx/gnc-ofx-import.c	2011-12-13 01:00:56 UTC (rev 21729)
+++ gnucash/trunk/src/import-export/ofx/gnc-ofx-import.c	2011-12-16 00:12:52 UTC (rev 21730)
@@ -41,7 +41,6 @@
 
 #include "Account.h"
 #include "Transaction.h"
-#include "gnc-associate-account.h"
 #include "gnc-ofx-import.h"
 #include "gnc-file.h"
 #include "gnc-engine.h"



More information about the gnucash-changes mailing list