FreqSpec and SchedXaction as QOF objects

Neil Williams linux at codehelp.co.uk
Sat Apr 23 16:31:53 EDT 2005


On Saturday 23 April 2005 9:10 pm, David Hampton wrote:
> On Sat, 2005-04-23 at 10:29 -0400, Derek Atkins wrote:
> > Not particularly.  It's not just QOF that's the issue.  But eventually I
> > think gnucash will switch to the "external" qof library, maybe..  We'll
> > see.  Not for this first g2 release, for sure.
>
> Not having looked at QOF myself, can anyone tell me how Qof objects
> compare to glib GObjects?

Why not use GLib GObjects? Well, in the narrowest sense, QOF already does: 
there is a QOF to GObject glue layer, and GLib GObjects (including GTK 
objects) are searchable with QOF. More broadly, the problem with GObjects is 
that they don't support unique object id's, and they don't support 
versioning. Now, I suppose we could build those on top of GObjects ... and 
maybe we will someday. But QOF evolved in parallel, independently from 
GObjects, and thus there's overlap of ideas. Parts of QOF date back to 1997, 
and thus the parallel evolution is in part because GObjects didn't exist back 
then. Maybe there might be some convergence, maybe, someday.
http://qof.sourceforge.net/why-qof.html

You mean these ones, yes?
http://developer.gnome.org/doc/API/2.0/glib/glib-Basic-Types.html

#define QOF_TYPE_STRING   "string"
#define QOF_TYPE_DATE   "date"
#define QOF_TYPE_NUMERIC   "numeric"
#define QOF_TYPE_DEBCRED   "debcred"
#define QOF_TYPE_GUID   "guid"
#define QOF_TYPE_INT32   "gint32"
#define QOF_TYPE_INT64   "gint64"
#define QOF_TYPE_DOUBLE   "double"
#define QOF_TYPE_BOOLEAN   "boolean"
#define QOF_TYPE_KVP   "kvp"
#define QOF_TYPE_CHAR   "character"
http://qof.sourceforge.net/doxy/group__Class.html


typedef     gboolean;                 QOF_TYPE_BOOLEAN
typedef     gpointer;
typedef     gconstpointer;
typedef     gchar;                       QOF_TYPE_CHAR
typedef     guchar;

typedef     gint; 
typedef     guint;
typedef     gshort;
typedef     gushort;
typedef     glong; 
typedef     gulong;

typedef     gint8;
typedef     guint8;
typedef     gint16;
typedef     guint16;
typedef     gint32;                         QOF_TYPE_INT32
typedef     guint32;

#define     G_HAVE_GINT64
typedef     gint64;                         QOF_TYPE_INT64
typedef     guint64;
#define     G_GINT64_CONSTANT               (val)

typedef     gfloat;
typedef     gdouble;                      QOF_TYPE_DOUBLE

typedef     gsize;
typedef     gssize;


-- 

Neil Williams
=============
http://www.dcglug.org.uk/
http://www.nosoftwarepatents.com/
http://www.linux.codehelp.co.uk/

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : http://lists.gnucash.org/pipermail/gnucash-devel/attachments/20050423/72ef6fed/attachment.bin


More information about the gnucash-devel mailing list