gEDA-dev: Pinning down libgeda

Peter TB Brett peter at peter-b.co.uk
Wed Feb 28 18:13:05 EST 2007


Hi folks,

Bit of an update on this.  Ales & Peter C. rightly pointed out that any 
changes to libgeda need to be done by refactoring rather than rewriting.  I'm 
therefore proposing the following as initial steps:

 1. Mark application-specific API elements in libgeda as deprecated, and phase
    out their use.  gschem, gnetlist & gattrib are the worst offenders here,
    particularly w.r.t. the w_current structure.

 2. Rename all public API elements to use the prefix "geda_" (or "GEDA_" for 
    constants & macros).  This would be a good time to implement a clearer
    naming convention for functions & structures too (glib/gtk's might be a
    good model).

 3. Create "private" header files in libgeda's src/ directory (these will
    *not* be installed to /usr/include).  Identify declarations & definitions
    that should only be used internally and remove them from the public
    headers.

The first of these three steps will be the most difficult, but please do make 
it a priority.  At some point I will try and make detailed list of what needs 
moving out.

A suggested first step for application maintainers is to introduce an 
application context structure that holds the things like dialog box pointers 
that are currently stuffed into w_current.

Please now tell me how this could be done better!

Thanks,

Peter :)

-- 
Fisher Society committee                    http://tinyurl.com/o39w2
CUSBC novices, match and league secretary   http://tinyurl.com/mwrc9
CU Spaceflight                              http://tinyurl.com/ognu2

v3sw6YChw7$ln3pr6$ck3ma8u7+Lw3+2m0l7Ci6e4+8t4Gb8en6g6Pa2Xs5Mr4p4
  hackerkey.com                                  peter-b.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://www.seul.org/pipermail/geda-dev/attachments/20070228/489f126e/attachment.pgp


More information about the geda-dev mailing list