Applied patch from Ivan Stankovic that displays entered characters in
[geda-gaf.git] / libgeda / ChangeLog
blob24b4720112809669c4850c997d96d33b5485d7ab
1 2007-06-07 Ales Hvezda   <ahvezda@geda.seul.org>
3         * include/struct.h, src/s_toplevel.c: Applied patch from Ivan
4         Stankovic that displays entered characters in the status bar.
5         This patch added keyaccel_string to the TOPLEVEL structure.
7 2007-06-04 Peter Brett <peter@peter-b.co.uk>
9         * src/g_rc.c, src/g_smob.c, src/s_clib.c: Replace deprecated Guile
10         functions & macros.
12         Replace deprecated SCM_STRINGP, SCM_INUM, SCM_INUMP & SCM_MAKINUM
13         with recommended equivalents for Guile 1.8.
15 2007-06-02 Peter Brett <peter@peter-b.co.uk>
17         * configure.ac, src/g_basic.c: Improve Guile configure checks &
18         remove 1.4 compat. code.
20         Removes compatibility code for Guile 1.4, and makes configure
21         scripts check for actual Guile version.
23 2007-05-28 Peter Brett <peter@peter-b.co.uk>
25         * configure.ac: Require Guile 1.8.x
27           Guile 1.8.x is the current stable series, and 1.6.x is getting
28           old.  Require 1.8.x for libgeda.
29         
30         * src/g_rc.c, src/s_clib.c: Component library documentation
31           updates.
33           Various changes to update & improve component library
34           documentation.
35         
36         * src/s_clib.c: Match .sym suffix case-insensively when building
37           component library.
39           When building symbol lists for directory-based component
40           sources, match the ".sym" filename suffix case-insensitively.
41           Note that for backward- compatibility (and sanity on systems
42           with case-sensitive filenames) searching for symbols does match
43           symbols case-sensitively ("plug.SYM" will not satisfy a search
44           for "plug.sym").
45         
46         * include/prototype.h, src/g_rc.c, src/g_register.c, src/s_clib.c:
47           Add component sources based on Scheme procedures.
49           Add the ability to use a set of Scheme procedures which list and
50           return component symbols as the backend of a component library.
51           Adds the g_rc_component_library_funcs() and s_clib_add_scm()
52           functions to libgeda, as well as the component-library-funcs rc
53           file function.
54         
55         * include/prototype.h, src/s_clib.c: Change way that component
56           source conflicts are checked.
58           Allow the same component source to be added more than once, but
59           only if it has a unique name.  Also adds
60           s_clib_get_source_by_name().
61         
62         * src/s_clib.c: Sort lists of component sources and symbols.
64           Adds functions to compare sources and symbols by name
65           case-insensitively, and makes the both
66           s_clib_source_get_symbols() and s_clib_get_sources() return
67           lists sorted by name.
68         
69         * include/prototype.h, src/g_rc.c, src/g_register.c: Add & update
70           Scheme callbacks for new component library.
71         
72           Add the (component-library-command) function, and make
73           (component-library) take an optional second argument for the
74           directory's source name.
75         
76         * include/prototype.h, src/g_rc.c, src/s_clib.c: Provide better
77           names for component sources.
79           Full pathnames aren't very user-friendly in the component
80           browser, and sometimes the name you want for your component
81           source isn't the same as the directory name. This patch provides
82           an infrastructure for better source naming, while falling back
83           to the "classic" behaviour if necessary.
85         * include/prototype.h, include/struct.h, src/a_basic.c,
86           src/o_complex_basic.c, src/o_embed.c, src/o_list.c,
87           src/s_basic.c, src/s_clib.c, src/s_hierarchy.c,
88           src/s_toplevel.c: Implement new component library system in
89           libgeda.
91           A new component library model is needed to allow gschem etc.  to
92           work well with part database systems.  This patch provides the
93           necessary infrastructure in libgeda, without the frontend Guile
94           commands required to make use of the new features.  In
95           particular, it abstracts the component library into the concepts
96           of "Component Sources" and "Symbols", and allows external
97           "Library Commands" to provide symbol data in addition to the
98           traditional directory libraries.
100           In order to allow the new system to work, there are major
101           changes in all code which manipulates COMPLEX objects; in
102           particular, the magic "EMBEDDED" string is now only used in the
103           on-disc representation.
104         
105         * include/prototype.h, src/a_basic.c, src/o_attrib.c,
106           src/o_picture.c, o_text_basic.c: Make libgeda parse schematics
107           from buffered data.
109           In order to support more complex methods of acquiring symbol
110           data, libgeda needs to be able to load schematics and symbols
111           directly from a memory buffer as well as from files.
112         
113         * include/prototype.h, include/struct.h, src/Makefile.am,
114           src/s_textbuffer.c: Add managed text buffers to libgeda.
116           In order to facilitate loading symbols & schematics from memory
117           without an extensive rewrite, this patch adds an API for reading
118           memory arrays a bit like a file.
120           Using memory streams & fgets would be nicer, but unfortunately
121           memory streams are a GNU libc extension.
123 2007-05-25 Ales Hvezda   <ahvezda@geda.seul.org>
125         * configure.ac: Updated version to 20070526 in prep for the next
126         release.  Also changed shared library's version number to 29:0:0.
128 2007-05-13 Ales Hvezda   <ahvezda@geda.seul.org>
130         * src/o_text_basic.c: Fixed a memory leak reported by Peter Brett
131         (found using valgrind).  Thanks.
133 2007-04-28  Stuart Brorson <sdb AT cloud9 DOT net>
134         * src/o_attrib.c, src/o_complex_basic.c, src/s_tile.c:
135         made changes to o_attrib_slot_update and
136         o_attrib_search_pinseq to enable searching slotted parts 
137         by pinseq.  Added o_complex_count_pins as part of project.
138         
139 2007-04-22  Peter Brett <peter@peter-b.co.uk>
140         * src/o_box_basic.c: Fix some unused variable warnings in libgeda.
141         
142           In a recent patch libgd was disabled by default (i.e.  HAS_LIBGD
143           was unset by default).  This exposed some variable declarations
144           which should have been #ifdefed out, but weren't.  Although most
145           were later cleared up, some were missed.
146         
147 2007-04-21  Mike Jarabek  <mjarabek@sentex.ca>
149         * src/f_print.c:
150           - Added %%Orientation to DSC block in PS output, fixing SF#1680214.
152 2007-04-21 Carlos Nieves Onega <cnieves (AT) iespana (DOT) es>
154         * src/o_bus_basic.c, src/o_circle_basic.c, src/o_line_basic.c,
155           src/o_pin_basic.c: 
156           - Put unused variables inside #ifdef HAS_LIBGD.
157           - Reverted the patch below. Those variables are used when 
158             compiling with libgd.
159           - Removed unused variables.
161         * configure.ac: Don't enable libgd by default.
162           This makes gdk-pixbuf the default library for png output.
163         
164 2007-04-21 Peter Clifton <pcjc2@cam.ac.uk>
166         * src/m_basic.c: Fix visibility test in visible(..) for the case when the
167           object completely surrounds the screen clipping region.
169         * src/o_circle_basic.c: Tidy up dist() function in o_circle_basic.c
170           to be much more readable.
172 2007-04-17 Peter Clifton <pcjc2@cam.ac.uk>
174         Merge changes from noscreen
175         
176         2007-16-06 Peter Clifton <pcjc2@cam.ac.uk>
178                 * src/o_text_basic.c: Use o_text_recalc() to update bounds, as we don't
179                   want to duplicate code. Fixes a bug where the bounds were reset manually
180                   even with invisible text (causing uninitialised values to be stored in
181                   for the object's bounds). Fixed o_text_recalc() to silently return
182                   (rather than write uninitialised values) if no bound was found for the
183                   text object's prim_objects.
185         2007-12-06 Peter Clifton <pcjc2@cam.ac.uk>
187                 * src/f_image.c, src/f_print.c, src/g_smob.c, src/o_complex_basic.c,
188                   src/o_pin_basic.c: Replace incorrect use of world_get_complex_bounds()
189                   with world_get_object_list_bounds(). Changed o_complex_recalc() to
190                   (correctly) use world_complex_get_bounds(). Fixed up documentation in
191                   g_smob.c to reflect the current bounds code.
193         2007-04-06 Peter Clifton <pcjc2@cam.ac.uk>
195                 * src/a_basic.c: Fix bounds for embedded objects as they are loaded from
196                   file. This places a call to o_complex_recalc() in o_read(), which is
197                   not great from an encapsulation point of view, but is the neatest solution
198                   with the current method of loading embedded objects.
200         2007-03-26 Peter Clifton <pcjc2@cam.ac.uk>
202                 * include/prototype.h, src/o_arc_basic.c, src/o_basic.c, src/o_box_basic.c,
203                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_line_basic.c,
204                   src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c: Pass OBJECT instead
205                   of derived type into world_get_..._bounds(). Modifed objects to include
206                   the drawn line width when calculating bounds. Set OBJECT->line_width to
207                   {NET|BUS|PIN}_WIDTH as appropriate in o_{net|bus|pin}_add(). Replaced
208                   copied code in world_get_{net|pin|bus}_bounds() with calls to
209                   world_get_line_bounds(). Added call to o_recalc_single_object() in
210                   o_set_line_options() to keep line width up-to-date with editing.
212                 * libgeda/include/struct.h, src/s_toplevel.c: Added variables
213                   to support (select-slack-pixels #) rc keyword.
215         2007-03-24 Peter Clifton <pcjc2@cam.ac.uk>
217                 * src/o_complex_basic.c: Convert world_get_complex_bounds() to
218                   be a wrapper around world_get_list_bounds(). Based upon a patch
219                   by Patrick Bernaud which did the same for get_complex_bounds().
221                 * src/o_pin_basic.c: Re-write the bounds checking in o_pin_update_whichend()
222                   to be more robust
224                 * src/o_complex_basic.c: Modify world_get_single_object_bounds() to
225                   use cached bounds where possible. Text objects are special-cased
226                   to determine if they are visible.
228                 * src/o_complex_basic.c: Add call to o_complex_recalc() in o_complex_add()
229                   to cache bounds.
231         2007-02-25 Peter Clifton <pcjc2@cam.ac.uk>
233                 * include/prototype.h, src/o_arc_basic.c, src/o_box_basic.c, 
234                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_line_basic.c, 
235                   src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c,
236                   src/o_text_basic.c: Removed get_..._bounds() functions.
238                 * include/prototype.h, src/o_arc_basic.c, src/o_box_basic.c,
239                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_complex_basic.c,
240                   src/o_line_basic.c, src/o_net_basic.c, src/o_picture.c,
241                   src/o_pin_basic.c, src/o_text_basic.c: Switched over to
242                   caching world rather than screen coordinates
244                 * include/struch.h, src/s_basic.c: Removed screen coordinates from
245                   object datastructures, and renamed variables storing cached
246                   bounds with prefix w_ to differentiate their world coord usage.
247                   Changed s_basic.c to initialise all these variables to zero.
249                 * src/o_text_basic.c: Added call to o_text_recalc() to
250                   o_text_recreate(), since we should automatically keep
251                   all cached coordiantes up to date.
253                 * src/o_arc_basic.c, src/o_box_basic.c, src/o_bus_basic.c,
254                   src/o_circle_basic.c, src/o_complex_basic.c, src/o_line_basic.c,
255                   src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c: Tidied
256                   world_get_..._bounds() functions to use simple min() max()
257                   implementations where appropriate. Fixed world_get_arc_bounds()
258                   to have same semantics as the other functions, IE. top and bottom
259                   swapped to give bottom > top numerically.
261                 * src/o_arc_basic.c, src/o_box_basic.c, src/o_bus_basic.c,
262                   src/o_circle_basic.c, src/o_line_basic.c, src/o_net_basic.c,
263                   src/o_pin_basic.c: Modified PNG export routines to calculate
264                   coordinates directly from object world coords.
266 2007-04-06 Carlos Nieves Onega <cnieves@iespana.es>
268         * src/g_smob.c: make g_get_object_type scheme function return 
269           a character instead of a string.
270         
271         * include/o_types.h, include/prototype.h, src/g_register.c, 
272           src/libgeda.c : 
274           Register the OBJ_* object type definitions as scheme character 
275           variables.
277 2007-04-05 Carlos Nieves Onega <cnieves@iespana.es>
279         * include/prototype.h, src/g_smob.c: Added two new scheme functions:
281             - g_calcule_new_attrib_bounds: calcule the new bounds of an 
282               attribute with the given parameters, _without_ modifying the 
283               attribute.
285             - g_get_attrib_value_by_attrib_name: given an object and an 
286               attribute name, this function returns a list with the values
287               of the attributes with the given name in that object.
289 2007-02-24 Peter Clifton <pcjc2@cam.ac.uk>
291         Merge changes to date from noscreen branch.
293         2007-02-12 Peter Clifton <pcjc2@cam.ac.uk>
295                 * include/prototype.h, src/o_arc_basic.c, src/o_basic.c,
296                   src/o_box_basic.c, src/o_circle_basic.c, src/o_line_basic.c,
297                   src/o_picture.c: Removed o_object_recalc() and all calls
298                   to it now the data it calculates is no longer used.
300                 * src/m_basic.c: Remove implicit grid snapping in SCREENtoWOLRD()
302         2006-12-30 Peter Clifton <pcjc2@cam.ac.uk>
304                 * include/prototype.h, src/o_basic.c: Changed variable names and 
305                   comments to function inside_region() to allow its use with world
306                   coordinates without apparently swapping top and bottom (which have
307                   different sense in screen and world coords. Now uses {x/y}{min/max}.
309         2006-12-27 Peter Clifton <pcjc2@cam.ac.uk>
311                 * include/prototype.h, src/o_arc_basic.c, src/o_box_basic.c, 
312                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_complex_basic.c, 
313                   src/o_line_basic.c, src/o_net_basic.c, src/o_picture.c, 
314                   src/o_pin_basic.c: Removed o_..._translate() functions which
315                   are unused.
317                 * include/prototype.h, src/o_arc_basic.c, src/o_box_basic.c,
318                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_line_basic.c,
319                   src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c,
320                   src/o_text_basic.c: Removed o_..._rotate() functions unused
321                   since changing to world coordinates
323                 * include/prototype.h, src/o_arc_basic.c, src/o_box_basic.c,
324                   src/o_bus_basic.c, src/o_circle_basic.c, src/o_line_basic.c,
325                   src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c,
326                   src/o_text_basic.c: Removed o_..._mirror() functions unused
327                   since changing to world coordinates
329 2007-02-24 Werner Hoch <werner.ho@gmx.de>
330         
331         * include/struct.h, src/s_page.c, src/s_toplevel.c: Removed unused
332         fields in PAGE and TOPLEVEL as well as functions for old (GtkCList
333         based) page manager. (Patch written by Patrick Bernaud)
335 2007-02-14 Carlos Nieves Onega <cnieves@iespana.es>
337         * autogen.sh: Removed debug messages added on 2007-02-10.
339 2007-02-11 Werner Hoch <werner.ho@gmx.de>
341         * src/s_toplevel.c: added missing toplevel inits (tshowwindow, ...)
343 2007-02-10 Ales Hvezda   <ahvezda@geda.seul.org>
345         * include/funcs.h: Removed quit_func since it is completely unused.
347         * include/prototype.h, src/f_basic.c, src/o_arc_basic.c: Fixed
348         a whole bunch of compiler warnings and work on [ 1620806 ]
349         various probably bugs and comments about them
351         * configure.ac: Bumped package version to 20070216.  Also changed
352         shared library's version number to 28:0:0
354 2007-02-10 Carlos Nieves Onega <cnieves@iespana.es>
356         * src/f_print.c: Make f_print_header return an error return value
357           if something goes wrong, and propagate it to the caller functions.
358           Unlink the file created by f_print_file if there is an error in
359           f_print_header.
360         
361         * autogen.sh: Added automake version number check.
363 2007-02-10  Mike Jarabek  <mjarabek@sentex.ca>
365         * include/struct.h, src/o_text_basic.c, src/s_toplevel.c: Added
366         code to scale the output postscript font under user control.  This
367         is controlled via the postscript-font-scale rc keyword.
369 2007-02-10  Mike Jarabek  <mjarabek@sentex.ca>
371         * src/f_print.c: Applied Wojciech Kazubski's patch for offset
372         printing orgins. Fixes bug #160757
374 2007-01-16 Ales Hvezda   <ahvezda@geda.seul.org>
376         * src/o_arc_basic.c: Applied patch by Peter Clifton to fix
377         the output of arcs when using libgd.
379         * src/Makefile.am: Applied patch by Peter Clifton to add --silent to
380         libtool.
382 2007-01-08 Ales Hvezda   <ahvezda@geda.seul.org>
384         * include/prototype.h, src/Makefile.am, src/o_embed.c: Moved
385         o_embed(...) and o_unembed(...) into o_embed.c so that gschlas
386         can also call these useful functions (to support scriptable 
387         embedding and unembedding of components).
389         * src/.cvsignore: Oops, remove obsolete *.c rule that was causing
390         cvs to ignore new (but not added) C files.
392 2006-12-26 Carlos Nieves Onega <cnieves@iespana.es>
394         * include/prototype.h, src/g_smob.c:
395           Added a new scheme function: get-page-filename, returning
396           the page filename of the given page.
397         
398 2006-12-21 Peter Brett   <peter@peter-b.co.uk>
400         * include/prototype.h, src/o_selection.c: Update interface of
401         o_selection_print_all() to match other o_selection_*() functions. Pass 
402         the GList by reference.
404         * include/prototype.h: Comment o_selection_select() and
405         o_selection_unselect() as deprecated (should only be used internally to
406         libgeda).
408         * include/prototype.h, src/o_net_basic.c, src/o_selection.c:
409         Update interface of o_selection_add() to match
410         o_selection_remove(). Pass the GList by reference so head can be
411         updated.
412         
413 2006-12-16 Ales Hvezda   <ahvezda@geda.seul.org>
415         Merged Carlos' glist work via Peter Brett's patch sets to the trunk
417         2006-10-22 Carlos Nieves Onega <cnieves@iespana.es>
419                 * src/s_page.c: Don't free objects in the complex place
420                 list. It is only a reference to the objects in the page.
422         2006-10-21 Carlos Nieves Onega <cnieves@iespana.es>
424                 * include/prototype.h, include/struct.h, src/o_basic.c,
425                 src/o_complex_basic.c, src/o_list.c, src/o_net_basic.c,
426                 src/o_selection.c, src/s_basic.c, src/s_page.c, Convert
427                 the SELECTION list into a GList.  Added new functions
428                 o_recalc_object_glist, get_object_glist_bounds to
429                 handle glists.
431                 * include/prototype.h, src/o_basic.c: Rename o_recalc to
432                 o_recalc_object_list, and make it to call a new function
433                 o_recalc_single_object, for each object in the list.
435                 * include/prototype.h, src/o_complex_basic.c,
436                 src/o_text_basic.c: Rename get_complex_bounds to
437                 get_object_list_bounds, and make it to call a new function
438                 get_single_object_bounds, for each object in the list.
439         
440                 * src/o_complex_basic.c: Fixed logic level of some checks.
441                 * src/o_complex_basic.c: Added some sanity checks.
443 2006-12-16 Werner Hoch <werner.ho@gmx.de>
445          * include/struct.h: added widget pointers for the modal dialogs
446            find text, show text, hide text
448 2006-12-13 Carlos Nieves Onega <cnieves@iespana.es>
450         * include/prototype.h, src/g_smob.c:
451           Added a new scheme function: get-object-type, returning
452           the object type (object->type as a scheme string) of the given
453           object.
454         
455 2006-12-05 Carlos Nieves Onega <cnieves@iespana.es>
457         * include/prototype.h, src/s_clib.c: Converted the clib_directories 
458           list into a double linked list and reversed the search order
459           (last added directories first).
461         * include/prototype.h, src/o_complex_basic.c:
462           Added new function world_get_single_object_bounds to calculate
463           the bounds of a single object, and make world_get_complex_bounds
464           call it.
466         * include/prototype.h, src/g_smob.c:
467           Added new scheme function get-attrib-angle. It returns the angle
468           of the given attribute.
469           Also made a minor fix to the documentation of g_get_attrib_bounds.
470         
471 2006-12-04 Ales Hvezda   <ahvezda@geda.seul.org>
473         * src/s_toplevel.c: Added missing init of toplevel->line_style
474         (all variables in the TOPLEVEL struct ure should be initalized).
476 2006-12-02  Mike Jarabek  <mike@laptop.istop.com>
478         * include/defines.h include/struct.h: Added
479           toplevel->line_style'. This new entry is a flag to set whether
480           or not lines are drawn really thin on the output postscript or
481           will only be drawn to the width of pins or nets.
483         * src/o_arc_basic.c src/o_box_basic.c src/o_circle_basic.c
484           libgeda/src/o_line_basic.c: Changes to the postscript output
485           code to ensure that lines can't be drawn too thin.
487 2006-12-02 Ales Hvezda   <ahvezda@geda.seul.org>
489         * src/o_bus_basic.c: Added missing call to s_tile_update_object
490         for buses.  This missing call could cause buses to not have
491         correct connectivity when using grips.  Pointed out by and patch
492         by Peter Clifton.
494 2006-11-21 Werner Hoch <werner.ho@gmx.de>
496         * include/struct.h, src/s_toplevel.c: readded toplevel->filename_label
497           to the toplevel structure, it's still required by gattib.
498           fixes Bug [#1600448]
500 2006-11-19 Werner Hoch <werner.ho@gmx.de>
502         * include/struct.h, src/s_toplevel.c: moved schematic title
503           from the status bar to the window title. Added grid settings
504           to the status bar:
505           replaced toplevel->filename_label with toplevel->grid_label
507 2006-11-01 Carlos Nieves Onega <cnieves@iespana.es>
509         * include/prototype.h, src/g_smob.c: Added new "get-attribute-bounds"
510           scheme function.
512 2006-10-20 Ales Hvezda   <ahvezda@geda.seul.org>
514         * configure.ac: Bumped package version to 20061020.
515         
516         * configure.ac: Bumped shared library version to 27:0:0
518 2006-10-19  Patrick Bernaud  <b-patrick@wanadoo.fr>
520         * configure.ac: Cleaned up to remove remaining traces of noweb
521         days.
523         * noweb/.cvsignore: Removed file for directory to get pruned on
524         checkout.
526         * docs/libgedadoc.texi, docs/texinfo.tex: Removed unused files for
527         old noweb documentation.
529         * scripts/geda_totexi.in:
530         * scripts/notangle_guile.in:
531         * scripts/prepnoweb: Removed unused scripts for noweb.
533 2006-10-17  Patrick Bernaud  <b-patrick@wanadoo.fr>
535         * src/o_text_basic.c (o_text_create_string): Fixed overbar feature
536         to work with UTF-8 characters (Bug#1578416).
538 2006-10-04 Carlos Nieves Onega <cnieves@iespana.es>
540         * include/struct.h, src/s_toplevel.c:
541         Removed the new variable to track wether the main window is maximized
542         or not. It's no more necessary due to the patch from Patrick Bernaud.
544 2006-09-30 Carlos Nieves Onega <cnieves@iespana.es>
546         * include/struct.h, src/s_toplevel.c:
547         Added a new variable to track wether the main window is maximized
548         or not. This is part of the bug #1527465 fix.
550 2006-09-30 Ales Hvezda   <ahvezda@geda.seul.org>
552         * src/a_basic.c: Fixed a memory leak in o_save when saving 
553         complex objects.  Not a large leak, but this function gets called
554         all the time when recording undo info.  Found using valgrind.
556         * src/s_page.c: Added check to fix Bug#1562352 (Gattrib crashes
557         doing file-save when no files open)
559 2006-09-28 Carlos Nieves Onega <cnieves@iespana.es>
561         * include/prototype.h, include/struct.h, src/g_smob.c:
562           Added new page smob.
563         
564 2006-09-27 Carlos Nieves Onega <cnieves@iespana.es>
566         * configure.ac : Applied patch #1564796 by Cesar Strauss, 
567         enabling Cygwin's compilation. Thanks.
568         
569 2006-09-24 Ales Hvezda   <ahvezda@geda.seul.org>
571         * AUTHORS: Updated file pointing people at gschem's AUTHOR file 
572         as the complete list of authors.  Merged all listed files in this
573         file into gschem's file.
575 2006-09-24 Ales Hvezda   <ahvezda@geda.seul.org>
577         * configure.ac: Tweaked glib detection to not fail ./configure
578         when gdlib is not installed.  gdlib is an optional dependancy.
580 2006-09-24 03:57  Dan McMahill <danmc>
582         * configure.ac, libgeda.pc.in: Improve gdlib detection.  Now
583           instead of just dropping gd support if gdlib is not found, have
584           configure error out with a message that tells the user what needs
585           to be fixed or what feature will be missing if --disable-gd is
586           used.
588           Also add a variable to libgeda.pc.in so pkg-config can determine
589           if libgeda was compiled with gdlib support.  This makes
590           determination of this by gschem more robust.
592 2006-09-23  Patrick Bernaud  <b-patrick@wanadoo.fr>
594         * include/defines.h: 
595         * include/struct.h: Removed unused constants and structures
596         because of new file selection and component selection dialogs in
597         gschem.
599         * include/struct.h: Changed type of field 'preview' in
600         st_filedialog to GtkWidget*.
602         * src/s_toplevel.c (s_toplevel_new): Added missing init of
603         rotated_inside.
605 2006-09-22 Carlos Nieves Onega <cnieves@iespana.es>
607         * README, configure.ac, include/globals.h, src/f_image.c,
608           src/o_arc_basic.c, src/o_box_basic.c, src/o_bus_basic.c,
609           src/o_circle_basic.c, src/o_image.c, src/o_line_basic.c,
610           src/o_net_basic.c, src/o_pin_basic.c, src/s_color.c,
611           src/s_cue.c: 
612           Use gd 2.0.x library instead of libgdgeda.
613           libgdgeda is not used anymore. Work based on a patch by
614           Wojciech Kazubski (patch #1479983).
615         
616 2006-09-06 Ales Hvezda   <ahvezda@geda.seul.org>
618         * configure.ac: Updated program version to 20060906.
620         * share/Makefile.am: Changed the install directory of prolog.ps
621         to the DATA directory and not the RC directory since that is
622         where system-gafrc is looking for it.  This bug was found when
623         --with-rcdir was used.  This fix is related to Bug#1552338.
625         * include/defines.h: Added CUSTOM_VERSION string #define.  
626         Normally this #define defines an empty string, but for those 
627         people who need to spin a custom version of gEDA/gaf (of course,
628         following the licensing/distribution requirements of the GPL), they
629         can set this to a string which is appended to printfs/output/dialog 
630         boxes where VERSION is used.
632 2006-09-04 Ales Hvezda   <ahvezda@geda.seul.org>
634         * src/s_toplevel.c: Added code to s_toplevel_delete 
635         to check for and remove a GSource before it is deleted.  Patch by
636         Patrick Bernaud.  Thanks!
638         * src/s_page.c: Added s_page_autosave_init to setup the autosave
639         callback (instead of doing it in i_vars_set) which was also
640         be set in the preview toplevel (having the callback there is
641         undesirable).
643         * src/s_toplevel.c: Added the init of auto_save_timeout in 
644         s_toplevel_new().  Pointed out by PeterC and this make valgrind
645         happy again.
647 2006-09-02  Patrick Bernaud  <b-patrick@wanadoo.fr>
649         * src/s_toplevel.c (s_toplevel_new): Added missing initialization
650         of TOPLEVEL print_command.
652 2006-08-31 Ales Hvezda   <ahvezda@geda.seul.org>
654         * configure.ac: Updated gtk+ tests to look for 2.4.x or greater.
656 2006-08-30 Werner Hoch <werner.ho@gmx.de>
658         * src/o_attrib.c: fix for Bug#1547138: Segfault on adding 
659           toplevel slot attribute to symbol
661 2006-08-29 Ales Hvezda   <ahvezda@geda.seul.org>
663         * include/i_vars.h, include/prototype.h, include/struct.h,
664         src/f_print.c, src/i_vars.c, src/s_toplevel.c: Applied first
665         part of patch by Peter Brett to add a new print dialog to
666         gschem.  Patch#1530417.
668 2006-08-22 Ales Hvezda   <ahvezda@geda.seul.org>
670         * src/Makefile.am: Removed old VPATH, since it is no longer needed
671         and it is interfering with make distcheck
673         * share/Makefile.am: Added prolog.ps to EXTRA_DIST to make distcheck
674         happy (and it was missing from the dist in general).
676 2006-08-21 Ales Hvezda   <ahvezda@geda.seul.org>
678         * README: Updated the README a little to be ready for the next
679         release.
681 2006-08-19 Ales Hvezda   <ahvezda@geda.seul.org>
683         * configure.ac: Bumped version number to 20060821 in prep for the
684         next gEDA/gaf release.  Also changed the so version of libgeda to
685         26:0:0
687 2006-08-06 Ales Hvezda   <ahvezda@geda.seul.org>
689         * src/*.c: Applied Patch#1533798: Remove pre-GTK2 code from geda
690         by Peter Brett.
692         * src/a_basic.c: Applied Patch#1534089: libgeda: bugfix for
693         segfault when loading corrupted file by Tomaz Solc.
695         * include/struct.h, src/s_toplevel.c: Added keyboardpan_gain
696         variable to TOPLEVEL
698 2006-07-24 Ales Hvezda   <ahvezda@geda.seul.org>
700         * src/s_toplevel.c: Added initialization of missing variable 
701         (toplevel->prev).  This caused a rare segmentation fault 
702         (Bug#1528080)
704 2006-07-23 Ales Hvezda   <ahvezda@geda.seul.org>
706         * include/defines.h: Applied mouse pan patch by Peter Clifton. 
707         (Patch #1527361): Allow middle button panning in gschem
709         * include/struct.h, src/s_toplevel.c: Added variables to support
710         (mousepan-gain #) rc keyword.
712 2006-07-23  Mike Jarabek  <mjarabek@istop.com>
714         * src/o_text_basic.c: Fixed 180 degree rotated text so that it
715         prints upside right unstead of upside down in the postscipt
716         back end.
718 2006-07-15 Ales Hvezda   <ahvezda@geda.seul.org>
720         * src/a_basic.c, src/f_basic.c, src/f_print.c, src/g_basic.c,
721         src/g_rc.c, src/g_smob.c, src/i_vars.c, src/o_arc_basic.c,
722         src/o_attrib.c, src/o_box_basic.c, src/o_bus_basic.c, 
723         src/o_circle_basic.c, src/o_complex_basic.c, src/o_line_basic.c,
724         src/o_net_basic.c, src/o_picture.c, src/o_pin_basic.c, 
725         src/o_selection.c, src/o_text_basic.c, src/s_attrib.c, src/s_basic.c,
726         src/s_color.c, src/s_conn.c, src/s_hierarchy.c, src/s_menu.c,
727         src/s_papersizes.c, src/s_slib.c, src/s_stretch.c, src/s_tile.c,
728         src/s_undo.c, src/u_basic.c: Converted all free, ?alloc, and 
729         strdup calls to use g_free, g_?alloc, and g_strdup.  This is the
730         first phase in fixing the slice crash under glib 2.10.x.
732         * src/libgeda.c: Clarified putenv/free comment
734         * src/o_attrib.c, src/o_complex_basic.c src/o_text_basic.c: 
735         Removed some residual noweb #lines and comments
737         * src/s_conn.c: Finally figured out that setting a freed object's
738         data field was causing lots of trouble for glib's slice allocator.
740         * src/s_basic.c src/o_picture.c: Changed all g_free() calls on
741         all pixbufs to be g_object_unref.  This was causing crashes with
742         glib 2.10.x.
744         * src/o_attrib.c: Added todo to an if statement that causes an
745         invalid read
747 2006-07-13 Ales Hvezda   <ahvezda@geda.seul.org>
749         * libgeda.pc.in: Re-Fixed incorrect order of macros.  Reverted back
750         to the previous order, since the new order is clearly wrong on other
751         platforms than FreeBSD.  
753 2006-07-04 Ales Hvezda   <ahvezda@geda.seul.org>
755         * Integrated noweb removal patch by Jason Childs.  Changed default
756         target in docs/Makefile.am to not build the docs by default; this
757         is to speed up the build. 
759         * src/o_arc_basic.c, src/o_circle_basic.c, src/s_cue.c:
760         Merged changes from the .nw files to the c files that Mike made
761         related to removing mils from PS output.
763         * src/g_rc.c, o_complex_basic.c: Merged changes from the .nw files
764         to the .c files that I made just recently.
766         * noweb/*.nw, Makefile.am: Removed all files 
768 2006-07-04 Jason Childs <oblivian@users.sourceforge.net>
770         * noweb/a_basic.nw, noweb/f_basic.nw, noweb/f_image.nw,
771           noweb/f_print.nw, noweb/g_basic.nw, noweb/g_rc.nw,
772           noweb/g_register.nw, noweb/g_smob.nw, noweb/gdk-pixbuf-hacks.nw,
773           noweb/i_vars.nw, noweb/libgeda.nw, noweb/m_basic.nw,
774           noweb/o_arc_basic.nw, noweb/o_attrib.nw, noweb/o_basic.nw,
775           noweb/o_box_basic.nw, noweb/o_bus_basic.nw, noweb/o_circle_basic.nw,
776           noweb/o_complex_basic.nw, noweb/o_image.nw, noweb/o_line_basic.nw,
777           noweb/o_list.nw, noweb/o_net_basic.nw, noweb/o_picture.nw,
778           noweb/o_pin_basic.nw, noweb/o_selection.nw, noweb/o_text_basic.nw,
779           noweb/s_attrib.nw, noweb/s_basic.nw, noweb/s_clib.nw,
780           noweb/s_color.nw, noweb/s_conn.nw, noweb/s_cue.nw,
781           noweb/s_encoding.nw, noweb/s_hierarchy.nw, noweb/s_log.nw,
782           noweb/s_menu.nw, noweb/s_page.nw, noweb/s_papersizes.nw,
783           noweb/s_slib.nw, noweb/s_stretch.nw, noweb/s_tile.nw,
784           noweb/s_toplevel.nw, noweb/s_undo.nw, noweb/u_basic.nw:
785         Ported as real c source code file in the src directory.
786         Deleted after porting all noweb comments into doxygen format
787         in respective c source files.
788         
789         * noweb: Removed subdirectory.
790         
791         * src/Makefile.am: Updated to build from c source instead of noweb.
792         Fixed distclean setup to not remove c source files.
794         * docs/Makefile.am: Added support for Doxygen html and LaTex
795         documents. Fixed distclean setup to not remove required Doxygen html
796         files, and to remove html and latex subdirectories on clean.
797         
798         * Makefile.am: Removed noweb as a buildable subdirectory.
799         
800         * configure.ac: Removed checks for noweb and texi2html.
801         Added check for Doxygen.
803 2006-07-04 Ales Hvezda   <ahvezda@geda.seul.org>
805         * libgeda.pc.in: Fixed incorrect order of macros.  Discovered by
806         reading USENET's FreeBSD commit logs. :-)
808         * noweb/g_rc.nw, o_complex_basic.nw: Minor bug fix to properly 
809         promotion code to properly promote only specified changes.  
811 2006-07-03  Mike Jarabek  <mjarabek@istop.com>
813         * noweb/o_arc_basic.nw, noweb/o_circle_basic.nw, noweb/s_cue.nw:
814           Removing of references to `mils' function in PS output.
816 2006-06-16 Werner Hoch <werner.ho@gmx.de
818         * noweb/f_basic.nw: fixed noweb chunk error
820         * noweb/s_page.nw: added function to find a page by it's id
822         * noweb/s_hierarchy.nw: added s_hierarchy_traversepages(), it
823           returns a list of pages either in preorder order
824           s_hierarchy_print_page(): test function used for traversing
825           in s_hierarchy_down_schematic_single(): added page loop detector.
827         * include/defines.h: added some flags for s_hierarchy*
828         
829 2006-06-02  Mike Jarabek  <mjarabek@istop.com>
831         * noweb/f_print.nw: Added code to check flag for vector vs. PS
832           text output in text f_print_objects().
834 2006-05-22  Mike Jarabek  <mjarabek@istop.com>
836         * share/prolog.ps: Added custom stringwidth function to printing
837           routines that handles overbar characters.  Added overbar drawing
838           support.  The overbar thickness is coded to be 10% of the font
839           size.  The height of the overbar is set to the font size.
841 2006-05-21 Werner Hoch <werner.ho@gmx.de:
843         * src/Makefile.am: moved the comment sign to the first column.
844           "make reconfig" is happy now.
846 2006-05-20 Carlos Nieves Onega <cnieves@iespana.es>
848         * src/Makefile.am: Commented out the indentation of the C code, 
849         so gdb can return correct information when debugging.
850         
851         * noweb/s_page.nw: Added one more sanity check.
853         * include/struct.h: Moved rotated_inside into the TOPLEVEL structure.
854         
855 2006-05-20 Ales Hvezda   <ahvezda@geda.seul.org>
857         * scripts/notangle_guile.in: Applied patch by Steve Brown to fix
858         guile stack overflow
860         * noweb/f_print.nw: Fixed missing @ which made notangle_guile a 
861         little happier.
863         * include/i_vars.h, include/prototype.h, include/struct.h, 
864         noweb/g_rc.nw, noweb/g_register.nw, noweb/i_vars.nw,
865         noweb/o_complex_basic.nw, noweb/s_toplevel.nw: Finally added code
866         to support the rc keyword: always-promote-attributes.  This string
867         holds a list of attribute names that are always promoted.
869         * src/Makefile.am: Changed the .nw.c: rule to redirect the generated 
870         C file to a temp file and then move it to the real one.  This fixes 
871         the stale file problem when notangle fails.
873         * noweb/s_toplevel.nw: Added missing variable init 
875 2006-05-17  Mike Jarabek  <mjarabek@istop.com>
877         * Makefile.am, configure.ac
878           Added share directory and rule to support share directory.
879         * include/i_vars.h, include/prototype.h, include/struct.h
880           Added struct variable to contain name of PostScript prolog file
881           and changes to function prototypes.
882         * noweb/f_print.nw
883           New PostScript output functions.  Unicode support.
884         * noweb/g_rc.nw, noweb/g_register.nw, i_vars.nw
885           New RC command to set the PostScript prolog file.
886         * noweb/o_*.nw, noweb/s_cue.nw
887           New PostScript output changes. Output code now 50% smaller
888         * share/Makefile.am
889           New makefile to install prolog.
891 2006-05-17 Carlos Nieves Onega <cnieves@iespana.es>
892         * include/struct.h: Added variable which controls if the user
893           can move objects just dragging them.
895 2006-04-22 Carlos Nieves Onega <cnieves@iespana.es>     
896         * noweb/o_complex_basic.nw: Allow rotation and mirroring of
897           complex objects inside complex objects.
899 2006-04-14 Werner Hoch <werner.ho@gmx.de>
900         * noweb/f_basic.nw: added <time.h> for f_open()
901           compiler warning was: implicit declaration function of difftime()
903 2006-04-13 Werner Hoch <werner.ho@gmx.de>
904         * noweb/f_print.nw: added <time.h> for f_print_header()
905         
906 2006-04-09 Carlos Nieves Onega <cnieves@iespana.es>     
907         * noweb/o_text_basic.nw: Fixed the overbar misinterpretation of
908         multiple escape slashed (bug 1458681). Thanks to Werner Hoch for
909         reporting the bug.
910         
911 2006-03-03 Carlos Nieves Onega <cnieves@iespana.es>     
912         * noweb/o_text_basic.nw: Finish the overbar if the ending overbar
913         delimiter is omitted. Feature suggested by Enoch H. Wexler. Thanks.
914         
915 2006-02-27 Carlos Nieves Onega <cnieves@iespana.es>     
916         * noweb/o_text_basic.nw:
917         Added support for overbars. Delimiter character for the overbar is
918         "\_" string (it should be at the beginning and at the end of the 
919         overbar). Support for overbars in Postscript code needs to be done.
921 2006-02-26 Mike Jarabek <mjarabek@istop.com>
922         * noweb/f_print.nw:
923           Added DSC comments and logic to f_print() so that page managers
924           can make more intelligent choices about paper sizes.  The code
925           lies about the actual extents, and so does not completely obey
926           the DSC rules.
928 2006-02-25 Carlos Nieves Onega <cnieves@iespana.es>     
929         
930         * include/prototype.h, include/struct.h, noweb/g_smob.nw:
931           Added new smob functions for OBJECT type.
932         
933         * include/prototype.h, noweb/s_color.nw: 
934           Added a new function returning the index of a given color name.
935         
936 2006-02-25 Carlos Nieves Onega <cnieves@iespana.es>
937         * noweb/f_basic.nw: Set the backup file readonly, so an 'rm *'
938         command will ask the user if he really wants to delete the file.
939         When loading an autosave backup file, set the page as changed.
940         Thus, when the user closes the page, gschem will ask him wether to
941         save it or not.
943 2006-01-22 Ales Hvezda   <ahvezda@geda.seul.org>
945         * autogen.sh, m4/gettext.m4: Removed m4 files since they are 
946         installation specific
948 2006-01-16 Ales Hvezda   <ahvezda@geda.seul.org>
950         * configure.ac: Bumped package version to 20060123 and also 
951         change the shared library's version to 25:0:0
953         * README: Updated for the new year and release.
955 2006-01-07 Stuart Brorson <sdb AT cloud9 DOT net>
956         * autogen.sh, m4/gettext.m4: Included "-I m4" into
957         aclocal to pick up gettext.m4 from local dir.
958         
959 2006-01-04 Ales Hvezda   <ahvezda@geda.seul.org>
961         * noweb/s_encoding.nw: Removed extra @'s since they are no longer
962         required for either notangle_guile or notangle (noweb proper) and
963         they were breaking the build for notangle_guile.  Thank to Stuart
964         and Matthias Wenzel for the fix.
966 2005-12-02 Carlos Nieves Onega <cnieves@iespana.es>     
967         * noweb/s_page.nw: Make the s_page_autosave function more 
968         failproof, checking all the pointers. This change, together 
969         with some gschem changes at the same date will fix some gschem 
970         crashes reported by David Carr. Thanks David!
972 2005-11-27 Carlos Nieves Onega <cnieves@iespana.es>     
973         * noweb/s_encoding.nw: Break some lines so notangle_guile
974         doesn't get confused by noweb scape sequences.
975         
976 2005-11-27 Carlos Nieves Onega <cnieves@iespana.es>     
977         * include/funcs.h, include/struct.h, noweb/f_basic.nw,
978           noweb/s_page.nw:
979         Added definition of the autosave backup filename string.
980         Added check for a backup file when loading a schematic, 
981         and a function to call an app-dependant function to ask 
982         the user if the backup file should be loaded or not.
983         
984 2005-11-18 Carlos Nieves Onega <cnieves@iespana.es>     
985         * include/struct.h, noweb/f_basic.nw, noweb/s_page.nw:
986         Changed autosave code so the timer callback doesn't do the
987         autosave backups. Now are made within o_undo_savestate, so
988         backups will ONLY be saved when there was a change to the 
989         schematic and there was a timeout of the autosave timer.
990         
991 2005-11-06 Ales Hvezda   <ahvezda@geda.seul.org>
993         * include/prototype.h, noweb/s_conn.nw: Added search routine which
994         is used in determining if a net segment (of the "L") connects to 
995         something else.
997 2005-10-30 Ales Hvezda   <ahvezda@geda.seul.org>
999         * noweb/s_log.nw: Added an if to get rid of an assert from glib if
1000         the logfile_fd is not initialized.  Bug reported by John Luciani.
1002 2005-10-29 Carlos Nieves Onega <cnieves@iespana.es>     
1003         * include/defines.h, include/prototype.h, include/struct.h,
1004           noweb/f_basic.nw, noweb/s_page.nw, noweb/s_toplevel.nw,
1005           noweb/s_undo.nw:
1006           Added support for backup copies and autosaving every 
1007           "interval" seconds.
1008           
1009 2005-10-15 Carlos Nieves Onega <cnieves@iespana.es>     
1010         * noweb/f_image.nw:
1011         Print error if calling f_image_write without libgdgeda support.
1012         
1013 2005-10-05 Werner Hoch <werner.ho@gmx.de>
1014         * include/struct.h: added the net-drawing patch from David Carr
1015         it requires two additional coordinates in st_toplevel
1017 2005-10-01 Carlos Nieves Onega <cnieves@iespana.es>
1018         * noweb/s_encoding.h: Fixed compiler warning. Thanks to Dan McMahill
1019         for pointing out the solution.
1021 2005-09-30 Carlos Nieves Onega <cnieves@iespana.es>
1022         * include/struct.h, noweb/o_picture.nw:
1023         Added embedded variable to the picture struct and initialize it.
1024         * include/prototypes.h, noweb/Makefile.am, noweb/s_encoding.nw,
1025           src/Makefile.am:
1026         Added new file containing functions for base64 encoding/decoding.
1027         
1028 2005-09-27 18:31  Dan McMahill <danmc>
1030         * docs/libgedadoc.texi: add title to document to quiet the
1031           warnings.
1033 2005-09-27 18:31  Dan McMahill <danmc>
1035         * noweb/s_slib.nw: remove some compiler warnings (use of char as a
1036           subscript)
1038 2005-09-19 Werner Hoch <werner.ho@gmx.de>
1040         * noweb/f_print.nw: fixed color background box size in f_print_header
1042 2005-08-19 Ales Hvezda   <ahvezda@geda.seul.org>
1044         * configure.ac: Bumped the package version to 20050820 which will be
1045         a real snapshot.
1047 2005-08-14 Ales Hvezda   <ahvezda@geda.seul.org>
1049         * noweb/g_basic.nw: Applied patch by Carlos Azevedo which fully expands
1050         the path of an rc file, so that it can be found.
1052         * include/struct.h, noweb/s_toplevel.nw: Added add_attribute_offset 
1053         rc variable to TOPLEVEL.
1055         * include/struct.h, noweb/s_toplevel.nw: Added grid_mode and 
1056         grid_spacing rc variables to TOPLEVEL.
1058         * configure.ac: Updated package version to 20050814.  This is a 
1059         temporary version and not a real release number.
1061 2005-06-26 Ales Hvezda   <ahvezda@geda.seul.org>
1063         * include/globals.h: Removed a completely bogus extern declaration.
1064         Reported by Wojciech Kazubski.  Thanks.
1066 2005-04-20 Carlos Nieves Onega <cnieves@iespana.es>
1067         * include/prototype.h, noweb/o_picture.nw, noweb/f_print.nw:
1068         Added support for printing pictures to postscript.
1069         
1070 2005-03-14 Ales Hvezda   <ahvezda@geda.seul.org>
1072         * noweb/o_text_basic.nw: Removed an extra g_free which was corrupting
1073         the heap.  Many thanks to Patrick for helping resolve this bug.
1075 2005-03-13 Ales Hvezda   <ahvezda@geda.seul.org>
1077         * configure.ac: Removed all tests for gtk+ 1.2.x and fixed error 
1078         message if gtk+ 2.2.x is not found.
1080 2005-03-11  Patrick Bernaud  <b-patrick@wanadoo.fr>
1082         * noweb/g_rc.nw (g_rc_map_font_character_to_file): Adapted for the
1083         new char-to-file hash table.
1085         * noweb/o_text_basic.nw: Improved memory use and global efficiency
1086         in the unicode support: hash tables now takes a gunichar as key.
1087         Also removed GTK 1.2 specific code.
1089 2005-03-11 7:05 Sturt Brorson <sdb@cloud9.net>
1090         * noweb/s_toplevel.nw: Added initialization of toplevel_head->next 
1091         in s_toplevel_init() to fix possible uninitialized jump in 
1092         s_toplevel_new().
1093         
1094 2005-03-10  Patrick Bernaud  <b-patrick@wanadoo.fr>
1096         * noweb/g_rc.nw (g_rc_map_font_character_to_file): Added validation of 
1097         SCM parameters (SCM_ASSERT).
1099 2005-03-09 Ales Hvezda   <ahvezda@geda.seul.org>
1101         * noweb/f_basic.nw, o_complex_basic.nw: Fixed compiler warnings 
1102         about uninitialized variables
1104 2005-03-08 Ales Hvezda   <ahvezda@geda.seul.org>
1106         * configure.ac: Bumped version to 20050313
1108         * configure.ac: Bumped libgeda.so version to 23.
1110 2005-03-05 Carlos Nieves Onega <cnieves@iespana.es>
1112         * noweb/g_rc.nw: Removed deprecated guile functions.
1113         
1114 2005-03-05 Carlos Nieves Onega <cnieves@iespana.es>
1115         * noweb/g_rc.nw, noweb/g_register.nw, noweb/libgeda.nw,
1116           noweb/o_text_basic.nw, include/prototype.h, include/defines.h,
1117           noweb/s_toplevel.nw:
1118           Added Unicode support, character to font file mapping by hashtable,
1119           and font mapping definition using system-gafrc.
1120         
1121 2005-02-28  Patrick Bernaud  <b-patrick@wanadoo.fr>
1123         * scripts/notangle_guile.in: Improved script with changes suggested
1124         by Thien-Thi Nguyen.
1126 2005-02-24  Patrick Bernaud  <b-patrick@wanadoo.fr>
1128         * scripts/notangle_guile.in: New version.
1129         
1130         * configure.ac, scripts/Makefile.am: Adapted for renaming of script.
1131         
1132         * scripts/notangle_guile.scm.in: Renamed to notangle_guile.in.
1133         
1134 2005-02-23 Ales Hvezda   <ahvezda@geda.seul.org>
1136         * configure.ac: Fixed a minor typo that was causing the linking of
1137         both glib 1.2.x and glib 2.x into the same executable.  This caused
1138         gschem and friends to segfault upon startup.
1140 2005-02-23  Carlos Nieves Onega <cnieves@iespana.es>
1142         * configure.ac, noweb/o_picture.nw:
1143         Added temporary GDK dependency. Fixed CLI compilation error
1144         when gdk_init was not found when linking.
1145         
1146 2005-02-22  Carlos Nieves Onega <cnieves@iespana.es>
1148         * noweb/o_picture.nw: Fix character conversion.
1149         
1150         * noweb/o_picture.nw: Initialize GDK if it's a non-graphical app.
1151         
1152 2005-02-21 05:38  Dan McMahill <danmc>
1154         * configure.ac, src/Makefile.am: if we are using gcc, add -Wall
1156 2005-02-21 03:58  Dan McMahill <danmc>
1158         * autogen.sh: avoid using the '-path' primary to find(1) as it's an
1159           extension to posix.2 and is not supported on some operating
1160           systems such as solaris.  Now we can autogen.sh on solaris 9.
1162 2005-02-21 03:04  Dan McMahill <danmc>
1164         * noweb/: f_image.nw, g_rc.nw, o_picture.nw, o_text_basic.nw: fix
1165           some format string/type mismatches, format string/# of arg
1166           mismatches, /* within comments, unused variables, and undeclared
1167           variable bugs.
1169 2005-02-20  Patrick Bernaud  <b-patrick@wanadoo.fr>
1171         * noweb/s_clib.nw: Added a missing include of defines.h required for 
1172         s_log_message().
1173         
1174         * include/defines.h (s_log_message): Added macro for message logging.
1175         
1176         * noweb/s_log.nw: Rewritten to use GLib's message logging.
1178 2005-02-19  Carlos Nieves Onega <cnieves@iespana.es>
1180         * configure.ac, include/funcs.h, include/libgeda.h, 
1181           include/o_types.h, include/prototype.h, include/struct.h,
1182           noweb/Makefile.am, noweb/a_basic.nw, noweb/f_image.nw,
1183           noweb/f_print.nw, noweb/gdk-pixbuf-hacks.nw, noweb/o_attrib.nw,
1184           noweb/o_basic.nw, noweb/o_complex_basic.nw, noweb/o_list.nw,
1185           noweb/o_picture.nw, noweb/s_basic.nw, noweb/s_toplevel.nw,
1186           src/Makefile.am:
1187           Added picture support.
1188         
1189 2005-02-18 22:26  Dan McMahill <danmc>
1191         * noweb/g_rc.nw: remove a static declaration to match prototype in
1192           prototype.h
1194 2005-02-17 20:00  Stuart Brorson <sdb@cloud9.net>
1195         * noweb/g_rc.nw, noweb/libgeda.nw: Reverted to putenv after
1196         W. Hoch had problems with compiling g_setenv.
1198 2005-02-14 22:32  Dan McMahill <danmc>
1200         * noweb/o_complex_basic.nw: fix a couple of format string not
1201           matching # of arguments bugs
1203 2005-02-14 22:32  Dan McMahill <danmc>
1205         * noweb/f_basic.nw: remove an unused variable
1207 2005-02-14 22:31  Dan McMahill <danmc>
1209         * noweb/s_clib.nw: add some missing config.h inclusions
1211 2005-02-14 22:30  Dan McMahill <danmc>
1213         * noweb/a_basic.nw: fix a "/* in a comment" warning
1215 2005-02-14 22:29  Dan McMahill <danmc>
1217         * include/prototype.h: change prototypes in public header file to
1218           not be static
1220 2005-02-14 02:17  Dan McMahill <danmc>
1222         * include/defines.h, noweb/g_basic.nw, noweb/g_smob.nw: put back
1223           scm_makfrom0str().  It is scm_makfromstr() which was deprecated,
1224           scm_makfrom0str() is still ok.  Suggested by Patrick Bernaud.
1226 2005-02-13  Patrick Bernaud  <b-patrick@wanadoo.fr>
1228         * noweb/s_page.nw (s_page_init_list): Removed useless initialization 
1229         of page head fields.
1231         * docs/Makefile.am, src/Makefile.am, noweb/Makefile.am: 
1232         * docs/libgedadoc.texi: Updated after removal of s_scratch.
1234         * noweb/s_scratch.nw: Removed.
1236 2005-02-13 01:38  Dan McMahill <danmc>
1238         * include/prototype.h, noweb/s_slib.nw: fix up const usage to be
1239           consistant.  Gets rid of several gcc warnings.
1241 2005-02-11  Patrick Bernaud  <b-patrick@wanadoo.fr>
1243         * noweb/f_basic.nw, noweb/libgeda.nw, s_hierarchy.nw: Adapted for 
1244         changes in toplevel and page APIs and function set_window.
1246         * noweb/m_basic.nw (set_window): New prototype: added pointer on page
1247         to work on as second parameter.
1248         
1249         * noweb/s_page.nw: Simplified API and refactoring.
1251         * src/Makefile.am, docs/Makefile.am, noweb/Makefile.am: Modified for 
1252         addition of s_toplevel.nw and deletion of s_project.nw.
1253         
1254         * docs/libgedadoc.texi: Changed references to s_project in s_toplevel.
1255         
1256         * noweb/s_toplevel.nw: New file for handling of toplevel structures.
1258         * noweb/s_project.nw: Removed: replaced by s_toplevel.nw.
1259         
1260         * include/struct.h: Modified cwd field of toplevel for dynamic memory 
1261         allocation.
1263 2005-02-08 22:26  Dan McMahill <danmc>
1265         * include/defines.h, noweb/g_basic.nw, noweb/g_smob.nw: replace
1266           deprecated guile functions with approved guile-1.6.6 ones
1268 2005-02-04  Patrick Bernaud  <b-patrick@wanadoo.fr>
1270         * include/prototype.h:
1271         * noweb/f_basic.nw, noweb/g_smob.nw, noweb/i_vars.nw:
1272         * noweb/libgeda.nw, noweb/o_attrib.nw, noweb/s_color.nw:
1273         * noweb/s_log.nw, noweb/s_menu.nw, noweb/s_page.nw:
1274         * noweb/s_undo.nw, noweb/u_basic.nw: Deleted functions u_basic_strdup() 
1275         and u_basic_strdup_multiple(): use GLib functions instead.
1277         * noweb/o_complex_basic.nw, noweb/o_text_basic.nw:
1278         * noweb/s_log.nw, noweb/s_page.nw, noweb/s_slib.nw:
1279         * include/defines.h: Deleted *_SEPARATER_* macros: now rely on GLib 
1280         for the determination of the directory separator.
1282 2005-02-04 04:39  danmc
1284         * configure.ac, noweb/a_basic.nw, noweb/f_basic.nw,
1285           noweb/f_image.nw, noweb/f_print.nw, noweb/g_basic.nw,
1286           noweb/g_rc.nw, noweb/g_register.nw, noweb/g_smob.nw,
1287           noweb/i_vars.nw, noweb/libgeda.nw, noweb/m_basic.nw,
1288           noweb/o_arc_basic.nw, noweb/o_attrib.nw, noweb/o_basic.nw,
1289           noweb/o_box_basic.nw, noweb/o_bus_basic.nw,
1290           noweb/o_circle_basic.nw, noweb/o_complex_basic.nw,
1291           noweb/o_image.nw, noweb/o_line_basic.nw, noweb/o_list.nw,
1292           noweb/o_net_basic.nw, noweb/o_pin_basic.nw, noweb/o_selection.nw,
1293           noweb/o_text_basic.nw, noweb/s_attrib.nw, noweb/s_basic.nw,
1294           noweb/s_clib.nw, noweb/s_color.nw, noweb/s_conn.nw,
1295           noweb/s_cue.nw, noweb/s_hierarchy.nw, noweb/s_log.nw,
1296           noweb/s_menu.nw, noweb/s_page.nw, noweb/s_papersizes.nw,
1297           noweb/s_project.nw, noweb/s_scratch.nw, noweb/s_slib.nw,
1298           noweb/s_stretch.nw, noweb/s_tile.nw, noweb/s_undo.nw,
1299           noweb/u_basic.nw: - add dmalloc debugging support, enabled by
1300           --enable-dmalloc - add Electric Fence debugging support, enabled
1301           by --enable-efence
1303           Both are off by default
1305 2005-02-03 23:04  danmc
1307         * include/prototype.h, noweb/a_basic.nw, noweb/f_basic.nw,
1308           noweb/f_image.nw, noweb/f_print.nw, noweb/g_basic.nw,
1309           noweb/o_image.nw, noweb/s_project.nw: - lots of clean up of
1310           'const' usage.  Seems to have squished all   gcc warnings around
1311           const.  Mostly this involved adding lots of   missing const's.  -
1312           also add a few missing prototypes and header files.  - fix call
1313           to realpath (it was being given a pointer to a pointer rather
1314           than a pointer).
1316 2005-02-03 03:54  danmc
1318         * include/prototype.h: add missing s_project_alloc prototype
1320 2005-02-01  Patrick Bernaud  <b-patrick@wanadoo.fr>
1322         * noweb/*.nw:
1323         * include/libgeda.h: Changed the includes of gh.h in include of 
1324         libguile.h required by the scm interface of guile.
1325         
1326         * noweb/g_basic.nw, noweb/g_rc.nw:
1327         * noweb/g_register.nw, noweb/g_smob.nw: Switched to the new scm 
1328         interface of guile.
1330 2005-01-31  Patrick Bernaud  <b-patrick@wanadoo.fr>
1332         * noweb/g_rc.nw: Fixed the escaping in format strings of messages.
1334 2005-01-30  Patrick Bernaud  <b-patrick@wanadoo.fr>
1336         * noweb/g_rc.nw: Code cleanup: added guile assertions, fixed some 
1337         memory problems, make it use more of glib.
1339         * noweb/o_complex_basic.nw (o_complex_read): Fixed test after library 
1340         search to avoid crash when the component is not found.
1342 2005-01-29  Patrick Bernaud  <b-patrick@wanadoo.fr>
1344         * noweb/g_rc.nw, noweb/o_complex_basic.nw: Adapted for new component 
1345         library code.
1347         * noweb/s_clib.nw: Rewrote code for component library.
1349 2005-01-28 Stuart Brorson <sdb@cloud9.net>
1351         *  noweb/f_basic.nw, noweb/g_rc.nw, noweb/s_page.nw, 
1352         noweb/s_project.nw: incorporated patch by Patrick Bernaud.
1353         
1354 2005-01-27 Stuart Brorson <sdb@cloud9.net>
1356         * include/prototype.h, include/struct.h, noweb/f_basic.nw,
1357         noweb/g_rc.nw, noweb/s_page.nw, noweb/s_project.nw,
1358         noweb/u_basic.nw:  Changes made to enable correct opening
1359         of schematics in foreign directories.  New algorithm:
1360         
1361         1.  Take the filename the user wants to open.
1362         2.  Turn it into an absolute path, like /foo/bar/baz.sch
1363         3.  From the path, figure out the directory, /foo/bar
1364         4.  From this, create the absolute path to the local gafrc, 
1365             /foo/bar/gafrc.
1366         5.  cd to /foo/bar
1367         6.  read /foo/bar/gafrc while sitting in the directory /foo/bar.  
1368             This takes care of all the guile search path problems, 
1369             like when people put things like 
1370             (component-library "../common/symlib") or some such into
1371             their RC files.
1372         7.  After that, read the file itself.
1373         8.  Leave the directory set to this directory.  
1374         
1375 2005-01-23 Ales Hvezda   <ahvezda@geda.seul.org>
1377         * noweb/o_complex_basic.nw: Fixed a bug where sometimes 
1378         missing rotated/mirror components will cause gschem to render the
1379         "missing component symbol" out in la la land.
1381         * noweb/o_complex_basic.nw: Changed the appearance of the hazard
1382         triangle to look a little better (angles rounded).  Suggestion by
1383         Patrick.
1385         * noweb/a_basic.nw: Fixed another bug in the handling of symversion=.
1386         If the component was the last one in the file and had no attributes,
1387         then it was not getting checked.
1389         * noweb/o_complex_basic.nw: Further expanded when the placed
1390         holder component is created in o_complex_add(): when the component
1391         filename cannot be found.  This hopefully fixes the bug that
1392         Peter reported: 1) running gschem file.sch, 2) renaming
1393         a symbol, 3) doing a page revert 4) place holder not being shown.
1395 2005-01-22 Ales Hvezda   <ahvezda@geda.seul.org>
1397         * include/defines.h, noweb/a_basic.nw, f_image.nw, f_print.nw,
1398         o_attrib.nw, o_basic.nw, o_complex_basic.nw, o_list.nw, o_selection.nw,
1399         s_basic.nw, s_clib.nw, s_conn.nw, s_cue.nw:  Slightly refactored
1400         and rearranged Stuart's OBJ_PLACEHOLDER code to make it a first
1401         class object within libgeda.  Added a graphical representation and
1402         a few bits of code here and there to make it manipulatable in gschem.
1404 2005-01-22  Carlos Nieves Onega <cnieves@iespana.es>
1405         * noweb/prototype.h, noweb/s_scratch.nw: Added function
1406         s_scratch_non_unique_string_fill. This can enable gnetlist
1407         to return a non-unique list of packages.
1408         In order to don't duplicate code, s_scratch_string_fill
1409         function now checks if the string is unique and calls
1410         s_scratch_non_unique_string_fill.
1412 2005-01-19 Stuart Brorson <sdb@cloud9.net>      
1413         * noweb/o_complex_basic.nw, include/o_types.h: Created 
1414         OBJ_PLACEHOLDER to signal a complex found with no
1415         symbol file.  Changed o_complex_read to put this
1416         placeholder into object_list instead of nuking complex.
1417         This is to mitigate problem where components were being
1418         removed if sym files weren't found.
1420 2005-01-15 Stuart Brorson <sdb@cloud9.net>      
1421         * noweb/s_log.nw, prototype.h: changed s_log_init 
1422         to take const char as arg since it's always called 
1423         with a quoted string.
1425 2005-01-10 Ales Hvezda   <ahvezda@geda.seul.org>
1427         * noweb/a_basic.nw: Fixed the symbol version checking code to
1428         handle the case when no attribute are attached to component.  The
1429         symbol version wasn't being checked in this case in the past.
1431 2005-01-07  Patrick Bernaud  <b-patrick@wanadoo.fr>
1433         * noweb/s_project.nw (s_project_setup_rest): Made it handle
1434         initialization of field current_clib.
1436         * include/struct.h: Changed field current_clib of st_toplevel to 
1437         char*.
1439         * noweb/s_clib.nw (s_clib_getfiles): Modified prototype and
1440         simplified code: now returns a list of filenames to avoid
1441         limitation on number of files in directory.
1443 2005-01-04  Patrick Bernaud  <b-patrick@wanadoo.fr>
1445         * noweb/o_basic.nw (o_set_line_options): Moved in this function some 
1446         error checking and correcting that previously was in gschem code.
1448 2005-01-03 Ales Hvezda   <ahvezda@geda.seul.org>
1450         * include/struct.h, noweb/s_project.nw, noweb/f_print.nw: Implemented
1451         a threshold which controls when postscript outputted text is rendered
1452         using the vector font instead of the postscript font.  This is a 
1453         work around for the rather inaccurate multi-line postscript output.
1455 2004-12-27 Ales Hvezda   <ahvezda@geda.seul.org>
1457         * configure.ac: Updated version to 20041228, update shared library
1458         version to 22
1460 2004-07-06 Ales Hvezda   <ahvezda@geda.seul.org>
1462         * include/struct.h: Added major_changed_refdes GList to toplevel 
1463         structure.
1465         * include/prototype.h: Added new function prototype for:
1466         o_complex_check_symversion 
1468         * noweb/a_basic.nw: Added some code to make the call to 
1469         o_complex_check_symversion when a symbol has been read from disk.
1471         * noweb/s_project.nw: Misc init code
1473         * noweb/o_complex_basic.nw: Added code to implement 
1474         o_complex_check_symversion which is called whenever a symbol is
1475         loaded from disk.  This function goes through and searches for
1476         the symversion= attribute both inside the symbol and attached to
1477         the instanciated symbol and checks to make sure nothing/something
1478         has changed.
1480         * noweb/o_complex_basic.nw: Rearranged o_complex_is_eligible_attribute 
1481         a little to make it easier to force certain attributes (like the 
1482         new symversion= attribute) to be always promoted (even if they are
1483         invisible).   Misc whitespace cleanup too.
1485         * noweb/o_complex_basic.nw: Fixed a few spelling mistakes and
1486         changed version checking so that minor changes are not checked if
1487         there are major changes.
1489 2004-07-03 Ales Hvezda   <ahvezda@geda.seul.org>
1491         * configure.ac: Added code to specify the rc directory via
1492         --with-rcdir.  Also set GEDARCDIR for the newly added rc code.
1494         * include/Makefile.am, papersizes.h, libgeda.h: Added papersizes.h 
1495         from gschem.
1497         * include/prototypes.h: Added a whole slew of new function
1498         prototypes for the new g_rc_* functions.
1500         * src/Makefile.am, noweb/Makefile.am, noweb/g_register.nw,
1501         g_rc.nw, i_vars.nw, include/i_vars.h: Moved a whole bunch of rc code
1502         into libgeda from the various programs.  It is now possible to
1503         write libgeda dependent programs without having to duplicate a lot
1504         of rc code.
1506         * noweb/libgeda.nw: Added a bunch of init routines which the
1507         individual programs were calling into libgeda_init().
1509         * configure.ac: Updated version to 20040710 and changed shared library
1510         version to 21:0:0
1511         
1512 2004-05-23 Ales Hvezda   <ahvezda@geda.seul.org>
1514         * noweb/o_bus_basic.nw, o_net_basic.nw, s_cue.nw: Fixed the multi
1515         colored dot postscript problem reported by Gabriel Paubert.  Removed
1516         some completely redundant postscript to set the color in the wrong 
1517         spot.
1519 2004-01-17 Ales Hvezda   <ahvezda@geda.seul.org>
1521         * config.h.in: Remove machine generated file.
1523 2004-01-11 Ales Hvezda   <ahvezda@geda.seul.org>
1525         * configure.ac: Updated version to 20040111
1527         * noweb/o_arc_basic.nw o_attrib.nw o_box_basic.nw o_bus_basic.nw 
1528         o_circle_basic.nw o_line_basic.nw o_pin_basic.nw o_text_basic.nw:
1529         Fixed most -Wall warnings.
1531         * include/prototype.h: Added missing function (caught by -Wall
1532         in gschem)
1534         * noweb/o_pin_basic.nw: Had to remove the pin whichend reset
1535         I added on 2003-12-22, since it broke the auto pin whichend 
1536         code (o_pin_update_whichend; which relies on whichend equaling -1
1537         when the whichend is unknown).  Fix the whichend for embedded
1538         components still needs to be dealt/fixed.  This problem needs a 
1539         release note.
1541 2004-01-10 Ales Hvezda   <ahvezda@geda.seul.org>
1543         * noweb/o_text_basic.nw: Fixed the postscript printing of text
1544         when it is rotated 180 degrees.  
1546         * noweb/o_text_basic.nw: Attempted to get the multi line text
1547         printing a little more accurate.  Not quite there, still have a 
1548         large error when the text consists of many lines.  Work in 
1549         progress.
1551         * include/defines.h: Changes LINE_SPACING to be a float.
1553 2004-01-04 Ales Hvezda   <ahvezda@geda.seul.org>
1555         * noweb/o_text_basic.nw: Applied a patch by Carlos for the new
1556         spanish characters he contributed.
1558 2003-12-31 Ales Hvezda   <ahvezda@geda.seul.org>
1560         * noweb/o_attrib.nw: Fixed a really nasty bug which only
1561         appeared when using glib 1.2.x.  Appearently g_strsplit() does
1562         not split strings under glib 1.2.x vs glib 2.2.x in the same way.
1563         Put back some old code which works properly when using glib 1.2.x.
1564         Bug identified by Stuart.  Thanks!
1566         * include/prototype.h: Added missing function prototypes.
1568         * configure.ac: Bumped version to 20031231
1570 2003-12-30 Ales Hvezda   <ahvezda@geda.seul.org>
1572         * noweb/o_text_basic.nw, include/struct.h: Added displayed_width
1573         and displayed_height variables to the st_text structure.  These
1574         variables represent the actual width and height of the displayed
1575         string.  This info is needed when drawing the quick text rectangles.
1577 2003-12-29 Ales Hvezda   <ahvezda@geda.seul.org>
1579         * noweb/o_text_basic.nw: Added multi line text postscript output.
1580         It works mostly, but there are still some unexplained
1581         inaccuracies.
1583         * noweb/o_pin_basic.nw: Further refined the fix to the embedded
1584         pins not having the right whichone set.
1586         * noweb/o_text_basic.nw: Partially applied a UTF patch by Carlos.
1587         This patch started adding unicode support to the internal font
1588         table.  Since I cannot test this change right now, I have decided
1589         to not apply this patch completely.  I did apply all the 1.5 to 2
1590         changes as well as the memory leak plug.
1592         * noweb/o_text_basic.nw: Included in the above patch was the
1593         change to make the multi line spacing 2 instead of 1.5.  I made
1594         this line spacing parameter a #define (in defines.h) to make 
1595         changing it easier.  Eventually this will have to become a rc files
1596         parameter.
1598         * noweb/o_attrib.nw: Applied another patch by Carlos to remove
1599         the restriction that attributes cannot be multi line text objects.
1601 2003-12-22 Ales Hvezda   <ahvezda@geda.seul.org>
1603         * noweb/o_pin_basic.nw: In search of the "why aren't pins which are 
1604         part of embedded components not connecting" bug, discovered
1605         that if an older schematic is read (with embedded components),
1606         the whichone variable wasn't being reset properly (missing <= ).
1608 2003-11-20 Ales Hvezda   <ahvezda@geda.seul.org>
1610         * include/struct.h, noweb/s_project.nw: Added unnamed_netname 
1611         variable to TOPLEVEL (and initialized to NULL).  This is for
1612         gnetlist.
1614 2003-11-09 Ales Hvezda   <ahvezda@geda.seul.org>
1616         * config.guess config.sub depcomp install-sh ltmain.sh missing
1617         mkinstalldirs: Removed machine generated files from CVS
1619         * Makefile.am: Added the above files to be cleaned during 
1620         maintainer-clean
1622         * autogen.sh: Added script to create auto* generated files
1624 2003-10-26 Ales Hvezda   <ahvezda@geda.seul.org>
1626         * noweb/o_text_basic.nw: Added some code to make sure that the
1627         TAB_CHAR_MODEL character is loaded (via o_text_load_font) before
1628         its text_size is used.
1630 2003-10-22 Ales Hvezda   <ahvezda@geda.seul.org>
1632         * include/defines.h: Applied Carlos' latest tab improvement patch.
1633         Added TAB_CHAR_MODEL as a #define.  TAB_CHAR_MODEL defines what
1634         character is used to decide how big the single space in the tab
1635         character is.
1637         * noweb/o_text_basic.nw: Also part of  Carlos' latest tab
1638         improvement patch.  Calculated the spacing for a tab using the
1639         TAB_CHAR_MODEL and adding an offset.
1641 2003-10-19 Ales Hvezda   <ahvezda@geda.seul.org>
1643         * a_basic.nw, g_smob.nw, m_basic.nw, o_arc_basic.nw, o_attrib.nw,
1644         o_box_basic.nw, o_bus_basic.nw, o_circle_basic.nw, o_complex_basic.nw,
1645         o_line_basic.nw, o_net_basic.nw, o_pin_basic.nw, o_text_basic.nw,
1646         s_basic.nw, s_slib.nw: Applied Carlos Nieves Onega's multi-line text
1647         patch.  Thank you Carlos!  The next items are the all changes from
1648         Carlos' patch and my integration changes.  The changes happened
1649         over a period of a few weeks, but were checked in on the above
1650         date.
1652         * noweb/a_basic.nw: Removed fixed size buffer from o_save_embedded() 
1653         and o_save().  Also changed the function signature (removed buf)
1654         of all o_*_save functions.
1656         * noweb/a_basic.nw: Changed call to o_text_read to take file pointer.
1657         string(s) is now read inside o_text_read().
1659         * noweb/a_basic.nw: Removed old string[...] variable.
1661         * noweb/a_basic.nw: Added missing free() in o_save_embedded().
1663         * noweb/a_basic.nw: Simplified the update sym/sch message
1665         * noweb/g_smob.nw: Fixed up call to o_attrib_get_name_value (which
1666         now it's own memory allocation of the parameters).
1668         * noweb/g_smob.nw: Added if's around free's since
1669         o_attrib_get_name_value can return null in certain cases.
1671         * noweb/m_basic.nw: Removed unnecessary calculation from
1672         set_window()
1674         * noweb/o_arc_basic.nw: Changed signature of o_arc_save to just
1675         take an object pointer.
1677         * noweb/o_attrib.nw: Removed fixed size character buffer in
1678         o_read_attribs.
1680         * noweb/o_attrib.nw: Changed o_save_attribs to call new signature
1681         save functions.
1683         * noweb/o_attrib.nw: Changed o_attrib_get_name_value to return
1684         allocated character buffers (instead of having to pre-allocate
1685         them).  This change had significant impact on lots of other code.
1686         If instability occurs, then look at all instances of
1687         o_attrib_get_name_value to make sure memory is allocated properly
1688         and freed.  Name and value must be freed eventually.
1690         * noweb/o_attrib.nw: o_attrib_get_name_value() was rewritten to 
1691         use g_strsplit to break up the string into name and value.
1693         * noweb/o_attrib.nw: o_attrib_search_name(),
1694         o_attrib_search_string_partial(), o_attrib_search_attrib_value(),
1695         o_attrib_search_attrib_name(), o_attrib_search_toplevel(),
1696         o_attrib_search_name_single(), o_attrib_search_name_single_count():
1697         All modified to use the newly changed o_attrib_get_name_value().
1699         * noweb/o_attrib.nw: Added a bunch of frees in certain places to
1700         prevent memory leaks.   
1702         * noweb/o_attrib.nw: Rearranged o_attrib_get_name_value() so that
1703         a memory leak does not occur (check the input up front as possible
1704         before splitting the attribute)
1706         * noweb/o_attrib.nw: Added extra checks to prevent possible core
1707         dumps.
1709         * noweb/o_attrib.nw: Removed an extra malloc which was causing a
1710         memory leak.
1712         * noweb/o_attrib.nw: Changed the "Found an improper attribute: ..."
1713         message to be logged to the log file instead of stderr.
1715         * noweb/o_box_basic.nw: Changed signature of o_box_save to just
1716         take an object pointer.
1718         * noweb/o_bus_basic.nw: Changed signature of o_bus_save to just
1719         take an object pointer.
1721         * noweb/o_circle_basic.nw: Changed signature of o_circle_save to just
1722         take an object pointer.
1724         * noweb/o_complex_basic.nw: Removed fixed size character buffer
1725         from: o_complex_add(), o_complex_read(), o_complex_save().
1726         Changed signature of o_complex_save to just take an object pointer.
1728         * noweb/o_line_basic.nw: Changed signature of o_line_save to just
1729         take an object pointer.
1731         * noweb/o_net_basic.nw: Changed signature of o_net_save to just
1732         take an object pointer.
1733         
1734         * noweb/o_pin_basic.nw: Changed signature of o_pin_save to just
1735         take an object pointer.
1737         * noweb/s_basic.nw: Add null check in nl_remove().  Added
1738         remove_last_nl().
1740         * noweb/s_slib.nw: Removed fixed size character buffer.
1742         * noweb/o_text_basic.nw: Added o_text_num_lines()
1744         * noweb/o_text_basic.nw: In o_text_load_font removed fixed size 
1745         character buffer.  Added code to set the width of the new line
1746         character (a nop really) and set the width of characters that 
1747         cannot be identified.
1749         * noweb/o_text_basic.nw: Rewrote o_text_height() and
1750         o_text_width() to handle multiple line text objects.  o_text_height
1751         takes the input string (since it can be multiple lines long) as
1752         a parameter now.
1754         * noweb/o_text_basic.nw: Removed a size adjustment hack when
1755         calculating the width of a string. 
1757         * noweb/o_text_basic.nw: Added code to o_text_create_string to
1758         handle multi-line text objects.  Also added code to handle 
1759         tab characters within text lines.
1760         
1761         * noweb/o_text_basic.nw: Added code to o_text_create_string to 
1762         not add newline or tabs to the lowlevel text list 
1764         * noweb/o_text_basic.nw: Removed fixed size character buffers in
1765         o_text_add().  Removed 1024 limit on text lines.  Fixed up a call
1766         to o_attrib_get_name_value to use the new function signature.
1768         * noweb/o_text_basic.nw: Changed o_text_read() to take the file
1769         pointer as an argument.  This function now reads in the multiple
1770         lines of text.  Added code to handle the reading in of multi-line
1771         text items when the file format is 1.
1773         * noweb/o_text_basic.nw: Added log message when using gtk+ 1.2.x and
1774         a multi-line text item is read in.
1776         * noweb/o_text_basic.nw: In o_text_set_info_font(), added code to
1777         set the width of the special newline character correctly.
1779         * noweb/o_text_basic.nw: Added code to set the text width of 
1780         character not found (loaded the ? char instead)
1782         * noweb/o_text_basic.nw: Changed signature of o_net_save to just
1783         take an object pointer.  Changed file format to save the number
1784         of lines in the text item.
1786         * noweb/o_text_basic.nw: In o_text_recreate(), o_text_print(),
1787         o_text_mirror_old(), fixed the usage of o_attrib_get_name_value().
1789         * noweb/o_text_basic.nw: Removed the w_current parameter from
1790         o_text_height() since it is not used.
1792         * noweb/g_smob.nw, o_attrib.nw, o_text_basic.nw: Added some checks
1793         to make sure valid pointers are freed (everywhere 
1794         o_attrib_get_name_value) is called.
1796         * noweb/*.nw: misc code format cleanup
1798         * include/prototype.h: Changed string to file pointer to
1799         o_text_read()
1801         * include/defines.h: Added #define for max single line length.  
1802         The text line can spawn multiple 1024 length lines, but a single
1803         line can only be 1024 characters long.
1805         * include/globals.h: Added tab_in_chars global variable.
1806         
1807         * noweb/o_attrib.nw: Removed old string[...] variable.
1809         * noweb/o_attrib.nw: Added code to make sure that attributes are 
1810         only a single line.
1812         * noweb/o_box_basic.nw, noweb/o_circle_basic.nw: Removed all //
1813         comments (replaced them with C comments) 
1815 2003-10-18 Ales Hvezda   <ahvezda@geda.seul.org>
1817         * configure.ac: Updated version to something more recent, but this
1818         version is not an official release.
1820 2003-10-05 Ales Hvezda   <ahvezda@geda.seul.org>
1822         * configure.ac: Oops, misspelled saved_CFLAGS and therefore libgeda
1823         wasn't being built with -O2 -g which probably caused the code to be
1824         rather un-optimal.  Fixed.
1826 2003-10-04 Ales Hvezda   <ahvezda@geda.seul.org>
1828         * configure.ac: Updated version to something more recent, but this
1829         version is not an official release.
1831         * noweb/a_basic.nw, o_arc_basic.nw, o_attrib.nw, o_box_basic.nw, 
1832         o_bus_basic.nw, o_circle_basic.nw, o_complex_basic.nw, 
1833         o_line_basic.nw, o_net_basic.nw, o_pin_basic.nw, o_text_basic.nw: 
1834         Added the file format flag to the "v" file line.  Also moved all 
1835         version numbers into include/define.h.
1837         * noweb/o_text_basic.nw: Removed fudge factor from width calculation.
1839         * include/defines.h: Added version numbers, added #define for the
1840         current file format version (FILEFORMAT_VERSION).
1842         * include/prototype.h: Updated due to changed loading function
1843         signatures.
1845         * configure.ac: Incremented shared library to 20
1847 2003-09-20 Ales Hvezda   <ahvezda@geda.seul.org>
1849         * configure.ac: Fixed MinGW cflags/ldflags
1851         * auto* files: Updated to autoconf 2.57 and automake 1.7.6
1853 2003-08-31 Ales Hvezda   <ahvezda@geda.seul.org>
1855         * configure.ac: Changed AC_CONFIG_HEADER to AM_CONFIG_HEADER
1857         * configure.ac: Removed the use of GUILE_PROGS as it is not part
1858         of guile 1.4.  Put in a manual check for guile-config.
1860 2003-08-30 Ales Hvezda   <ahvezda@geda.seul.org>
1862         * configure.ac: Fixed the test for libgdgeda.  It was failing if
1863         it was not installed; libgdgeda is optional and should not cause
1864         a configure to fail.
1866 2003-08-24 Ales Hvezda   <ahvezda@geda.seul.org>
1868         * configure.ac: Improved a bunch of the external library tests for
1869         gtk+, guile.
1870         
1871         * configure.ac: Improved the configuration summary message.
1873         * configure.ac: Oops forgot to AC_SUBST the LIBTOOL_FLAGS variable,
1874         shared library was being build with the wrong version
1875         
1876         * configure.ac: Added --with-gtk12 flag so that users can force
1877         libgeda to use gtk+ 1.2 instead of gtk+ 2.2.x (if it is found)
1879         * configure.ac: Removed gtk+ and the X libraries from LIBGEDA_LDFLAGS
1880         variable so that programs that don't need gtk+ or X, don't link those
1881         libraries.  gschem is the only program which should be linking gtk+
1882         and X.
1884 2003-07-01 Ales Hvezda   <ahvezda@geda.seul.org>
1886         * configure.ac and friends: Rewrote the configure scripts to be sane,
1887         much simpler, and up-to-date.
1889         * configure.in, acconfig.h, and others: Removed a whole bunch of 
1890         obsolete files.
1892         * noweb/o_arc_basic.nw, o_box_basic.nw o_bus_basic.nw 
1893         o_circle_basic.nw, o_line_basic.nw, o_net_basic.nw, o_pin_basic.nw:
1894         Obsoleted the HAS_LIBGDGEDA2 #define.  libgdgeda 2.0.15 is now
1895         required.
1897         * libgeda.pc.in: Added new file which is used with pkg-config.  
1898         libgeda now requires pkg-config to configure and the other tools will
1899         need pkg-config to link to libgeda.
1901         * libgeda-config.in: Remove this file in favor to using pkg-config.
1903         * Toplevel Makefile: Added PKG_CONFIG_PATH environment variable to
1904         the help message.  This variable is now required.
1906         * *.in, *.h, etc: Removed a bunch of old unneeded auto* files.
1908         * Toplevel Makefile: Changed the libgeda-config-install to 
1909         libgeda-pc-install (for the libgeda.pc file)
1911         * Toplevel Makefile: Removed all traces of gesym-config*, since
1912         this script is no longer used.
1914 2003-06-30 Ales Hvezda   <ahvezda@geda.seul.org>
1916         * configure.in, Makefile.am's etc: Applied gtk+-2.x patch by Ye Ma
1918         * noweb/*.nw: A few tweaks to get the above to build.
1920 2003-05-25 Ales Hvezda   <ahvezda@geda.seul.org>
1922         * noweb/o_arc_basic.nw, o_circle_basic.nw: Added missing break; 
1923         to make compiler happy.
1925         * noweb/o_bus_basic.nw: Removed unused variable.
1927         * noweb/s_page.nw: Added missing string.h include.
1929 2003-05-22 Ales Hvezda   <ahvezda@geda.seul.org>
1931         * configure.in: Updated version
1933 2003-02-24 Ales Hvezda   <ahvezda@geda.seul.org>
1935         * src/Makefile.am: Bumped shared library version number to 18.
1937 2003-02-23 Ales Hvezda   <ahvezda@geda.seul.org>
1939         * include/defines.h, noweb/f_print.nw: Applied Antonio's no 
1940         margin printing patch (with minor modifications).  Thanks.
1942         * include/defines.h, noweb/f_print.nw: Renamed "limits" to 
1943         "extents"
1945 2003-02-22 Ales Hvezda   <ahvezda@geda.seul.org>
1947         * noweb/s_clib.nw: Added a little more error checking to 
1948         s_clib_add_entry().
1950 2003-02-18 Ales Hvezda   <ahvezda@geda.seul.org>
1952         * configure.in: Bumped version to 20030223
1954         * config.h.in, configure.in, include/libgeda.h, noweb/g_basic.nw:
1955         Applied Steve Tell's guile 1.6.3 patch.  Thanks.
1957 2003-02-06 Ales Hvezda   <ahvezda@geda.seul.org>
1959         * configure.in: Applied Gabriel Paubert's warning reducing patch with
1960         a few minor mods.
1962 2003-01-29 Ales Hvezda   <ahvezda@geda.seul.org>
1964         * configure.in: Changed -fnative-struct to -mms-bitfields for
1965         gcc 3.2 mingw compiler (older mingw compilers are no longer 
1966         supported)
1968 2003-01-07 Ales Hvezda   <ahvezda@geda.seul.org>
1970         * noweb/s_page.nw: Fixed debian Bug#175718: geda-gschem: schematic
1971         silently discarded by adding code into s_page_save_all().
1973 2002-12-29 Ales Hvezda   <ahvezda@geda.seul.org>
1975         * noweb/o_text_basic.nw: Fixed a minor typo by applying Egil's latest
1976         extended character patch (missing break; statement).  
1978 2002-12-23 Ales Hvezda   <ahvezda@geda.seul.org>
1980         * acconfig.h, config.h.in, configure.in.h: Added tests to look for
1981         the new libgdgeda 2.0.x 
1983         * noweb/o_arc_basic.nw, o_box_basic.nw, o_bus_basic.nw,
1984         o_circle_basic.nw, o_line_basic.nw, o_net_basic.nw,
1985         o_pin_basic.nw: Added calls to the gd thickness function to render
1986         thick lines in the png output
1987         
1988         * noweb/s_basic.nw: Initialized a few members of st_object which 
1989         should have been set to zero.
1991 2002-12-22 Ales Hvezda   <ahvezda@geda.seul.org>
1993         * noweb/o_text_basic.nw: Applied Norwegian/Danish/German characters 
1994         patch from Egil Kvaleberg
1996 2002-12-15 Ales Hvezda   <ahvezda@geda.seul.org>
1998         * include/struct.h: Added menubar variable to TOPLEVEL
1999         
2000 2002-11-30 Ales Hvezda   <ahvezda@geda.seul.org>
2002         * aclocal.m4: Removed file from cvs.
2004 2002-11-04 Egil Kvaleberg       <egil@kvaleberg.no>
2006         * noweb/o_text_basic.nw: Changed comment for swedish/finnish characters
2007         since they cause (my version of nowaeve at least) to dump core.
2009 2002-11-03 Ales Hvezda   <ahvezda@geda.seul.org>
2011         * noweb/a_basic.nw: Added code to print out a message when an old
2012         file is read in.
2014         * configure.in: Updated version to 20021103 (an official version)
2016 2002-10-31 Ales Hvezda   <ahvezda@geda.seul.org>
2018         * Makefile.am: Added libgeda-config-install target
2020 2002-10-28 Ales Hvezda   <ahvezda@geda.seul.org>
2022         * configure.in: Bumped version to 20021031
2024 2002-10-27 Ales Hvezda   <ahvezda@geda.seul.org>
2026         * include/defines.h: Added a bunch of #defines for various widths
2027         and the visual cues
2029         * noweb/f_print.nw: Fixed bug: When generating color postscript, 
2030         the size of the paper wasn't being dealt with at all (wrt to the
2031         background fill).       
2033         * noweb/o_pin_basic.nw: Changed the hard coded value for pin width
2034         when outputing postscript to be 1) #defined and 2) properly computed.
2036         * noweb/o_net_basic.nw: Changed the hard coded value for net width
2037         when outputing postscript to be 1) #defined and 2) properly computed.
2039         * noweb/o_bus_basic.nw: Changed the hard coded value for bus width
2040         when outputing postscript to be 1) #defined and 2) properly computed.
2042         * noweb/o_arc_basic.nw: Fixed a long standing bug (since July 2002),
2043         where arc png output would be wrong.  Turns out that the width and
2044         height of an arc are not always equal.  Bug reported by Karel 
2045         'Clock' Kulhavy.
2047         * noweb/s_cues.nw: Changed the hard coded value for all cues sizes
2048         when outputing postscript to be 1) #defined and 2) properly computed.
2050         * configure and friends: Ran "autoreconf --force --install -v" 
2051         to really upgrade to the newest version of the auto* tools.
2053         * include/struct.h: Added force_boundingbox rc variable.
2055         * noweb/s_project.nw: Added init code for above variable.
2057         * noweb/s_pin_basic.nw: Added code that if force_boundingbox variable
2058         is true, then use the entire bounding box in the pin auto whichend
2059         calculation (instead of default: just the pins).
2060         
2061 2002-10-26 Ales Hvezda   <ahvezda@geda.seul.org>
2063         * include/struct.h: Added variables for the bus ripper support
2064         in gschem (to TOPLEVEL structure).
2066         * include/defines.h: Added #defines for the bus ripper support
2067         in gschem.
2069         * noweb/s_basic.nw: Added code to init some of the above added
2070         variables
2072         * noweb/o_bus_basic.nw: Added code to properly set the
2073         bus_ripper_direction variable when rotating nets.
2075 2002-10-22 Ales Hvezda   <ahvezda@geda.seul.org>
2077         * include/struct.h: Added bus_ripper_direction variable to objects.
2078         Only valid for buses. 
2080         * include/struct.h: Added st_bus_ripper structure.  Used in the
2081         auto creation of bus rippers when connecting a net to a bus.
2083         * noweb/s_cue.nw: Changed code to draw the new smaller circles
2084         when connecting a net to a bus.
2086         * noweb/s_conn.nw: Added some restrictions on connections between
2087         nets / pins and buses.  You cannot connect a pin to a bus period.
2088         You cannot connect a net to the end of a bus (only to the middle).
2090         * noweb/s_basic.nw: Init of the bus_ripper_direction variable,
2091         which holds a value (0 = no connection, -1, or 1) to decide which
2092         direction the rippers are drawn.
2094         * noweb/o_line_basic.nw: Added o_line_length (returns the length
2095         of a line).
2097         * noweb/o_bus_basic.nw: Added code to the read/save functions to
2098         read/save the bus_ripper_direction flag to disk.  Also handled old
2099         versioned files (variable defaults to zero).
2101         * noweb/s_project.nw: Oops, missed override_bus_color in the init
2102         of the toplevel variable.  Important since the color of buses was 
2103         being set to zero by gschlas.
2105 2002-10-19 Ales Hvezda   <ahvezda@geda.seul.org>
2107         * noweb/o_pin_basic.nw: Oops, broke the single pin case.  Added
2108         code handle this case (basically do the original world bounding
2109         box if only one pin is found).  Changed function to take this pin
2110         count as a paramater.
2112         * noweb/a_basic.nw: Passed the number of found pins to 
2113         o_pin_update_whichend
2115         * configure.in, *.m4: Upgraded to automake 1.7.1 and autoconf 2.54
2117 2002-10-17 Ales Hvezda   <ahvezda@geda.seul.org>
2118         
2119         * noweb/o_pin_basic.nw: Added some error checking for the whichend
2120         parameter on pins.
2122         * noweb/o_pin_basic.nw: Changed the get world bounding box call in
2123         o_pin_update_whichend to only look at pins instead of all
2124         graphics.  This fixes a bug which Werner Hoch reported.
2125         
2126 2002-09-25 Ales Hvezda   <ahvezda@geda.seul.org>
2128         * noweb/a_basic.nw: Minor performance tweek wrt the 20020825 
2129         pin compatiblity referenced below.
2131 2002-09-22 Ales Hvezda   <ahvezda@geda.seul.org>
2133         * noweb/o_attrib.nw: Added a missing termination character to an
2134         error condition where an invalid attribute is found.  A premptive
2135         fix for a possible core dump in gschem's multi attribute dialog box.
2137         * configure.in: Bumped version to 20020922, which is NOT a release.
2139         * include/struct.h: Added whichend and pin_type to the st_object
2140         structure.  These are pin specific variables.
2142         * include/defines.h: Added #defines to support pin_type.  Not in use
2143         yet.
2145         * noweb/o_pin_basic.nw: Added o_pin_update_whichend, which figures out
2146         which end is the active connection end point.  It does not work on
2147         angled pins.
2149         * noweb/a_basic.nw: Added a call to o_pin_update_whichend (in 
2150         o_read) which is called when an old symbol/schematic is read
2151         in to update the pin's which end variable.  This code is only
2152         called if a pin is read in.
2153         
2154         * noweb/o_pin_basic.nw: Added code to read and write the new file
2155         pin fields (pin_type and whichend).  libgeda will still read all the
2156         old formats just fine.
2158         * noweb/o_pin_basic.nw: Updated o_pin_add to take pin_type and
2159         whichend as parameters.
2161         * noweb/s_basic.nw: Inited pin_type and whichend in st_object.  
2163         * noweb/s_conn.nw: Added code to control which end point of a pin
2164         can have a connection attached to it.  This is control via the
2165         whichend variable.  A 0 in whichend is the first end point, while
2166         a 1 is the second end point.  You can now draw a net through a pin
2167         and libgeda will only register one connection (at the active end).
2169 2002-09-16 Ales Hvezda   <ahvezda@geda.seul.org>
2171         * noweb/s_project.nw: Added new file.  Basically the s_project.c
2172         that gnetlist used is now in libgeda.  This will make writing
2173         utils which read in sch/sym files much easier.
2175         * src/Makefile.am: Bumped shared library version number to 17.
2177         * include/funcs.h: Added variable_set_func and quit_func to allow
2178         user programs to use the new s_project_* code.
2180 2002-08-25 Ales Hvezda   <ahvezda@geda.seul.org>
2182         * include/struct.h: Added setpagedevice* rc file variables
2184         * noweb/f_print.nw: Added the code to implement the
2185         setpagedevice-* rc keywords.
2187         * noweb/*.nw: Cleaned up -Wall warnings
2188         
2189 2002-07-14 Ales Hvezda   <ahvezda@geda.seul.org>
2191         * noweb/o_attrib.nw: Added a comment to a line which was using
2192         uref= which is now deprecated (replaced by refdes=)
2193         
2194 2002-07-09 Ales Hvezda   <ahvezda@geda.seul.org>
2196         * noweb/o_text_basic.nw: Fixed the crash when you try to display
2197         the finnish/swedish characters
2198         
2199 2002-07-07 Ales Hvezda   <ahvezda@geda.seul.org>
2201         * noweb/o_complex_basic.nw: Changed o_complex_return_pin_object()
2202         to look for things using the pinnumber= attribute (instead of
2203         pinseq)
2205         * include/defines.h: Renamed a few #defines to slowly migrate away
2206         from the word "label"
2207         
2208 2002-07-06 Ales Hvezda   <ahvezda@geda.seul.org>
2210         * configure.in/Makefile.am: Upgraded to automake 1.6.2
2212 2002-07-05 Ales Hvezda   <ahvezda@geda.seul.org>
2214         * noweb/o_complex_basic.nw: Removed an extra / when reading in
2215         embedded components
2217         * noweb/o_attrib.nw: Removed a log message which is not an error:
2218         ( Did not find slot= attribute )
2220         * noweb/o_complex_basic.nw: Changed o_complex_return_pin_object to 
2221         search using the pinseq attribute
2223 2002-06-27 Ales Hvezda   <ahvezda@geda.seul.org>
2225         * noweb/o_attrib.nw: Added a o_attrib_print_reverse to help
2226         in debugging.
2228         * noweb/o_attrib.nw: Added a bit more output to o_attrib_print
2229         to help in debugging.
2231 2002-06-22 Ales Hvezda   <ahvezda@geda.seul.org>
2233         * noweb/u_basic.nw: Changed u_basic_breakup_string to take a
2234         character as a delimiter.
2235         
2236 2002-06-21 Ales Hvezda   <ahvezda@geda.seul.org>
2238         * include/struct.h: Moved all the gsymcheck structures to a
2239         gsymcheck specific file
2241         * noweb/o_attrib.nw: Completely removed two obsolete o_attrib_search_* 
2242         functions
2244 2002-06-20 Ales Hvezda   <ahvezda@geda.seul.org>
2246         * noweb/s_basic.nw: Added patch by Bryce Denney to remove \r in 
2247         remove_nl(...).  This was done to have clean interoperability between
2248         the unix and win32 ports.  I don't know if the patch is sufficient
2249         to cleanup component (etc...) lines.  Will have to test this for the
2250         next release.
2252         * noweb/o_attrib.nw: A few misc cleanups in various functions
2254         * noweb/o_attrib.nw: Added o_attrib_search_string_single to help
2255         support gnetlist backend fix work.  Takes an object and a complete
2256         attribute and returns a pointer to the object.
2258         * noweb/o_attrib.nw: Added a null pointer check in
2259         o_attrib_return_parent(...) 
2261 2002-06-18 Ales Hvezda   <ahvezda@geda.seul.org>
2263         * noweb/o_attrib.nw: Drastic changes to the standard attributes.
2264                 - pin#=# has been removed
2265                 - slot#=# has been removed
2266                 - pinseq=# added
2267                 - pinnumber=# added
2268                 - slot#=# removed
2269                 - slotdef=#:#,#,#,# added
2270                 - A bunch of functions renamed / removed
2271                 - A few lame hacks removed
2272         These changes are the first of many that deal with how libgeda handles
2273         pin / slot attributes
2275         * noweb/Makefile.am: Incremented libgeda.so version number
2277 2002-06-09 Ales Hvezda   <ahvezda@geda.seul.org>
2279         * noweb/u_basic.nw: Added u_basic_strip_trailing utility function
2281 2002-05-27 Ales Hvezda   <ahvezda@geda.seul.org>
2283         * include/defines.h: Added OTHER_* seperater #defines.  Mainly for
2284         mingw32 port.
2286         * configure.in: Added OTHERPATHSEP 
2288 2002-05-23 Ales Hvezda   <ahvezda@geda.seul.org>
2290         * include/libgeda.h: Removed the last reference to gdkx.h
2292 2002-05-19 Ales Hvezda   <ahvezda@geda.seul.org>
2294         * include/struct.h: Added toolbars and handleboxes rc variables
2296 2002-05-16 Ales Hvezda   <ahvezda@geda.seul.org>
2298         * include/struct.h: Added bitmap-directory rc variable 
2300 2002-05-12 Ales Hvezda   <ahvezda@geda.seul.org>
2302         * acinclude.m4: Removed file from repository
2304         * include/pcb_struct.h: Removed obsolete file
2306         * include/struct.h: Added warp_cursor rc variable and a bunch of
2307         comment cleanup
2309 2002-04-08 Ales Hvezda   <ahvezda@geda.seul.org>
2311         * configure.in: Changed the function which is search for libpng.
2312         This was needed for the win32 port.
2314 2002-04-03 Ales Hvezda   <ahvezda@geda.seul.org>
2316         * configure.in and friends: More work on getting the upgrade of 
2317         autoconf, automake, and libtool to behave correctly.
2319         * configure.in: Added PATHSEP variable which holds the proper path
2320         separater depending on the platform.
2322         * lib/system-*.in: Work on getting rc files to use above variable.
2323         
2324         * noweb/o_text_basic.nw: Changed the name of the lower case symbols
2325         to include an _ to make systems like win32 (which have semi-case 
2326         sensitive) file systems happy.
2328 2002-04-01 Ales Hvezda   <ahvezda@geda.seul.org>
2330         * include/defines.h: Added a #if and a #define for M_PI
2332         * include/defines.h: Put in #defines for path separater for unix vs
2333         mingw
2335         * noweb/o_complex.nw: Used above path separater #defines in a few
2336         sprintf/u_strdup_multiple
2338         * noweb/o_text.nw: Used above path separater #defines in a few
2339         sprintf/u_strdup_multiple
2341         * noweb/s_log.nw: Used above path separater #defines in a few
2342         sprintf/u_strdup_multiple
2344         * noweb/s_page.nw: Used above path separater #defines in a few
2345         sprintf/u_strdup_multiple
2347         * noweb/s_clib.nw: Used above path separater #defines in a few
2348         sprintf/u_strdup_multiple
2350         * noweb/s_slib.nw: Used above path separater #defines in a few
2351         sprintf/u_strdup_multiple
2353         * configure.in and friends: Upgraded to autoconf 2.53, libtool 1.5,
2354         and automake 1.5.  Lots of changes in various places for this upgrade.
2356 2002-02-24 Ales Hvezda   <ahvezda@geda.seul.org>
2358         * configure.in, config.h.in: Added a few checks for some
2359         non-portable #includes
2361         * noweb/*.nw: Reworked the #include section to use the above
2362         checks.
2364         * configure.in: Added checks for mingw32 and disabled the
2365         cygwin port
2366         
2367 2002-02-18 Ales Hvezda   <ahvezda@geda.seul.org>
2369         * src/Makefile.am: Andrew Dyer found a GUILE_* bug. Fixed.
2371         * configure.in: Removed all trace of GUILE_LIB and GUILE_INCLUDE
2373 2001-02-09  Ales Hvezda   <ahvezda@geda.seul.org>
2375         * noweb/o_selection.nw: Added o_selection_return_num to return the
2376         number of selected objects
2378         * include/struct.h: Added show_hidden_text to toplevel structure
2379         
2380         * noweb/o_text_basic.nw: Went through and make sure that text is 
2381         created properly if it is invisible and show_hidden_text is true
2383         * noweb/*.nw bunch of files: Make sure visibility is being dealt with
2384         correct wrt show_hidden_text
2386         * noweb/*.nw: Removed most -Wall warnings
2388 2001-11-25  Patrick Bernaud  <b-patrick@wanadoo.fr>
2390         * noweb/o_arc_basic.nw: Corrected a bug about arc mirroring due to 
2391         the last changes (2001-11-21) : my fault.
2393 2001-11-21  Patrick Bernaud  <b-patrick@wanadoo.fr>
2395         * configure.in, Makefile.am: Added test to use notangle_guile.scm
2396         if notangle is not available.
2398         * docs/Makefile.am: Moved the documentation generation here.
2400         * docs/libgedadoc.texi: Renamed libgeda.texi to libgedadoc.texi
2401         to be similar with gschem and to avoid confusion with documentation
2402         of source file libgeda.c.
2404         * src/Makefile.am: Added a rule to produce prototype.h from noweb
2405         files and moved the documentation generation to docs/.
2407         * scripts/geda_totexi.in: Changed geda_totexi to geda_totexi.in
2408         to take benefit from the configure test on AWK. Backend updated
2409         to handle cross-references.
2411         * scripts/notangle_guile.scm.in: Added guile script to tangle
2412         noweb code without the whole noweb package installed.
2413         
2414         * noweb/o_{arc|box|circle|line}_basic.nw: Full documentation, 
2415         code clean-up and use of the new identifiers for modification.
2417         * include/struct.h: Defined identifiers for particular points 
2418         on each type of object.
2420 2001-07-24 Ales Hvezda   <ahvezda@geda.seul.org>
2422         * noweb/o_bus_basic.c: Fixed a typo pointed out by Roger Williams.
2424 2001-07-22 Ales Hvezda   <ahvezda@geda.seul.org>
2426         * noweb/s_attrib.nw, s_basic.nw, s_color.nw, s_log.nw, s_papersizes.nw:
2427           Added patch by Dan Mcmahill for 64-bit architectures.
2429 2001-07-21 Ales Hvezda   <ahvezda@geda.seul.org>
2431         * src/Makefile.am: Bumped shared library version to 14
2433 2001-07-20 Ales Hvezda   <ahvezda@geda.seul.org>
2435         * noweb/s_conn.c: Added s_conn_remove_complex to remove complex
2436           conn connections
2438 2001-07-19 Ales Hvezda   <ahvezda@geda.seul.org>
2440         * configure.in: Bumped up version to 20010722
2442         * configure.in: More updates to get cygwin to build right
2444 2001-07-07 Ales Hvezda   <ahvezda@geda.seul.org>
2446         * noweb/s_menu.nw: Added new file to support dynamic menus in
2447           gschem (add file to all Makefile.am files too)
2448         
2449 2001-07-06 Ales Hvezda   <ahvezda@geda.seul.org>
2451         * include/defines.h: Increased the maximum number of files and
2452           directories
2454         * configure.in: (and all other configure.in's) set the VERSION 
2455           to 20010708. 
2457 2001-07-02 Ales Hvezda   <ahvezda@geda.seul.org>
2459         * configure.in: A little more work to get indent vs gindent to
2460           be detected correctly
2462 2001-07-01 Ales Hvezda   <ahvezda@geda.seul.org>
2464         * configure.in: Now searching for gindent as well as indent
2466         * configure.in: Make sure configure scripts work with autoconf-2.50
2467           (had to fix cygwin check), they do not yet work with 2.50
2469 2001-06-24 Ales Hvezda   <ahvezda@geda.seul.org>
2471         * include/struct.h: Added rc variable and reformated the code
2472         
2473 2001-06-21 Stefan Petersen  <spe@geda.seul.org>
2475         * noweb/g_basic.nw: Improved error information when reading *rc
2476           and other minor clean ups.
2478         * include/prototype.h: Removed ORIG_g_read_file
2479         
2480 2001-06-16 Ales Hvezda   <ahvezda@geda.seul.org>
2482         * src/Makefile.am: Further improvements on the noweb build mechansim
2484         * src/Makefile.am: Added the ability to build the docs
2486         * docs/Makefile.am: Added makefile
2487         
2488         * noweb/Makefile.am: Added makefile
2490         * scripts/Makefile.am: Added makefile
2492 2001-06-10 Ales Hvezda   <ahvezda@geda.seul.org>
2494         * configure.in: Minor cleanup
2496         * src/Makefile.am: Added support for automatic dependency tracking
2497           wrt the noweb files (using VPATH)
2498           
2499         * noweb/libgeda.c: Changed the init code so that you do not have
2500           to have the GEDADATADIR variable set, but if it is, override 
2501           the default
2502         
2503 2001-06-07 Ales Hvezda   <ahvezda@geda.seul.org>
2505         * noweb/libgeda.c: Added an init function for the library which is
2506           responsible for make sure the require environment variable is set
2508         * noweb/Makefile: Added above file 
2510         * src/Makefile.am: Added above file
2512 2001-06-05 Ales Hvezda   <ahvezda@geda.seul.org>
2514         * noweb/Makefile: misc path changes
2516         * scripts/geda_totexi: renamed gawk to just plain awk
2517         
2518 2001-06-03 Ales Hvezda   <ahvezda@geda.seul.org>
2520         * noweb/*: Added all the .nw files that were done by Patrick B.
2522         * Started the slow switch to noweb (almost there, just have to 
2523           get the configure mechanism setup)
2524           
2525         * scripts/*: Added noweb -> texi backend script written by Patrick B.
2527         * src/*.c: Removed all *.c files from the repository
2528         
2529 2001-03-18 Ales Hvezda   <ahvezda@geda.seul.org>
2531         * Removed all Makefile.in files and configure
2533 2001-03-17 Ales Hvezda   <ahvezda@geda.seul.org>
2535         * Got make dist and make distcheck working (means all files which are
2536           in CVS are in some Makefile)
2538         * configure.in: Added DATADIR instead of PACKAGE
2540 2001-03-16  Stefan Petersen  <spe@geda.seul.org>
2542         * configure, configure.in: Didn't build properly if libgdgeda
2543           was placed in a not common place.
2544         
2545 2001-03-11  Stefan Petersen  <spe@geda.seul.org>
2547         * Makefile.am, Makefile.in, acconfig.h, config.h.in, 
2548           configure, configure.in, include/Makefile.in, src/Makefile.am, 
2549           src/Makefile.in: Removed all traces of libstroke et al and 
2550           regenerated some files.
2551           
2552         * s_stroke.c : Removed
2553         
2554 2001-03-07  Stefan Petersen  <spe@geda.seul.org>
2556         * configure.in: Fixed minor bug introduced yesterday.
2557         
2558 2001-03-06  Stefan Petersen  <spe@geda.seul.org>
2560         * configure.in: Removed some hard coded libraries and rearranged
2561           how zlib, libpg and libgdgeda was scanned during configure.
2562           Patch and suggestion from Bruno Schwander.
2564 2001-03-05 Stefan Petersen <spe@geda.seul.org>
2566         * src/libgeda/s_cue.c: added some missing HAS_LIBGDGEDA.
2567         
2568 2001-03-04 Ales Hvezda   <ahvezda@geda.seul.org>
2570         * src/o_complex_basic.c: Re-enabled the bounding box calculation 
2571           for arcs inside complex objects.  This was possible because
2572           Patrick fixed the bounding box for arcs!
2574         * src/o_arc_basic.c: Fixed mirror / rotate code according to what
2575           Patrick suggested (all object manipulation occurs in world coord
2576           space).
2578         * src/Makefile.am: Bumped shared library version to 12
2580         * configure.in: Updated version
2582         * src/o_complex_basic.c: Allowed the promotion of the device=
2583           attribute
2585 2001-03-03 Ales Hvezda   <ahvezda@geda.seul.org>
2587         * configure.in: Fixed a few bugs dealing with the enabling and
2588           disabling of features via the command line (pointed out by 
2589           Karel Kulhavy)
2590         
2591         * src/s_cue.c: Added file which contains the postscript and 
2592           the image output routines for the cues
2594         * src/f_print.c: Added call to output the cues
2596         * src/f_image.c: Added call to output the cues
2598         * include/defines.h: Added #defines for cue output routines
2600         * src/o_arc_basic.c: Fixed the image output of arcs
2602 2001-03-02  Ales Hvezda  <ahvezda@geda.seul.org>
2604         * src/o_arc_basic.c: Fixed a bug pointed out by Bruno Schwander
2605           (Arcs were to thin compared to thin lines/boxes)
2607         * src/o_circle_basic.c: Removed some line whitespace at the top
2608           of the file
2610 2001-03-01  Ales Hvezda  <ahvezda@geda.seul.org>
2612         * src/*.c: Converted some // comments to /* */
2614         * src/*.c: Cleaned up some -Wall warning messages
2615         
2616 2001-02-25  Ales Hvezda  <ahvezda@geda.seul.org>
2618         * src/o_attrib.c: Added some if (... == NULL) checks to prevent
2619           some core dumps
2621 2001-02-23 Ales Hvezda  <ahvezda@geda.seul.org>
2623         * src/s_hierarchy.c: Added code to either do a normal hierarchy
2624           load or force the load (for gnetlist and hierarchical traversal)
2626         * src/s_page.c: Added code to forcibly load a schematic page
2627           (s_page_new_lowlevel).  Modified s_page_new to use this new
2628           routine.
2629         
2630 2001-02-17 Ales Hvezda  <ahvezda@geda.seul.org>
2632         * include/struct.c: Removed more of the old connection code
2633           (which was #ifdef'ed out)
2635         * src/s_page.c: Commented in stretch_head, stretch_tail init code
2637         * src/s_page.c: Removed all trace of the old connection code
2638           (which was #ifdef'ed out)
2640         * src/s_stretch.c: Put this file back into the build
2642         * src/f_*.c: Removed all traces of the old connection code
2643         
2644 2001-02-16 Ales Hvezda  <ahvezda@geda.seul.org>
2646         * src/o_net_basic.c: Oops, nets which caused midpoints were being
2647           consolidated away (bad), fixed this by checking first to make
2648           sure that that particular endpoint didn't cause any midpoints
2649           (if it did, don't consolidate the net)
2650           
2651 2001-02-11 Ales Hvezda  <ahvezda@geda.seul.org>
2653         * src/o_net_basic.c, src/o_pin_basic.c: Moved the tile update call
2654           inside the ADDING_SEL if inside the *_add functions.  
2656         * src/s_tile.c: Added a return if ADDING_SEL is true.
2658         * src/o_list.c: Made some changes in the various o_list_*
2659           functions regarding ADDING_SEL.  Have to watch for any side
2660           effects
2662         * src/o_net_basic.c: Rewrote net consolidate code to work with the
2663           new connection system
2664         
2665 2001-02-10 Ales Hvezda  <ahvezda@geda.seul.org>
2667         * src/o_complex_basic.c: Minor changes, call net functions for
2668           nets (not the line functions).  All this needs to be cleaned up 
2669           eventually
2671         * Started syncing with cvs repository
2672         
2673 2001-02-08 Ales Hvezda  <ahvezda@geda.seul.org>
2675         * src/o_complex_basic.c: In one of the translate functions,
2676           removed a whole bunch of cruft.
2677         
2678 2001-02-04 Ales Hvezda  <ahvezda@geda.seul.org>
2680         * src/o_complex_basic.c: Added a flag to save the state of
2681           ADDING_SEL (bad variable name, it really means that you want to
2682           delay doing any s_conn_update_* calls)
2684         * src/s_conn.c: Changed the *_return* functions to take in a list
2685           and then return it
2687         * src/s_tile.c: Changed update function to return if an invalid
2688           v, w tile index was ever calculated (this means that the objects
2689           is outside of the tile grid (which is okay mainly for rotation of
2690           objects)
2692         * src/s_page.c: Made sure page_current points to the current page
2693           being freed in s_page_free_all
2695         * src/s_tile.c: Changed s_tile_remove_object to take a page 
2696           parameter (so that the objects get removed from the right page)
2697         
2698 2001-02-03  Ales Hvezda  <ahvezda@geda.seul.org>
2700         * src/s_conn.c: Added s_conn_return_complex_others to support
2701           o_copy in gschem
2702         
2703 2001-02-03  Patrick Bernaud  <b-patrick@wanadoo.fr>
2705         * src/o_arc_basic.c: Added function o_arc_modify() 
2706         
2707 2000-01-30  Ales Hvezda  <ahvezda@geda.seul.org>
2709         * src/o_attrib.c: Added o_attrib_search_component which looks for
2710           an attribute both inside and outside of the component 
2712 2001-01-24  Patrick Bernaud  <b-patrick@wanadoo.fr>
2714         * src/o_arc_basic.c: Modified the code for bounding box on arc,
2715           cleaned the translation/rotation functions, added function 
2716           o_arc_recalc_world(), changed the meaning of arc fields
2718         * src/o_box_basic.c: Added functions to print the filling of a box
2720         * src/o_circle_basic.c : Added functions to print the filling
2721           of a circle
2722         
2723 2001-01-23  Ales Hvezda  <ahvezda@geda.seul.org>
2725         * src/s_conn.c: Minor cleanups
2726         
2727 2001-01-17  Ales Hvezda  <ahvezda@geda.seul.org>
2729         * src/s_conn.c: More work on getting this all done (worked on mid-
2730           point connections
2732         * src/s_tile.c: Minor update to the free all routine (more info)
2734 2001-01-16  Ales Hvezda  <ahvezda@geda.seul.org>
2736         * src/s_conn.c: Bunch of changes to get new conn system finished 
2737         
2738 2000-01-15  Ales Hvezda  <ahvezda@geda.seul.org>
2740         * src/o_image.c: Fixed bug -- allow the background of pngs to
2741           take on a different value than black, bug pointed out by 
2742           George Billios
2744 2001-01-07  Ales Hvezda  <ahvezda@geda.seul.org>
2746         * include/struct.h: Added conn_list list as well as new version
2747           of st_conn
2749         * src/s_conn.c: Added new file which contains the routines to support
2750           the new connection scheme
2752         * src/o_net_basic.c: Added s_conn_update_object call to *net_add
2753           function
2755         * src/o_pin_basic.c: Added s_conn_update_object call to *pin_add
2756           function
2758         * src/o_bus_basic.c: Added s_conn_update_object call to *bus_add
2759           function
2761         * src/o_complex_basic.c: Had to add some flags to prevent the
2762           calc of connections for complex objects; the connection update needs
2763           to happen once all the prim_objs have been translated to their
2764           final resting spot
2766         * src/s_basic.c: Added calls and variable inits for new conn system
2768         * include/defines.h: Removed some old conn #defines, replaced them
2769           with new simplified ones
2771 2001-01-05  Ales Hvezda  <ahvezda@geda.seul.org>
2773         * src/o_arc_basic.c: Fixed the PS printing of solid arcs if they
2774           are mirror (and/or rotated).  Bug pointed out by Matt Ettus
2776 2001-01-01  Ales Hvezda  <ahvezda@geda.seul.org>
2778         * src/*.c: Removed all trace of the conn_table, o_conn, s_nethash 
2779           functions. This is in prep for the total rewrite 
2780         
2781         * include/struct.h: Removed conn table and nethash table and also
2782           removed stretch structure for now.
2784         * src/s_tile.c: Added new file and function which divide up the
2785           world space into smaller tiles (will be used by the new conn
2786           system)
2788         * include/struct.h: Added world_tiles 2d array to page structure
2790         * include/struct.h: Added st_tile data structure 
2792         * include/defines.h: Added MAX_TILES_X and MAX_TILES_Y #defines
2794         * src/s_page.c: Added s_tile_init to s_page_add
2796         * src/s_tile.c: More work on some of the routines to get objects
2797           into the right tiles
2799         * src/o_net_basic.c, o_pin_basic.c, o_bus_basic.c: Added call to
2800           s_tile_add_object when an object is added to object_head 
2801           (or object_tail)
2803         * src/o_net_basic.c, o_pin_basic.c, o_bus_basic.c: Called copy
2804           routines with the right x,y values so that tiling code works right 
2806         * src/o_net_basic.c, o_pin_basic.c, o_bus_basic.c: Added a bunch of 
2807           calls to s_tile_update_object after the object is translate 
2808           (moved around)
2810         * include/struct.h: Added to the object structure tile_locs which is
2811           a list of tile locations (in which tiles the object exists in)
2813         * src/s_basic.c: Added init code to deal with above list
2815 2000-12-17  Ales Hvezda  <ahvezda@geda.seul.org>
2817         * src/Makefile.am: Bumped libgeda.so version to 11
2819 2000-12-10  Ales Hvezda  <ahvezda@geda.seul.org>
2821         * include/struct.h: Removed zoom_factor variable
2823         * src/o_arc.c: Finally added code to implement the line type 
2824           postscript output for arcs
2826         * src/o_circle.c: Also added code to implement the line type
2827           postscript output for circles (using arc code)
2829         * src/configure.in: Added back the lines (saved_cflags etc...)
2830           which caused debug output to be included in the build
2832 2000-12-09  Ales Hvezda  <ahvezda@geda.seul.org>
2834         * src/m_basic.c: Put some code into WORLDtoSCREEN routines to bound
2835           coords to +/- 2^15 - 1  This is caused by 1) a less than perfect
2836           clipping routine and 2) the fact that X stores coords in signed
2837           shorts.   This may effect portability to machines where this isn't
2838           the case.   The original manifested itself by an endpoint (zoomed
2839           really really close) suddenly drawing itself incorrectly.  The
2840           clipping routine I used doesn't handle horizontal lines at all.
2842         * src/s_nethash.c: #if DEBUG'ed out a printf
2844         * src/f_basic.c: Removed all trace of zoom_factor
2846         * src/s_page.c: Removed all trace of zoom_factor
2848         * src/m_basic.c: #if 0'd out unused return_zoom_number function
2850 2000-12-07  Ales Hvezda  <ahvezda@geda.seul.org>
2852         * src/o_basic.c, o_conn.c: Started Removing DONT_* flags
2854         * include/defines.h: Added some pan related #defines
2856 2000-12-03  Ales Hvezda  <ahvezda@geda.seul.org>
2858         * configure.in: Slightly rearranged things to make cygwin port happy
2860         * src/m_basic.c: Integrated changes by Werner Hoch, added round_5_2_1
2861           function
2863 2000-11-30  Ales Hvezda  <ahvezda@geda.seul.org>
2865         * src/s_nethash.c: Rewrote s_nethash_build to not use the internals
2866           of the hash table.  New version uses a *_hash_foreach function.
2867           The original function was poorly written and violated library
2868           encapsulation (my bad).
2870         * src/o_circle.c: Removed unneeded variable
2872         * configure.in: Added -fnative-struct flag for CYGWIN port only
2874         * configure.in: Added --enable-debug flag to enable -g flag 
2876 2000-11-21  Ales Hvezda  <ahvezda@geda.seul.org>
2878         * include/struct.h: Added netconn_rubberband variable to st_toplevel
2879           structure
2881 2000-11-16  Ales Hvezda  <ahvezda@geda.seul.org>
2883         * src/s_nethash.c: Added creation function (from 
2884           gnetlist/src/s_traverse.c)
2886         * src/s_nethash.c: Renamed all functions to s_nethash_*
2888         * src/s_page.c: Put in the calls to destroy the nethash data structure
2889           when a page is deleted
2891         * src/s_nethash.c: Added s_nethash_delete_all function
2893         * include/struct.h: Added conn_list function to st_nethash 
2895         * src/s_nethash.c: Added conn_list variable usage code 
2897         * src/s_stretch.c: Added code to check the uniqueness of midpoint
2898           connections when they are added to the stretch structure
2900 2000-11-12  Ales Hvezda  <ahvezda@geda.seul.org>
2902         * include/struct.h: Added st_stretch structure (and typdef)
2904         * src/s_stretch.c: Added file which will contain the low level
2905           data structure for stretching/rubberbanding when a move occurs
2907         * include/struct.h: Added stretch_head to page structure
2909         * src/s_page.c: Added the init of stretch_head
2911         * include/struct.h: Fixed the misspelling of separator
2913 2000-11-04  Ales Hvezda  <ahvezda@geda.seul.org>
2915         * include/struct.h: Added some variables the undo structure to hold
2916           hierarchy state
2918         * src/s_undo.c: Put in code to use the above added variables
2920         * src/s_undo.c: Added the above variables to s_undo_add
2922         * src/u_basic.c: Oops, didn't allocate enough memory for a temp string
2923           in u_basic_breakup_string.  Fixed. 
2925         * src/u_basic.c: Minor correct to malloc
2927 2000-11-02  Ales Hvezda  <ahvezda@geda.seul.org>
2929         * include/struct.h: Added some more gnetlist rc variables to toplevel
2930           struct
2932         * include/defines.h: Added some hierarchy_*_order #defines
2934         * src/o_attrib.c: Put in a very very lame lame lame hack in 
2935           o_attrib_search_name_partial which should be taken out and shot.
2936           It better be removed when I fix the pin#=# problems
2938 2000-10-31  Ales Hvezda  <ahvezda@geda.seul.org>
2940         * include/struct.h: Added some gnetlist rc variables to toplevel
2941           struct
2943 2000-10-31  Stefan Petersen  <spe@geda.seul.org>
2945         * src/f_basic.c: Fixed f_open to return 0 on failure to open a 
2946           schematic and 1 on success.  (Ales merged his changes to match this)
2948 2000-10-26  Patrick Bernaud  <b-patrick@wanadoo.fr>
2950         * src/o_basic.c, o_box_basic.c, o_circle_basic.c: New fill
2951           support and minor changes to line type support.
2953 2000-10-22  Ales Hvezda  <ahvezda@geda.seul.org>
2955         * src/f_basic.c: Slightly changed Stefan's f_open change.  Even if
2956           you cannot open a file, you should still setup the page.
2958         * include/struct.h: Added some fields in the gnetlist structs for 
2959           the pinlabel
2961         * include/struct.h: Added more fields in the gnetlist structs for
2962           prefix / suffix strings (for hierarchy support)
2964 2000-10-10  Stefan Petersen  <spe@geda.seul.org>
2966         * src/f_basic.c: f_open returns an int; 0 on failure, 1 on success
2968         * include/prototype.h: f_open returns an int.
2970 2000-10-07  Ales Hvezda  <ahvezda@geda.seul.org>
2971         
2972         * src/s_slib.c, src/s_clib.c: changed order for #include <dirent.h>
2973           and removed a #if defined for CYGWIN32 
2975         * configure.in: Removed an really old GTK+ check which is no longer
2976           needed
2977         
2978 2000-10-06  Ales Hvezda  <ahvezda@geda.seul.org>
2980         * src/o_line_basic.c: Removed all // comments
2982         * src/Makefile.am: Bumped libgeda so version to 10.0.0
2984 2000-10-05  Ales Hvezda  <ahvezda@geda.seul.org>
2986         * src/o_circle_basic.c: Added o_circle_modify
2988         * src/*.c: Fixed most -Wall warnings
2990         * include/struct.h: Added some variables for new line type / width
2991           dialog box
2993 2000-10-04  Ales Hvezda  <ahvezda@geda.seul.org>
2995         * include/struct.h: Added draw_grips variable to OBJECT structure
2997         * src/o_selection.c: Added code to set and unset draw_grips variable
2999         * src/s_basic.c: Added code to init draw_grips variable
3001         * include/defines.h: Added a few grip related #define's
3003         * src/o_line_basic.c: Added o_line_modify
3005         * src/o_net_basic.c: Made o_net_modify look like o_line_modify
3007         * src/o_pin_basic.c: Made o_pin_modify look like o_line_modify
3009         * src/o_bus_basic.c: Made o_bus_modify look like o_line_modify
3011         * src/o_box_basic.c: Added o_box_modify
3013 2000-10-02  Ales Hvezda  <ahvezda@geda.seul.org>
3015         * src/o_box_basic.c: Further updated the file format per Patrick's
3016           instructions
3018         * src/o_circle_basic.c: Further updated the file format per Patrick's
3019           instructions
3021         * src/o_arc_basic.c: Found a instance where the wrong object was 
3022           getting it's line type and file options set (in o_arc_copy.c)
3024         * src/o_basic.c: Renamed all d1 to length and d2 to space
3026         * src/f_print.c: Added f_print_set_line_width
3027         
3028         * src/o_*_basic.c: Make the appropriate call to above
3030         * src/o_line_basic.c: Added line type postscript output (solid,
3031           dotted, dashed, center, phantom)
3033         * src/o_box_basic.c: Added postscript output using line postscript
3034           output code
3036         * src/o_complex_basic.c: Found an bug where mirror flag was being
3037           set to -1 for embedded components (should have really been 0)
3039 2000-09-26  Ales Hvezda  <ahvezda@geda.seul.org>
3041         * include/struct.h: Intergrated OBJECT structure changes by 
3042           Patrick Bernaud 
3044         * src/o_arc_basic.c: Intergrated changes to the arc primitive by
3045           Patrick Bernaud
3047         * src/o_box_basic.c: Intergrated changes to the box primitive by
3048           Patrick Bernaud
3050         * src/o_circle_basic.c: Intergrated changes to the circle primitive by
3051           Patrick Bernaud
3053         * src/o_line_basic.c: Intergrated changes to the line primitive by
3054           Patrick Bernaud
3056         * src/create_proto: Updated script to be a lot more general (but
3057           unfortunately had to add an ugly hack to get it to work)
3059         * src/o_attrib.c: Changed <strings.h> to <string.h>
3061         * src/o_arc_basic.c: Moved some common code out of this file
3062           src/o_basic.c: Moved the above code into this file
3064 2000-09-22  Ales Hvezda  <ahvezda@geda.seul.org>
3066         * src/o_net_basic.c: Martin found a core dump bug. Fixed.  Wasn't
3067           being careful about derefencing a possible NULL pointer (added an
3068           if to check if NULL)
3070 2000-09-14  Ales Hvezda  <ahvezda@geda.seul.org>
3072         * src/o_net_basic.c: In o_net_consolidate_segments, added a if 
3073           expression to make sure you don't try consolidate non-ortho nets
3074           (pointed out by Patrick)
3076 2000-08-28  Stefan Petersen  <spe@geda.sul.org>
3078         * Fixed bug in configure.in. Probably a bug in autoconf.
3079           Now it should work to configure when libguile is dependent
3080           on other libs.
3081         
3082 2000-08-26  Stefan Petersen  <spe@geda.seul.org>
3084         * Cleaned up configure stuff and added guile.m4 to enhance
3085           guile configuration.
3086         
3087 2000-08-22  Ales Hvezda  <ahvezda@geda.seul.org>
3089         * src/f_image.c: Oops found a core dumping bug which was
3090           introduced in this latest variable reorg (wrong structure
3091           passed f_image_write_objects)
3093         * src/f_print.c: Oops found a core dumping bug which was
3094           introduced in this latest variable reorg (wrong structure
3095           passed f_print_objects)
3097 2000-08-22  Stefan Petersen  <spe@geda.seul.org>
3099         * configure.in/configure: Made configure look for scm_make_smob_type
3100           in libguile.
3101         
3103 2000-08-21  Ales Hvezda  <ahvezda@geda.seul.org>
3104         
3105         * src/o_text_basic.c: #if'ed 0 out o_text_translate (since it is
3106           unused) 
3108         * include/struct.h: Put a complex pointer into the TEXT item 
3110         * src/o_text.c: Changed all complex to use the above new pointer
3112         * src/o_text.c: Added o_text_recalc to work on the text complex 
3113           pointer
3114         
3115         * src/s_basic.c: Added free of text->complex structure to s_delete
3117         * include/struct.h: Added COMPLEX structure/typedef (includes private
3118           complex pointer, x (and screen), y (and screen) mirror, and
3119           angle variables)
3121         * src/*.c: Removed all traces of the old complex pointer and changed
3122           them to use the new above pointer
3124         * include/struct.h: Renamed complex (inside COMPLEX *) to be called
3125           prim_objs instead of complex.  Better name (I hope).
3127         * src/s_basic.c: Removed some dead code
3129         * src/o_text_basic.c: Removed some dead code
3131         * src/*.c: Temporarily called complex (COMPLEX *) complex2 (for 
3132           easy search)
3134         * include/struct.h: Renamed text->complex to text->prim_objs
3136 2000-08-20  Ales Hvezda  <ahvezda@geda.seul.org>
3138         * include/struct.h: Started the conversion from LINEPTS/CIRCLE to
3139           a more generic representation 
3141         * include/struct.h: Added LINE, BOX, ARC structure/typedef
3143         * include/struct.h: Added void *graphical to OBJECT structure.
3144           which for now is commented out
3146         * src/o_arc_basic.c: Converted all line_points to arc
3148         * src/s_basic.c: Add ARC structure to various basic init / free
3149           functions
3151         * src/o_box_basic.c: Converted all line_points to box
3153         * src/s_basic.c: Add BOX structure to various basic init / free
3154           functions
3156         * src/o_complex_basic.c: Made sure you call get_box_bounds with the
3157           right (box) parameters
3159         * include/struct.h: Had to comment out all gpcb related structures 
3160           (eventually these will be rewritten and put back into production)
3162         * include/struct.h: Moved all text parameters into TEXT structure
3164         * src/o_text_basic.c: Converted all graphical paramters to text
3166         * src/s_basic.c: Add TEXT structure to various basic init / free
3167           functions
3169         * src/g_smob.c: Changed text_string to text->string
3171         * src/o_attrib.c: Found a whole bunch of instances where an if
3172           was checking for a null, but in the same if that same item was
3173           being dereferenced (for another value).  Bad.  Fixed.
3175         * src/a_basic.c: Found another 2 instances of above, Fixed.
3177         * src/o_circle.c: Removed some dead code
3179         * src/s_basic.c: Add LINE structure to various basic init / free
3180           functions
3182         * src/o_complex_basic.c: Made sure you call get_line_bounds with the
3183           right (line) parameters
3185         * src/o_box_basic.c: Converted all line_points to line structure
3187         * src/o_net_basic.c: Converted all line_points to line structure
3189         * src/o_pin_basic.c: Converted all line_points to line structure
3191         * src/o_bus_basic.c: Converted all line_points to line structure
3193         * src/s_basic.c: Removed all traces of line_points
3195         * include/struct.h: Removed *line_points variable, structure, and
3196           typedef
3198 2000-08-15  Stefan Petersen  <spe@geda.seul.org>
3200         * Fixed bug causing seg fault during GC with new attribute smob.
3201           Changed mark function from scm_markcdr to 0.
3202         
3203 2000-08-12  Stefan Petersen  <spe@geda.seul.org>
3205         * src/Makefile.am: Makes VPATH building work.
3206           Patch by Roger Gammans. src/Makefile.in regenerated.
3208 2000-08-12  Stefan Petersen  <spe@geda.seul.org>
3210         * src/g_smob.c: Added. Contains attribute smob functions.
3212         * src/Makefile.am: Added above source file. -> 
3213           all Makefile* and configure are regenerated.
3215         * include/struct.h: Added attribute smob definitio struct
3217         * include/prototype.h: Added prototypes for smob functions defined
3218           in src/g_smob.c
3219         
3220 2000-07-04  Ales Hvezda  <ahvezda@geda.seul.org>
3222         * src/*.c: Updated copyright info in each file
3224         * src/*.c: Changed all GNU to GPL in the appropriate places
3226         * configure.in: Bumped version up to 20000704
3228         * src/*.c: Removed all // comments
3230         * src/*.c: Removed all warnings
3232         * src/o_selection.c: Fixed some functions which were either supposed
3233           to return something (and were not) or functions which should not 
3234           have been returning anything but were.
3236         * */*: Upgraded to libtool 1.3.5
3238         * src/s_basic.c: Increased the memory size of the object name string
3239           (more digits)
3241         * src/u_basic.c: Removed #include <malloc.h>, replaced it with
3242           #include <stdlib.h>
3244 2000-06-27  Ales Hvezda  <ahvezda@geda.seul.org>
3246         * include/struct.c: Added type variable to UNDO structure
3248         * src/s_undo.c: Added code to deal with type variable
3250         * configure.in: Put in checks for gtk+ and glib 1.2.3
3252         * src/Makefile.am: Bumped up shared library version to 9
3254         * All gEDA directories/programs: Created distribution Makefile.in 
3255           files
3257         * include/defines.h: Added #defines to support attrib_edit_dialog
3258           invocation flag
3260 2000-06-26  Ales Hvezda  <ahvezda@geda.seul.org>
3262         * include/struct.h: Added object_head pointer to UNDO struct
3264         * src/s_undo.c: Added code to deal with above new pointer
3266         * src/s_undo.c: Had to change some of the s_undo_* functions to
3267           have the TOPLEVEL *w_current argument.  Need to review and make
3268           sure this is really needed.
3270         * src/o_*_basic.c: Fixed all *_copy functions to copy the color of
3271           the object correctly (not the selection color)
3273         * src/o_*_basic.c: Also make sure all *_copy functions copy the
3274           saved_color variable
3276         * src/o_complex_basic.c: Fixed *_copy functions to preserve the
3277           selectability of complex objects
3279         * include/struct.h: Added undo-type to TOPLEVEL structure
3281         * src/o_list.c: OOPS!  Found an ancient bug.  Forgot to restore
3282           object_parent pointer if you passed in an empty list src list
3283           to the o_list_copy* functions (did the same for ADDING_SEL flag)
3285 /*************************************************************************/
3286 /* NOT DONE */
3287 src/*.c: Removed all the ADDING_SEL nonsense (code).
3288 include/struct.h: Removed the ADDING_SEL variable from the TOPLEVEL struct
3289 /* NOT DONE */
3290 /*************************************************************************/
3292         * include/defines.h: Added UNDO_ALL and UNDO_VIEWPORT_ONLY #defines
3294 2000-06-23  Ales Hvezda  <ahvezda@geda.seul.org>
3296         * src/o_*_basic.c: Fixed o_*_save to properly save the object if it
3297           is selected
3299         * include/struct.h: Moved undo_* into the PAGE structure
3301         * src/s_page.c: Added necessary free and init in s_page_* for undo 
3302           structs
3304         * include/struct.h: Added undo_levels and undo_control rc vars to 
3305           TOPLEVEL structure
3307 2000-06-22  Ales Hvezda  <ahvezda@geda.seul.org>
3309         * include/struct.h: Added first cut of UNDO structure/typedef
3311         * src/s_undo.c: Added new file which will hold low level undo 
3312           code
3314 2000-06-07  Ales Hvezda  <ahvezda@geda.seul.org>
3316         * src/o_attrib.c: Added Martin Benes' uref renaming patch.  The 
3317           one call to the function which does all the work was #if'ed 
3318           out.  o_attrib_update_urefMB has some side effects which makes
3319           it problematic to have in the mainstream release. 
3321 2000-06-04  Ales Hvezda  <ahvezda@geda.seul.org>
3322         
3323         * src/o_text_basic.c: Oops, found an old memory leak; made the
3324           assumption that text which was invisible had no text_head.?? and
3325           just set complex pointer to NULL, and hence created a leak. 
3326           Plugged leak by freeing complex list completely before NULLing
3328         * src/o_net_basic.c: #if DEBUG'ed out some printf's which dealt
3329           with net consolidation
3331 2000-06-03  Ales Hvezda  <ahvezda@geda.seul.org>
3333         * include/struct.c: Added continue_component_place variable to the
3334           TOPLEVEL structure
3336 2000-06-01  Ales Hvezda  <ahvezda@geda.seul.org>
3338         * include/struct.h: Added promote_invisible variable to the TOPLEVEL
3339           structure
3341         * src/o_complex.c: Added code to act on above variable in the new
3342           attribute promotion code
3344         * include/struct.h: Added keep_invisible variable to the TOPLEVEL 
3345           structure
3347 2000-05-28  Ales Hvezda  <ahvezda@geda.seul.org>
3349         * include/struct.h: Added attribute_promotion to TOPLEVEL structure
3351         * src/o_complex_basic.c: Added Martin Benes' code to implement 
3352           attribute promotion.  
3354         * src/o_complex_basic.c: Renamed attach_attributes to 
3355           attribute_promotion
3357         * src/o_complex_basic.c: Changed some 0's to FALSEs.
3359         * src/o_complex_basic.c: Added another test to 
3360           o_complex_is_eligible_attribute, only visible floating text 
3361           attributes will be promoted
3363         * src/o_list.c: Added Martin Benes' code changes
3365 2000-05-27  Ales Hvezda  <ahvezda@geda.seul.org>
3367         * src/o_text.c: Replaced o_text_mirror and o_text_mirror_world
3368           by the much improved routines written by Martin Benes, these 
3369           function properly handle the changing of the origin when mirroring
3370           text
3372 2000-05-23  Ales Hvezda  <ahvezda@geda.seul.org>
3374         * include/struct.h: Added buffer_number to TOPLEVEL structure
3376 2000-05-22  Ales Hvezda  <ahvezda@geda.seul.org>
3378         * src/o_complex.c: Added o_complex_unset_color_single and 
3379           o_complex_set_color_single which unset/set the color on only
3380           one object
3382         * src/o_list.c: Added a return paramater to o_list_copy_to
3383           (return the new object which was copied)
3385         * src/o_list.c: Added o_list_copy_all_selection2 which copies 
3386           the objects in a selection list into a plain object list 
3388         * src/o_list.c: In o_list_copy_all_selection2 unselected the object
3389           first (all objects in the selection list should be selected) and
3390           then reselected it
3392 2000-04-21  Ales Hvezda  <ahvezda@geda.seul.org>
3394         * src/o_*_basic.c: Added a check to make sure the color of all read
3395           in objects is valid
3397 2000-04-16  Ales Hvezda  <ahvezda@geda.seul.org>
3399         * src/o_text.c: Added some more checking when reading in text items
3400           Specifically to check for invalid alignment fields
3402         * src/o_text.c: Added missing alignment field to some of the other
3403           warning messages in o_text_read
3405         * src/u_basic.c: Added u_basic_breakup_string 
3407         * include/struct.h: Added raise_dialog_boxes to TOPLEVEL structure
3409 2000-04-15  Ales Hvezda  <ahvezda@geda.seul.org>
3411         * src/o_complex.c: Renamed o_complex_return_pin to 
3412           o_complex_return_nth_pin
3414         * src/o_complex.c: Created new o_complex_return_pin_object to support 
3415           gnetlist's g_get_pin_attribute
3417         * src/create_proto: Updated prototype.h creation script to use gtk/glib
3418           paths from my machine (installed in /usr/local ...)
3420         * src/o_attrib.c: Added o_attrib_search_attrib_value to support 
3421           o_complex_return_pin_object
3423         * src/o_attrib.c: Added o_attrib_search_attrib_name to support 
3424           gnetlist's g_get_pin_attribute
3426 2000-03-23  Ales Hvezda  <ahvezda@geda.seul.org>
3428         * src/o_net.c: Started fixing the broken code in o_net_consolidate*
3429           which was causing a core dump with the new selection code
3431         * src/o_net.c: Added some intelligence to o_net_consolidate_segments
3432           so that objects are properly selected when consolidation happens
3434 2000-03-20  Ales Hvezda  <ahvezda@geda.seul.org>
3436         * include/struct.h: Added locked_color to OBJECT structure
3438         * src/s_basic.c: Inited locked_color to -1
3440         * src/o_selection.c: Removed some old debugging info
3442         * src/a_basic.c: Removed dead code from o_scale
3444         * src/o_attrib.c: Removed some more dead code (old selection related) 
3445           from o_attrib_*
3447         * src/o_complex.c: Misc code cleanup
3448         
3449         * src/s_color.c: Removed an obsolete comment
3450         
3451 2000-03-16  Ales Hvezda  <ahvezda@geda.seul.org>
3453         * src/o_attrib.c: Got o_attrib_set_color to work with the new selection
3454           mechanism
3456 2000-03-10  Ales Hvezda  <ahvezda@geda.seul.org>
3458         * include/struct.h: Added doing_pan variable to TOPLEVEL structure
3460         * include/struct.h: Added fast_mousepan variable to TOPLEVEL structure
3462 2000-03-09  Ales Hvezda  <ahvezda@geda.seul.org>
3464         * src/o_attrib.c: Removed the first (of many) o_redraw_single's from
3465           the attrib free routine
3467 2000-03-08  Ales Hvezda  <ahvezda@geda.seul.org>
3469         * src/o_attrib.c: Further cleaned up o_attrib_attach to only attach
3470           the single specified attribute item (instead of looping which is
3471           not correct anymore)
3473         * src/o_attrib.c: Got the color setting on attributes and 
3474           non-attributes right
3476         * src/o_net_basic.c: Put some comments in the net consolidate functions
3477           since these functions are really broken with new selection mechanism
3479 2000-03-06  Ales Hvezda  <ahvezda@geda.seul.org>
3480         
3481         * src/o_attrib.c: Got rid of some of the o_list_search's which are
3482           now not required anymore
3484 2000-03-05  Ales Hvezda  <ahvezda@geda.seul.org>
3486         * src/o_text_basic.c: Got o_text_recreate to work right with new 
3487           selection mechanism (set saved_color correctly)
3489 2000-02-28  Ales Hvezda  <ahvezda@geda.seul.org>
3491         * src/o_complex.c: Added o_complex_set_saved_color_only which only
3492           sets the saved_color flag of a complex object
3494         * src/o_complex.c: Added some selection specific functions 
3496         * src/x_event.c: Got middle button actions working again
3498 2000-02-25  Ales Hvezda  <ahvezda@geda.seul.org>
3500         * include/struct.h: Added SELECTION typedef and structure
3502         * src/o_selection.c: Added new selection (data structure) code
3504         * include/defines.h: Changed NORMAL and SELECTION #defines to be
3505           NORMAL_FLAG and SELECTION_FLAG due to name clashes
3507         * include/struct.h: Added selected flag to OBJECT structure
3509         * src/o_complex.c: Simplified o_complex_set_color to have only the
3510           required parameters (object and the new color) (Also changed order)
3512         * src/o_complex.c: Found/Fixed a bug in o_complex_set_color
3514         * src/o_complex.c: Added o_complex_set_color_save which sets the color
3515           but also saves it for future use (used in selection mechanism)
3517         * src/o_complex.c: Added o_complex_unset_color which restores the
3518           color from the saved_color variable (used in selection mechanism).
3520         * src/o_selection.c: Added o_selection_return_first_object
3522         * src/o_selection.c: Added o_selection_return_nth_object (returns
3523           the nth object starting at zero being the first object)
3525         * include/struct.h: Removed selection_tail and selection_head so that
3526           gschem can be completely purged of the old selection mechanism
3528 2000-02-19  Ales Hvezda  <ahvezda@geda.seul.org>
3530         * README/INSTALL: Updated files to reflect next release
3532         * src/*.c: Removed all // comments (changed to /* */)
3534         * src/*.c: Fixed all warnings (using -Wall -Werror)
3536         * src/o_attrib.c: Really enforced the no spaces beside the equals
3537           sign when checking if an attribute is valid or not
3539         * src/Makefile.am: Incremented libgeda.so version number
3541 2000-02-17  Ales Hvezda  <ahvezda@geda.seul.org>
3543         * src/o_text_basic.c: More work on getting postscript output to work
3544           with new text alignment
3546         * include/struct.h: Added text_origin_marker flag in TOPLEVEL struct
3548         * include/struct.h: Added text_alignment flag in TOPLEVEL struct
3550         * src/o_text_basic.c: Changed the order of the T (text) item in 
3551           schematic files (... angle alignment)
3553 2000-02-16  Ales Hvezda  <ahvezda@geda.seul.org>
3555         * All configure.in files: Changed the version to 20000220 (to force
3556           a release)
3558         * include/struct.h: Added text_alignment flag to object structure
3560         * src/s_basic.c: Inited above flag to default value
3562         * src/s_basic.c: Removed old unused code
3564         * src/o_text_basic.c: Added the text alignment flag to the file format
3565           for reading in text items (old text format is still valid though)
3566         
3567         * src/o_text_basic.c: Added the text alignment flag to the file format
3568           (saving text times)
3570         * include/defines.h: Added text alignment #defines
3572         * src/a_basic.c: Change the default version number (to the current
3573           version) if the version tag is not found in a file read in by o_read
3575         * src/o_text_basic.c: Added o_text_height function to help 
3576           readability of the up the code and get rid of awful hardcoded 
3577           constants
3579         * src/o_text_basic.c: Added code to support text alignment flag as well
3580           as code to support rotation and mirroring of this new text
3582         * src/o_text_basic.c: Started getting postscript printing to work; not
3583           complete yet
3584         
3585 2000-02-01  Ales Hvezda  <ahvezda@geda.seul.org>
3587         * src/s_hierarchy.c: Fixed some bugs so that detached pages (from
3588           the hierarchy) get properly reconnected when they are called for
3589           again
3591 2000-01-31  Ales Hvezda  <ahvezda@geda.seul.org>
3593         * src/s_slib.c: Created s_slib_search_single which just search for
3594           the filename and does nothing else to the name.
3596         * src/s_hierarchy.c: Created s_hierarchy_down_schematic_single and
3597           transformed old call into s_hierarchy_down_schematic_multiple
3599         * src/o_attrib.c: Put in another check in o_attrib_free_returned
3600           to make sure found_objects is not null before it is dereferenced
3602         * include/struct.h: Added enforce_hierarchy to toplevel structure
3604         * include/struct.h: Added mawindow to toplevel structure 
3605           (multi-attrib window)
3607         * include/struct.h: Added aewindow to toplevel structure 
3608           (attrib-edit window)
3610         * include/struct.h: Added sewindow/seentry to toplevel structure 
3611           (slot-edit)
3613 2000-01-17  Ales Hvezda  <ahvezda@geda.seul.org>
3615         * include/struct.h: up and down pointers to the st_page structure
3617         * src/s_hierarchy.c: Added push/pop symbol/schematic functions 
3619         * src/s_page.c: Added inits of up and down pointers in the st_page 
3620           structure
3622         * include/struct.h: Added page_control variable (which contains an
3623           int which basically describes what hierarchy level you are at)
3625         * src/s_page.c: Make sure all the above new vars are properly inited
3627 2000-01-04  Ales Hvezda  <ahvezda@geda.seul.org>
3629         * src/o_attrib.c: Fixed o_attrib_return_attribs so that it returns
3630           an array of objects instead of an array of strings
3632 2000-01-03  Ales Hvezda  <ahvezda@geda.seul.org>
3634         * src/o_attrib.c: Added o_attrib_return_attribs which returns an 
3635           array of all attached attributes given an object 
3637         * HACKING: Added file which describes file prefix (for now)
3639 1999-11-09  Ales Hvezda  <ahvezda@geda.seul.org>
3641         * src/s_clib.c: Fixed s_clib_getfiles to filter files based on 
3642           the filter (new argument) passed in
3644         * src/s_slib.c: Fixed a debugging routine to call the right functions
3645           for slib
3647 1999-10-23  Ales Hvezda  <ahvezda@geda.seul.org>
3649         * src/s_basic.c: Added some checks in the object malloc, just for
3650           robustness sake
3652 1999-10-18  Ales Hvezda  <ahvezda@geda.seul.org>
3654         * src/f_print.c: Added some error checking to make sure you can open
3655           the postscript output file, otherwise log an error message.
3656           Pointed out by Mike Riendeau
3657         
3658         * src/f_print.c: Modified f_print() to return something indicating
3659           success or error
3661 1999-10-17  Ales Hvezda  <ahvezda@geda.seul.org>
3663         * include/*.h: Added multiple controlling #ifdef's into all *.h files
3665         * include/libgeda.h: Created file which contains all the required
3666           include files in the right order
3669 1999-10-11  Ales Hvezda  <ahvezda@geda.seul.org>
3671         * src/s_clib.c: Added the ability to set the count in s_clib_getfiles
3673         * include/struct.h: Added another search related var to FILEDIALOG 
3675         * include/defines.h: Added SET_COUNT #define for s_clib_getfiles
3677         * include/struct.h: Added search_label gtk widget to FILEDIALOG struct
3679         * ../*/configure.in: Changed version number to today's date 
3681         * src/Makefile.am: Incremented libgeda.so version number
3683         * src/o_attrib.c: Fixed -Wall warnings
3685         * src/s_clib.c: Fixed -Wall warnings
3687         * src/s_page.c: Fixed -Wall warnings
3689         * src/s_clib.c: Fixed s_clib_getfiles so that *only* files which .sym
3690           suffix get read in as valid symbol files
3692         * src/o_pin_basic.c: Added o_pin_modify() 
3694 1999-10-10  Ales Hvezda  <ahvezda@geda.seul.org>
3696         * include/defines.h: Added a few more defines to support SAVEAS_*
3697           and the new file dialog box
3699         * include/struct.h: Added a few type vars to the FILEDIALOG struct
3701         * src/s_log.c: Added cwd to s_log_init to deal with the chdirs that
3702           gschem now does
3704         * include/struct.h: Added a last search pointer (int) vars to the 
3705           FILEDIALOG struct
3707         * src/s_clib.c: Added s_clib_return_num 
3709 1999-10-09  Ales Hvezda  <ahvezda@geda.seul.org>
3711         * src/s_page.c: Changed s_page_add: full path is now in page_filename
3712         
3713         * src/s_page.c: Added full path only if page_filename doesn't start 
3714           with a '/'
3716 1999-10-05  Ales Hvezda  <ahvezda@geda.seul.org>
3718         * include/defines.h: Added some FILEDIALOG #defines
3720         * include/struct.h: Added filter_type variable to FILEDIALOG struct
3722 1999-10-03  Ales Hvezda  <ahvezda@geda.seul.org>
3724         * include/struct.h: Added filename_entry variable to FILEDIALOG struct
3726         * include/struct.h: Added preview rc variable to TOPLEVEL struct
3728         * include/struct.h: Added preview_control variable to FILEDIALOG struct
3730         * include/struct.h: Added directory_entries and file_entries to
3731           FILEDIALOG struct 
3733         * include/defines.h: Added MAX_DIRS and MAX_FILES
3735         * Fixed all *.c files to #include defines.h before struct.h
3737         * include/struct.h: Added toplevel variable to FILEDIALOG struct
3739 1999-10-02  Ales Hvezda  <ahvezda@geda.seul.org>
3741         * include/struct.h: Added TOPLEVEL preview variable to FILEDIALOG struct
3743 1999-10-01  Ales Hvezda  <ahvezda@geda.seul.org>
3745         * include/struct.h: Added xfwindow array to TOPLEVEL structure
3746         
3747         * include/struct.h: Made the above array a structure
3748         
3749         * include/struct.h: Changed FILESEL struct to FILEDIALOG struct
3751         * src/g_basic.c: Added #include for define.h
3753 1999-09-28  Ales Hvezda  <ahvezda@geda.seul.org>
3755         * src/o_attrib.c: Removed the ability to attach non-text items
3756           as attributes as a sch/sym is being read in (o_read_attribs)
3758         * src/o_attrib.c: Fixed a nasty bug where the color of text was
3759           being forced to the attribute color even if you didn't want that
3760           color (pointed out by Magnus)
3762 9/19/99 Make sure libgeda works with guile-1.3.2a
3764         Added some code to o_text.c to look for char_.sym for lowercase
3765         characters when running CYGWIN32
3767         Messed up above slightly, now fixed
3769         Did not return a success (zero) in s_color_request, now fixed
3771         Increased the number colors to 25
3773         Fixed all warnings
3775         Increased the .so version of libgeda to 4
3777 9/18/99 Fixed a bug in s_color_gdcolor_init, had the gd color alloc in the
3778         wrong place (before a pointer was set)
3780 9/17/99 Added/changed a few variables the various structures in struct.h
3782 9/16/99 Removed the restriction that sym/sch files have to be perfect.  You
3783         now can have garbage in a sym/sch file and it won't exit, but instead
3784         warn the user and display what it read in.
3786         Added a bunch of tests into o_attrib_attach to prevent:
3787                 - Attaching a non-text item as an attribute
3788                 - Attaching an attribute to more than one object
3789         
3790         Improved the warning that is displayed when an attribute is already
3791         attached to an object
3793         Updated f_open and s_page_new to only open a schematic/symbol if it
3794         isn't opened already.
3796 9/12/99 Added a flag in s_netlist structure for net naming priority
3798 9/7/99  Added s_color.c 
3799         
3800         Cleaned up code to reflect the new function names created by s_color.c
3802         Removed all lame function pointers now that the color stuff is part
3803         of libgeda
3805         Added st_color structure to struct.h
3807         Added o_attrib_search_name_single_count which is like the other
3808         search_name functions in that it allows you to pick the n'th 
3809         occurance of an attribute but only searching the specified in object
3811 9/6/99  Removed most color #defines from color.h, in prep for the new color
3812         system
3814         Temporarily broke color postscript printing
3815         Temporarily broke color image writing
3817         Put into colors.h the proper #defines for the new colors scheme
3818         
3819         Put a few user rc variables into the toplevel struct
3821         Fixed color postscript printing
3822         To do this, I had to create a ps_color_string global variable function
3823         pointer, so every gEDA program needs to define this if it has to be
3824         linked to libgeda
3826         Fixed a coredump bug which was caused by improper attributes (ie
3827         pin15=  (and no value))
3829         Fixed o_attrib_get_name_value so that improper attributes are NOT
3830         returned as proper attributes 
3832         Started to fix the broken color image writing
3833                 - Re-arranged the allocation of colors in o_image.c
3835         Got color image writing working again
3837         Unfortunately had to create another function pointer for 
3838         x_color_gdcolor_init (ugg... I need to clean all this up...)
3840 8/31/99 Renamed ntext to text (finally)
3842         Hopefully fixed the problem that gnetlist was having with embedded
3843         components ?
3845 8/30/99 Fixed the bus visual cues postscript output to look better 
3846         (by controlling the capstyle)
3848         Fixed the direction of horizontal bus visual cues in postscript
3849         output
3851         Renamed all ales to conn and ALES to CONN
3854 8/29/99 Added bus_gc
3856         Added support to the postscript / image printing for the bus cues
3858         Got bus to look thicker when they are imaged.  Still need to do
3859         the same to nets
3861         Fixed a postscript problem when you have thin nets enabled 
3862         (everything would be thick... which is the exact opposite of what
3863          you would want)
3865         Removed a "this is totally broken" comment from o_complex_add_embedded
3866         (I think it works... but just in case...)
3868         Removed all warnings from the code
3870 8/28/99 Fixed a minor bug: connect two nets to a bus to the same point, you
3871         would get an invalid cue, which isn't right (that's a valid bus
3872         midpoint connection).
3874 8/27/99 Set the program version to 19990829 to force Ales to release
3875         on the 29th :)
3877         Updated all *.c and *.h files to have the right address for the
3878         FSF in the copyright/licence header
3879   
3880         Updated library so version 
3882 8/18/99 More work getting buses to work correctly, updates to o_ales 
3883         (which will turn into o_conn eventually)
3885         Added #defines for output-capstyle
3886         
3887         Added code in f_print which does the work of the capstyle keyword 
3889         More work in o_ales to get bus to work right.
3890         
3891         Added code which determines if a connection is valid or invalid
3892                 NOT valid:  pin to bus
3893                 NOT valid:  net to endpoint of bus      
3894                 
3895 8/17/99 Started adding bus object
3896                 Including creation of all basic functions
3897                 Update toplevel structure (struct.h)
3898                 Update of enumerated types of objects 
3900 8/12/99 Added o_net_modify to support the stretch command
3902 8/11/99 Added o_attrib_search_toplevel which searches for toplevel attributes
3903         in all loaded pages.
3905         Fixed a fatal bug (core dump) in the o_net_consolidate_lowlevel
3906         function (as well as a possible memory leak) that deal with
3907         connecting nets together which both had attributes.
3909         Fixed another memory leak in o_net_consolidate_*
3911         Fixed configure.in to properly check for cygwin port and X11
3912         libraries (for all other tools as well)
3914 8/5/99  Added some stuff to configure.in for win32 builds
3916         Removed some bogus #includes <dirent.h> from a bunch of files
3917         s_attrib.c, s_papersize.c, s_stroke.c
3919         Renamed private POINT structure to sPOINT (single POINT) in m_basic.c
3920         (it was conflicting with some includes in win32)
3922         Added some more #if conditions to the #include <direct.h>, only
3923         include this on UNIX platforms
3925         Added code in configure.in to ignore the requirement for X11 for
3926         cygwin
3928 8/3/99  Added to TOPLEVEL the net_consolidate flag
3930         Upgraded to libtool 1.3.3
3932         First attempt at getting net_consolidate to work with attached
3933         attributes
3935         Removed an extra return from o_attrib.c
3937         net-consolidate code is not 100% working today.
3939 7/27/99 Added o_net_consolidate* functions which take net segments and 
3940         if possible combine the nets into one single net.
3942         Added o_net_consolidate to f_open so that it runs
3943         whenever you open a schematic
3945         Added o_net_consolidate to f_save so that it runs 
3946         whenever you save a schematic
3948 7/25/99 Cleaned up g_read_file(). (by Kazu Hirata)
3949         
3950 7/23/99 Added u_basic_strdup_multiple() to u_basic.c. (by Kazu Hirata)
3952 7/21/99 More work on getting all objects to use new object init and link
3953         routines (rest of o_*_basic.c functions) 
3955         Created u_basic.c for utitlity functions to which Kazu is adding
3957         Removed all traces of s_passing.c and s_passing.h (Yeah, no more
3958         p_* kludge)
3960         #if 0'ed out add_object, replaced by new object init and link 
3961         routines
3963         Found all unknown p_* variables and removed them
3965 7/16/99 Added s_basic_init_object which just creates an object and inits
3966         it with default values (this is part of the s_passing kludge removal)
3968         Added s_basic_link_object which links in the object into the passed in
3969         ptr linked list.
3971         Removed "int selected" from struct.h (was totally unused)
3973         Minor cosmetic changes in struct.h
3975         As a first test, converted o_ntext_basic.c to use new 
3976         s_basic_init_object and s_basic_link_object
3978 7/15/99 Added support for libgdgeda 1.6 (mainly means searching for libpng)
3980         Removed all traces of old libgdgeda 1.5 gif support
3982         Changed the check for zlib (uncompress is the function it searches
3983         for)
3985 7/10/99 Started to improve the performance of the math functions
3986         (was doing to much math everytime I was calling pix_x/pix_y)
3988         Finished speed improvements in mil_x and mil_y
3990         Updated a few places where it's important to call set_window
3991         (part of the math speed improvements)
3993         Added some variables to struct.h to support gschem rc files
3995         Added displayed_text_len which holds the true string length of 
3996         text which is displayed
3998         Added a check in o_ntext_read for unsupported text angles
4000 7/6/99  Didn't really disable libgdgeda when using --disable-gdgeda
4001         Now fixed.
4003 7/5/99  Fixed a minor typo when allocating a string "pin" instead of "slot"
4005         Hopefully got slotting to work with alphanumeric pins
4007         Removed all warnings    
4009         Updated configure.in a bit
4011         Updated version number (in all other programs as well)
4012         
4013         Updated README file (in all other programs as well)
4015 7/4/99  Fixed the headers in all files to be correct (GPL)
4017 7/3/99  Removed some debug printfs from s_nethash.c
4019         Removed some obsolete data structure elements in the gnetlist part
4020         of struct.h
4022         Added code to warn user that a zero length object (line, net, pin 
4023         etc...) was just read in
4025 7/2/99  Fixed the ./configure stuff dealing with libgdgeda so that it works
4026         when libgdgeda isn't installed in a system directory
4028 7/1/99  Changed all gd includes to gdgeda to distinguish my version of gd
4029         from the official one
4031         Changed HAS_LIBGD to HAS_LIBGDGEDA
4033         Added #ifdef HAS_LIBGDGEDA where appropriate
4035         Missed a few spots in adding above, found them all I hope
4037 6/29/99 Added s_nethash.c which deals with the nethash table in gnetlist
4039         Added init of the nethash table to s_page.c
4041 6/26/99 Fixed the output of 180 rotated text in the postscript output
4043 6/25/99 Added the ability to generate black and white gifs
4045         Moved a o_redraw_all from libgeda into gschem where it belongs
4046         (f_image.c)
4048         Removed all traces of GTK_DEVEL 
4050 6/24/99 Got all the object primatives outputing to the image (including
4051         the rather painful arcs) 
4053         Added the ability to change the image size
4055         Added a o_recalc function which recalcs, but doesn't draw the objects
4057 6/23/99 Added o_image.c (which is code which uses the gd lib to output 
4058         schematics to gifs)
4060         Added some entries in the TOPLEVEL structure to support the image
4061         printing
4063         Added f_print.c which includes all the toplevel code for writing
4064         an image
4066         Added support to configure and friends to make libgd an optional
4067         library
4069 6/17/99 Added o_ales_search_object which goes through entire the ales_table and 
4070         finds the n'th occurance of object 
4072         Above may be removed and moved somewhere else (into gnetlist)
4074 6/13/99 Removed s_delete_head from production
4076         Attempted to find the hidden attribute memory leak
4078         Found above memory leak and squashed. 
4080 6/10/99 Added the start of support for not creating text items which are 
4081         hidden
4083 6/9/99  Increased the number of symbols which can be in a directory to 1024
4084         from (256) in s_clib.c (s_clib_getfiles)
4086 6/1/99  Fixed a few minor things in s_page.c and s_basic.c (p_circle stuff)
4088         Put some checks to prevent the coredump condition described below
4090         Put some casts to make make happy (less warnings)
4092 5/31/99 Fixed printing for nets visual cues
4094         Removed all traces of the old connection system
4096         Discovered a core dump condition in clib_cache_free
4097         (caused by reading in swedish/non-standard-ascii character font
4098          files, okay for now)
4100         Few minor touch up to s_clib.c, but not enough to solve above
4102 5/29/99 Change the license for libgeda back to GPL (from LGPL)
4104         Put in another check in the o_ales_update_nets function to 
4105         make sure we don't add duplicate objects into the ales_list's
4107         Added in code which allows for unattached toplevel attributes
4108         (o_attrib.c)
4110 5/99    See ChangeLog in gschem for all the changes related to the new
4111         connection stuff
4113         All connection stuff is in o_ales.c (will be renamed to o_conn.c
4114         once things get a big more stable)
4116 5/16/99 Removed ../libgeda/prototype.h from f_print.c
4118         Removed ../include/x_states.h and ../include/x_events.c
4120         Moved prototype.h to ../include (change all the source as well)
4122         Commented out most of ../include/globals.h
4124 5/13/99 Increased the size of buffers and the reading in of attributes 
4125         (o_attrib.c -- o_read_attribs)
4127         Increased the size of text strings (in o_ntext_basic.c)
4128         
4129         Fixed the appropriate string in s_passing.c (and s_passing.h)
4131         Fixed text_string allocation size in add_object (s_basic.c) 
4133         The above changes should fix the bug reported by Thomas Dean
4135 4/27/99 Minor comment fix in include/struct.h
4137 4/20/99 Minor fprintf warning/error message touchups in s_clib.c
4139 4/15/99 Added coord dialog variables to WINDOW structure
4141 3/23/99 Added GtkWidget *abwindow to struct.h
4143 3/19/99 Added expand_env_variables which takes a string and expands all
4144         shell enviroment variables. 
4146         Fixed it so that when you do some attribute related activities
4147         the changed flag gets set
4149         Had to remove one of the above because just selecting something 
4150         with attributes would cause the flag to be set...
4152 3/9/99  Remove all // from all include/*.h files
4154 3/2/99  Added missing #include <stdarg.h> to s_basic.c
4156 3/1/99  Fixed the vsnprintf problem I thought I fixed.  It's fixed now!
4158         Updated struct.h (new schcheck structure)
4160 2/25/99 Added gsymcheck structures (include/struct.h)
4162 2/12/99 Added code (#ifndef'ed) for vnsprintf to fix the Solaris 5.5.x 
4163         problem (didn't have vnsprintf).  The vnsprintf wrapper is from 
4164         Timidity++-1.2.1, which is under the GPL v2.0
4166         Minor bug fix to s_log_close (disable the logging of messages after
4167         you close the log file)
4169         Found a memory leak in s_clib_cache_free, the index used in the loop
4170         could wrap, so you might end up freeing only a portion of the entries
4172 2/11/99 Searching through stroke structure fixed to be faster (does not 
4173         search the whole array of structures)
4175         Implemented a return value of s_stroke_search_execute (TRUE if it
4176         finds a stroke, FALSE otherwise)
4178         Increased max number of strokes to 256
4180 2/9/99  Increased buffer which is used for reading in schematics to 1024
4181         characters
4183         Increased buffer which is used for saving schematics to 1024
4184         characters
4186         Added s_stroke.c (place where strokes to action mapping is stored)
4188 1/24/99 Fixed a fprintf format statement (%% instead of %) in f_print.c
4190 1/23/99 Fixed printing problem created when I switched the rc reading order
4192         Added code to support portrait printing printing (in struct.h : 
4193         print_orientation, defines.h - a few useful defines)
4195         Changed f_print_header, w_current is passed in now 
4197         Worked some on getting portait mode right (instead of the _hack_ 
4198         which it currently is)
4200         Changed the way the translating actual happens in the actual 
4201         postscript (instead of changing the points in C, it's done with a 
4202         translate), much cleaner. (be sure to remove all the dead code... 
4203         maybe?)
4205         Got portrait printing working more or less.  Still might be buggy
4206         though.
4208         Added support for color postscript printing (f_print_set_color)
4210         Fixed some bugs in the printing of colored nets (end/midpoints not 
4211         being colored right)
4213 1/17/99 More gtk+ 1.1.x compatibility work (in s_log.c) (minor #ifndef)
4215         Changed s_log_message to use vsnprintf instead of the g_v* functions
4216         since they were not behaving like I want them to.
4218 1/9/99  Added gtk+ 1.1.x compatibility to libgeda
4219                 g_vprintf -> g_strdup_vprintf (s_log.c)
4221 12/30/98 Removed duplicate code from snap_grid function
4223 12/15/98 Added clip_nochange and clip_change (really just copied and
4224          changed existing code).  These routines either just tell if a 
4225          line (object) should be clipped and/or the actual points are 
4226          clipped. 
4228          Added SCREENencode_halfspace and WORLDencode_halfspace
4229          which support above code
4231          Discovered that my clipping routine wasn't working completely 
4232          right (slope was always zero) fixed now? 
4234 12/13/98 Fixed pin color being saved as -1
4235          
4236          Added some checks in clip to make sure you don't divide by zero 
4237          Assume the object is visible if you were going to divide by zero.
4239 12/9/98 Added WORLDabs and SCREENabs, these function, don't return a points
4240         coordinates, but rather an absolute measure in either world or screen
4241         coordinates (such as a width of a line or the radius of a circle)
4243         Finally fixed o_ntext_print so that you can print out ('s and )'s.
4244         (should work on all postscript printers correctly)
4246         Changed the ps of text output so that it uses "show" instead of
4247         "true charpath fill"
4249         Cleaned up rest of circlefixme comments left over from yesterday
4251 12/8/98 Added st_circle structure and CIRCLE typedef to include/struct.h
4253         Started changing o_circle_basic to use new structures above
4255         Changed s_basic to allocate and free above structures
4257         Added circle structure to s_passing.c/s_passing.h
4258         
4259         Added some if's in add_object for p_line_points and p_circle
4261         Went through and added p_circle=NULL to all the places that needed it
4263         Went through and fixed up all prototype errors associated with above
4264         change
4266         Discovered a major bug in o_complex_rotate_lowlevel, was trying to
4267         rotate a circle using a box routine (worked previously since circle/box
4268         used similar datastructs, now that's changed) 
4270         Found the same sort of bug as above in o_complex_mirror_lowlevel. 
4271         (trying to use box routine to mirror a circle)
4273 12/6/98 Found another really long term bug in dist() (wrong value being 
4274         set to temp var).  I don't know how it worked with this bug.
4276         Found another long standing bug in circle, again not sure how things
4277         worked before, dumb luck.  When saving, radius which was saved 
4278         could have been zero due to how the circle is represented in memory
4279         (stupidly)
4281 12/5/98 Found a nasty bug in the printing of X endpoint lines, was using
4282         offset variable instead of cross, also had the wrong variables
4283         in various places
4285 12/3/98 Added Tom Javen's finnish / swedish libgeda patch to o_ntext_basic.c
4287 11/27/98 Apparently I didn't fix the %! in f_print.c so now it's definately
4288          fixed 
4290 11/18/98 Removed some irrelavent/dead/wasteful code from m_basic.c (math 
4291          routines)
4293 11/15/98 Added code to center LIMITS printed schematics
4295          Added code to deal with space.sym (the right way) (when reading in
4296          the width specifier)
4298          Added backtick.sym to o_ntext_basic.c
4300 11/6/98 Added sort routine to s_clib_getfiles (so that components are in 
4301         alphabetical order when displayed)
4303         Added support to TOPLEVEL struct for print dialog box
4305         Added s_papersizes.c, place to hold paper sizes read from rc file
4307         Added print_output_type to TOPLEVEL structure 
4309 11/5/98 Added paper_width, paper_height to the TOPLEVEL structure
4311         Started work on generalizing the postscript printing (print to
4312         any papersize)
4314         Started work on being able to print out the current window
4316 10/28/98 Cleaned up o_ntext_basic to get rid of special code for space 
4317          character
4319 10/25/98 Cleaned up all warnings (-Wall only)
4321          Added some error checking in a few misc places
4323          Added version information to o_save (o_save_write_header)
4325          Added version information reading to o_read 
4326         
4327          Passed version info to all o_*_read functions (this was done so, 
4328          because o_read is called recursively)
4330 10/24/98 Added the ability to have comments in schematic files, but they are
4331          not saved...
4333 10/22/98 Removed arc bounding code again... still not working right
4335          Added o_attrib_slot_update (update pins based on slot, given complex)
4337          Added o_attrib_search_slot_number (search for slot#)
4339          Added o_attrib_search_pin_number (search for pin#)
4340         
4341          Added o_attrib_slot_copy (copy pin information over to new complex)
4343          Added the o_attrib_slot_copy to o_complex_copy
4345          Found a memory leak in the above code, fixed (along with some other
4346          major/minor bugs)
4348          Got the first working version of the slotting done
4350 10/18/98 Added o_attrib_search_slot 
4352          Changed o_attrib_search_name_single to return the object where the
4353          attribute lives
4355          Added a bunch of o_attrib_search_name_* function to search for
4356          various standard attributes
4358 10/17/98 Applied patch by Roger to add variable grid spacing
4360 10/15/98 Attempt to fix the arc bounding code (doesn't quite work 100%)
4362 10/12/98 Found a small bug in world_get_circle_bounds which was causing 
4363          a_zoom_limits to set the wrong value if a circle was the largest 
4364          object 
4366          Finally fixed o_arc_add so that it takes world coords like all
4367          the other objects! Woo Hoo!
4369 10/10/98 Added netlist structures to struct.h 
4371          Added visited flag to object structure
4373 10/9/98 Removed some really old #if 0 and did a small amount of code cleanup
4375 10/8/98 Worked some more on the mirror code of complex objects
4377         Almost working except for text inside components which is unmirrored 
4378         (that displays incorrectly)
4380 10/6/98 Broke schematic format again with the addition of the mirror flag
4381         on complex objects
4383         Added code to implement above
4385         Changed the way the rotating of complex is done
4387 10/5/98 Added o_line_mirror
4389         Found a nasty cpu sucker, in o_ntext_rotate, where you were doing
4390         the rotate effectively twice.  Oops.  Removed one line rotate while
4391         loop
4393         Added rest of o_*_mirror
4395         Worked on o_ntext_mirror 
4397         Worked on o_complex_mirror
4399         Added all o_*_mirror_world
4401         Found/fixed a minor bug in the text rotate dealing with the mirror of
4402         attributes (mirroring wrong point when mirroring attributes)
4404         Discovered a case which broke arc printing (negative sweep angles),
4405         Hacked something together to fix it, but unknown if it's a complete
4406         solution
4408         Figured out how to finish up complex mirrors, but that will have
4409         to wait till tomorrow.
4411 10/4/98 Worked on gettting printing working and flexible (f_print)
4413         Got text to be printed using native postscript fonts.  The mapping
4414         between the stroked fonts and the real ones is really close, not 
4415         perfect, but close.
4417 10/1/98 Fixed all warnings (with -Wall)
4419         Found a place where temp_parent wasn't being used to temporarly
4420         hold object_parent (o_list.c _copy_all)
4422         Added README and COPYING
4424 9/30/98 Added code to have text that is rotate 180 degrees be upright and
4425         readable (almost perfect, but still need to get it exactly looking
4426         right) (text with bars and text with subscripts doesn't rotate right,
4427         but that can be fixed in a better way)
4429 9/29/98 Today starts the new release system: 19980929
4431         Added o_attrib_copy_all (to copy attribute lists), useful when you 
4432         rotate components (and the attribute list is discarded)
4434         Added o_attrib_reattach and o_attrib_set_color to help support the
4435         proper continuation of attached attributes to complexes when they 
4436         are rotated
4438 0.0.5
4439 -------
4440 9/27/98 Fixed o_complex_*_rotate functions to actually work
4441         Modelled after the ntext ones
4443         Found a rotate bug in arc_world if you passed in a zero angle
4444         Made a similar change to all the rotate_world functions
4446         Found a new bug in arc_rotate_world, arc's were not being rotated
4447         correctly
4449         Moved the highly gschem specific o_complex_rotate into gschem/
4451         Fixed the broken x_update_log call in s_log_message
4453 9/26/98 Added o_*_rotate_world routines  
4455         More attempts at getting complex's to read and rotate in correctly
4457         Added o_ntext_rotate_lowlevel (which properly rotates text 
4458         based on angle)
4460         Fixed rotate_point_90 so that it can accept any angle in increments
4461         of 90 degrees.
4463         Wrote and Got o_ntext_rotate working (which rotates text when you
4464         hit the rotate button)
4466 9/25/98 Added the angle argument to the complex type (this breaks all 
4467         schematic files!!) (embedded components now totally broken)
4469 9/23/98 Fixed snap_grid, so that it would work on negative inputs (doh!)
4471         Added rotate_point_90, a simplied more general func of rotate_point
4472         Might be removed in the future, but for now is guaranteed to work.
4474         Fixed o_line_rotate (better name) and to use above function
4476         Added all the o_*_rotate functions, most stubbed, only ones that work
4477         are the line related ones
4479 9/17/98 New code for snapping to the grid (m_basic.c)
4481 9/13/98 Added scheme_directory to the TOPLEVEL structure 
4483 9/12/98 Added return_zoom_number (m_basic.c)
4485         Added world_get_complex_bounds (o_complex_basic.c)
4487         Added o_complex_world_translate_toplevel (for object like components)
4488         which should be completely translated (o_complex_basic.c)
4490         Added world_get_ntext_bounds (o_ntext_basic.c)
4492         Fixed a bug in o_ntext_add where the bounding box of the text item
4493         was not being set (incorrect call to get_ntext_bounds)
4495         Fixed a bug in the translate_all deal with complex objects, wrong
4496         complex translate was being called (should have been _toplevel)
4498 9/4/98  Switched to -version-info since it's more portable 
4499         
4500         Moved o_basic (mostly) out of libgeda and into gschem
4502         Removed a lot of gschem specific functions out of libgeda
4504         Made some function pointers so that various functions can be 
4505         revectored (very useful) 
4507 9/3/98  Create libgeda using libtool
4509         Forced library name to use -release instead of -version-info
4510         because library will change drastically for a while
4512         Started work on breaking (removing specifics) libgeda from gschem