[Gnucash-changes] CashUtil Sync: business objects

Neil Williams codehelp at cvs.gnucash.org
Wed Aug 17 02:55:40 EDT 2005


Log Message:
-----------
CashUtil Sync: business objects

Tags:
----
gnucash-gnome2-dev

Modified Files:
--------------
    gnucash/src/business:
        .cvsignore
    gnucash/src/business/business-core:
        .cvsignore
        gncAddress.c
        gncBillTerm.c
        gncBillTerm.h
        gncCustomer.c
        gncEntry.c
        gncInvoice.c
        gncJob.c
        gncOrder.c
        gncOwner.c
        gncTaxTable.c
    gnucash/src/business/business-core/test:
        test-customer.c
        test-employee.c
        test-job.c
        test-vendor.c
    gnucash/src/business/business-gnome:
        .cvsignore
    gnucash/src/business/business-utils:
        .cvsignore

Revision Data
-------------
Index: .cvsignore
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.2.6.1
diff -Lsrc/business/.cvsignore -Lsrc/business/.cvsignore -u -r1.2 -r1.2.6.1
--- src/business/.cvsignore
+++ src/business/.cvsignore
@@ -1,2 +1,4 @@
 Makefile
 Makefile.in
+.DS_Store
+
Index: gncBillTerm.h
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncBillTerm.h,v
retrieving revision 1.3.4.5
retrieving revision 1.3.4.6
diff -Lsrc/business/business-core/gncBillTerm.h -Lsrc/business/business-core/gncBillTerm.h -u -r1.3.4.5 -r1.3.4.6
--- src/business/business-core/gncBillTerm.h
+++ src/business/business-core/gncBillTerm.h
@@ -38,6 +38,8 @@
 #include "qofbook.h"
 #include "qofid.h"
 #include "qofinstance.h"
+#include "gnc-engine-util.h"
+
 #include "gncBusiness.h"
 
 #define GNC_ID_BILLTERM       "gncBillTerm"
@@ -61,11 +63,17 @@
  * You can interpret it as a VALUE or a PERCENT.
  * ??? huh?
  */
-typedef enum {
+#define ENUM_TERMS_TYPE(_)  \
+ _(GNC_TERM_TYPE_DAYS,) \
+ _(GNC_TERM_TYPE_PROXIMO,)
+
+DEFINE_ENUM(GncBillTermType, ENUM_TERMS_TYPE)
+
+/*typedef enum {
   GNC_TERM_TYPE_DAYS = 1,
   GNC_TERM_TYPE_PROXIMO,
 } GncBillTermType;
-
+*/
 /** @name Create/Destroy Functions 
  @{ */
 GncBillTerm * gncBillTermCreate (QofBook *book);
Index: gncOwner.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncOwner.c,v
retrieving revision 1.15.4.6
retrieving revision 1.15.4.7
diff -Lsrc/business/business-core/gncOwner.c -Lsrc/business/business-core/gncOwner.c -u -r1.15.4.6 -r1.15.4.7
--- src/business/business-core/gncOwner.c
+++ src/business/business-core/gncOwner.c
@@ -247,13 +247,13 @@
   default:
     return NULL;
   case GNC_OWNER_CUSTOMER:
-    return gncCustomerGetCurrency (owner->owner.customer);
+    return (gnc_commodity*)gncCustomerGetCurrency (owner->owner.customer);
   case GNC_OWNER_VENDOR:
-    return gncVendorGetCurrency (owner->owner.vendor);
+    return (gnc_commodity*)gncVendorGetCurrency (owner->owner.vendor);
   case GNC_OWNER_EMPLOYEE:
-    return gncEmployeeGetCurrency (owner->owner.employee);
+    return (gnc_commodity*)gncEmployeeGetCurrency (owner->owner.employee);
   case GNC_OWNER_JOB:
-    return gncOwnerGetCurrency (gncJobGetOwner (owner->owner.job));
+    return (gnc_commodity*)gncOwnerGetCurrency ((GncOwner*)gncJobGetOwner (owner->owner.job));
   }
 }
 
@@ -281,7 +281,7 @@
       owner.owner.customer = gncCustomerObtainTwin (from->owner.customer, book);
       return owner;
     case GNC_OWNER_JOB:
-      owner.owner.job = gncJobObtainTwin (from->owner.job, book);
+      owner.owner.job = (GncJob*)gncJobObtainTwin (from->owner.job, book);
       return owner;
     case GNC_OWNER_VENDOR:
       owner.owner.vendor = gncVendorObtainTwin (from->owner.vendor, book);
@@ -361,7 +361,7 @@
   case GNC_OWNER_EMPLOYEE:
     return owner;
   case GNC_OWNER_JOB:
-    return gncJobGetOwner (owner->owner.job);
+    return (GncOwner*)gncJobGetOwner (owner->owner.job);
   }
 }
 
Index: gncInvoice.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncInvoice.c,v
retrieving revision 1.56.4.12
retrieving revision 1.56.4.13
diff -Lsrc/business/business-core/gncInvoice.c -Lsrc/business/business-core/gncInvoice.c -u -r1.56.4.12 -r1.56.4.13
--- src/business/business-core/gncInvoice.c
+++ src/business/business-core/gncInvoice.c
@@ -34,9 +34,7 @@
 #include "qof-be-utils.h"
 #include "qofbook.h"
 #include "qofclass.h"
-#include "qofid.h"
 #include "qofid-p.h"
-#include "qofinstance.h"
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquerycore.h"
@@ -49,10 +47,10 @@
 #include "kvp_frame.h"
 #include "gnc-engine-util.h"
 
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 #include "gnc-lot.h"
 
-#include "gncBusiness.h"
+//#include "gncBusiness.h"
 #include "gncBillTermP.h"
 #include "gncEntry.h"
 #include "gncEntryP.h"
@@ -188,7 +186,7 @@
 
   invoice->billto = gncCloneOwner (&from->billto, book);
   invoice->owner = gncCloneOwner (&from->owner, book);
-  invoice->job = gncJobObtainTwin (from->job, book);
+  invoice->job = (GncJob*)gncJobObtainTwin (from->job, book);
   invoice->terms = gncBillTermObtainTwin (from->terms, book);
   gncBillTermIncRef (invoice->terms);
 
@@ -259,41 +257,21 @@
 }
 
 static void
-qofInvoiceOwnerCB (QofEntity *ent, gpointer user_data)
+qofInvoiceSetOwner (GncInvoice *invoice, QofEntity *ent)
 {
-	GncInvoice *invoice;
-
-	invoice = (GncInvoice*)user_data;
-	qofOwnerSetEntity(&invoice->owner, ent);
-}
-
-static void
-qofInvoiceSetOwner (GncInvoice *invoice, QofCollection *coll)
-{
-	if(!invoice || !coll) { return; }
-	g_return_if_fail(qof_collection_count(coll) == 1);
+	if(!invoice || !ent) { return; }
 	gncInvoiceBeginEdit (invoice);
-	qof_collection_foreach(coll, qofInvoiceOwnerCB, invoice);
+	qofOwnerSetEntity(&invoice->owner, ent);
 	mark_invoice (invoice);
 	gncInvoiceCommitEdit (invoice);
 }
 
 static void
-qofInvoiceBillToCB (QofEntity *ent, gpointer user_data)
-{
-	GncInvoice *invoice;
-
-	invoice = (GncInvoice*)user_data;
-	qofOwnerSetEntity(&invoice->billto, ent);
-}
-
-static void
-qofInvoiceSetBillTo (GncInvoice *invoice, QofCollection *coll)
+qofInvoiceSetBillTo (GncInvoice *invoice, QofEntity *ent)
 {
-	if(!invoice || !coll) { return; }
-	g_return_if_fail(qof_collection_count(coll) == 1);
+	if(!invoice || !ent) { return; }
 	gncInvoiceBeginEdit (invoice);
-	qof_collection_foreach(coll, qofInvoiceBillToCB, invoice);
+	qofOwnerSetEntity(&invoice->billto, ent);
 	mark_invoice (invoice);
 	gncInvoiceCommitEdit (invoice);
 }
@@ -489,26 +467,18 @@
   return &invoice->owner;
 }
 
-static QofCollection*
+static QofEntity*
 qofInvoiceGetOwner (GncInvoice *invoice)
 {
-	QofCollection *owner_coll;
-
 	if(!invoice) { return NULL; }
-	owner_coll = qof_collection_new(qofOwnerGetType(&invoice->owner));
-	qof_collection_add_entity(owner_coll, qofOwnerGetOwner(&invoice->owner));
-	return owner_coll;
+	return (QofEntity*)&invoice->owner;
 }
 
-static QofCollection*
+static QofEntity*
 qofInvoiceGetBillTo (GncInvoice *invoice)
 {
-	QofCollection *bill_coll;
-
 	if(!invoice) { return NULL; }
-	bill_coll = qof_collection_new(qofOwnerGetType(&invoice->billto));
-	qof_collection_add_entity(bill_coll, qofOwnerGetOwner(&invoice->billto));
-	return bill_coll;
+	return (QofEntity*)&invoice->billto;
 }
 
 Timespec gncInvoiceGetDateOpened (GncInvoice *invoice)
@@ -530,7 +500,7 @@
   Transaction *txn;
   Timespec ts; ts.tv_sec = 0; ts.tv_nsec = 0;
   if (!invoice) return ts;
-  txn = gncInvoiceGetPostedTxn (invoice);
+  txn = (Transaction*)gncInvoiceGetPostedTxn (invoice);
   if (!txn) return ts;
   return xaccTransRetDateDueTS (txn);
 }
@@ -893,7 +863,7 @@
   /* Figure out if we need to separate out "credit-card" items */
   owner = gncOwnerGetEndOwner (gncInvoiceGetOwner (invoice));
   if (gncInvoiceGetOwnerType (invoice) == GNC_OWNER_EMPLOYEE)
-    ccard_acct = gncEmployeeGetCCard (gncOwnerGetEmployee (owner));
+    ccard_acct = (Account*)gncEmployeeGetCCard (gncOwnerGetEmployee (owner));
 
   /* Find an existing payment-lot for this owner */
   {
@@ -972,7 +942,7 @@
     gncEntryGetValue (entry, reverse, &value, NULL, &tax, &taxes);
 
     /* add the value for the account split */
-    this_acc = (reverse ? gncEntryGetInvAccount (entry) :
+    this_acc = (reverse ? (Account*)gncEntryGetInvAccount (entry) :
 		gncEntryGetBillAccount (entry));
     if (this_acc) {
       if (gnc_numeric_check (value) == GNC_ERROR_OK) {
@@ -1581,7 +1551,7 @@
     qofInvoiceSetBillTo(NULL, NULL);
     qofInvoiceGetBillTo(NULL);
   }
-
+  if(!qof_choice_create(GNC_ID_INVOICE)) { return FALSE;}
   return qof_object_register (&gncInvoiceDesc);
 }
 
Index: gncCustomer.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncCustomer.c,v
retrieving revision 1.20.4.7
retrieving revision 1.20.4.8
diff -Lsrc/business/business-core/gncCustomer.c -Lsrc/business/business-core/gncCustomer.c -u -r1.20.4.7 -r1.20.4.8
--- src/business/business-core/gncCustomer.c
+++ src/business/business-core/gncCustomer.c
@@ -35,14 +35,12 @@
 #include "gnc-engine-util.h"
 #include "gnc-commodity.h"
 #include "gnc-numeric.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 
 #include "qof-be-utils.h"
 #include "qofbook.h"
 #include "qofclass.h"
 #include "qofid-p.h"
-#include "qofid.h"
-#include "qofinstance.h"
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquerycore.h"
@@ -50,7 +48,8 @@
 
 #include "gncAddressP.h"
 #include "gncBillTermP.h"
-#include "gncBusiness.h"
+#include "gncInvoice.h"
+//#include "gncBusiness.h"
 #include "gncCustomer.h"
 #include "gncCustomerP.h"
 #include "gncJobP.h"
@@ -162,7 +161,7 @@
   for (node=g_list_last(cust->jobs); node; node=node->next)
   {
     GncJob *job = node->data;
-    job = gncJobObtainTwin (job, book);
+    job = (GncJob*)gncJobObtainTwin (job, book);
     cust->jobs = g_list_prepend(cust->jobs, job);
   }
 
@@ -194,8 +193,9 @@
 
   if (cust->terms)
     gncBillTermDecRef (cust->terms);
-  if (cust->taxtable)
+  if (cust->taxtable) {
     gncTaxTableDecRef (cust->taxtable);
+  }
 
   qof_instance_release (&cust->inst);
   g_free (cust);
@@ -377,7 +377,7 @@
 
 void gncCustomerBeginEdit (GncCustomer *cust)
 {
-  QOF_BEGIN_EDIT (&cust->inst);
+  qof_begin_edit (&cust->inst);
 }
 
 static inline void gncCustomerOnError (QofInstance *inst, QofBackendError errcode)
@@ -534,7 +534,7 @@
 gboolean gncCustomerIsDirty (GncCustomer *cust)
 {
   if (!cust) return FALSE;
-  return (cust->inst.dirty ||
+  return (qof_instance_is_dirty(&cust->inst) ||
           gncAddressIsDirty (cust->addr) ||
           gncAddressIsDirty (cust->shipaddr));
 }
@@ -554,9 +554,9 @@
 /* Package-Private functions */
 static const char * _gncCustomerPrintable (gpointer item)
 {
-  GncCustomer *c = item;
-  if (!item) return NULL;
-  return c->name;
+//  GncCustomer *c = item;
+  if (!item) return "failed";
+  return gncCustomerGetName((GncCustomer*)item);
 }
 
 static QofObject gncCustomerDesc =
@@ -570,7 +570,7 @@
   is_dirty:           qof_collection_is_dirty,
   mark_clean:         qof_collection_mark_clean,
   foreach:            qof_collection_foreach,
-  printable:          _gncCustomerPrintable,
+  printable:          (const char* (*)(gpointer))gncCustomerGetName,
   version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
 };
 
@@ -596,8 +596,11 @@
     { NULL },
   };
 
+  if(!qof_choice_add_class(GNC_ID_INVOICE, GNC_ID_CUSTOMER, INVOICE_OWNER)) { return FALSE; }
+  if(!qof_choice_add_class(GNC_ID_JOB, GNC_ID_CUSTOMER, JOB_OWNER)) { return FALSE; }
   qof_class_register (_GNC_MOD_NAME, (QofSortFunc)gncCustomerCompare,params);
-
+  /* temp */
+  _gncCustomerPrintable(NULL);
   return qof_object_register (&gncCustomerDesc);
 }
 
Index: gncJob.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncJob.c,v
retrieving revision 1.18.4.6
retrieving revision 1.18.4.7
diff -Lsrc/business/business-core/gncJob.c -Lsrc/business/business-core/gncJob.c -u -r1.18.4.6 -r1.18.4.7
--- src/business/business-core/gncJob.c
+++ src/business/business-core/gncJob.c
@@ -35,7 +35,7 @@
 #include "messages.h"
 #include "gnc-engine-util.h"
 #include "gnc-numeric.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 
 #include "qof-be-utils.h"
 #include "qofbook.h"
@@ -48,7 +48,8 @@
 #include "qofquery.h"
 #include "qofquerycore.h"
 
-#include "gncBusiness.h"
+//#include "gncBusiness.h"
+#include "gncInvoice.h"
 #include "gncJob.h"
 #include "gncJobP.h"
 #include "gncOwnerP.h"
@@ -268,24 +269,15 @@
   mark_job (job);
   gncJobCommitEdit (job);
 }
-static void
-qofJobOwnerCB (QofEntity *ent, gpointer user_data)
-{
-	GncJob *job;
-
-	job = (GncJob*)user_data;
-	qofOwnerSetEntity(&job->owner, ent);
-}
 
 static void
-qofJobSetOwner (GncJob *job, QofCollection *coll)
+qofJobSetOwner (GncJob *job, QofEntity *ent)
 {
-	if(!job || !coll) { return; }
-	g_return_if_fail(qof_collection_count(coll) == 1);
-	gncJobBeginEdit (job);
-	qof_collection_foreach(coll, qofJobOwnerCB, job);
+	if(!job || !ent) { return; }
+	qof_begin_edit(&job->inst);
+	qofOwnerSetEntity(&job->owner, ent);
 	mark_job (job);
-	gncJobCommitEdit (job);
+	qof_commit_edit(&job->inst);
 }
 
 void gncJobBeginEdit (GncJob *job)
@@ -346,15 +338,11 @@
   return job->active;
 }
 
-static QofCollection*
+static QofEntity*
 qofJobGetOwner (GncJob *job)
 {
-	QofCollection *job_coll;
-
 	if(!job) { return NULL; }
-	job_coll = qof_collection_new(GNC_ID_JOB);
-	qof_collection_add_entity(job_coll, qofOwnerGetOwner(&job->owner));
-	return job_coll;
+	return (QofEntity*)qofOwnerGetOwner(&job->owner);
 }
 
 /* Other functions */
@@ -400,14 +388,18 @@
     { JOB_NAME, QOF_TYPE_STRING, (QofAccessFunc)gncJobGetName, (QofSetterFunc)gncJobSetName },
     { JOB_ACTIVE, QOF_TYPE_BOOLEAN, (QofAccessFunc)gncJobGetActive, (QofSetterFunc)gncJobSetActive },
     { JOB_REFERENCE, QOF_TYPE_STRING, (QofAccessFunc)gncJobGetReference, (QofSetterFunc)gncJobSetReference },
+/*    { JOB_OWNER, QOF_TYPE_CHOICE, (QofAccessFunc)qofJobGetOwner, (QofSetterFunc)qofJobSetOwner },*/
     { JOB_OWNER, GNC_ID_OWNER, (QofAccessFunc)gncJobGetOwner, NULL },
-    { Q_JOB_OWNER, QOF_TYPE_COLLECT, (QofAccessFunc)qofJobGetOwner, (QofSetterFunc)qofJobSetOwner },
     { QOF_PARAM_ACTIVE, QOF_TYPE_BOOLEAN, (QofAccessFunc)gncJobGetActive, NULL },
     { QOF_PARAM_BOOK, QOF_ID_BOOK, (QofAccessFunc)qof_instance_get_book, NULL },
     { QOF_PARAM_GUID, QOF_TYPE_GUID, (QofAccessFunc)qof_instance_get_guid, NULL },
     { NULL },
   };
 
+  if(!qof_choice_create(GNC_ID_JOB)) { return FALSE; }
+  if(!qof_choice_add_class(GNC_ID_INVOICE, GNC_ID_JOB, INVOICE_OWNER)) { return FALSE; }
+  qofJobGetOwner(NULL);
+  qofJobSetOwner(NULL, NULL);
   qof_class_register (_GNC_MOD_NAME, (QofSortFunc)gncJobCompare, params);
 
   return qof_object_register (&gncJobDesc);
Index: gncBillTerm.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncBillTerm.c,v
retrieving revision 1.6.4.5
retrieving revision 1.6.4.6
diff -Lsrc/business/business-core/gncBillTerm.c -Lsrc/business/business-core/gncBillTerm.c -u -r1.6.4.5 -r1.6.4.6
--- src/business/business-core/gncBillTerm.c
+++ src/business/business-core/gncBillTerm.c
@@ -35,7 +35,7 @@
 #include "gnc-engine.h"
 #include "gnc-engine-util.h"
 #include "qofquerycore.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 #include "kvp_frame.h"
 
 #include "qof-be-utils.h"
@@ -47,14 +47,10 @@
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquery.h"
-
+/** \todo remove gncBusiness.h to make the object logic library. */
 #include "gncBusiness.h"
 #include "gncBillTermP.h"
 
-/* doxygen: this definition has been copied and pasted
-into the .h file to make it accessible to doxygen.
-Please keep the two in sync if it is not possible to
-move the struct definition itself into the .h */
 struct _gncBillTerm 
 {
   QofInstance     inst;
@@ -99,6 +95,9 @@
         member = tmp; \
         }
 
+AS_STRING_DEC(GncBillTermType, ENUM_TERMS_TYPE)
+FROM_STRING_DEC(GncBillTermType, ENUM_TERMS_TYPE)
+
 /* ============================================================== */
 /* Misc inline utilities */
 
@@ -297,6 +296,18 @@
   gncBillTermCommitEdit (term);
 }
 
+/** \brief Convert bill term types from text. */
+FROM_STRING_FUNC(GncBillTermType, ENUM_TERMS_TYPE)
+
+static
+void qofBillTermSetType (GncBillTerm *term, const char *type_label)
+{
+	GncBillTermType type;
+
+	type = GncBillTermTypefromString(type_label);
+	gncBillTermSetType(term, type);
+}
+
 void gncBillTermSetDueDays (GncBillTerm *term, gint days)
 {
   if (!term) return;
@@ -470,6 +481,16 @@
   return term->type;
 }
 
+/** \brief Convert bill term types to text. */
+AS_STRING_FUNC(GncBillTermType, ENUM_TERMS_TYPE)
+
+static
+const char* qofBillTermGetType (GncBillTerm *term)
+{
+	if (!term) { return NULL; }
+	return GncBillTermTypeasString(term->type);
+}
+
 gint gncBillTermGetDueDays (GncBillTerm *term)
 {
   if (!term) return 0;
@@ -695,7 +716,7 @@
   static QofParam params[] = {
 	{ GNC_BILLTERM_NAME, 		QOF_TYPE_STRING,  (QofAccessFunc)gncBillTermGetName,			(QofSetterFunc)gncBillTermSetName },
 	{ GNC_BILLTERM_DESC, 		QOF_TYPE_STRING,  (QofAccessFunc)gncBillTermGetDescription,		(QofSetterFunc)gncBillTermSetDescription },
-	{ GNC_BILLTERM_TYPE, 		QOF_TYPE_INT32,   (QofAccessFunc)gncBillTermGetType, 			(QofSetterFunc)gncBillTermSetType },
+	{ GNC_BILLTERM_TYPE, QOF_TYPE_STRING, (QofAccessFunc)qofBillTermGetType, (QofSetterFunc)qofBillTermSetType },
 	{ GNC_BILLTERM_DUEDAYS, 	QOF_TYPE_INT32,   (QofAccessFunc)gncBillTermGetDueDays, 		(QofSetterFunc)gncBillTermSetDueDays },
 	{ GNC_BILLTERM_DISCDAYS, 	QOF_TYPE_INT32,   (QofAccessFunc)gncBillTermGetDiscountDays,	(QofSetterFunc)gncBillTermSetDiscountDays },
 	{ GNC_BILLTERM_DISCOUNT, 	QOF_TYPE_NUMERIC, (QofAccessFunc)gncBillTermGetDiscount,		(QofSetterFunc)gncBillTermSetDiscount },
Index: .cvsignore
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.2.6.1
diff -Lsrc/business/business-core/.cvsignore -Lsrc/business/business-core/.cvsignore -u -r1.2 -r1.2.6.1
--- src/business/business-core/.cvsignore
+++ src/business/business-core/.cvsignore
@@ -9,3 +9,6 @@
 gw-business-core.h
 gw-business-core.html
 gw-business-core.scm
+.DS_Store
+*.loT
+
Index: gncEntry.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncEntry.c,v
retrieving revision 1.32.4.5
retrieving revision 1.32.4.6
diff -Lsrc/business/business-core/gncEntry.c -Lsrc/business/business-core/gncEntry.c -u -r1.32.4.5 -r1.32.4.6
--- src/business/business-core/gncEntry.c
+++ src/business/business-core/gncEntry.c
@@ -32,7 +32,7 @@
 #include "messages.h"
 #include "gnc-commodity.h"
 #include "gnc-engine-util.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 #include "gnc-numeric.h"
 
 #include "qof-be-utils.h"
@@ -40,7 +40,6 @@
 #include "qofclass.h"
 #include "qofid.h"
 #include "qofid-p.h"
-#include "qofinstance.h"
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquery.h"
Index: gncAddress.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncAddress.c,v
retrieving revision 1.4.4.6
retrieving revision 1.4.4.7
diff -Lsrc/business/business-core/gncAddress.c -Lsrc/business/business-core/gncAddress.c -u -r1.4.4.6 -r1.4.4.7
--- src/business/business-core/gncAddress.c
+++ src/business/business-core/gncAddress.c
@@ -34,11 +34,10 @@
 #include "qofclass.h"
 #include "qofinstance-p.h"
 #include "guid.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 #include "qofquery.h"
 #include "gncAddress.h"
 #include "gncAddressP.h"
-#include "gncOwner.h"
 
 struct _gncAddress 
 {
Index: gncTaxTable.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncTaxTable.c,v
retrieving revision 1.9.4.5
retrieving revision 1.9.4.6
diff -Lsrc/business/business-core/gncTaxTable.c -Lsrc/business/business-core/gncTaxTable.c -u -r1.9.4.5 -r1.9.4.6
--- src/business/business-core/gncTaxTable.c
+++ src/business/business-core/gncTaxTable.c
@@ -33,14 +33,12 @@
 #include "messages.h"
 #include "gnc-numeric.h"
 #include "gnc-engine-util.h"
-#include "gnc-event-p.h"
+#include "gnc-event.h"
 
 #include "qof-be-utils.h"
 #include "qofbook.h"
 #include "qofclass.h"
-#include "qofid.h"
 #include "qofid-p.h"
-#include "qofinstance.h"
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquery.h"
Index: gncOrder.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/gncOrder.c,v
retrieving revision 1.23.4.5
retrieving revision 1.23.4.6
diff -Lsrc/business/business-core/gncOrder.c -Lsrc/business/business-core/gncOrder.c -u -r1.23.4.5 -r1.23.4.6
--- src/business/business-core/gncOrder.c
+++ src/business/business-core/gncOrder.c
@@ -37,17 +37,14 @@
 #include "qof-be-utils.h"
 #include "qofbook.h"
 #include "qofclass.h"
-#include "qofid.h"
 #include "qofid-p.h"
-#include "qofinstance.h"
 #include "qofinstance-p.h"
 #include "qofobject.h"
 #include "qofquery.h"
 #include "qofquerycore.h"
+#include "gnc-event.h"
 
-#include "gnc-event-p.h"
-
-#include "gncBusiness.h"
+//#include "gncBusiness.h"
 #include "gncEntry.h"
 #include "gncEntryP.h"
 #include "gncOrder.h"
@@ -271,7 +268,7 @@
 
   if (!order || !entry) return;
 
-  old = gncEntryGetOrder (entry);
+  old = (GncOrder*)gncEntryGetOrder (entry);
   if (old == order) return;			/* I already own it */
   if (old) gncOrderRemoveEntry (old, entry);
 
@@ -356,7 +353,7 @@
 
 void gncOrderBeginEdit (GncOrder *order)
 {
-  QOF_BEGIN_EDIT (&order->inst);
+  qof_begin_edit(&order->inst);
 }
 
 static inline void gncOrderOnError (QofInstance *order, QofBackendError errcode)
Index: .cvsignore
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-gnome/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.2.6.1
diff -Lsrc/business/business-gnome/.cvsignore -Lsrc/business/business-gnome/.cvsignore -u -r1.2 -r1.2.6.1
--- src/business/business-gnome/.cvsignore
+++ src/business/business-gnome/.cvsignore
@@ -9,3 +9,5 @@
 gw-business-gnome.h
 gw-business-gnome.html
 gw-business-gnome.scm
+.DS_Store
+
Index: test-employee.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/test/test-employee.c,v
retrieving revision 1.6.4.2
retrieving revision 1.6.4.3
diff -Lsrc/business/business-core/test/test-employee.c -Lsrc/business/business-core/test/test-employee.c -u -r1.6.4.2 -r1.6.4.3
--- src/business/business-core/test/test-employee.c
+++ src/business/business-core/test/test-employee.c
@@ -31,7 +31,7 @@
 #include "gnc-engine-util.h"
 #include "qofinstance.h"
 #include "qofobject.h"
-
+#include "qofbackend.h"
 #include "gncEmployee.h"
 #include "gncEmployeeP.h"
 #include "test-stuff.h"
Index: test-job.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/test/test-job.c,v
retrieving revision 1.8.4.2
retrieving revision 1.8.4.3
diff -Lsrc/business/business-core/test/test-job.c -Lsrc/business/business-core/test/test-job.c -u -r1.8.4.2 -r1.8.4.3
--- src/business/business-core/test/test-job.c
+++ src/business/business-core/test/test-job.c
@@ -30,7 +30,7 @@
 #include "gnc-module.h"
 #include "gnc-engine-util.h"
 #include "qofobject.h"
-
+#include "qofbackend.h"
 #include "gncJob.h"
 #include "gncJobP.h"
 #include "test-stuff.h"
Index: test-customer.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/test/test-customer.c,v
retrieving revision 1.9.4.2
retrieving revision 1.9.4.3
diff -Lsrc/business/business-core/test/test-customer.c -Lsrc/business/business-core/test/test-customer.c -u -r1.9.4.2 -r1.9.4.3
--- src/business/business-core/test/test-customer.c
+++ src/business/business-core/test/test-customer.c
@@ -25,7 +25,7 @@
 
 #include <glib.h>
 #include <libguile.h>
-
+#include "qofbackend.h"
 #include "guid.h"
 #include "gnc-module.h"
 #include "gnc-engine-util.h"
@@ -132,8 +132,16 @@
     const char *str = get_random_string();
     const char *res;
 
+    gncCustomerBeginEdit(customer);
+    do_test (gncCustomerRegister() == TRUE, "Try to register the customer object");
+    do_test (qof_class_is_registered(GNC_ID_CUSTOMER) == TRUE, "registration failed");
     gncCustomerSetName (customer, str);
-    res = gncObjectPrintable (GNC_ID_CUSTOMER, customer);
+    gncCustomerCommitEdit(customer);
+    res = NULL;
+    res = qof_object_printable (GNC_ID_CUSTOMER, customer);
+    do_test (res != NULL, "Printable NULL?");
+    do_test (safe_strcmp (str, res) == 0, "Printable equals");
+    res = gncCustomerGetName(customer);
     do_test (res != NULL, "Printable NULL?");
     do_test (safe_strcmp (str, res) == 0, "Printable equals");
   }    
@@ -235,8 +243,15 @@
 main_helper (void *closure, int argc, char **argv)
 {
   gnc_module_load("gnucash/business-core", 0);
+  gnc_engine_get_string_cache ();
+  guid_init ();
+  qof_object_initialize ();
+  qof_book_register ();
   test_customer();
   print_test_results();
+  guid_shutdown();
+  gnc_engine_string_cache_destroy();
+			
   exit(get_rv());
 }
 
Index: test-vendor.c
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-core/test/test-vendor.c,v
retrieving revision 1.10.4.2
retrieving revision 1.10.4.3
diff -Lsrc/business/business-core/test/test-vendor.c -Lsrc/business/business-core/test/test-vendor.c -u -r1.10.4.2 -r1.10.4.3
--- src/business/business-core/test/test-vendor.c
+++ src/business/business-core/test/test-vendor.c
@@ -30,7 +30,7 @@
 #include "gnc-module.h"
 #include "gnc-engine-util.h"
 #include "qofobject.h"
-
+#include "qofbackend.h"
 #include "gncVendor.h"
 #include "gncVendorP.h"
 #include "test-stuff.h"
Index: .cvsignore
===================================================================
RCS file: /home/cvs/cvsroot/gnucash/src/business/business-utils/.cvsignore,v
retrieving revision 1.1.4.1
retrieving revision 1.1.4.2
diff -Lsrc/business/business-utils/.cvsignore -Lsrc/business/business-utils/.cvsignore -u -r1.1.4.1 -r1.1.4.2
--- src/business/business-utils/.cvsignore
+++ src/business/business-utils/.cvsignore
@@ -5,3 +5,5 @@
 .scm-links
 Makefile
 Makefile.in
+.DS_Store
+


More information about the gnucash-changes mailing list