r20618 - gnucash/trunk/src/engine - Add generic owner setter function for the active property

Geert Janssens gjanssens at code.gnucash.org
Wed May 11 17:50:46 EDT 2011


Author: gjanssens
Date: 2011-05-11 17:50:45 -0400 (Wed, 11 May 2011)
New Revision: 20618
Trac: http://svn.gnucash.org/trac/changeset/20618

Modified:
   gnucash/trunk/src/engine/gncOwner.c
   gnucash/trunk/src/engine/gncOwner.h
Log:
Add generic owner setter function for the active property

Modified: gnucash/trunk/src/engine/gncOwner.c
===================================================================
--- gnucash/trunk/src/engine/gncOwner.c	2011-05-11 21:50:34 UTC (rev 20617)
+++ gnucash/trunk/src/engine/gncOwner.c	2011-05-11 21:50:45 UTC (rev 20618)
@@ -419,6 +419,31 @@
     }
 }
 
+void
+gncOwnerSetActive (const GncOwner *owner, gboolean active)
+{
+    if (!owner) return;
+    switch (owner->type)
+    {
+    case GNC_OWNER_CUSTOMER:
+        gncCustomerSetActive (owner->owner.customer, active);
+        break;
+    case GNC_OWNER_VENDOR:
+        gncVendorSetActive (owner->owner.vendor, active);
+        break;
+    case GNC_OWNER_EMPLOYEE:
+        gncEmployeeSetActive (owner->owner.employee, active);
+        break;
+    case GNC_OWNER_JOB:
+        gncJobSetActive (owner->owner.job, active);
+        break;
+    case GNC_OWNER_NONE:
+    case GNC_OWNER_UNDEFINED:
+    default:
+        break;
+    }
+}
+
 GncGUID gncOwnerRetGUID (GncOwner *owner)
 {
     const GncGUID *guid = gncOwnerGetGUID (owner);

Modified: gnucash/trunk/src/engine/gncOwner.h
===================================================================
--- gnucash/trunk/src/engine/gncOwner.h	2011-05-11 21:50:34 UTC (rev 20617)
+++ gnucash/trunk/src/engine/gncOwner.h	2011-05-11 21:50:45 UTC (rev 20618)
@@ -114,17 +114,24 @@
 GncJob * gncOwnerGetJob (const GncOwner *owner);
 GncVendor * gncOwnerGetVendor (const GncOwner *owner);
 GncEmployee * gncOwnerGetEmployee (const GncOwner *owner);
-/** @} */
-void gncOwnerCopy (const GncOwner *src, GncOwner *dest);
-gboolean gncOwnerEqual (const GncOwner *a, const GncOwner *b);
-int gncOwnerCompare (const GncOwner *a, const GncOwner *b);
 
 const char * gncOwnerGetID (const GncOwner *owner);
 const char * gncOwnerGetName (const GncOwner *owner);
 GncAddress * gncOwnerGetAddr (const GncOwner *owner);
 gboolean gncOwnerGetActive (const GncOwner *owner);
 gnc_commodity * gncOwnerGetCurrency (const GncOwner *owner);
+/** @} */
 
+/** \name Set routines.
+@{
+*/
+void gncOwnerSetActive (const GncOwner *owner, gboolean active);
+/** @} */
+
+void gncOwnerCopy (const GncOwner *src, GncOwner *dest);
+gboolean gncOwnerEqual (const GncOwner *a, const GncOwner *b);
+int gncOwnerCompare (const GncOwner *a, const GncOwner *b);
+
 /** Get the GncGUID of the immediate owner */
 const GncGUID * gncOwnerGetGUID (const GncOwner *owner);
 GncGUID gncOwnerRetGUID (GncOwner *owner);



More information about the gnucash-changes mailing list