* added GDK_PIXBUF_LIBS in order to create pixbuf.dll
[dia.git] / ChangeLog
blob2fda38c13fdadd9038aefc9efac40939a1c4cf5e
1 2003-01-19  Steffen Macke <sdteffen@web.de>
3         * objects/makefile.msc: added bondgraph
4         * plug-ins/makefile.msc: added GDK_PIXBUF_LIBS in order
5         to compile pixbuf.dll
6         * makefile.msc: copying all objects and dlls now
7         
8 2003-01-19  Hans Breuer  <hans@breuer.org>
10         * app/diagram.[hc] : provide dia_open_diagrams(), make
11         open_diagrams variable static
12         * app/dia.def : export it (to be used by PyDia)
13         * app/app_procs.c app/autosave.c app/diagram_tree_window.c
14           app/display.c app/dynamic_refresh.c app/layer_dialog.c
15           app/load_save.c : make use of dia_open_diagrams()
17         * app/interface.c : don't set GDK_WINDOW_TYPE_HINT_TOOLBAR
18         on win32. It removes the diagram window from the taskbar and
19         shrinks it's window title to toolbar style (newest gtk2.2 cvs)
21         * app/menus.c : add '...' to menu entries where a dialog 
22         gets invoked
23         * app/recent_files.c app/dia_embedd.c : reflect the above in 
24         menus_get_item_from_path() calls
26         * lib/libdia.def : add dia_image_rgba_data
28         * lib/properties.h lib/prop_text.[hc] : add new property
29         type StringList
30         * objects/UML/class.[hc] object/UML/class_dialog.c : use
31         StringList for attributes_strings and operations_strings to
32         make this calculated data accessible via the Property API
34         * plug-ins/python/diamodule.c : use dia_open_diagrams() and
35         provide dia.new() to create a new diagram, dia.registered_types()
36         to get on Dia's type registry, dia.message() for simple dialogs
38         * plug-ins/python/pydia-diagram.c : implement DiaDiagram.display()
39         to create a new display from a diagram. Let diagram.extents and
40         diagram.bg_color return the same types as in diagramdata.*
42         * plug-ins/python/pydia-geometry.c : add a read-only 
43         'sequence interface' to DiaPoint and DiaRectangle
45         * plug-ins/python/pydia-property.c : allow to get on StringList
46         from Python
48         * plug-ins/python/pydia-render.c : fix typo to make it compile
50         * plug-ins/python/python-startup.py : removed 'import pygtk'
51         again. This file does not need any gtk UI, and some python
52         plug-ins don't do either
54         * plug-ins/python/gtkcons.py : ported to GTK2 interface, now
55         it should actually work as intended again
57         * plug-ins/python/group_props.py : (new file) a prototype for
58         one the most requested features: Change properties of selected
59         objects in one step. Requires pygtk.
61         * plug-ins/python/select_by.py : (new file) select objects by 
62         common properties. Requires pygtk.
64         [Start of 'PyDia Self Documentation Series']
66         * plug-ins/python/pydiadoc.py : (new file) generates a new 
67         diagram which contains all objects of dir(dia)
68         
69         * plug-ins/python/otypes.py : (new file) generates a new diagram 
70         which contains all the currently registered object types sorted 
71         by their containing package
73 2003-01-18  Lars Clausen  <lrclause@cs.uiuc.edu>
75         * configure.in: Added check for Pango >= 1.1.5, which appears to
76         be enough to have text work.
77         (INTLOBJS): Added dummy subst cause gettext doesn't always seem to
78         do it.  AC_SUBST should be idempotent, though.
80 2003-01-17  Lars Clausen  <lrclause@cs.uiuc.edu>
82         * configure.in (HAVE_FREETYPE): Better test for freetype version
83         using neat macro.
84         Now actually sets HAVE_IEEEFP_H, needed for Solaris.
86         * lib/font.c: Renamed global_size_one to global_zoom_factor to
87         avoid confusion, and added comment.  Set scale factor in
88         dia_font_build_layout to 1.0 for Unix side.  This fixes at least
89         my weird scaling problems.  Fonts are now of the expectable size,
90         i.e. the space between lines at size 1.0 is 1.0.  If we want a
91         compatibility fix, we should scale fonts by about 1/0.75 from 0.90
92         diagrams, though there will always be differences.
94 2003-01-15  Lars Clausen  <lrclause@cs.uiuc.edu>
96         * plug-ins/python/python-startup.py: 
97         * plug-ins/python/gtkcons.py: Require gtk 2.0 for pygtk
99         * plug-ins/python/python.c (dia_plugin_init): Added warning
100         message for missing startup file.
102         * lib/dialibartrenderer.c (draw_image): Alpha rendering!  Yay!
103         
104         * lib/dia_image.c (dia_image_rgb_data): 
105         * app/diapsrenderer.c (draw_image): Fixed rowstride problems
106         involving EPS.  Can't do transparency in EPS yet.
108         * lib/dia_image.h: 
109         * lib/dia_image.c (dia_image_rgba_data): New function to get RGBA
110         data as one chunk.  Documentation for the RGB data getting funcs.
111         (dia_image_rgb_data): Added comment.
113         * lib/dialibartrenderer.c (draw_image): Correct rowstride handling
114         (bug #103565)
116 2003-01-13  Steffen Macke <sdteffen@web.de>
118         * lib/dia_image.c: dia_image_rgb_data() is working for
119         non-alpha images now. Fixes #93762
120         * Makefile.am: added makefile.msc to EXTRA_DIST
121         
122 2003-01-10  Steffen Macke <sdteffen@web.de>
124         * app/paginate_psprint.c: Closing print dialog when file
125         could not be written. Fixes #84746
126         
127 2003-01-04  Steffen Macke <sdteffen@web.de>
129         * doc/custom-shapes: incomplete description of <svg:text>
131 2003-01-03  Steffen Macke <sdteffen@web.de>
133         * makefile.msc(new): new makefile to create file
134         structure suitable for running dia win32 under
135         $(TOP)/dia/build/win32
136         
137 2003-01-02  Steffen Macke <sdteffen@web.de>
138         
139         * lib/dia_svg.c: including stdlib.h
140         * lib/makefile.msc: added gdk_pixbuf libs to linker
141         * app/makefile.msc: added gdk_pixbuf libs, made libart
142         libs compatible with gnuwin32 package
143         
144 2003-01-01  Hans Breuer  <hans@breuer.org>
146         * lib/font.c : more comment about global_size_one
148         * app/menus.c : <control>[<shift>]A for plain gtk build too.
150         * plug-ins/wmf/wmf.cpp : some type juggling to make 
151         msvc7 happy
153 2002-12-31  Steffen Macke <sdteffen@web.de>
155         * app/makefile.msc: added hint on how to enable console output
156         
157 2002-12-17  Lars Clausen  <lrclause@cs.uiuc.edu>
159         * objects/standard/textobj.c (textobj_load): Get the handle type
160         right, at least to be the same as when created.
162 2002-12-12  Lars Clausen  <lrclause@cs.uiuc.edu>
164         * lib/dialibartrenderer.c (draw_string): Removed extra 'is'.
166 2002-12-08  Hans Breuer  <hans@breuer.org>
168         * app/commands.c : fixed bug #85315 'give diagram properties, 
169         instead of no object selected error' almost a one-liner
171         * app/splash.c : don't make having the logo pixmap
172         mandatory. Fixes bug #96068. 
174         * app/defaults.c : avoid crashing from open-dialog,esc,open-dialog
175         sequence by connecting to the "delete_event"
176         * app/objects/uml/class_dialog.c : handle "destroy" for 
177         the same reason.
179         * lib/libdia.def : remove diaXmlNewChild again
181         * app/paginate_gdiprint.cpp : reflect Dia's page setting
182         portrait/landscape in the windoze print dialog
184         * objects/makefile.msc : only UML needs to link against
185         $(GTK2_LIBS) and only custom against $(LIBXML2_LIBS)
187 2002-12-08  Lars Clausen  <lrclause@cs.uiuc.edu>
189         * objects/standard/ellipse.c (ellipse_distance_from): 
190         * lib/geometry.c (distance_ellipse_point): Ellipse now uses the
191         correct distance function.  Could be faster, but it's not really
192         essential. 
194 2002-12-07  Lars Clausen <lrclause@cs.uiuc.edu>
196         * lib/font.c: Changed global_size_one to more correct 28.35.
197         Looks better, too.
199         * app/load_save.c:
200         * lib/dia_xml.h: 
201         * lib/dia_xml.c: Removed pretty print hack, the libxml thing works
202         after all.
204 2002-12-07  Hans Breuer  <hans@breuer.org>
206         * lib/widgets.c : g_file_get_contents() silently assumes
207         a binary file. Reflect when creating the font_menu file
208         to get rid of junk in font menus
210 2002-12-06  Hans Breuer  <hans@breuer.org>
212         * app/diapsrenderer.[hc] app/diapsft2renderer.[hc] :
213         removed 0xD 0xD 0xA line ends which get created by
214         cvs if windoze line ends 0xD 0xA are checked in from
215         *nix and checked out on win32.
217         * app/preferences.c : changed toolbox_on_top default to
218         false. It is currently not possible to change the behaviour
219         at runtime, at least not on win32.
221         * lib/dialibartrenderer.c : bug #94791 'rendering to 
222         bitmap without PangoFt2' got delayed to milestone future 
223         so wrap libart text rendering into PANGO_WIN32_FUTURE. 
224         It is not available without my Pango patch in bugzilla.
226         * lib/font.c : added comment to global_size_one and adapt
227         the arbitrary size scaling in dia_font_build_layout() for
228         win32, too. This is needed to get an acceptable font size 
229         approximation for Dia 0.90 and earlier files.
230         Also #include "message.h".
232         * app/makfile.msc app/dia.def lib/makefile.msc lib/libdia.def :
233         reflect movement of group.[hc]
234         * lib/group.h : export group_type which gets used by app/*
236         * lib/diagtkfontsel.c : added #undef GTK_DISABLE_DEPRECATED
237         to get the GtkTypeInfo definition
239         * plug-ins/makefile.msc : dxf and xfig don't need to link
240         against app/ anymore now that group is moved to lib/
242         * plug-ins/python/pydia-render.c : remove massive leaking
243         of self, i.e. PyDiaRenderer
245         *  plug-ins/python/makefile.msc : remove linking against
246         GTK libs
248 2002-12-06  Lars Clausen  <lrclause@cs.uiuc.edu>
250         * objects/standard/line.c: Removed properties options for gaps,
251         until release is done.
253         * configure.in: Check for freetype version.
255         * lib/text.c (text_insert_char): Fixed small buffer overflow for
256         length = 0.
258         * lib/dialibartrenderer.c (draw_string): Removed debugging printf.
260         * app/diapsft2renderer.h: 
261         * app/diapsft2renderer.c: 
262         * app/diapsrenderer.h: 
263         * app/diapsrenderer.c: Split ps rendering into standard and freetype.
265         * app/render_eps.c (export_eps, new_psprint_renderer): Using
266         PS_FT2 renderer when available.  Old render stuff killed.  Yay!
268         * lib/properties.h: Fixed bad frame end def.
270         * app/Makefile.am (dia_core_files): Added diapsft2renderer.[ch].
272         * lib/dia_xml.c (data_add_string): Avoid #-less strings.
273         
274         * objects/bondgraph/Makefile.am: Removed unneeded EXTRA_DIST.
276 2002-12-05  Lars Clausen  <lrclause@cs.uiuc.edu>
278         * lib/font.c: Now checking for the proper dia-style standard fonts.
280         * lib/Makefile.am: 
281         * app/Makefile.am: Moving group.[ch]
283         * plug-ins/dxf/dxf-import.c: 
284         * plug-ins/xfig/xfig-import.c: 
285         * plug-ins/xfig/xfig-export.c: Now can refer directly to group.h.
287         * app/object_ops.c: 
288         * app/object_ops.h: 
289         * lib/object.c (object_list_move_delta, object_copy_list): 
290         * lib/object.h: Moved some object-related functions from
291         object_ops to object to assist moving group.c.
293         * lib/diatypes.h: Added Group typedef.
295         * lib/group.h: 
296         * lib/group.c: Moved from app to lib to a) resolve plug-ins
297         references, and b) make groups more "real" objects.
299         * lib/Makefile.am (libdia_la_SOURCES): Added diatyps.h
301 2002-12-03  Lars Clausen <lrclause@cs.uiuc.edu>
303         * lib/font.c (dia_font_init): Added check that the three standard
304         fonts exist.
306 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
308         * lib/dia_xml.[ch]:
309         * app/load_save.c: Linebreaks in dia files, no indentation.
310         Should help text tools.  xmlNewChild wrapped in diaXmlNewChild for
311         this. 
312         
313         * objects/standard/line.c: Small but important fixes to the line
314         gap code.
316         * lib/dia_xml.h: 
317         * lib/dia_xml.c (diaXmlNewChild): 
318         * app/load_save.c (diagram_data_write_doc, write_objects): Simple
319         XML prettyprinting wrapper.
321 2002-12-03  Steffen Macke <sdteffen@web.de>
323         * shapes/Cisco/Makefile.am:
324         * shapes/Cisco/*.shape: finished conversion of Cisco icons
325         to *.png
326         
327 2002-12-02  Steffen Macke <sdteffen@web.de>
329         * doc/en/Makefile.am:
330         * doc/en/usage-objects.sgml:
331         * doc/en/graphics/line_icon.png: (new) added line icon
332         
333 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
335         * objects/standard/line.c: Binary search object edge line gap.
337 2002-12-01  Lars Clausen  <lrclause@cs.uiuc.edu>
339         * configure.in: Added Cisco makefile, sorted Makefiles list.
341         * shapes/Makefile.am (SUBDIRS): Added Cisco dir
343         * configure.in: Now checks for availability of PangoFT2 and
344         FreeType, raising an error if not found.
346         * app/Makefile.am (dia_core_files): Adding diapsft2renderer from
347         Hans.
349 2002-12-01  Steffen Macke <sdteffen@web.de>
350         
351         * doc/en/usage-loadsave.sgml: updated information on import
352         and export formats
353         
354 2002-11-28  Lars Clausen  <lrclause@cs.uiuc.edu>
356         * app/commands.c (edit_copy_callback): Freeing copy_list.
358 2002-11-28  Steffen Macke <sdteffen@web.de>
359         
360         * app/render_libart.c: art_config.h was included twice
362 2002-11-27  Lars Clausen  <lrclause@cs.uiuc.edu>
364         * sheets/.cvsignore: More ignorance.
366         * lib/diagdkrenderer.c (draw_string): Removed silly #ifdef 1.
368         * lib/prop_widgets.h: Two (currently unused) settings for frame
369         foldability.
371         * lib/prop_widgets.c (frame_beginprop_get_widget): Frames are now
372         (by default) foldable. 
374         * lib/propinternals.h: 
375         * lib/propdialogs.c (prop_dialog_add_raw_with_flags): Way to add
376         widgets in a more controlled manner.
378         * objects/standard/line.c (line_update_data): Line gap things
379         inserted.  Can do xeyes now:)
381 2002-11-26  Christian Neumair  <chris@gnome-de.org>
383         * .cvsignore: Changed.
384         * objects/bondgraph/.cvsignore, plug-ins/metapost/.cvsignore,
385         plug-ins/xslt/.cvsignore, shapes/Assorted/.cvsignore, shapes/Misc/.cvsignore:
386         Added.
388 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
390         * app/pixmaps/delete.xpm: Trashcan stolen from Gimp.
392         * lib/widgets.c (dia_font_selector_get_font): Fixed wrong name
393         passing to font hash.
395         * app/filedlg.c (file_save_as_ok_callback): Check that filename is
396         utf-8 or locale-convertible before adding to dialog text.  This
397         probably needs done in a number of places where we get text from
398         the environment and send it to GTK to display.
400         * lib/widgets.c: Fixed case problems for font menu entries.
402         * objects/SADT/annotation.c: Don't run the event test (but leave
403         it here for inspiration).
405         * lib/widgets.c: 
406         * lib/widgets.h: Allowing setting preview text for fonts.
408 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
410         * objects/bondgraph/Makefile.am: 
411         * objects/bondgraph/bondgraph.c: 
412         * configure.in: 
413         * objects/Makefile.am: Added bond graph dir.
415 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
417         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor size.
419 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
421         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor
422         positioning. 
424         * app/diapsrenderer.c: Freetype rendering is back in force.
426         * app/disp_callbacks.c: Added missing updates for pre-text-change.
428 2002-11-25  David Hoover <jazzdaq@yahoo.com>
430         * app/render_libart.c: Added missing #include line for libart.
432         * lib/geometry.h:
433         * lib/geometry.c: Added point_convex function.  This computes
434         points inside a line segment (0 <= alpha <= 1) or outside the
435         line segment (alpha < 0 | alpha > 1).
437         * objects/standard/line.c: Line now has additional code/attributes
438         which permit the line to extend past the line anchors (gap < 0) or
439         leave a gap without reaching the anchor (gap > 0).  If no gap is
440         specified, the default gap of 0 will result in identical line
441         behavior as before.  If the 'fractional' attributes are TRUE, the
442         gap length is not fixed, but a percentage of the line length.  I
443         did not know how create the GTK widgets so the gap code currently
444         cannot be used without adding XML attributes by hand.
446 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
448         * lib/diagdkrenderer.c (draw_string): Removed timing bits.
450         * lib/Makefile.am (libdia_la_SOURCES): Added fontsel files to SOURCES.
452 2002-11-24  Lars Clausen  <lrclause@cs.uiuc.edu>
454         * lib/font.c: Debugging functionality in separate functions.
456         * lib/widgets.c: Using fontsel with context.
458         * lib/diagtkfontsel.[ch]: Context-aware copy of the GTK fontsel.
460         * objects/custom/custom_object.c: Orientation handling for shapes,
461         patch thanks to Martin Hans <opfinder@gmx.net>.
463         * objects/standard/zigzagline.c (zigzagline_move_handle): Starting
464         work on even better orientation handling.
466         * app/menus.c (menus_get_item_from_path): Fixed sily warnings from
467         casting NULL pointers.  Should be unnecessary in an upcoming GTK
468         release. 
470 2002-11-18  Lars Clausen  <lrclause@cs.uiuc.edu>
472         * lib/font.h:
473         * lib/font.c:
474         * lib/widgets.c: Now uses correct context to get font families.
476         * lib/diagdkrenderer.c (get_text_width, draw_string): 
477         * lib/dialibartrenderer.c (draw_string): 
478         * lib/font.h: 
479         * lib/font.c (dia_font_init): Removed old kludgy font name compare.
480         (dia_font_build_layout): Unified the twiddle factors into a use of
481         global_size_one.  But I deeply distrust Pango for seeming to
482         change size of fonts every time I turn my back.
484         * app/display.c: 
485         * app/diagram.c: 
486         * app/menus.c:
487         * app/menus.h: Updated some more methods to also be more specific
488         on the types.
490         * app/menus.h:
491         * app/recent_files.c: 
492         Changed to return most specific type, to avoid run-time type errors.
494         * app/menus.c (menus_get_item_from_path): Non-gnome version now
495         gets menu_item rather than widget, which works better.
497 2002-11-17  Cyrille Chépélov  <cyrille@chepelov.org>
499         * app/display.c: (new_display):
500         * app/menus.c: (menus_get_item_from_path):
501         Relying on the tearoff to locate the input methods menu wasn't a
502         good idea: tearoffs seem to be an endangered species nowadays.
503         Anyway, the IM menu seems to be working now.
505         * app/interface.c: hinted the window manager that the toolbox window
506         is a toolbox window. Not that my (fairly default configuration)
507         sawfish cares, but other NETWM compliant WMs may.
509         * app/commands.c: 
510         * app/defaults.c: 
511         * app/dia-props.c:
512         * app/filedlg.c: 
513         * app/interface.c: 
514         * app/layer_dialog.c: 
515         * app/linewidth_area.c: 
516         * app/properties.c: 
517         * app/sheets_dialog.c: 
518         * app/splash.c: 
520         The GTK doc says to avoir gtk_window_set_wmclass() and 
521         gtk_window_set_policy(), and use gtk_window_set_role() and
522         gtk_window_set_resizable(), respectively.
523         
524         * app/preferences.c: (prefs_create_dialog):
525         * app/preferences.h:
526         * app/display.c: (display_set_active):
527         Added a preference to have the toolbox hover over diagram windows.
528                 
529 2002-11-12  Lars Clausen  <lrclause@cs.uiuc.edu>
531         * lib/diagdkrenderer.c (get_text_width, draw_string):
532         Freetype-based string drawing now works.  Not very fast, though.
533         I wish I could use the graphics card for this:(  I'm doing three
534         bitmap loops where I should be doing one.  The size is not correct
535         either, despite having get_text_width give the right thing.
537 2002-10-21  Lars Clausen  <lrclause@cs.uiuc.edu>
539         * app/connectionpoint_ops.c (diagram_update_connections_object):
540         Allows more than one connectionpoint on an object to be moved at a
541         time (bug #96306).
543 2002-10-18  Stanislav Brabec  <sbrabec@suse.cz>
545         * configure.in: Added cs to ALL_LINGUAS.
547 2002-10-17  Lars Clausen  <lrclause@cs.uiuc.edu>
549         * app/paginate_psprint.c: Removed unnecessary decl of autosave
550         stuff.
552         * app/display.c (ddisplay_set_renderer): Calls to begin/end render.
554         * app/export_png.c (export_png_ok): Saving more variables from the
555         evil setjmp.
557 2002-10-16  Lars Clausen  <lrclause@cs.uiuc.edu>
559         * lib/dialibartrenderer.c (begin_render):
560         (end_render): Correct pushing and popping of font contexts.
561         (draw_string): Double zooming eliminated, strange twiddle factor
562         introduced (grumble).  Close to working now, but there are still
563         strange differences from font to font.  In particular, some fonts
564         really mess with the cursor and extents.
566         * app/render_eps.c (export_eps): 
567         * app/diapsrenderer.c (dia_ps_renderer_finalize): 
568         Fixed file closing confusion, no longer dependent on PS/EPS.
570         * app/diagram.c (diagram_place_down_selected) 
571         (diagram_place_up_selected): Now implemented.
573         * lib/font.c (dia_font_init): 
574         * lib/font.h: 
575         Redesigned the font init/context pushing code.  Start of fix for
576         font name differences.
577         
578 2002-10-15  Kjartan Maraas  <kmaraas@gnome.org>
580         * app/sheets_dialog_callbacks.c: Fix a typo.
581         
582 2002-10-15  Hans Breuer  <hans@breuer.org>
584         * app/diapsrenderer.[hc] : (new files, old content :-)
585         simple base class for post script rendering. Does neither 
586         use Pango/FT2 nor does it handle non latin1 characters. 
587         The fancy stuff which nowadays appears to be needed should 
588         probably be done in derived class(es)
590         * app/makefile.msc app/Makefile.am : added new files
592         * app/paginate_psrint.c : re-enabled and used as test
593         for the simple ps renderer above.
595         * app/render_eps.[hc] : ripped out common ps code and
596         moved to DiaPsRenderer. The rest of the file is mostly
597         disabled. And I don't understand enough of it to 
598         change port it.
600         * app/diaepsrenderer.h : short lived, removed.
602 2002-10-15  Lars Clausen  <lrclause@cs.uiuc.edu>
604         * lib/plug-ins.c (dia_register_plugin): Don't try to load libdia
605         as a plugin (thanks to Torben Nielsen).
607 2002-10-14  Lars Clausen  <lrclause@cs.uiuc.edu>
609         * app/diaepsrenderer.h: 
610         * app/render_eps.h: 
611         * app/paginate_psprint.c: 
612         #ifdef'd out enough ps stuff to allow compile.  Now we just need
613         to convert it.
614         
615 2002-10-12  Hans Breuer  <hans@breuer.org>
617         [last plug-in ported]
619         * plug-ins/xfig/xfig-export.c : ported to new renderer api
621         * plug-ins/xfig/xfig-import.c(fig_create_object) : need to
622         scale color values to [0..1.0] to properly reconstruct
623         user colors
625         * plug-ins/xfig/xfig-common.c : some cleaning
627 2002-10-12  Hans Breuer  <hans@breuer.org>
629         [decrease inter-plug-in-dependencies]
631         * objects/custom/shape_info.[hc] : move parse_style()
632         to lib/dia_svg.[hc] as dia_svg_parse_style(); Namespace
633         the related structs and constants.
634         * objects/custom/custom_object.c : reflect namespace
635         changes
637         * lib/dia_svg.[hc] : new files
638         * lib/makefile.msc lib/Makefile.am : add new files
639         * lib/libdia.def : updated externals
641         * plug-ins/svg/svg-import.c : use dia_svg_parse_style()
643         * plug-ins/svg/svg.c : enable svg import for win32 (and
644         probably for other non ELF builds)
646         * plug-ins/makefile.msc : enable svg import
648 2002-10-11  Hans Breuer  <hans@breuer.org>
650         * plug-ins/metapost/render_metapost.[hc] : ported
652         * plug-ins/pstricks/render_pstricks.[hc] : dito
654 2002-10-11  Hans Breuer  <hans@breuer.org>
656         * plug-ins/cgm/cgm.c : ported, appears to work as before,
657         but graphic apps available to me can't import the generated 
658         files (the could not with Dia-0.90 cgm as well) ...
660         * plug-ins/dxf/dxf-export.c : Ported to new renderer api.
661         Removed all those function which did emulate 'complex' 
662         drawing ops with basic ones (e.g. rect by line) cause this
663         stuff is already provided by the base class
664         * plug-ins/dxf/dxf-import.c : removed render.h include
666         * plug-ins/python/pydia-font.[hc]
667           plug-ins/python/pydia-text.c : finally ported to new font api
669         * plug-ins/python/pydia-layer.c : add extra parameter
670         to layer_find_closest_connectionpoint()
672         * plug-ins/python/pydia-render.c : ported to DiaRenderer api
674         * plug-ins/python/python.c : added missing copyright notice
676         * plug-ins/hpg/hpgl.c plug-ins/wpg/wpg.c plug-ins/wmf/wmf.cpp : 
677         actually use the renderers set_font implementation
679         * plug-ins/renderer.inc : unused now, removed
680         * plug-ins/Makefile.am : reflect it
682 2002-10-08  Hans Breuer  <hans@breuer.org>
684         * app/render_gdk.c : don't add the InteractiveRenderer
685         interface multiple times (it's added to the type, not
686         the object)
687         * app/render_libart.c : dito. It's currently added
688         unconditional cause eport_png uses it, but claims
689         to be non-interactive. Probably set_size should be moved
690         to the DiaRenderer interface.
692         * lib/dialibartrenderer.c : add implementations for
693         get_<width|height>_pixels. Libart rendering works again.
694         DiaLibartRenderer::draw_image : use dia_image_rowstride()
695         instead of width*3
697         * lib/diatransform.c(dia_transform_coords_double) :
698         don't ROUND() the returned values
700         * plug-ins/pixbuf/pixbuf.c : added import function. It
701         simply creates a wrapping "Standard - Image" object.
703         * plug-ins/shape/shape-export.c : use the more direct
704         method to call base class methods
706 2002-10-07  Lars Clausen  <lrclause@cs.uiuc.edu>
708         * lib/font.c (dia_font_init): Changed dia_font_init to return old
709         pango context, to allow stacked contexts (for printing while
710         antialiased).
711         
712         * lib/arrows.h
713         * lib/bezier_conn.h
714         * lib/beziershape.h
715         * lib/boundingbox.h
716         * lib/color.h
717         * lib/connection.h
718         * lib/connectionpoint.h
719         * lib/create.h
720         * lib/dia_image.h
721         * lib/diagdkrenderer.h
722         * lib/diagramdata.h
723         * lib/dialibartrenderer.h
724         * lib/diamenu.h
725         * lib/diarenderer.h
726         * lib/diasvgrenderer.h
727         * lib/diatransform.h
728         * lib/element.h
729         * lib/filter.h
730         * lib/focus.h
731         * lib/font.h
732         * lib/geometry.h
733         * lib/handle.h
734         * lib/neworth_conn.h
735         * lib/objchange.h
736         * lib/object.h
737         * lib/orth_conn.h
738         * lib/paper.h
739         * lib/plug-ins.h
740         * lib/poly_conn.h
741         * lib/polyshape.h
742         * lib/properties.h
743         * lib/ps-utf8.h
744         * lib/sheet.h
745         * lib/text.h
746         * lib/textattr.h
747         * lib/widgets.h
748         * lib/diatypes.h
749         Moved all externally visible struct typedefs into diatypes.h, as
750         per Hans' suggestions.
752 2002-10-07  Steffen Macke <sdteffen@web.de>
754         * lib/Makefile.am: removed a '\' causing problems
756 2002-10-07  Hans Breuer  <hans@breuer.org>
758         [Libart Renderer resurrected; almost it's compiling but
759          almost instantly crashing :-]
761         * lib/dialibartrenderer.[hc] : new files, ported to DiaRenderer
762         * app/render_libart.[hc] : ported to DiaInteractiveRenderer
763         * lib/diatransform.[hc] : added dia_transform_coords_double()
765         * app/display.c : the right parameters for new_renderer_libart()
766         * app/export_png.c : ported, removed the blind Display hack
768         * app/makefile.msc lib/makefile.msc 
769           lib/Makefile.am : updated
771         * lib/dia<|gdk|interactive>renderer.c : properly copyrighted
773 2002-10-06  Hans Breuer  <hans@breuer.org>
775         See also: 
776         http://mail.gnome.org/archives/dia-list/2002-October/msg00027.html
778         * lib/dia-enums.h lib/diatransform.[hc]
779           lib/diarenderer.[hc] lib/diainteractiverenderer.c
780           lib/diagdkrenderer.[hc] lib/diasvgrenderer.[hc]
781         : new files 
783         * lib/makefile.msc lib/makefile.am : added new files
785         * lib/plug-ins.c : g_module_error() returns a locale
786         string, convert to utf8 before further usage 
788         * lib/render.h : #error out. Everything including this
789         needs porting
790         * lib/*.[hc] : ported to new renderer api
792         * app/diaepsrenderer.h : unfinished DiaEpsRenderer interface
793         just to make the rest compile
794         * app/render_eps.c : temporary disabled all of this
795         * app/render_eps.h : removed RendererEPS
797         * app/render_gdk.[hc] : a small wrapper around the new
798         DiaGdkRenderer form lib/*
800         * app/render_libart.h : removed RenderLibart definition
801         * app/render_libart.c : not yet ported to new DiaRenderer
802         but having an implementation to untie form FT2 dependency
803         at least on win32. It is using new Pango api form bug #94791
805         * app/render_pixmap.[hc] : a small wrapper around the new
806         DiaGdkRenderer form lib/*
808         * app/display.h : removed render_*.h includes
809         * app/display.c : the only place where specific 
810         renderers need to be known
812         * app/connectionpoint_ops.c app/grid.c app/handle_ops.c
813         use new DiaInteractiveRenderer interface
815         * app/*.c : ported to new renderer api
816         * object/*/*.c : ported to new renderer api
817         s/render.h/diarenderer.h/
818         s/Renderer/DiaRenderer/
819         s/renderer->ops/renderer_ops/
820         add in every draw method:
821         DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
823         * plug-ins/hpgl/hpgl.c : 
824           plug-ins/wmf/wmf.cpp 
825           plug-ins/wpg/wpg.c : ported to be DiaRenderer based
826         * plug-ins/shape/shape-export.c
827           plug-ins/svg/render_svg.c : ported to be DiaSvgRenderer based
828           (nice how small these files became :-)
830 2002-09-28  Hans Breuer  <hans@breuer.org>
832         * */makefile.msc : updated
834         * app/defaults.c : don't gdk_invalidate_rect(NULL)
835         * app/disp_callbacks.c : 
836         can't cast GtkWindow to GdkWindow, use shell->window
837         (ddisplay_unrealize) don't use already unrefed im_context
838         * app/display.c :
839         can't cast from GtkMenu to GtkMenuItem
840         (ddisp_destroy) : mark im_context as unrefed
842         * lib/dia_xml (data_font) : prefer new font format over old one
843         (data_add_font) : write the legacy name to allow file exchange
844         with pre Pango versions of Dia, which would otherwise crash 
845         on missing font 'name' attribute.
846         * lib/font.c (dia_font_get_legacy_name) : improved implementation
847         to get a better match.
849         * lib/libdia.def : updated
851         * lib/messages.c : don't gdk_widget_show(NULL)
853         * lib/prop_text.c : don't gtk_entry_set_text() with NULL string 
855         [make Dia compile, link _and_ work with mingw/gcc3.2]
857         * config.h.win32 : #define LIBXML, this gets defined from libxml
858         header but only for _MSC_VER. The mingw build did access an 
859         unitialized function pointer for xmlFree.
861         * */makefile.mingw : updated (some plug-ins have build issues)
862         
863         * lib/handle.h lib/object.h :   there appears to be no 
864         forward declaration of the form 
865                 typedef enum _HandleId HandleId 
866         (at least not with GCC 3.2 for C++) ../lib/handle.h:22: 
867         use of enum `_HandleId' without previous declaration
869         * app/paginate_gdiprint.cpp : added a hack to avoid g++
870         naming conflict on 'export'
872         * app/paginate_gdiprint.h : forward declare Diagram
874         * objects/SADT/annotaion.c : use g_random_double()
876 2002-09-26  Lars Clausen  <lrclause@cs.uiuc.edu>
878         * app/modify_tool.c: Made motion not happen until sufficiently
879         large or past double-click interval, to avoid accidental moving
880         when doubleclicking.  Got the double-click time right, and fixed
881         some issues with release.  There are some corner cases that may
882         exhibit strange behaviour, will look at those later.  Nah, let's
883         not care about those, they are rare and not dangerous.
885 2002-09-26  Cyrille Chépélov  <cyrille@chepelov.org>
887         * app/layer_dialog.c: 
888         * app/load_save.c: 
889         * plug-ins/dxf/dxf-import.c: 
890         * plug-ins/python/pydia-diagram.c: 
891         * lib/diagramdata.c:
892         * lib/diagramdata.h:
893         Improved the consistency of the obj->parent_layer backlinks (esp.
894         during reloads)
896         * lib/Makefile.am:
897         * lib/dummy_dep.h:
898         * lib/dynamic_obj.[ch] (NEW):
899         * app/Makefile.am:
900         * app/app_procs.c: 
901         * app/dynamic_refresh.[ch] (NEW):
902         * objects/Misc/analog_clock.c: 
903         Added support for dynamic refresh (animated objects).
904                 
905 2002-09-25  Cyrille Chépélov  <cyrille@chepelov.org>
907         Patch from Owen Taylor <otaylor@redhat.com>:    
908         * doc/en/Makefile.am:
909         * doc/en/dia-manual.sgml:
910         * doc/en/usage-objects.sgml:
911         * doc/en/usage-quickstart.sgml:
912         * doc/pl/Makefile.am:
913         * doc/pl/dia-manual.sgml:
914         * doc/pl/usage-objects.sgml:
915         * doc/pl/usage-quickstart.sgml:
917         - Change the DTD declration from an outdated GNOME one to a
918         standard DTD.
919         
920         - Remove close tags for <graphics> which aren't allowed for
921         docbook SGML
922         
923         - A hacky fix for a problem where some versions of db2html don't
924         create *.css files. (If *.css doesn't match anything, then you get
925         the global explicitely.)
927         (Closes: #92061)
928         
929 2002-09-24  Cyrille Chépélov  <cyrille@chepelov.org>
931         * objects/custom/custom_object.c: 
932         * objects/custom/shape_info.[ch]: GE_TEXT display lists elements 
933         were never properly prepared for use when reloading a shape with
934         <svg:text> elements. Thanks to Scott Frazer <frazer@nc.rr.com> for
935         reporting the problem and coming up with a fix! (Closes: #93974)
937         * app/menus.c: patch from Alan Horkan <horkana@tcd.ie>: review
938         the menu shortcuts towards better GNOME HIG compliance (Closes: #87157)
940         * app/menus.c:
941         * app/display.c: updated menu item paths Alan's patch had moved.
942         
943         * app/interface.c: Fixed a crash when gdk-pixbuf doesn't want to
944         load the sheet-provided icon (libpng versions mismatch, grrr.).
945         
946         * configure.in:
947         * objects/Makefile.am:
948         * objects/Misc/Makefile.am (NEW):
949         * objects/Misc/libmisc.c (NEW):
950         * objects/Misc/analog_clock.c (NEW):
951         * objects/Misc/pixmaps/analog_clock.xpm (NEW):
952         * sheets/Misc.sheet.in: just a little experiment...
954 2002-09-23  Cyrille Chepelov  <cyrille@chepelov.org>
956         * plug-ins/xlst/Makefile.am: found a way to silence automake while
957         not forcing everyone to build using libxslt.
959         * lib/font.c: 
960         * lib/message.c:
961         * lib/object_defaults.c:
962         * lib/intl.[ch]:
963         * lib/render.c:
964         * lib/properties.[ch]:
965         * lib/propobject.c:
966         * objects/standard/box.c: 
967         * objects/UML/state_term.c:
968         * objects/FS/box.c:
969         * objects/FS/flow-ortho.c:
970         * app/app_procs.c:
971         * app/autosave.c:       
972         * app/commands.c:
973         * app/diagram_tree.c:
974         * app/display.c:
975         * app/disp_callbacks.c:
976         * app/export_png.c:
977         * app/filedlg.c:
978         * app/lineprops_area.c:
979         * app/menus.c:  
980         * app/preferences.c:
981         * app/render_eps.c:     
982         * app/sheets.c:
983         * app/sheets_dialog_callbacks.c:
984         * plug-ins/xslt/xslt.c:
985         * plug-ins/metapost/render_metapost.c:
986         * plug-ins/xfig/xfig-export.c:
987         * plug-ins/shape/shape-export.c:
988         
989         Killed most gcc-3.2 warnings (const-correctness and derived warnings, 
990         unused variables, mostly)
992         * app/display.c:
993         * app/menus.c: enabled GTK Input Methods (thanks Lars!)
995         * app/Makefile.am: modified run_dia.sh so that we recover the
996         ability to run a debugger despite libtool's hacks.
998         * plug-ins/dxf/Makefile.am: 
999         * app/Makefile.am
1000         "make distcheck" fixes.
1001         
1002 2002-09-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1004         * objects/UML/uml.c (uml_get_operation_string): Patch from Mauf
1005         <mfranzoni@madd.it>:  Check for the type being NULL.
1007 2002-09-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1009         * app/render_eps.c (set_font): Re-tweaked font size for printing.
1011 2002-09-12  Cyrille Chepelov  <cyrille@chepelov.org>
1013         Patch from Angus Ainslie <angusa@deltatee.com>:
1014         * plug-ins/dxf/dxf-import.c:
1015         * plug-ins/dxf/autocad_pal.h: Import from visio 2002 improvements.
1017         (plus a couple extra fixes by me, such as the removal of printf's,
1018         adapting for recent changes, and killed a couple warnings) 
1020         * app/authors.h: a 60K patch isn't insignificant, is it?
1021         
1022 2002-09-09  Tor Lillqvist  <tml@iki.fi>
1024         * configure.in: Check for both pangoft2 (using PKG_CHECK_MODULES,
1025         as before) and -lfreetype (using AC_CHECK_LIB). At least on
1026         Solaris with Sun's compiler (Forte C), you need to link also the
1027         dia application with -lfreetype, even if it is implicitly linked
1028         to by -lpangoft2. Rename FREETYPE_CFLAGS and _LIBS to PANGOFT2_*,
1029         which is what they actually mean. Use FREETYPE_LIBS for
1030         -lfreetype.
1032         Don't look for libsunmath if isinf() is not found in math.h (as on
1033         Solaris). The sunmath library is part of Forte C and not present
1034         on all machines. Besides, even if isinf was found in libsunmath,
1035         we didn't use it in the Makefile.am.
1036         
1037         Fix a couple of bashisms.
1039         AC_SUBST also Z_LIBS, need to link the dia application to -lz,
1040         too, on Solaris with Forte C.
1042         Don't try to use the gcc flags with other compilers.
1043         DIA_CHECK_CFLAG gives a false indication that Forte C understands
1044         the gcc -f switches, but in fact they get interpreted meaning
1045         something completely different.
1047         Define the automake conditional HAVE_CGC.
1048         
1049         * app/Makefile.am (dia_LDADD): Add Z_LIBS and FREETYPE_LIBS.
1051         Use -export-dynamic only with gcc.
1053         * */Makefile.am
1054         * */*/Makefile.am: Modify according to the FREETYPE_CFLAGS -> 
1055         PANGOFT2_CFLAGS rename.
1057         * lib/geometry.h: Drop HAVE_SUNMATH_H and <sunmath.h> per above.
1058         
1059         * lib/dia_xml.c: Include geometry.h for the isinf() stuff on
1060         Solaris.
1062         * lib/paper.c: Workaround for gccism: Can't use inline this way with
1063         Forte C, either.
1065 2002-09-08  Cyrille Chepelov  <cyrille@chepelov.org>
1067         * lib/text.c(set_string): fixed a memory leak (char* ain't no
1068         std::auto_ptr<char> !).
1070         * app/display.[ch]:
1071         * app/interface.[ch]:
1072         * app/ddisp_callbacks.[ch]: Added some basic support for input 
1073         methods (GtkIMContext-based)
1075         * lib/Makefile.am:
1076         * app/Makefile.am: made libdia a shared object (per Tor
1077         Lillqvist's suggestion/request), to cope for platforms with a less
1078         than par dynamic library loader.
1080         * app/display.c: disabled the input method menu (I really don't
1081         see where and how to put them. Blame Frozen Bubble )
1082         
1083 2002-09-06  Lars Clausen  <lrclause@cs.uiuc.edu>
1085         * objects/flowchart/box.c (box_update_data): Made resizing
1086         possible again (only set width & height when resized too small).
1088         Patch from Soeren Sandmann <sandmann@daimi.au.dk>:
1090         * app/disp_callbacks.c (ddisplay_canvas_events): Handle
1091         GdkScrollEvents.
1092         
1093 2002-09-05  Cyrille Chepelov  <cyrille@chepelov.org>
1095         * app/authors.h: now showing Akira TAGOH's name in the native script.
1097 2002-09-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1099         * plug-ins/xslt/xslt.c: Removed glib warning for unset
1100         DIA_PLUGIN_PATH.
1102 2002-09-01  Cyrille Chepelov  <cyrille@chepelov.org>
1104         * plug-ins/svg/render_svg.c: Applied (reversed...) patch from
1105         Mike Sowka <msowka@rogers.com>. This fixes a problem with the
1106         sweep flag in arcs.
1108 2002-08-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1110         * objects/UML/class.c: Fixed showing of empty stereotypes and got
1111         the string placed correctly.
1113 2002-08-30  Hans Breuer  <hans@breuer.org>
1115         * lib/font.c (dia_font_get_style) : don't shift already
1116         shifted DIA_FONT values.
1118         * lib/libdia.def : updated externals
1120         * app/disp_callbacks.c : on win32 GdkEventKey::string already
1121         is in UTF-8. (Longterm this probably should be handled on the
1122         gtk api level)
1124         * app/command.[hc] app/display.[hc] app/menus.c : add code to 
1125         switch display renderers again. The libart renderer is very 
1126         useful for win9x with it's limited GDI.
1128         * app/render_gdk.c : use g_warning instead of printf which gets
1129         nowhere on win32 (non console apps)
1131         * app/render_libart.c : make it compile without FREETYPE
1133         * objects/makefile.msc plug-ins/makefile.msc : added clean target
1135 2002-08-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1137         * app/render_eps.c (postscript_draw_contour): Debugging statement
1138         that allowed me to figure out font problems.
1140         * lib/widgets.c (dia_font_selector_set_styles): Use radio menu
1141         items for font styles.
1143         * objects/FS/flow-poly.c: 
1144         * objects/FS/flow-ortho.c: 
1145         * objects/FS/flow.c: Further conversion away from GTK dialogs.
1146         Can't set a default label right now:(
1148         * app/interface.c (fill_sheet_wbox): Added initialization for mask.
1150 2002-08-27  Cyrille Chepelov  <cyrille@chepelov.org>
1151         Patch from Andrew Ferrier  <andrew@new-destiny.co.uk>:
1153         * Makefile.am: rules relating to AUTHORS and THANKS
1154         altered.
1155         * AUTHORS: file content changed to more accurately
1156         reflect guideline requirements.
1157         * TODO: warning added about Gnome BTS.
1158         * KNOWN_BUGS: warning added about Gnome BTS.
1160         ---
1162         * AUTHORS: added full copyright info.
1163         * mkauthors-placeholder: (removed) 
1164         
1165 2002-08-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1167         * app/paginate_psprint.c (print_page): Fixed text printing after
1168         tip from Dov Grobgeld.
1170 2002-08-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1172         * app/paginate_psprint.c (print_page): Fixed color of clip
1173         region.
1175 2002-08-26  Cyrille Chepelov  <cyrille@chepelov.org>
1177         * sheets/Makefile.am: enabled intltool-merge translation cache for
1178         sheets.
1180         * Makefile.am:
1181         * mkauthors-placeholder:
1182         * AUTHORS: revived that file (in a placeholder form) so that
1183         automake stops yelling.
1184         (derived from a patch by Andrew Ferrier <andrew@new-destiny.co.uk>) 
1185         (Closes: #91144)
1187         Heh, by the way, thanks Christophe. I feel better now.
1188         
1189 2002-08-25  Christophe Merlet  <christophe@merlet.net>
1191         * app/command.c: Removed invalid multibyte sequence in Chepelov.
1193 2002-08-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1195         * lib/dia_image.c (dia_image_rgb_data): 
1196         Bugfixes in image data retrieval.
1197         
1198         * app/render_eps.c: Refactoring of new_*_renderer.
1200 2002-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1202         * app/render_eps.c: 
1203         * lib/dia_image.h: 
1204         * lib/dia_image.c: Support for rowstride != width (odd width images)
1206 2002-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
1208         * lib/paper.c (get_paper_info): Fixed NULL prefs problem.
1209         * plug-ins/xfig/xfig-import.c: Removed assertion.
1211 2002-08-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1213         * lib/paper.c: Removed app/preferences.h reference.
1215 2002-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1217         * plug-ins/svg/svg-import.c: 
1218         * plug-ins/xfig/xfig-import.c: 
1219         * lib/Makefile.am (libdia_a_SOURCES): 
1220         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
1221         * lib/create.h:
1222         * objects/standard/create.h:
1223         * objects/standard/polygon.c (polygon_create): 
1224         * objects/standard/polyline.c (polyline_create): 
1225         * objects/standard/beziergon.c (beziergon_create): 
1226         * objects/standard/bezier.c (bezierline_create): 
1227         Moving create.h into lib.
1229 2002-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
1231         * app/render_libart.[ch]: Work on PNG font export.  Something's
1232         still fishy with the scaling, I don't get it.
1234         * app/display.c: 
1235         * app/interface.c: Replaced broken zoom combo with entry+menu.
1236         Now works beautifully.  Removed WITHOUT_ZOOM_COMBO stuff.
1238         * app/render_gdk.c (get_text_width): Checks for validity of text.
1239         Temporary help while debugging input -- should only activate on
1240         invalid input.
1242         * objects/SADT/annotation.c: 
1243         * objects/GRAFCET/transition.c: 
1244         * objects/FS/function.c: Removal of gtk.h include.
1246         * objects/UML/state.c (state_load): Warnings about using State
1247         object for initial/final states.
1249         * plug-ins/cgm/cgm.c (init_fonts): Proper Pango interfacing.
1251 2002-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
1253         * app/render_eps.c: Text rendering that scales correctly.  Too bad
1254         the standard fonts don't get selected right.
1256 2002-08-09  Lars Clausen  <lrclause@cs.uiuc.edu>
1258         * lib/diagramdata.h: 
1259         * lib/paper.c (get_paper_info): 
1260         * lib/paper.h: 
1261         * plug-ins/xfig/xfig-import.c: 
1262         Committed before testing.  I am so embarrased.  This compiles, now
1263         that the includes are in the right order.
1264         
1265         * app/diagram.c (diagram_init): 
1266         * app/app_procs.c (do_convert): 
1267         * app/preferences.h: 
1268         * lib/diagramdata.h: 
1269         * lib/diagramdata.c (new_diagram_data): 
1270         * lib/paper.h: 
1271         * lib/paper.c (get_paper_info): 
1272         Moved new_diagram part of prefs into lib/diagramdata.h.  More
1273         could be done in new_diagram_data() now.
1275 2002-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
1277         * app/render_eps.c: Better scaling of fonts at non-normal zoom.
1279 2002-08-07  Cyrille Chepelov <cyrille@chepelov.org>
1281         * configure.in: removed silly user-visible comment
1283         (actually, this is a dummy entry before I manually run nemo; for
1284         some dist-upgrade related reason, this morning's run aborted before
1285         the snapshots were created)
1286         
1287 2002-08-06  Lars Clausen  <lrclause@cs.uiuc.edu>
1289         * objects/network/wanlink.c: 
1290         * objects/network/bus.c: 
1291         stdprop compliance!
1293         * objects/custom/custom_object.c: 
1294         * objects/network/wanlink.c: 
1295         * objects/flowchart/parallelogram.c: 
1296         * objects/flowchart/ellipse.c: 
1297         * objects/flowchart/diamond.c: 
1298         * objects/flowchart/box.c: 
1299         Removed GTK defaults stuff.
1300         
1301         * objects/UML/fork.c: 
1302         * objects/UML/object.c: 
1303         * objects/UML/lifeline.c: 
1304         * objects/UML/branch.c: 
1305         * objects/GRAFCET/transition.c: 
1306         * objects/FS/function.c: Removed GTK include.
1308         * objects/FS/flow-ortho.c: 
1309         * objects/FS/flow.c: Made the label behave again.
1310         Also removed GTK defaults stuff.
1312 2002-08-06  Hans Breuer  <hans@breuer.org>
1314         * app/autosave.c : ported to GDir which is the improved
1315         cross platform replacement for <dirent.h>
1317         * app/makefile.msc : build autosave.obj
1319         * app/font.c : some (bad?) code calls 
1320         dia_font_scaled_decent() not only with empty string but 
1321         with NULL. Handle it gracefully.
1323         * lib/paper.c : don't depend on ../app. Although IMO
1324         this shouldn't be allowed on any platform it is only
1325         disabled for win32, where it simply doesn't work
1326         this way
1328         * lib/widget.c (strcase_equal) : pass char* to g_strcasecmp()
1330         * objects/fs/flow.c : conditionalize debug spew, disabled
1331         and 'ported' to use g_print. Simple printf won't work with
1332         standard win32 gui apps, may even crash them.
1334         * plug-ins/makefile.msc : DISABLED svg-import cause it
1335         depends on ../objects/custom. This not only break the
1336         build for all non ELF systems but IMO also isn't acceptable
1337         from a design point of view. See dia-list mail on subject.
1339         * plug-ins/python/makefile.msc :
1340           plug-ins/python/python.c : remove all references to dirent    
1342 2002-08-05  Cyrille Chepelov  <cyrille@chepelov.org>
1344         * configure.in: added ro to ALL_LINGUAS
1346         * po-checktrans:
1347         * po-checktrans.py:
1348         * ../translation-graphs/transgraph.py: added support for fuzzy
1349         translations. Enlarged the graphs.
1351 2002-08-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1353         * app/disp_callbacks.c (ddisplay_canvas_events): Now translates
1354         key events according to locale.  No clue if this works for
1355         advanced stuff.
1357 2002-08-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1359         * lib/text.c: Various UTF8 related fixes, in particular in
1360         deleting.  Text_insert_char is fine, far as I can tell.
1362         * app/interface.c (create_display_shell): 
1363         * app/commands.c: Now uses gtk_clipboard functions, for they are
1364         much simpler.  Also handles Win32 clipboard.  Non-ascii chars
1365         don't seem to get handled correctly by text_insert_char in
1366         lib/text.c.
1367         
1368         * app/commands.c (received_selection_handler): Got utf8 handling
1369         on paste, and individual char handling out of commands.c.  Pasting
1370         non-ASCII is still broken, somehow.  It's all lib/text.c's fault.
1372         * lib/message.c (gtk_message_internal): Message dialog re-shown
1373         when new message appears.  Maybe it should even move to top?
1375         * lib/font.c: 
1376         * lib/widgets.c: 
1377         * app/render_eps.c (create_eps_renderer): Fonts now lowercase
1378         (again) and case-insensitive.
1380         * objects/GRAFCET/condition.c (CONDITION_FONT): Changed to
1381         BASIC_SANS_FONT. 
1383 2002-08-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1385         * app/commands.c (edit_cut_text_callback): 
1386         * lib/text.c (text_delete_all): Now functioning undo for text cut.
1387         
1388         * app/commands.c (edit_cut_text_callback): Now removes text.
1389         Undo is broken, though.
1391 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1393         * app/diagram.c (diagram_update_menu_sensitivity): 
1394         Making cut_text active.
1395         
1396         * app/commands.h: 
1397         * app/commands.c: Using PROP_TYPE_TEXT to find text to copy to
1398         clipboard.  Also removed AA callback.   
1400 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1402         * objects/chronogram/chronoref.c: 
1403         * objects/chronogram/chronoline.c: 
1404         * objects/SADT/annotation.c: 
1405         * objects/SADT/arrow.c: 
1406         * objects/SADT/box.c: 
1407         * objects/GRAFCET/vergent.c: 
1408         * objects/GRAFCET/vector.c: 
1409         * objects/GRAFCET/step.c: 
1410         * objects/GRAFCET/condition.c: 
1411         * objects/GRAFCET/action.c: 
1412         * objects/ER/participation.c: 
1413         * objects/ER/relationship.c: 
1414         * objects/ER/entity.c: 
1415         * objects/ER/attribute.c: 
1416         Removing unnecessary GTK references.
1418 2002-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1420         * objects/standard/image.c: 
1421         * objects/standard/textobj.c: 
1422         * objects/standard/ellipse.c: 
1423         * objects/standard/polygon.c: 
1424         * objects/standard/beziergon.c:
1425         * objects/standard/box.c: 
1426         Making default default properties.
1427         
1428         * objects/standard/image.c: 
1429         * objects/standard/arc.c: 
1430         * objects/standard/box.c: 
1431         * objects/standard/zigzagline.c: 
1432         * objects/standard/polyline.c: 
1433         * objects/standard/line.c: 
1434         * objects/standard/ellipse.c: 
1435         * objects/standard/polygon.c: 
1436         * objects/standard/beziergon.c: Removing vestigal GTK stuff.
1438         * lib/object_defaults.c (dia_object_default_create): 
1439         * lib/proplist.c: 
1440         * lib/properties.h: 
1441         * lib/object.c (object_copy_using_properties): 
1442         * lib/propdialogs.c: 
1443         * lib/propinternals.h: 
1444         * lib/propobject.c (object_create_props_dialog)
1445         (object_copy_props): 
1446         Removing the standard (toolbox) properties from defaults dialogs.
1448 2002-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1450         * lib/font.c (dia_font_scaled_string_width) 
1451         (dia_font_scaled_ascent, dia_font_scaled_descent): Account for
1452         zoom factor.
1453         * lib/text.c (text_calc_boundingbox): Take descent into account.
1455         * objects/standard/bezier.c (bezierline_draw): 
1456         * lib/render.c (draw_bezier_with_arrows): 
1457         Better arrow drawing for beziers.  Doesn't change the mouse-click
1458         area either.
1460         * lib/arrows.h: Some const-ness.
1462         * lib/arrows.c (calculate_arrow_point): Initialize zero-length moves.
1464         * lib/render.c (draw_arc_with_arrows): 
1465         * objects/standard/arc.c (arc_draw): Better arrow drawing for
1466         arcs.  Doesn't change the mouse-click area yet.
1468         * app/menus.c: Forgotten fix:  Redraw menu item for non-Gnome.
1470         * lib/render.h: 
1471         * lib/render.c: 
1472         Arc arrow prework.
1474 2002-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1476         * app/group.c (group_draw): Forgotten commit: Groups to draw as
1477         objects (using default routines).
1479         * app/object_ops.h: 
1480         * app/diagram.h: 
1481         * lib/diagramdata.h: 
1482         * lib/diagramdata.c (layer_find_closest_connectionpoint): 
1483         * objects/standard/zigzagline.c (zigzagline_move_handle): 
1484         * app/diagram.c (diagram_find_closest_connectionpoint): 
1485         * plug-ins/python/pydia-diagram.c
1486         (PyDiaDiagram_FindClosestConnectionPoint):
1487         * app/object_ops.c (object_connect_display) 
1488         (object_find_connectpoint_display) 
1489         * app/create_object.c (create_object_button_press) 
1490         (create_object_motion): 
1491         * app/modify_tool.c (modify_motion): 
1492         Adding object param to allow connectionpoint and handle coinciding.
1494         * objects/standard/zigzagline.c (zigzagline_check_orientation): 
1495         Fixing minor problems.
1497         * objects/standard/ellipse.c (ellipse_update_data): 
1498         Added direction hints.
1500         * lib/diagramdata.c: 
1501         * lib/object.c: 
1502         * lib/object.h: 
1503         * lib/diagramdata.h: 
1504         * objects/standard/zigzagline.c: 
1505         First working example of zigzagline hints, currently only between
1506         Box and Zigzagline.
1508 2002-07-27  Steffen Macke <sdteffen@web.de>
1510         * plug-ins/svg/render_svg.c: added support for rounded
1511         rectangles (fixes #69053 if compile with
1512         -DNEW_RENDER_OPS)
1513         * object/custom/shape_info.[c|h]: made parse_style and
1514         parse_path accessible for svg plug-in
1515         * plug-ins/svg/Makefile.am:
1516         * plug-ins/svg/svg.c:
1517         * plug-ins/svg/svg-import.c(new): added SVG import filter
1519 2002-07-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1521         * objects/standard/box.c: 
1522         * objects/standard/zigzagline.c (zigzagline_move): 
1523         More work on zigzagline hints.
1525 2002-07-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1526         * lib/connectionpoint.h: 
1527         Hints for zigzaglines.
1529         * app/properties.c (properties_show): 
1530         * app/defaults.c (defaults_show): 
1531         * lib/properties.h: 
1532         * lib/propobject.c (object_create_props_dialog): 
1533         * lib/object.h: 
1534         * objects/FS/flow-poly.c: 
1535         * objects/network/wanlink.c: 
1536         * objects/network/bus.c: 
1537         * objects/UML/class.h: 
1538         * objects/UML/class_dialog.c: 
1539         * objects/UML/association.c: 
1540         Start of removing toolbox props from props dialogs.
1541         
1542         * lib/widgets.c: 
1543         * lib/arrows.h: 
1544         * app/lineprops_area.c (dia_arrow_chooser_new): 
1545         * lib/arrows.c: Two new arrows: Concave, filled and blanked.
1547         * app/create_object.c: 
1548         * app/modify_tool.c: 
1549         * app/cursor.h: 
1550         * app/cursor.c: 
1551         More cursor change.
1553 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1555         * app/preferences.c: 
1556         * lib/paper.c: 
1557         * app/diapagelayout.c: 
1558         New prefs selector kind PREF_CHOICE chooses between a list of
1559         strings.  Used for picking default paper.
1560         
1561         * app/preferences.c (prefs_data): 
1562         * lib/paper.c (get_paper_info): Added prefs setting for
1563         is_portrait.
1565         * lib/render.c (draw_polyline_with_arrows): Handles degenerate
1566         line segments at the ends (bug #86603).
1568 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1570         * objects/standard/zigzagline.c (zigzagline_copy): Fix for bug
1571         #60324: Now calls update_data after copy.
1573         * app/interface.c (fill_sheet_wbox): Better fix for bug #88601:
1574         Now doesn't steal selection from non-object tools.
1576 2002-07-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1578         * app/commands.c (help_manual_callback): Uses BROWSER environment
1579         variable when available.
1581 2002-07-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1583         * app/interface.c (fill_sheet_wbox): Fix for bug #88601: Select an
1584         object from the new sheet when changing.
1586         * app/app_procs.c (app_init): Uses more standard size icon, from
1587         patch #56433.  Keeping old icon as dia_gnome_icon_large.png.
1589 2002-07-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1591         * objects/UML/implements.c (implements_update_data): 
1592         * objects/UML/realizes.c (realizes_update_data): 
1593         * objects/UML/dependency.c (dependency_update_data): 
1594         Test for null strings before calling on ascent.
1596         * objects/UML/realizes.c (realizes_draw): 
1597         * objects/UML/message.c (message_draw): 
1598         * objects/UML/generalization.c (generalization_draw): 
1599         * objects/UML/dependency.c (dependency_draw) 
1600         * objects/UML/constraint.c (constraint_draw): 
1601         * objects/GRAFCET/condition.c (condition_draw): 
1602         * objects/UML/association.c (association_draw): 
1603         * objects/FS/flow-ortho.c (orthflow_draw): 
1604         * objects/FS/flow.c (flow_draw): Change to use
1605         draw_foo_with_arrows.  Pretty pretty arrows.  Yay me!
1607         * lib/render.h: 
1608         * lib/arrows.c (calculate_arrow_point): 
1609         * lib/arrows.h: 
1610         * lib/render.c: 
1611         * objects/standard/zigzagline.c:
1612         * objects/standard/polyline.c:
1613         * objects/standard/line.c: Work towards better arrow drawing.
1615 2002-07-21  Lars Clausen  <lrclause@cs.uiuc.edu>
1617         * objects/UML/state.c: Starting phase-out of State object as
1618         initial/final state (which never worked right).
1620         * app/app_procs.c (app_init): --version command line option for
1621         non-Gnome.
1623         * configure.in: Slight improvement in GETTEXT_PACKAGE handling.
1625 2002-07-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1627         * app/render_eps.c: Removed debugging info.
1629         * lib/font.c (dia_font_scaled_ascent, dia_font_scaled_descent):
1630         Kludge to make ascent and descent work for empty strings.  Won't
1631         work when using non-ASCII fonts.  Better would be to get a
1632         PangoFont and ask directly.
1634         * configure.in: Simple define of GETTEXT_PACKAGE, and some updates
1635         of the init stuff.
1637         * app/render_gdk.c (get_text_width): Fixed use of wrong string.
1638         Cursor now better.
1640 2002-07-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1642         * plug-ins/xfig/xfig-export.c: First use of draw_object render
1643         function: All shapes are now groups in XFig export.
1645         * lib/diagramdata.c (normal_render): 
1646         * lib/render.c: 
1647         * lib/render.h: 
1648         * app/display.c (ddisplay_obj_render): 
1649         New render function for drawing objects, allows renderers to group
1650         or otherwise specially handle objects.  We may want to reconsider
1651         calling it in app/display.c, as we 'know' the object draw function
1652         is the default one there.
1654         * lib/Makefile.am: Removed extra \ that broke stuff.
1656         * plug-ins/xfig/xfig-import.c: 
1657         Spline import for xfig.  Not perfect.
1659         * objects/standard/create.h: 
1660         * objects/standard/bezier.c (bezierline_create): 
1661         * lib/bezier_conn.c: 
1662         * lib/beziershape.c (beziershape_set_points): 
1663         * lib/bezier_conn.h: 
1664         * lib/beziershape.h: 
1665         Support for creating beziers non-interactively.
1667 2002-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1669         * plug-ins/xfig/xfig-import.c: Support for polygons and
1670         polylines.  Special warning handling system removed.
1672         * lib/message.c (gtk_message_internal): Fixed bug involving
1673         closing message window and then getting repeated message.
1675         * Makefile.am: 
1676         * autogen.sh: 
1677         * configure.in (GETTEXT_PACKAGE): 
1678         Update based on bug #88199.  Hopefully this doesn't break too much
1679         intl stuff.
1681         * dia.desktop.in (_Comment): Changed after suggestion from
1682         calum.benson@ireland.sun.com (bug 88345)
1684         * app/sheets_dialog_callbacks.c: Fix from Dolores Alia de Saravia
1685         <loli@unsa.edu.ar> that makes user/system distinction better.
1687 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1689         * app/render_libart.c: Got the context right, removed crashes.
1691         * app/commands.c: 
1692         * app/commands.h: 
1693         Redraw menu item.
1695         * app/display.c: 
1696         * app/display.h: 
1697         * app/interface.c: 
1698         * app/menus.c: 
1699         Remove libart #defines from most places (still around for png export).
1701         * app/render_libart.h: 
1702         * app/render_libart.c: 
1703         * configure.in (HAVE_LIBART): 
1704         Starting on update of libart stuff for png export (without X).
1706         * app/autosave.h (autosave_check_autosave): 
1707         * app/load_save.h: 
1708         * app/diagram.h: 
1709         * app/Makefile.am (dia_core_files): 
1710         * app/load_save.c: 
1711         * app/diagram.c (diagram_set_modified): 
1712         * app/autosave.c: 
1713         * app/app_procs.c (app_init): 
1714         Autosave support.  No automatic restore yet.
1716 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1718         * app/render_eps.c (create_eps_renderer): #ifdef'd a scale
1719         assignment. 
1720         
1721 2002-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
1723         * app/interface.c (fill_sheet_menu): Tear-off for sheets menu.
1725 2002-07-15  Andrew Ferrier  <andrew@new-destiny.co.uk>
1727         * Fix for 'make dist' etc. --- problem caused by
1728         previous AUTHORS patch.
1730 2002-07-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1732         * plug-ins/cgm/cgm.c (init_fonts): Changed pango_font_map to
1733         pango_context. 
1734         (set_font): NULL check.
1735         
1736 2002-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
1738         * app/disp_callbacks.c: 
1739         * lib/diamenu.h: 
1740         Addition to the object menus allows check menu items.
1742 2002-07-11  Andrew Ferrier  <andrew@new-destiny.co.uk>
1744         * HACKING: completely changed to bring up-to-date.
1745         * AUTHORS: file needs REMOVING from CVS as now
1746           dynamically generated.
1747         * app/authors.h: split into subcategories for original
1748           authors, maintainers, etc.
1749         * app/app_procs.c: --credits rewritten to support new
1750           app/authors.h
1751         * app/commands.c: no changes to about box code, comment
1752           added though.
1753         * Makefile.am: added rule for AUTHORS. I'm still
1754           inexperienced with automake, it seems to work, but
1755           for AUTHORS-related bugs, look at this change first.
1757 2002-07-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1759         * plug-ins/Makefile.am (SUBDIRS): Just realized why my hack didn't
1760         work.  Back to including xslt dir always.
1762         * objects/UML/uml.c: 
1763         * objects/UML/class.h: 
1764         * objects/UML/class_dialog.c: 
1765         * objects/UML/class.c: Patch from
1766         <mattam@netcourrier.com>:  Adds comment visibility switch, also
1767         fixes various bugs.
1769         Big patch from Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
1770         for state/fork/activity stuff.
1771         * objects/UML/state.c: Removed old draw_rounded_rectangle code.
1772         * objects/UML/Makefile.am:
1773         * objects/UML/uml.c:
1774         * sheets/UML.sheet.in: Added new objects activity, fork,
1775           state_term.
1776         * objects/UML/pixmaps/state_term.xpm:
1777         * objects/UML/state_term.c: New, only initial/final states.
1778         * objects/UML/pixmaps/activity.xpm:
1779         * objects/UML/activity.c: New, activity state.
1780         * objects/UML/pixmaps/fork.xpm:
1781         * objects/UML/fork.c: New, fork/join bar.
1782         * objects/UML/pixmaps/state.xpm: state icon.
1784         
1785         * doc/diagram.dtd: 
1786         * doc/shape.dtd: Patch from "Dolores Alia de Saravia"
1787         <loli@unsa.edu.ar> to add dia: to diagram.dtd elements and add
1788         svg:text to shape.
1790 2002-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
1792         * plug-ins/Makefile.am (SUBDIRS): Made the XSLT dir depend on
1793         detecting XSLT
1795         * app/Makefile.am: Commented out the diaconv parts while it's not
1796         used anyway.  To come back later.
1798         * configure.in (HAVE_FREETYPE): 
1799         * app/app_procs.c: 
1800         * app/render_eps.h: 
1801         * app/render_eps.c: Support for printing with freetype, better
1802         encapsulated now.  Renders the text nicely, but ignores font
1803         setting.  Requires pangoft2 to get the font outline, but non-text
1804         objects can still be rendered without it.
1806         * app/commands.h: 
1807         * app/commands.c (objects_place_up_callback) 
1808         (objects_place_down_callback): 
1809         * app/diagram.h: 
1810         * app/diagram.c (diagram_place_down_selected) 
1811         (diagram_place_up_selected): Starting support for moving objects
1812         one level up/down.
1814         * app/menus.c: Removed character/numeral shortcuts.
1816 2002-07-06  Hans Breuer  <hans@breuer.org>
1818         * makefile.am app/makefile.am lib/makefile.am
1819           objects/makefile.am plug-ins/makefile.am 
1820           plug-ins/python/makefile.am :
1821         added required files for win32 build to EXTRA_DIST
1823         * app/paginate_psprint.c app/render_eps.c 
1824           app/app_procs.c :
1825         wrap (E)PS Renderer into HAVE_FREETYPE, no FreeType
1826         on Pango as currently is on win32 => no PostScript 
1827         anymore.
1829         * lib/widgets.c : undef GTK_DISABLE_DEPRECATED;
1830         use '/* noop */;' for empty case labels; replace
1831         debug spew printf with g_print which is guaranteed 
1832         to work on win32, too.
1834         * lib/font.c (dia_pfd_set_weight) : set 'intermediate' values 
1835         for DIA_FONT_MEDIUM and DIA_FONT_DEMIBOLD as explicit allowed 
1836         in the pango_font_description_set_weight() api documentation
1837         Take care for them in dia_font_get_style() too.
1839         * lib/font.[hc] lib/widget.c objects/custom/shape_info.c
1840           plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c :
1841         rename Obliquity to Slant which appears to be the usual name,
1842         also rename dia_font_get_style_string -> dia_font_get_slant_string
1844         * plug-ins/wmf/wmf.cpp : finally ported to new font api
1846         * lib/prop_attr.c app/render_gdk.c : dont *_unref if NULL
1848         * objects/uml/association.c class.c large_package.c message.c
1849         if g_free() is used g_strdup needs to be used.
1850         * objects/custom/shape_info.c
1851           objects/ER/attribute.c entity.c
1852           objects/standard/image.c 
1853           app/sheets_dialog_callbacks.c : more strdup cleaning
1855 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1857         * app/render_eps.c: Non-crashing printing (made the right
1858         context).  Font output still fscked up.
1860 2002-07-05  Andrew Ferrier  <andrew@new-destiny.co.uk>
1862         * app/authors.h: Added file --- now master
1863         location for contributors data.
1864         * app/app_procs.c: Added --credits option.
1865         * app/commands.c: Modified about box to use
1866         app/authors.h.
1868 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1870         * app/render_eps.c: First stab at EPS rendering using the contour
1871         code from PAPS.  Crashes.
1873 2002-06-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1875         * app/recent_files.c (recent_file_history_remove): 
1876         Fixed call to g_list_delete_link discarding return value.
1877         
1878         * lib/widgets.c (dia_font_selector_set_styles): 
1879         * lib/font.h (DiaFontWeight): 
1880         * lib/font.c (dia_font_get_style): Revert to DIA_FONT_NORMAL==0
1882 2002-06-30  Cyrille Chepelov  <cyrille@chepelov.org>
1884         Contribution from Alan Horkan <horkana@tcd.ie>: 
1885         
1886         * shapes/Assorted/*
1887         * sheets/Assorted.sheet:
1888         A set of 40 assorted geometric shapes.
1890         * sheets/Assorted.sheet.in:
1891         * sheets/Makefile.am
1892         * shapes/Assorted/Makefile.am:
1893         * shapes/Makefile.am:
1894         * po/POTFILES.in:
1895         * configure.in:
1896         Done the integration job of Alan's shapes. (Translators: have fun!)
1898         * po/dia.pot: refreshed the main potfile.
1899         
1900 2002-06-28  Cyrille Chepelov  <cyrille@chepelov.org>
1902         Patch from Tim Ellis <Tim.Ellis@gamet.com>:
1903         
1904         * objects/UML/class.[ch]:
1905         * objects/UML/class_dialog.c:
1906         changed the number of connection points from a hardcoded value of
1907         8 to a #defined constant
1909         (I changed the constant back from 20 to 8, until we better know
1910         how we'll handle more connection points on the UML class in the
1911         future -- but Tim's patch is a welcome clean-up).
1913 2002-06-26  Cyrille Chepelov  <cyrille@chepelov.org>
1915         * shapes/MSE/demultiplexer.xpm:
1916         * shapes/MSE/node_center.xpm:
1917         * shapes/MSE/multiplexer.xpm:
1918         * shapes/MSE/tacsat.xpm: updated MSE icons (transparency) by Alan
1919         Horkan <horkana@tcd.ie>
1921 2002-06-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1923         * lib/widgets.c: Total rehash of font selector, with font dialog
1924         option, expanding list (not LRU yet), and stuff.
1926 2002-06-25  Cyrille Chépélov  <cyrille@chepelov.org>
1928         * lib/font.h:
1929         * lib/font.c: 
1930         Added a set of new setter/getters, some of them more specially for
1931         the SVG-ish I/O.
1932         
1933         * plug-ins/shape/shape-export.c: (new_shape_renderer),
1934         (destroy_shape_renderer), (set_font), (draw_string):
1935         * plug-ins/svg/render_svg.c: (new_svg_renderer),
1936         (destroy_svg_renderer), (set_font), (draw_string):
1938         Actually exported the font face, style, weight and size (sodipodi
1939         agrees with dia on how a small sample should look like (a sample
1940         0.90 would not even display anyways). Yay !)
1942         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
1944         * plug-ins/xslt/Makefile.am: repaired the mess Cyrille put there.
1946         (end of ChangeLog-less patch)
1948         * objects/custom/shape_info.c (parse_style): now understands the
1949         font-style and font-weight attributes as well. Does not use
1950         anymore dia_font_new_from_legacy_name().
1951         
1952 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1954         * objects/standard/textobj.c: Now uses stdprops for defaults.
1956         * lib/font.h: Changed order of DiaFontWeight entries.  Sorry.
1957         * lib/font.c (dia_font_get_style): Style now linear and conversion
1958         simple. 
1960         * lib/widgets.c (dia_font_selector_set_styles): Fixed the style
1961         selector. 
1963 2002-06-24  Cyrille Chepelov  <cyrille@chepelov.org>
1965         * plug-ins/dxf/dxf-import.c:
1966         using dia_font_new_from_style()
1968         Patch from Matthieu Sozeau  <mattam@netcourrier.com>:
1970         * objects/UML/class.[ch]: Added a comment field to class
1971         * objects/UML/uml.[ch]: Added a comment field to attributes,
1972         operations and parameters.
1973         * objects/UML/class_dialog.c: Added code for the new comment
1974         fields.
1975         * plug-ins/xslt/*.xsl: Added some code to handle comments.
1976         * plug-ins/xslt/xslt*.c: Clean up based on Cyrille comments.
1977         Added a $directory parameter for stylesheets so the output is 
1978         in the good place (not in the $PWD).
1980         (end of Patch)
1982         * AUTHORS: added contributors, updated maintainers. Removed the
1983         specific areas of action.
1985         * Patch from Andrew Ferrier <andrew@new-destiny.co.uk>, derived
1986         from a patch by Xing Wang <quixon@gnuchina.org>:
1988         * app/commands.c: help_about_callback now supports
1989         new-style GNOME about box as well as old GTK style. 
1990         code also tidied (Closes: #85726)
1992         (end of Patch)
1994         * app/commands.c: fixed the copyright (it's not all FSF), and
1995         maintainers. Synced contributors list with AUTHORS.
1996                 
1997 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1999         * lib/message.c: More work on repeating messages, now with
2000         togglable view.
2002 2002-06-24  Hans Breuer  <hans@breuer.org>
2004         * lib/widget.c : some more bits in place, at least
2005         it does something useful instead of crashing. Much
2006         better - but not all ok :-)
2008 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
2010         * lib/message.c (gtk_message_internal): First stab at repeating
2011         message dialog.
2013 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
2015         * objects/FS/*.c:
2016         * objects/GRAFCET/*.c:
2017         * objects/SADT/*.c:
2018         * objects/UML/association.c: (one instance forgotten)
2019         * objects/UML/large_package.c: 
2020         * objects/standard/textobj.c:
2021         * lib/attributes.c:
2022         * lib/text.c:
2023         using dia_font_new_from_style()
2025 2002-06-23  Hans Breuer  <hans@breuer.org>
2027         * lib/font.c : giving some love to
2028         dia_font_new_from_legacy_name() that is making
2029         import of old files as painless as possible and
2030         provide an almost exact match where possible.
2031         It does not yet fully work because it interfers
2032         with the Style to DiaStyle conversion which comes
2033         next ...
2035         [Changing these files is only allowed with Dia-0.90]
2036         * broken-files/fonts-0.90.dia : including the
2037         common hard-coded fonts from Dia-0.90. It also
2038         has drawn bounding-boxes for win32 as they were calculated
2039         from the former version (they were all too big).
2040         * broken-files/fonts-0.90-full.dia : all hardcoded
2041         fonts including the asian versions. On my machine
2042         this gives _a lot_ complaining about missing fonts
2043         and a finally a broken file display. Anyone having
2044         all these fonts ?
2045         
2046 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
2048         * objects/chronogram/*.c: 
2049         * objects/custom/custom_object.c:
2050         * objects/ER/*.c:
2051         using dia_font_new_from_style()
2053 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
2055         * lib/widgets.c (dia_font_selector_set_styles): Improvements to
2056         font selector (stability, insensitivity).
2058         * lib/font.c (dia_font_scaled_build_layout): Removed unworkable
2059         stretching scheme for tweaking, and made scaling scheme faster
2060         (but less precise).
2061         (dia_font_dia_style_to_pango): Oops, % != /.
2063 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
2065         
2066         * patch from Matthieu Sozeau  <mattam@netcourrier.com>:
2068         * plug-ins/xslt : Added an XSLT plugin to export dia files using
2069         XML Stylesheets. The plug-in requires DIA_PLUGIN_PATH to be set.
2070         It includes a small config file to tell it what stylesheets to use.
2072         (end of patch)
2073         
2074         * plug-ins/xslt/xsltdialog.c: modified the dialog to be more 
2075         GTK2.0/HIG compliant (the labels could be slightly more verbose,
2076         perhaps). Added back a couple forgotten _(). Removed //-style
2077         comments.
2078         
2079 2002-06-23  Hans Breuer  <hans@breuer.org>
2081         * lib/plug-ins.c
2082         (dia_plugin_get_name) : don't crash plugin_manager
2083         on name being NULL 
2084         (dia_plugin_load) : reuse the description field to
2085         store the error string if loading fails.
2087         * lib/font.[hc] : starting to beautify the new
2088         font api: proper namespacing, adding convenience
2089         functions like dia_font_new_from_style(), ...
2091         * objects/uml/*.c : use the new convenience functions.
2093         [Next thing I plan to do is changing the other font
2094          functions to take DiaStyle and make Style and 
2095          BASIC_*_FONT vanish. As well as giving some love to
2096          dia_font_new_from_legacy_name().
2097          If anyone want's to help on converting the other
2098          objects to the new api during that, I would highly 
2099          appreciate it.]
2101 2002-06-23  Hans Breuer  <hans@breuer.org>
2103         * lib/font.c : made it compile and small indent fixes.
2104         Is there a code-has-no-effect-so-needs-not-be-valid
2105         with GCC?       
2107         * lib/widgets.c : use g_strcasecmp
2109 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
2111         * lib/font.c: 
2112         * lib/font.h: 
2113         * lib/widgets.c: Font names sorted, style selector widget
2114         reappeared.  Doesn't select the old style yet.
2116 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
2118         * lib/font.c: one who expects a text's font to be changed shall 
2119         actually request the attributes to apply to the whole range of the
2120         said text... D'oh! 
2122         * lib/font.c: extents computation was wrong.
2124         * lib/font.c: dia_font_get_legacy_name(); g_strconcat works better
2125         if a last NULL parameter is added...
2127         * lib/font.c: extents computation was completely wrong. This looks
2128         much better this time.
2130         * objects/UML/class.c: fixed the various strings positions.
2132         * lib/font.h, and **/*.[ch] (all callers of dia_font_new): used
2133         macros to get the hardcoded base fonts.
2135         * objects/ER/relationship.c: wasn't converted to DiaFont*
2136         
2137 2002-06-22  Hans Breuer  <hans@breuer.org>
2139         * lib/widget.c : dont use backend specific functions
2140         to get on the font_families. Including it would mean
2141         including <windows.h> which breaks due to namespace
2142         pollutions ...
2144         * lib/libdia.def : updated externals
2146         * app/makefile.msc : temporary disabled: -DHAVE_LIBART
2148         * lib/font.c : added empty dia_font_init_instance function,
2149         reformatting of dia_fon_unref to allow to set breakpoint,
2150         dia_fon_build_layout() : dont crash on string==NULL
2152         * lib/text.c (text_set_attributes) : don't unref the wrong font
2154         * lib/widgets.c (dia_fon_selector_set_font) : our hashtable
2155         stores lowercased font names, but dia_font_get_family()
2156         returns mixed case      
2158 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
2160         * lib/widgets.c: 
2161         * app/render_gdk.c: Patch from Hans Breuer.
2163         * app/Makefile.am (dia_core_files): diaconv commented out for now.
2164         
2165 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
2167         * lib/all files touched yesterday: took into account some of Hans
2168         Breuer's remarks in
2169         http://mail.gnome.org/archives/dia-list/2002-June/msg00257.html
2171         * objects/chronogram/*: 
2172         * objects/custom/*:
2173         * objects/ER/*:
2174         * objects/flowchart/*:
2175         * objects/FS/*:
2176         * objects/GRAFCET/*:
2177         * objects/SADT/*:
2178         * objects/standard/textobj.?:
2179         * objects/UML/*:
2180         converted to the new DiaFonts.
2182         * plug-ins/cgm/*:
2183         * plug-ins/pstricks/*:
2184         * plug-ins/wpg/*:
2185         * plug-ins/dxf/*:
2186         * plug-ins/xfig/*:
2187         Made minimalistic conversions so that they'd at least compile.
2189         * app/render_gdk.c:
2190         * app/render_pixmap.c:
2191         Converted to the new DiaFonts.
2193         * app/app_procs.c
2194         * app/diaconv.c:
2195         * app/render_eps.c:
2196         made the minimal changes so that it would at least build.       
2198         *** At this point, the thing builds on my machine, but segfaults
2199         right away. ***
2200         
2201 2002-06-21  Cyrille Chepelov  <cyrille@chepelov.org>
2203         * configure.in: removed the backend-specific pango pkg_modules
2204         (trivial to add back if needed, when actually needed)
2206         * app/Makefile.am:
2207         * app/*gnomeprint.[ch]: (removed): removed the GNOME-print
2208         renderer. The APIs will have completely changed when we get around
2209         to redo a renderer for it, anyways.
2211         * font.[ch]: rewrote everything from scratch, with a Pango
2212         implementation. Normally, only backend-neutral things should go in
2213         there.
2215         **WARNING**: new rules for managing DiaFont* pointers: these are
2216         reference-counted GObjects. One >must< diafont_ref() and
2217         diafont_unref() as appropriate. I wish I could overload operator=()...
2219         lib/plug-ins.h: bumped up the plug-in API.
2220         
2221         lib/attributes.c: 
2222         lib/dia_xml.c: 
2223         lib/dummy_dep.h
2224         lib/object_defaults:
2225         lib/prop_attr.c: Adapted to the new DiaFont API. This'll change
2226         again tomorrow with GObject.
2227         
2228         lib/widgets.c: Adapted to the new DiaFont API and to Pango.
2230         **** The rest of the tree should be updated as well ****
2231         
2232 2002-06-21  Lars Clausen  <lrclause@cs.uiuc.edu>
2234         * app/render_gdk.h: 
2235         * app/render_gdk.c: 
2236         * app/render_pixmap.c: 
2237         * app/render_pixmap.h: 
2238         * app/render_libart.h: 
2239         * app/render_libart.c: 
2240         * lib/font.h: 
2241         * lib/font.c: Removed freetype stuff (still around in
2242         lib/widgets.c 'cause we might want the font selector widget).
2244 2002-06-20  Cyrille Chepelov  <cyrille@chepelov.org>
2246         * shapes/network/laptop.(xml|shape):
2247         * sheets/network.sheet.in: added Laptop (notebook) PC shape,
2248         contributed by Alan Horkan <horkana@tcd.ie>. (Closes: #82643)
2250 2002-06-17  Hans Breuer  <hans@breuer.org>
2252         * lib/object_defaults.c : #include <libxml/tree.h> not
2253         <tree.h> pointed out by Xing Wang
2255 2002-06-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2257         * lib/color.h (GDK_COLOR_TO_DIA, DIA_COLOR_TO_GDK): 
2258         * lib/widgets.c: 
2259         * app/color_area.c: Update to
2260         gtk_color_selection_*_current_color() fixed bad crash issues, plus
2261         updated color conversions.
2263         * sheets/ER/weakentity.xpm: Accepted patch from
2264         quixon@gnuchina.org to make icon match actual appearance.
2266         * app/recent_files.c: Fixed GNOME recent file problem, thanks to
2267         quixon@gnuchina.org.
2269 2002-06-16  Hans Breuer  <hans@breuer.org>
2271         * lib/plug-in.[hc] : make PlugInInfo opaque again in the 
2272         good tradition of information hiding. Add new function
2273         dia_plugin_get_symbol()
2274         * app/sheets.c app/sheets_dialog_callbacks.c : use it
2276         * app/sheets.c : stop complaining about object_get_type() 
2277         returning NULL. This is a consequence of e.g. disabling 
2278         plug-ins at runtime _and_ it was and is gracefully handled. 
2279         Spitting out g_warning for it isn't appropriate. 
2281         * lib/object.[ch] : removed dead code
2283         * app/plugin-mangager.c : almost complete rewrite for gtk2
2284         using GtkListStore/GtkTreeView
2286         * lib/libdia.def : updated externals
2288         * todo.gtk2 : updated, that is removed already done steps
2290 2002-06-15  Hans Breuer  <hans@breuer.org>
2292         * objects/uml/class_dialog.c : clean some left-over
2293         utf8-mess, return 0 from "focus_out_event" handlers
2294         to avoid asserting in gtk (#78305). Reconstruct 
2295         stereotype/NULL behaviour to avoid rendering empty
2296         stereotypes on classes and member functions
2298         [#56109 - Provide object defaults for StdProp objects,
2299          some remaining issues are discussed in bugzilla]
2301         * lib/object_defaults.c : (new file) manage default properties 
2302         of dia objects. The serialization is done with standard
2303         object methods in a diagram compatible format.
2305         * lib/object.c : add object_registry_foreach() which allows
2306         to iterate over all registered object types
2308         * lib/object.h : added prototypes object_default*() and
2309         object_registry_foreach()
2311         * lib/makefile.am lib/makefile.msc : add new file to build
2313         * lib/libdia.def : export new functions
2315         * app/defaults.c : provide StdProp based defaults if the
2316         ObjectType doesn't implement it's own default functions
2318         * app/create_object.c : through dia_object_default_create()
2319         * app/disp_callbacks.c : same here
2321 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2323         * objects/FS/flow-ortho.c (orthflow_get_object_menu): Menu
2324         sensitivity for deleting segments.
2326 2002-06-12  Cyrille Chépélov  <cyrille@chepelov.org>
2328         * app/color_area.c: (color_area_events):
2329         * app/diagram.c: (diagram_destroy):
2330         * app/interface.c: (zoom_activate_callback), (fill_sheet_wbox),
2331         (fill_sheet_menu):
2332         * app/load_save.c: (diagram_data_load):
2333         * app/menus.c: (menus_get_item_from_path):
2334         * app/preferences.c: (prefs_load):
2335         * app/render_gdk.c: (get_text_width):
2336         * lib/arrows.h:
2337         * lib/color.c: (color_convert):
2338         * lib/dia_dirs.c: (dia_config_filename):
2339         * lib/dia_xml.c: (xmlDiaParseFile), (data_type):
2340         * lib/intl.c: (intl_get_language_list):
2341         * lib/message.c: (message):
2342         * lib/message.h:
2343         * lib/paper.c: (get_default_paper):
2344         * lib/plug-ins.c: (this_is_a_plugin), (dia_register_plugins):
2345         * lib/widgets.c: (dia_file_selector_get_file):
2346         * lib/widgets.h:
2347         * objects/standard/image.c: (get_directory):
2349         warningectomy.
2350         
2351 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2353         * ChangeLog: Fixed bad UTF-8 mess.  Apologies.
2355 2002-06-11  Lars Clausen  <lrclause@cs.uiuc.edu>
2357         * app/interface.c: sscanf now returns EOF on empty string, so
2358         handle no match for zoom factor better => correct zoom at start.
2360         * app/sheets.c (create_object_pixmap): Tried to display empty error.
2361         (sheets_optionmenu_create): Died when not finding specified
2362         sheet.  Don't think it should.
2364         * objects/UML/association.c: Added patch from osamyn@ulb.ac.be
2365         (bug #84367) to place the text better.
2367 2002-06-11  Cyrille Chepelov  <cyrille@chepelov.org>
2369         * configure.in: Added forgotten libgnomeui-2.0 when --enable-gnome
2370                         
2371         * app/commands.c: Removed unnecessary gnome include. Removed
2372         GNOME-Print support.
2374         * app/menus.h: Removed now unnecessary gnome include.
2375         
2376         * app/sheets_dialog.c: Used Gtk 2.0 stock buttons instead of
2377         GNOME-specific stock buttons
2378         
2379 2002-06-09  Hans Breuer  <hans@breuer.org>
2381         * app/app_procs.c : convert 'Modified diagrams exits'
2382         dialog to use GtkMessageDialog. That gives us:
2383         - icons without Gnome dependency
2384         - much less code, also cross platform
2385         - improved useability ?
2387         * app/color_area.c : the Color Selection Widget looked
2388         quite wrong (alpha problems). Fix it by merging in required
2389         changes stolen from The Gimp cvs
2390         * app/color_area.h : to get the right appearance the maskes
2391         needed to be taken into account
2392         * app/interface.c : adapt to color_area_create changes.
2393         Also remove some dead code and finally remove cvs autexpansion, 
2394         I was bothered enough by irrelevant differences :-)
2396         * app/defaults.c app/properties.c app/dia-props.c : use improved GtkDialog
2397         api, i.e stocks and response to make the GnomeDialog usage
2398         obsolete. Also fixed the issue with closing the 'parent'
2399         before closing the dialog
2401         * app/display.[ch] : removed some dead code and conversion
2402         to new GtkDialog api. Also trying to conform to new HIG
2403         standard http://developer.gnome.org/projects/gup/hig/
2405 2002-06-09  Hans Breuer  <hans@breuer.org>
2407         * lib/makefile.msc : define GTK_DISABLE_DEPRECATED,
2408         build ps-utf8.c
2410         * lib/dia_image.c : gtk_widget_set_default_visual()
2411         remove. It does nothing with Gtk2.
2413         * lib/libdia.def : added ps_unicoder exports
2415         * lib/message.c : remove #GNOME use GtkMessageDialog.
2416         Yeah, Dia gets dialogs wit icons cross-platform.
2418         * lib/prop_geomtypes.c : gtk_spin_button_get_value_as_float()
2419         to gtk_spin_button_get_value()
2421         * lib/prop_inttypes.c : gtk_label_set() -> gtk_label_set_text()
2423         add #undef GTK_DISABLE_DEPRECATED to still use ...
2424         * lib/prop_text.c :  ... GtkText
2425         * lib/prop_widgets.c : ... GtkList
2426         * lib/prop_dialogs.c : ... gtk_signal_connect and more
2427         * lib/widgets.c : ... (too much to list here)
2429         * lib/ps-utf8.c : #include <string.h>
2431 2002-06-08  Cyrille Chepelov  <cyrille@chepelov.org>
2433         * configure.in:
2434         * Makefile.am:  Adapted for gtk2.
2435         Removed dependencies on libunicode, on iconv(), on langinfo().
2437         * acconfig.h: removed (now obsolete)
2439         * lib/charconv.[ch]: removed (superceded by glib)
2440         * lib/ps-utf8.[ch]: removed dependency on charconv.[ch]
2442         * **/*.[ch]: removed (utfchar *), (unichar) and other charconv or
2443         libunicode types for their glib counterparts. Fixed the include
2444         paths for libxml2. Removed all traces of libxml1 or non-UTF8
2445         support (there were remains in objects/uml).
2447         
2448 2002-06-08  Hans Breuer  <hans@breuer.org>
2450         */*.c */*/*.c : remove all the #ifdef *_UTF8_* hell,
2451         only keep the utf-8 clean code cause Dia+Gtk2 now talk it.
2452         Also use g_strdup()'s handling of NULL by returning NULL
2453         again at all places I found (remove unnecessary if's)
2455         * todo.gtk2 : new file to keep notes about gtk2 porting,
2456         further issues and thoughts and some status information.
2457         Also sent to dia-list ('Dia goes Gtk2 ...').
2458         
2459         [make it compile with GTK+ 2.0]
2461         * config.h.win32 : #undef GTK_TALKS_UTF8_WE_DONT,
2462         removed definition of S_ISDIR, S_ISREG and getlogin
2464         * */makefile.msc : Use GTK2 and libxml2
2465         BEWARE: makefile.am, configure.in not yet ported !
2467         * app/app_procs.c app/diagram.c : remove 
2468         gtk_item_factory_dump_rc code, (it wasn't read in again anyway) 
2469         but set use gtk_menu_set_accel_path() on menu creation
2471         * app/color_area.c lib/widgets.c : 
2472         make use of gtk_color_selection_set_has_palette ()
2474         * app/commands.c : gdk_pixbuf_new_from_file wants an 
2475         extra argument. Convert from DIR to GDir usage.
2477         * app/diagram_tree.c(button_press_callback) : need to return 
2478         FALSE in the signal handler to let gtk process it further.
2479         (get_object_name) : don't leak 'prop'
2480         
2481         * app/diapagelayout.c : adapt to GtkTypeInfo changes and handle 
2482         dia_page_layout_destroy() getting called more than once
2484         * app/diaunitspinner.c : GtkEditable -> GtkEntry, 
2485         GtkTypeInfo changes
2487         * app/disp_callbacks.c : gtk_menu_append() -> gtk_menu_shell_append()
2489         * app/display.h : wrap input contexts declarations into #ifdef USE_XIM.
2490         IIRC this code will not compile unchanged when USE_XIM is defined ...
2492         * app/gtk[hv]wrapbox.[hc] : use already ported version from The GIMP 1.3.x
2494         * app/interface.c : there is no widget->klass anymore in Gtk, 
2495         use GTK_WIDGET_GET_CLASS instead. gdk_pixbuf_new_from_file() extra
2496         parameter. Some tweaking of GtkWrapBox usage to get four tools in
2497         a row again.
2498         switch off GTK's double buffering on Dia's canvas. Otherwise we would 
2499         get triple buffering and flicker.
2500         Replace call to GTK private function _gtk_accel_group_attach()
2501         with public gtk_window_add_accel_group()
2503         * app/layer_dialog.c : adapt to GtkTypeInfo changes
2505         * app/load_save.c lib/plug-ins.c lib/sheet.c 
2506           objects/custom/custom.c : 
2507         simplified by using g_file_test()
2509         * app/menus.c : convert from gtk_item_factory_<dump|parse>_rc 
2510         to gtk_accel_map_<save|load>. Also added common stock-icons
2511         to the menu.
2512         
2513         * app/preferences.c : use gtk_button_set_label() instead
2514         of button->child which is gone. Also removed GLIB_CHECK_VERSION.
2516         * app/preferences.c lib/dia_xml.c lib/plug-ins.c :
2517         #ifdef G_OS_WIN32 #include <io.h>, this was formerly done
2518         in config.h.win32
2520         * app/recent_files.c : removed GLIB_CHECK_VERSION
2522         * app/render_eps.c 
2523           plug-ins/metapost/render_metapost.c
2524           plug-ins/pstricks/render_pstricks.c
2525           plug-ins/svg/render_svg.c :
2526         replace getlogin() with g_get_user_name() which always
2527         returns non NULL
2529         * app/render_gdk.c : gdk_region_union_with_rect() modifies
2530         inplace now and returns nothing, also less #hell
2532         * app/render_libart.c : some initial #hell cleaning, SuckFont
2533         still needs to vanish
2535         * app/splash.c : gdk_pixbuf_new_from_file() second arg and
2536         GTK_WINDOW_DIALOG -> GTK_WINDOW_TOPLEVEL
2538         * app/render_pixbuf.c app/sheets.c : plain #hell cleaning
2539         * app/sheets_dialog_callbacks.c : some #hell and adaptions
2540         needed to GtkWrapBox api changes
2543         * lib/charconv.[hc] : removed from build
2544         [changed appropriate]
2545         * lib/prop_inttypes.c lib/prop_text.c : 
2546         all utf-8 cleaning 
2547         * lib/text.c : ported from HEAD but keep original indent
2548         intact. Original was done by Akira TAGOH.
2550         * lib/color.c : GdkColorContext is gone, use GdkColormap instead.
2552         * lib/dia_image.c : gdk_pixbuf_new_from_file() second arg
2554         * lib/dia_xml.c : remove #ifdef GLIB_CHECK_VERSION, it's the
2555         same on all platforms now!
2557         * lib/font.c : still using SuckFont which was an IMPERATIVE FIXME!
2559         * lib/message.c : remove "charconv.h"
2561         * lib/prop_text.c : #define GTK_ENABLE_BROKEN to use GtkText
2563         * lib/plug-in.c :
2564         * lib/sheet.c : convert from DIR to GDir usage
2566         * lib/widgets.c : gtk_menu_(shell_)append and GtkTypeInfo
2568         * lib/widgets.h : include gtk<label|colorseldialog>.h
2571         * objects/fs/flow.c :
2572         * objects/fs/flow-ortho.c : GTK_ENABLE_BROKEN to use GtkText
2574         * objects/custom/custom.c : convert from DIR to GDir usage
2577         * plug-ins/python/makefile.msc : updated for GTK2/Python2.2
2580 2002-05-03  Hans Breuer  <hans@breuer.org>
2582         * lib/dia_xml.c : make the well formed utf8 check
2583         actually work for &#251; (non 7-bit ascii encoding)
2584         and fixed the file re-writing if the check fails.
2585         Thanks to Vitaly Lipatov for noticing the misbehaviour.
2587         * lib/font.c : synchronize #ifdef G_OS_WIN32 with
2588         comment on last ressort font. Thanks to Maxim Sobolev.
2590 2002-06-03  Cyrille Chepelov  <cyrille@chepelov.org>
2592         * sheets/network.sheet.in: corrected a typo in plotter invocation.
2594 2002-06-03  Steffen Macke  <sdteffen@web.de>
2596         * shapes/network/digitizing_board.png:
2597         * shapes/network/digitizing_board.shape:
2598         * shapes/network/plotter.png:
2599         * shapes/network/plotter.shape:
2600         * shapes/network/Makefile.am
2601         * sheets/network.sheet.in: added new plotter and digitizing
2602         board shapes
2603         
2604 2002-06-02  Cyrille Chepelov  <cyrille@chepelov.org>
2606         * lib/font.c: made a symptomatic fix to a segfault reported by 
2607         Jan Keirse <jan.keirse@pandora.be> on a SuSE 7.3 system. This
2608         won't prevent dia from terminating, but should give more
2609         user-friendly information about why did it terminate.
2611         Two patches from <robert.young@dsto.defence.gov.au>:
2612         
2613         * app/display.c: fix the size of the canvas area which gets
2614         redrawn. There was an off-by one error (Closes #83659)
2616         * app/display.c: make sure we redraw all screen only when we
2617         really have to (some update_areas were mistakenly ignored) (Closes
2618         #83496). 
2620         * NEWS: added a new entry for the future. Put there a reminder to
2621         update the dependencies.
2623         * configure.in: put in notes about what will change shortly.
2624         upped the version to 0.90+cvs (did also in config.h.win32)
2625         upped the minimum version for intltools (now 0.21)
2626         
2627 2002-06-01  Cyrille Chepelov  <cyrille@chepelov.org>
2629         * dia.spec:
2630         * configure.in:
2631         * NEWS:
2632         * config.h.win32:
2633         bumped up version number to 0.90. Yay!
2635 2002-05-30  Cyrille Chepelov  <cyrille@chepelov.org>
2637         * doc/pl/Makefile.am:
2638         * doc/en/Makefile.am: fixed a "make install" problem when db2html
2639         is not present (Reported by Andrew Ferrier
2640         <andrew.junk@new-destiny.co.uk>). Fixed another "make distclean"
2641         problem which prevented me from ever seeing the problem in doc/en...
2642         
2643         * Makefile.am: added autogen.sh to the EXTRA_DIST clause.
2644         
2645         * lib/font.c: patch from <robert.young@dsto.defence.gov.au>; add a
2646         way to read the font path from the XFS configuration files in
2647         order to enable FreeType (fixes #83098).
2649         * POTFILES.(in,skip): now skips objects/sybase/sybase.c, which is not
2650         shipped nowadays.
2651                 
2652         * dia.spec:
2653         * configure.in:
2654         * NEWS:
2655         * config.h.win32:
2656         bumped up version number to 0.90.RC3
2658 2002-05-29  Zbigniew Chyla  <cyba@gnome.pl>
2660         * configure.in, doc/Makefile.am, doc/pl/Makefile.am,
2661         doc/pl/authors.sgml, doc/pl/dia-manual.sgml, doc/pl/dia-pl.omf,
2662         doc/pl/intro.sgml, doc/pl/license.sgml, doc/pl/topic.dat
2663         doc/pl/usage-canvas.sgml, doc/pl/usage-customization.sgml,
2664         doc/pl/usage-layers.sgml, doc/pl/usage-loadsave.sgml
2665         doc/pl/usage-objects-selecting.sgml, doc/pl/usage-objects-special.sgml,
2666         doc/pl/usage-objects.sgml, doc/pl/usage-quickstart.sgml:
2667         Added Polish documentation.
2669 2002-05-27  Cyrille Cheeplov  <cyrille@chepelov.org>
2671         * objects/UML/state.c: there was a (gratuitous?) change of on-XML
2672         format for the UML State object. Now there's a hack to reload
2673         older files, and get them converted on the fly. 
2674         Justyna BiaÃ…?a <nell@poczta.gazeta.pl> reported this. Thanks!
2676         * lib/properties.h:
2677         * lib/propobject.c:
2678         * lib/proplist.c: Added a new property flag, PROP_FLAG_LOAD_ONLY,
2679         and adapter the proplist predicates. A LOAD_ONLY property is for
2680         when you have legacy to support but can't resist moving your
2681         fields around... (was needed to support the above state.c fix).
2683         If the in-core of your object changes and you need a LOAD_ONLY
2684         property for the old format, you must keep some spare room in your
2685         object's struct to accomodate for the potential old-style
2686         attributes. Then in foo_load(), after having called
2687         object_load_using_properties(), you must inspect the old-style
2688         fields and act accordingly. Don't ever change the on-disk formats...
2690         * objects/UML/object.c:
2691         * objects/UML/small_package.c: added a check against empty
2692         stereotypes still consuming space. Reported by Dolores Alia de
2693         Saravia <loli@unsa.edu.ar>. Thanks!     
2694         
2695 2002-05-26  Cyrille Chepelov  <cyrille@chepelov.org>
2697         * INSTALL: added platform notes from MÃ¥rten Svantesson, for when
2698         using libtool on an AFS partition.
2700         * po/update_potfiles_in.sh: now simply calls the recent intltools 
2701         features; they work better than hand-crafted half-ignorant
2702         scripts. Thanks to Kenneth Rohde Christiansen <kenneth@gnu.org>
2703         for the tip.
2705         * po/POTFILES.in: added back two files update_potfiles_in.sh
2706         didn't take into account. Now this file is not automatically
2707         generated anymore!      
2708         * po/POTFILES.skip: told `intltool-update -m` what files to ignore
2709         (the usual suspects, in fact).
2711         * configure.in: improved the isinf() / isfinite() detection on
2712         Solaris (MÃ¥rten Svantesson)
2713         
2714 2002-05-25  Cyrille Chepelov  <cyrille@chepelov.org>
2716         * configure.in: one expression was replacing $CFLAGS, removing
2717         whatever was previously in.
2718         Added more checks for isinf() and finite() on Solaris.
2720         * lib/geometry.h: added a macro defintion for isinf() if not
2721         HAVE_ISINF. (Hans, you may want to #define HAVE_ISINF if relevant
2722         on Win32)
2724         * app/commands.c: "cut" did not set the 'modified' bit (paste has
2725         been for a little while). Fixes #82994.
2727         * Makefile.am: added more stuff to distclean-local. This should make
2728         "make distcheck" pass! Thanks to the author of
2729         http://mail.gnome.org/archives/gnome-2-0-list/2001-August/msg00212.html
2730         ... I wonder who this Henstridge guy is ... ;-)
2731         Darn. Still doesn't pass. I give up for tonight.
2732         
2733         * po/update_potfiles_in.sh: updated to take care of sheet files,
2734         and to filter out the EML plug-in.
2735         * po/POTFILES.in: updated with all .c and all .sheet.in files 
2737         * po/dia.pot, po/*.po: again updated all .po files with all
2738         strings (with the updated POTFILES). Now with the up-to-date
2739         POTFILES, just all languages have some fuzzy or untranslated
2740         strings (not that the 100% team was that large beforehand...)
2742         * po-checktrans: removed the comment about .po files not holding
2743         all translatable stuff, since now they do.
2744         
2745 2002-05-24  Cyrille Chepelov  <cyrille@chepelov.org>
2747         * dia.spec:
2748         * configure.in:
2749         * NEWS:
2750         * config.h.win32:
2751         bumped up version number to 0.90.RC2
2753 2002-05-20  Hans Breuer  <hans@breuer.org>
2755         * app/load_save.c : starting to increase
2756         Dias tolerance on incomplete/broken files. The 
2757         corresponding bug is #56233. But the patch there does
2758         neither apply anymore nor does it really fix the problem
2759         but only delays it, e.g. even if it would be allowed
2760         to read a file without any layers, the later code can't
2761         handle it.
2762         * lib/dia_xml.c : attribute_<num|first>_data(), data_type()
2763         handle passing in NULL for the node gracefully.
2765         * shapes/network/printer.shape : added two more connection
2766         points - one at each side - to fix bug #60359
2768         * app/commands.c (edit_copy_callback) : 
2769         add ddisplay_do_update_menu_sensitivity() to make 
2770         sequence select-copy-paste work.
2772 2002-05-20  Hans Breuer  <hans@breuer.org>
2774         * app/create_object.c (create_object_button_press) :
2775         added a call to ddisplay_do_update_menu_sensitivity()
2776         to make Ctrl^D etc work after object creation. 
2777         Fixes #80983.
2779 2002-05-18  Lars Clausen  <lrclause@cs.uiuc.edu>
2781         * objects/ER/entity.c: 
2782         * objects/ER/attribute.c: 
2783         * objects/ER/relationship.c: Patch to allow text size change from
2784         Celso Tetsuo Nagase Suzuki.
2786 2002-05-18  Steffen Macke <sdteffen@web.de>
2788         * app/app_procs.c: #ifdef'd xmlerror.h (comes with 
2789         libxml2)
2790         * doc/en/graphics/greendots.png:
2791         * doc/en/home_network.png:
2792         * doc/en/line_props.png: 
2793         * dia-diagram.png:
2794         * dia_gnome_icon.png:
2795         * dia_gnome_menu_icon.png:
2796         * dia_logo.png:
2797         * shapes/network/telephone.png:
2798         * shapes/Logic/and.png:
2799         * shapes/Logic/buffer.png:
2800         * shapes/Logic/connector.png:
2801         * shapes/Logic/inverter.png:
2802         * shapes/Logic/nand.png:
2803         * shapes/Logic/nor.png:
2804         * shapes/Logic/not.png:
2805         * shapes/Logic/or.png:
2806         * shapes/logic/xor.png:
2807         * samples/ER-demo.dia:
2808         * samples/SADT.dia:
2809         * samples/UML-demo.dia:
2810         * samples/chronograms.dia:
2811         * samples/grafcet.dia: re-added as binary files
2813 2002-05-17  Hans Breuer  <hans@breuer.org>
2815         * lib/libdia.def : reflect removing of render_store.[ch]
2817         * */makefile.mingw : remove VERSION definition it's
2818         done in config.h.win32. Dia still doesn't work if
2819         build with mingw ...
2821         * RELEASE-PROCESS : removed */makefile.mingw
2823         * app/sheets_dialog_callbacks.c : if we use those
2824         ugly charconv_gtk_* functions lib/charconv.h needs to
2825         be #included ...
2826         * lib/charconv.h : ... and needs to contain the 
2827         necesseray prototypes _and_ #defines
2829         * plug-ins/shape/shape-export.c : with libxml2 xmlNewGlobalNs
2830         is deprecated and does nothing but spit a warning. This broke
2831         the shape format writing. Fixed.
2832         Also with libxml2 pretty formatted xml isn't the default
2833         anymore, but needs to be enabled explicit: It is done now 
2834         for shape files, which almost always needed to be edited by
2835         hand ... 
2837         * app/app_procs.c : #if G_OS_WIN32 redirect xmlErrorReporting
2838         from stderr - which is invalid on Dia/win32 - to g_print -
2839         which opens up a console window if necessary. This way
2840         a xml-deprecation-error shouldn't stay unnoticed next time
2842 2002-05-17  Steffen Macke <sdteffen@web.de>
2844         * shapes/Misc/folder.png:
2845         * shapes/Misc/file.png: re-added as binary files
2846         
2847 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2849         * lib/font.c: Fixed segfault for fonts without family_name.
2851 2002-05-17  Cyrille Chepelov  <cyrille@chepelov.org>
2853         * po/POTFILES.in: added app/sheets_dialog_callbacks.c
2855         * app/sheets_dialog_callbacks.c: While reviewing UTF-8isation upon
2856         Lars' request, minor cosmetic stuff (mostly _() of human-readable
2857         XML comments in .sheet files; one translator booby-trap disarmed).
2859         * lib/charconv.c: moved #hell inside the body of the new
2860         charconv_*gtk* functions (otherwise the Win32 or gtk2.0 linker
2861         will yell)
2862         
2863 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2865         * plug-ins/wpg/Makefile.am (INCLUDES): 
2866         * plug-ins/shape/Makefile.am (INCLUDES): 
2867         * plug-ins/svg/Makefile.am (INCLUDES): 
2868         * plug-ins/pstricks/Makefile.am (INCLUDES): 
2869         * plug-ins/metapost/Makefile.am (INCLUDES): Added UNICODE_CFLAGS
2870         and DEBUG_CFLAGS in some missing places.
2872         * MAINTAINERS: New file containing list of known package
2873         maintainers. 
2875         * lib/charconv.h: 
2876         * lib/charconv.c: Charconv versions of some common gtk calls.
2878         * app/sheets_dialog_callbacks.c
2879         (on_sheets_new_dialog_button_ok_clicked),
2880         (on_sheets_dialog_button_edit_clicked),
2881         (on_sheets_dialog_button_remove_clicked),
2882         (on_sheets_edit_dialog_button_ok_clicked):
2883         * app/sheets.c (sheets_optionmenu_create),
2884         (sheets_optionmenu_create): Added utf8 translations.
2886         * app/sheets_dialog.c: 
2887         * app/sheets.c: 
2888         * app/sheets_dialog_callbacks.c: Added some missing _()'s.
2890 2002-05-16  Cyrille Chepelov  <cyrille@chepelov.org>
2892         * po/POTFILES.in: added app/sheets_dialog.c
2894 2002-05-15  Cyrille Chépélov  <cyrille@chepelov.org>
2896         * lib/charconv.c: (charconv_local8_to_utf8),
2897         (charconv_utf8_to_local8): tweaked the warnings to get more 
2898         informations
2899         * lib/font.c: (font_get_suckfont): handled a potential case of
2900         uninitialised data being used (just paranoid)
2901         
2902         * objects/GRAFCET/boolequation.c: (opstring),
2903         (opblock_get_boundingbox), (opblock_draw),
2904         (boolequation_calc_boundingbox): some extra hoops needed now dia
2905         talks UTF8 (but gtk doesn't). More #hell. Beeek. Basically, the
2906         symbols can't yet be used with their proper Unicode cells, since
2907         gtk will demand them in the Symbol font, expressed in the local
2908         8-bit encoding.
2909         
2910         * samples/grafcet.dia: re-saved, now with a fixed bounding box (by
2911         the fix just above).
2913 2002-05-14  Lars Clausen  <lrclause@cs.uiuc.edu>
2915         * app/diagram_tree.c (get_object_name): Check that name property
2916         doesn't have null string.
2918 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2920         * autogen.sh (DIE): Added conditional --force to gettextize.
2922         * app/pagesetup.c (pagesetup_ok): Commented out missing Gnome
2923         function call.
2925 2002-05-13  Cyrille Chepelov  <cyrille@chepelov.org>
2927         * RELEASE-PROCESS: added James' notes on how to properly make the
2928         tarball.
2930         * configure.in: removed macro nesting related to libpng.h, which
2931         was causing some problems on some systems (like mine, which made
2932         the snapshots bad).
2934         Made --enable-unicode, previously an option, the mandatory case.
2936         * app/Makefile.am: updated EXTRA_DIST
2937         
2938         * NEWS:
2939         * app/makefile.mingw:
2940         * dia.spec:
2941         * doc/en/dia-manual.sgml:
2942         * plug-ins/makefile.mingw:
2943         * configure.in: bumped up the version number to 0.90.RC1
2945         * lib/render_objects.[ch]:
2946         * po/POTFILES.in: removed render_objects from the build.
2948         * plug-ins/Makefile.am:
2949         * plug-ins/wmf/Makefile.am (new): EXTRA_DIST'ed the WMF plug-in,
2950         so we keep its source in the tarball.
2952         * objects/network/*.c, Makefile.am:
2953         * objects/sybase/*.c, Makefile.am:
2954         * po/POTFILES.in: cleaned up the non-existent files from the po
2955         build process.
2957         * plug-ins/Makefile.am: re-enabled metapost plug-in.
2958         
2959 2002-05-13  Steffen Macke <sdteffen@web.de>
2961         * AUTHORS:
2962         * app/command.c: added M. C. Nelson to the Authors
2963         * sheets/Circuit/Makefile.am: added firewall shape to build
2964         * sheets/network/Makefile.am: added telephone and microphone
2965           shapes to build
2967 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2969         * RELEASE-PROCESS: Added list of files that contain the release
2970         number or should otherwise be changed at each release.
2972 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2974         * objects/UML/uml.c (uml_operation_read): Forgot to commit this
2975         (reported fixed) bug: POLYMORPHIC -> LEAF for default.
2977 2002-05-12  Hans Breuer  <hans@breuer.org>
2979         * config.h.win32 : changed VERSION to 0.90.RC1
2981         * app/makefile.msc lib/makefile.msc : use renamed
2982         gdk-pixbuf version (same content but renamed because
2983         all the other gtk+ dlls are renamed) to avoid trouble
2984         mixing gtk versions (of which one would not 
2985         be initialized ...
2987         * app/app_procs.c : removed recently unneeded
2988         inclusion of "sheets.h"
2990         * app/render_gdk.c : removed my own debug spew
2991         which should never made it to cvs
2993         * lib/render_object.[hc] : added
2994         #error "File not used anymore."
2996         * lib/libdia.def : updated externals
2998         * app/interface.c : dropped filenames need to be
2999         converted from uri with Gtk+2.0
3001 2002-05-12  Cyrille Chepelov  <cyrille@chepelov.org>
3003         * RELEASE-PROCESS (new): a draft document about how to release. To
3004         be discussed. (already with some input from Hans Breuer)
3006 2002-05-12  Steffen Macke <sdteffen@web.de>
3008         * sheets/Makefile.am: re-added Misc sheet to make process
3009         
3010 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
3012         * objects/FS/function.c: Added comments to humungous list of menu
3013         items, to aid translators.
3015 2002-05-11  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3017         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
3019         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
3021         * app/interface.c (create_toolbox): Disallow shrinking beyond
3022         requested size.  Fixes bug #59439, and confirms to GTK guidelines
3023         (see gtk_window_set_policy).
3024         (create_sheets): Removed now unnecessary set_usize call.
3026 2002-05-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3028         * lib/beziershape.c (remove_handles): Fixing removal of last
3029         segment.  Undo of removal still hokey.
3031 2002-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
3033         * lib/bezier_conn.c (remove_handles): Proper offset for fixing
3034         handles. 
3035         * lib/beziershape.c (beziershape_init): Removed early call to
3036         beziershape_update_data where points aren't set yet.
3037         (beziershape_add_segment): Use segment 0 instead of overflowing
3038         points array with segment+1.
3039         (beziershape_remove_segment): Proper offset for fixing
3040         connectionpoints. 
3041         (remove_handles): Proper offset.
3043 2002-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
3045         * objects/GRAFCET/action.c (action_update_data): Init x value of
3046         click point for call to connpointlist_adjust_count.
3048         * app/modify_tool.c (create_modify_tool): Init tool->auto_scrolled
3050         * app/render_pixmap.c (new_pixmap_renderer): Moved first linestyle
3051         setting to where values are inited.
3053         * lib/polyshape.c (polyshape_init): Removed call to
3054         polyshape_update_data that tried to use uninitialized data.
3056 2002-05-06  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3058         * app/sheets_dialog.c: Mass removal of //-style comments.  The
3059         Irix compiler doesn't like them:(  I do...
3061 2002-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
3063         * app/render_libart.c (draw_string): Bail out when no GDK font is
3064         found.
3065         (set_font): Give error when font not found.
3066         (set_fillstyle): Intlized error msg.
3068         * app/pagesetup.c (pagesetup_ok, pagesetup_apply): Sets diagram
3069         modified when applied (and ok only does apply if apply is set
3070         sensitive).  Fixes bug #75623.
3072 2002-05-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
3074         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
3076 2002-05-05  Steffen Macke <sdteffen@web.de>
3078         * app/Makefile.am: added $(UNICODE_CFLAGS)
3079         
3080 2002-05-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3082         * app/commands.c (help_manual_callback): Check return value of
3083         opendir.
3085         * plug-ins/xfig/Makefile.am (INCLUDES): Added DEBUG_FLAGS
3087         * plug-ins/xfig/xfig-import.c: Fixed misspelled Poly_L_ine, added
3088         checks for errors.
3090 2002-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3092         * app/render_gdk.c (draw_string): Extra free killed.  Thanks valgrind!
3094         * objects/UML/uml.c (uml_operation_read): Fix of UML default
3095         inheritance. 
3097 2002-04-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3099         * app/filedlg.c (file_save_as_callback, file_save_as_ok_callback):
3100         Added button to toggle diagram compression.
3102 2002-04-29  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3104         * lib/font.c: Support for loading extra kerning files, plus got
3105         rid of rounding errors.  Bounding box mostly perfect for freetype
3106         fonts.
3107         (font_string_width): Fudge factor to get around nonlinearity of
3108         font scaling.
3110 2002-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
3112         * lib/font.c (font_string_width): YA font calculation scheme, with
3113         comments.
3115         * objects/UML/class.c (umlclass_calculate_data): Uses the same
3116         font for drawing and calculating now.
3118         * configure.in: Added utime.h check.
3120         * app/render_gdk.c (draw_string): Uses gdk_draw_text_wc when in
3121         GTK_DOESNT_TALK_UTF8_WE_DO.  Thus it matches the string width calc.
3123 2002-04-26  Hans Breuer  <hans@breuer.org>
3125         [ Instead of fixing about 70 occurances in 20 files
3126           where GTK_TALKS_UTF8_WE_DONT needed to be handled
3127           Dia on win32 from now on uses glib-2.0 and not 
3128           only talks utf-8 with gtk-1.3 but also internally.
3129           GTK_TALKS_UTF8_WE_DONT isn't supported/needed
3130           anymore. ]
3132         * config.h.win32 : #define UNICODE_WORK_IN_PROGRESS
3133         #undef GTK_TALKS_UTF8_WE_DONT
3135         * */makefile.msc : changes to use glib-2.0 (still
3136         using gtk+1.3(win32-production)
3138         * app/disp_callbacks.c : remove GTK_TALKS_UTF8_WE_DONT,
3139         adapt kevent->string handling, add <string.h>
3140         * app/render_gdk.c (get_text_width) : the length given
3141         is in chars, gdk_text_width() needs bytes
3143         * app/render_libart.c : 
3144         * app/render_pixmap.c : remove GTK_TALKS_UTF8_WE_DONT
3145         (could simplify the same way as done in render_gdk.c)
3147         * app/diagram_tree.c app/paginate_gdiprint.cpp
3148           app/sheets.c :
3149         * lib/prop_basic.c lib/prop_geomtypes.c 
3150           lib/propdialgs.c lib/propobject.c :
3151         added <string.h> which is now removed from charconv.h
3153         * lib/charconv.h : optional use infrastructure from
3154         glib-2.0 -> only five direct function mapping left
3156         * lib/charconv.c : avoid to build this with glib-2.0
3158         * lib/font.c : no string conversion needed anymore      
3159         when Dia and Gtk talk utf-8, also code adaptions
3160         for GLIB_CHECK_VERSION(2,0,0)
3162         * lib/libdia.def : removed charconv functions
3164         * lib/prop_inttypes.c : removed GTK_TALKS_UTF8_WE_DONT,
3165         replace charconv_unichar_to_utf8() with g_unichar_to_utf8()
3167         * lib/prop_text.c lib/prop_widgets.c lib/font.c : 
3168         removed GTK_TALKS_UTF8_WE_DONT
3170         * lib/text.c : finally(?) fixed cursor <place|move>ment 
3171         for Umlauts. Also fixed char insertion, still wondering
3172         how this could ever work. Does realloc on Linux 
3173         initialize the memory with zeros ?
3175         * objects/chronogram/chronoline_event.c
3176           objects/grafcet/boolequation.c :
3177         there is no uni_get_utf8 when building for glib-2.0.
3178         Replace with g_utf8_get_char() and g_utf8_next_char().
3180         * objects/uml/stereotype.c (bracketted_to_string) : 
3181         simplify while adding code for glib-2.0 build
3183 2002-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
3185         * app/diagram.h: Autosave field
3186         * app/diagram.c (diagram_set_modified): Sets autosave field.
3187         
3188         * objects/UML/usecase.c (usecase_update_data): 
3189         * objects/flowchart/ellipse.c (ellipse_update_data): 
3190         * objects/flowchart/parallelogram.c (pgram_update_data): 
3191         * objects/flowchart/diamond.c (diamond_update_data): 
3192         * objects/custom/custom_object.c (custom_update_data): 
3193         * objects/UML/state.c (state_update_data): 
3194         * objects/UML/small_package.c (smallpackage_update_data): 
3195         * objects/UML/object.c (objet_update_data): 
3196         * objects/UML/note.c (note_update_data): 
3197         * objects/UML/node.c (node_update_data): 
3198         * objects/UML/component.c (component_update_data): 
3199         * objects/UML/classicon.c (classicon_update_data): 
3200         * objects/UML/actor.c (actor_update_data): 
3201         * objects/SADT/box.c (sadtbox_update_data): 
3202         * objects/FS/function.c (function_update_data): 
3203         All now update text boundaries from update_data.
3204         
3205         * lib/widgets.c (dia_font_selector_set_styles): Made the style set
3206         correctly. 
3208 2002-04-26  Hans Breuer  <hans@breuer.org>
3210         * config.h.win32 : added VERSION definition here
3211         (and removed from makefile.msc's)
3213         * app/makefile.msc : added new files
3215         * app/app_procs.c (app_init): remove sheets_dialog_create()
3216         from start-up and ... 
3218         * app/sheet.c (sheets_dialog_show_callback) : ... lazy create
3219         sheet_dialog here when it is really needed.
3220         #include "../lib/message.h", make sheets_dialog_create() 
3221         return it's success or failing on (!custom_type_symbol). 
3222         Although editing shapes is nice IMHO it isn't crucial enough 
3223         to abort() Dia if       it isn't possible.
3225         * app/sheet.h : adapt create_sheet_dialog() prototype
3227         * app/sheets_dialog.c : add #ifdef HAVE_UNISTD_H
3229         * app/sheets_dialog_callbacks.c : #ifdef HAVE_UNISTD_H and
3230         #ifdef HAVE_UTIME_H. Otherwise #include <sys/utime.h> and
3231         name space corrections for utime() and utim_buf #ifdef
3232         G_OS_WIN32
3234         * lib/libdia.def : export new sheet functions
3236         * lib/makefile.msc : added new files
3238         * lib/render.c : don't put draw_bezier_with_arrows() in
3239         the DrawLineWithArrowsFunc slot
3241         * objects/custom/custom_object.c : #include <gmodule.h>
3242         and export 'custom_type' via G_MODULE_EXPORT
3244         * objects/uml/class_dialog.c : removed 'incompatible 
3245         types' warnings. Some refactoring while making it fit
3246         on screen with 800x600 again.
3248         * plug-ins/python/pydia-cpoint.h : add PyDiaConnectionPoint_Check
3250         * plug-ins/python/pydia-handle.h : extra parameter to
3251         PyDiaHandle_New to store the owner of the handle
3252         * plug-ins/python/pydia-handle.c : store handle owner
3253         on construction and use it in new method .connect()
3254         * plug-ins/python/pydia-object.c plug-ins/python/pydia-diagram.c : 
3255         adapt to changed prototype
3257 2002-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3259         * lib/text.c (text_calc_boundingbox): Will now return early if box
3260         passed is NULL.
3262         * objects/flowchart/box.c (box_update_data): Now updates text
3263         width info from update_data.
3265 2002-04-23  Steffen Macke <sdteffen@web.de>
3267         * plug-ins/xfig/xfig-import.c: fixed text import
3268         
3269 2002-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3271         * app/export_png.c: Moved dialog functions to their own file.
3272         * app/dialogs.[ch]: New files with standard functions for creating
3273         small, transient dialogs (e.g. export options).
3274         * app/Makefile.am: Added dialogs.[ch]
3276 2002-04-19  Steffen Macke <sdteffen@web.de>
3278         * shapes/Misc/folder.*:
3279         * shapes/Misc/file.*:
3280         * shapes/Misc/Makefile.am:
3281         * shapes/Makefile.am:
3282         * sheets/Misc.sheet.in:
3283         * sheets/Makefile.am:
3284         * configure.in: added new Misc sheet containing filesystem shapes
3285         
3286 2002-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
3288         * app/lineprops_area.c: Arrow selector in toolbox changed to use
3289         standard arrowdraw code.  Line is thinner to make some arrowheads
3290         distinguishable. 
3292 2002-04-18  Steffen Macke <sdteffen@web.de>
3294         * sheets/network.sheet.in:
3295         * shapes/network/telephone.shape:
3296         * shapes/network/Makefile.am: added telephone shape
3297         
3298 2002-04-16  Steffen Macke <sdteffen@web.de>
3300         * sheets/EML.sheet.in: commented out unavailable shapes
3301         
3302 2002-04-15  M.C. Nelson <mcn@kobayashimaru.org>
3304         * app/sheets_dialog_callbacks.c:  Fixed segfault caused by mis-ordered
3305           variable assignment.
3306         
3307 2002-04-15  Steffen Macke <sdteffen@web.de>
3309         * plug-ins/dxf/dxf-import.c: text import works again
3310         * shapes/Pneumatic/Makefile.am: added compush shape
3311         * sheets/Pneumatic.sheet.in: commented out unavailable shapes dist33
3312         and dist53
3313         
3314 2002-04-11  M.C. Nelson <mcn@kobayashimaru.org>
3316         * All these modifications are for the 'Sheets and Objects' dialog
3317           (new feature):
3319         * app/pixmaps/line_break.xpm: new icon representing a line break.
3320         
3321         * app/pixmaps/n_a.xpm: new empty icon representing not available.
3323         * app/Makefile.am: added sheets_*.[ch] files to compile list.
3324         
3325         * app/menus.c: added GNOME and gtk menu items for 'Sheets and Objects'
3326         
3327         * app/sheets_dialog.c: [new file] definition of 'Sheets & Objects' dlgs
3329         * app/sheets_dialog.h: [new file] support for Sheets & Objects dlgs 
3330         
3331         * app/app_procs.c: added call to sheets_dialog_create() in app_init()
3332         
3333         * app/sheets_dialog_callbacks.c: [new file] callbacks for S & O dialogs
3335         * app/sheets_dialog_callbacks.h: [new file] support for " " "
3337         * app/interface.c: added 'interface_current_sheet_name' global to 
3338           fill_sheet_wbox(); made fill_sheet_menu() non-static
3340         * app/interface.h: added extern declaration for aboves.
3342         * app/sheets.c: [new file] instantiation and other funcs for S & O dlgs
3344         * app/sheets.h: [new file] declarations for backing store structures
3346         * lib/sheet.c: modification of new_sheet() parameters; introduction
3347           of USER and SYSTEM scope for sheets; procedure for sorting sheets;
3348           changes to load_register_sheet().
3350         * lib/sheet.h: added 'user_data_type' field to SheetObject structure;
3351           added 'has_icon_on_sheet' flag to SheetObject structure; added 
3352           'filename', 'scope', 'shadowing' fields to Sheet structure.
3354         * lib/plug-ins.c: moved _PluginInfo declaration to header file where
3355           it belongs.
3357         * lib/plug-isn.h: see above.
3359         * lib/object.c: added 'sheet.h' to include list; added several 
3360           functions
3361           to detect objects which are not found on any sheet (for future use)
3362           object_type_detect_nosheet_callback(), object_types_detect_nosheet(),
3363           object_type_get_sheet_name(), object_type_strip_sheet_from_name().
3365         * lib/object.h: added public declarations for above functions where
3366           necessary.
3368         * objects/custom/custom.c: made custom_object_load() non-static so we
3369           can load and interpret .shape files from the Sheets & Objects dialog
3371         * objects/custom/custom_object.c: made 'custom_type' non-static so 
3372           we can differentiate between SVG shapes and other types.a
3374 2002-04-07  Hans Breuer  <hans@breuer.org>
3376         * app/object_ops.c (object_list_align_v): Fix the 'Leak fix'
3377         from 2002-01-22 to not destroy diagram->data->selected. 
3378         Avoids to crash on Objects/Align/Vertical/Top
3380         * app/render_eps.c (draw_string) : un-const buffer
3381         It isn't at all const (g_malloc(), assignment, g_free()).
3382         Doesn't gcc catch such ?
3384         * lib/arrows.h : prototype calculate_arrow_point()
3386         * lib/font.c (font_get_suckfont) : no need to
3387         special case gdk_draw_string() with GTK_TALKS_UTF8,
3388         cause all the parameter differences are handled above
3390         * lib/libdia.def : updated externals
3392         * lib/makefile.msc : removed string_prerenderer, added render
3394         * lib/render.c (draw_rect) : don't pass a Point** if a Point*
3395         is expected. [Sometimes it's good to read compiler warnings.]
3397         * objects/standard/image.c : simplified by use of g_strconcat()
3399         * plug-ins/python/makefile.msc : updated for Python 2.2
3401 2002-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
3403         * objects/standard/zigzagline.c (zigzagline_draw): Fixed
3404         directionality problem for zero-length line segments.
3406 2002-03-28  Lars Clausen  <lrclause@cs.uiuc.edu>
3408         * app/diagram.c (diagram_ungroup_selected) 
3409         (diagram_update_menu_sensitivity): Now allows ungrouping of
3410         several groups at once.
3412 2002-03-15  Lars Clausen  <lrclause@cs.uiuc.edu>
3414         * lib/render.c, all renderers: Binary incompatibility, change to
3415         expandable renderops structure.
3417 2002-03-15  Steffen Macke <sdteffen@yahoo.com>
3419         * objects/standard/Makefile.am:
3420         * objects/network/Makefile.am:
3421         * objects/UML/Makefile.am:
3422         * objects/ER/Makefile.am:
3423         * objects/FS/Makefile.am:
3424         * objects/flowchart/Makefile.am:
3425         * objects/custom/Makefile.am:
3426         * objects/GRAFCET/Makefile.am:
3427         * objects/chronogram/Makefile.am:
3428         * objects/SADT/Makefile.am:
3429         * plug-ins/cgm/Makefile.am:
3430         * plug-ins/pstricks/Makefile.am:
3431         * plug-ins/hpgl/Makefile.am:
3432         * plug-ins/wpg/Makefile.am:
3433         * plug-ins/svg/Makefile.am:
3434         * plug-ins/shape/Makefile.am: added $(UNICODE_CFLAGS)
3435         
3436 2002-03-13  Lars Clausen  <lrclause@cs.uiuc.edu>
3438         * app/render_eps.c: Support for dumping TrueType fonts (taken from
3439         ttfps).
3441 2002-03-12  Lars Clausen  <lrclause@cs.uiuc.edu>
3443         * lib/render.c: New abstract super class for renderers.
3445 2002-03-07  Akira TAGOH  <tagoh@redhat.com>
3447         * objects/ER/attribute.c (attribute_save): save a font property.
3448         (attribute_load): load a font property, and if can't load it, it's
3449         initialized.
3451         * objects/ER/entity.c (entity_save): save a font property.
3452         (entity_load): load a font property, and if can't load it, it's
3453         initialized.
3455         * objects/ER/relationship.c (relationship_save): save a font property.
3456         (relationship_load): load a font property, and if can't load it, it's
3457         initialized.
3459         * objects/UML/class.c (fill_in_fontdata): don't replace if it already
3460         has a vaule.
3461         (umlclass_save): save the font and the font size properties.
3462         (umlclass_load): load the font and the font size properties.
3464 2002-03-05  Cyrille Chepelov  <cyrille@chepelov.org>
3466         * lib/string_prerenderer.[ch] (REMOVED):
3467         * lib/render.h:
3468         * lib/diagramdata.c:
3469         * lib/Makefile.am:
3470         * app/render_eps.c: got rid of the string-specific string
3471         prerenderer, transitioned its functionality towards Lars'
3472         two-phase rendering
3474 2002-03-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3476         * configure.in: Using Freetypes own check for ver >= 1.0.5.  You
3477         may need to rerun aclocal.
3479 2002-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3481         * lib/font.c: First attempt at Unicodeness for Freetype.
3483 2002-03-02  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3485         * lib/font.c (font_string_width): Fixed font_string_width for
3486         freetype.  BB is now almost right.
3488 2002-03-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3490         * app/render_eps.h: 
3491         * app/paginate_psprint.c (paginate_psprint): 
3492         * lib/font.c: 
3493         * app/render_eps.c: Support for dumping postscript fonts into
3494         postscript files with freetype.  Fairly primitive, but works.
3495         Unicode version may have problems.
3497 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
3499         * objects/UML/class_dialog.c (class_read_from_dialog)
3500         (class_fill_in_dialog), (class_create_page): add the font selector and
3501         the font size selector.
3503         * objects/UML/class.c (umlclass_draw): uses each font_height.
3504         (umlclass_calculate_data): ditto.
3505         (fill_in_fontdata): add initial value of new font_height.
3506         (umlclass_copy): add new font_height.
3508 2002-02-27  Cyrille Chepelov  <chepelov@calixo.net>
3510         Patch from Geoff Gerrietts <ggerrietts@yahoo.com>:
3511         
3512         * lib/font.c: calculate font metrics properly and stop guessing at
3513         string widths.
3515 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
3517         * configure.in: changed gtk_advancement value to dia_talks_utf8.
3518         right now Dia is working with UTF-8 internally. it means Dia probably
3519         support most languages also including the languages which heretofore
3520         didn't work correctly.
3522 2002-02-26  Akira TAGOH  <tagoh@redhat.com>
3524         * objects/FS/function.c: add related text properties.
3525         (function_get_props), (function_set_props): add handling attribute.
3527         * objects/FS/flow.c: add related text properties.
3528         (flow_get_props), (flow_set_props): add handling attribute.
3530         * objects/FS/flow-ortho.c: add related text properties.
3531         (orthflow_set_props), (orthflow_get_props): add handling attribute.
3533         * objects/ER/relationship.c: add PROP_STD_TEXT_FONT to property.
3535         * objects/ER/entity.c: ditto.
3537         * objects/ER/attribute.c: ditto.
3539 2002-02-26  Cyrille Chepelov  <cyrille@chepelov.org>
3541         Patch contributed by Geoff Gerrietts <ggerrietts@yahoo.com>:
3542         
3543         * autogen.sh: add a check for missing intltoolize.
3545 2002-02-20  Akira TAGOH  <tagoh@redhat.com>
3547         * lib/ps-utf8.c (unicode_to_ps_name): if this function calls with same
3548         charcode, it was registered the duplicate item to HashTable. fix.
3550         * app/render_gnomeprint.c (get_width_string): add new function.
3551         (draw_string): fix non-multibyte specific code.
3553 2002-02-19  Cyrille Chepelov  <cyrille@chepelov.org>
3555         Patch contributed by Matthieu Sozeau <mattam@netcourrier.com>:
3556         
3557         * lib/font.c: do not try to search paths that do not begin with
3558         '/', like X Font Server addresses.
3559         
3560         * objects/UML/message.c (message_draw): free mname when not 
3561         message->text but CREATE or DESTROY.
3562         
3563         * objects/UML/uml.h:
3564         * objects/UML/uml.c:
3565         * objects/UML/class_dialog.c: added code to handle a stereotype 
3566         attribute for operations.
3568 2002-02-19  Akira TAGOH  <tagoh@redhat.com>
3570         * lib/Makefile.am: add LIBART_CFLAGS.
3572 2002-02-15  Hans Breuer  <hans@breuer.org>
3574         * lib/font.c (font_get_suck_font): the black and white pixel values 
3575         need to be taken from a 1 bit colormap rather than the default colormap.
3576         (fixed again, last time was 2000-05-26)
3578         Also handle the case where GTK_TALKS_UTF8 and expects all strings
3579         passed in to be in this encoding.
3581         * lib/libdia.def : export suck_font_free()
3583         * lib/text.c (text_draw) : avoid circular dependency to ../app
3584         at least for the !USE_XIM case, where it is unnecessary.
3586 2002-02-15  Cyrille Chepelov  <cyrille@chepelov.org>
3588         Changes contributed by Matts Kivik <kivik@firstlinux.net>:
3589         
3590         * shapes/Circuit/microphone_de.(shape|xpm) (NEW):
3591         * sheets/Circuit.sheet.in: added new shape microphone
3592         * shapes/Circuit/speaker_de.shape: Added a connection point.
3593         
3594 2002-02-13  Akira TAGOH  <tagoh@redhat.com>
3596         * app/render_libart.c (draw_string): fixed build issue for Win32.
3598         * lib/font.c (font_get_suckfont): fixed typo. it could't build under
3599         Win32.
3601         * configure.in: fixed testing gtk_advancement.
3603         * app/render_gnomeprint.c (draw_string): uses utfchar instead of char.
3605 2002-02-12  Akira TAGOH  <tagoh@redhat.com>
3607         * lib/text.c (text_draw): fixed XIM position, when menubar is shown for
3608         diagram window.
3610 2002-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
3612         * app/group.c (group_copy): Made new object properly initialized
3613         before copy.
3615 2002-02-11  Steffen Macke <sdteffen@yahoo.com>
3617         * app/Makefile.am: added plug-ins to DIA_LIB_PATH in run_dia.sh
3618         
3619 2002-02-10  Akira TAGOH  <tagoh@redhat.com>
3621         * lib/text.c (text_draw): fixed XIM transaction.
3623         * app/interface.c (create_display_shell): add signal for
3624         size_allocate.
3626         * app/disp_callbacks.c (ddisplay_size_allocate): add new function for
3627         XIM transaction.
3628         (set_input_dialog): remove.
3629         (ddisplay_canvas_events): remove XIM transaction. it can't transact
3630         correctly on this function.
3632 2002-02-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3634         * app/app_procs.c:
3635         * app/export_png.c: Added checks for interactivity (maybe this
3636         should be a hook after all?).
3638         * app/filedlg.c (file_export_callback): Made export dialog add
3639         suffix when reopened.
3641         * app/export_png.c: Added dialog asking for export size.
3643 2002-02-09  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3645         * lib/widgets.c: Fixed font reselection problem and first font
3646         bogus warning.
3648         * objects/UML/actor.c (actor_update_data): Changed to have
3649         connection points below text.
3651 2002-02-08  Akira TAGOH  <tagoh@redhat.com>
3653         * lib/text.c (text_split_line): use g_strndup() instead of g_malloc()
3654         and memcpy().
3656 2002-02-07  Akira TAGOH  <tagoh@redhat.com>
3658         * lib/font.c (font_get_suckfont): rewrited. generating suckfont from
3659         strings which is given.
3660         (suck_font): remove. it's any longer needed.
3662         * app/render_libart.c (set_font): don't get suckfont.
3663         (draw_string): get suckfont only which is needed for now.
3665 2002-02-05  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3667         * lib/text.c: Fixes for misunderstood width functions.
3669 2002-02-05  Hans Breuer  <hans@breuer.org>
3671         * lib/dia_xml.c : use g_strconcat() instead of 
3672         malloc, strcpy, strcat dance
3673         * app/properties.c : same here and plug memory leak
3674         (gtk functions don't eat strings)
3676         * objects/UML/message.c : there is no g_sprintf()
3677         use g_strdup_printf() instead ...
3679 2002-02-05  Akira TAGOH  <tagoh@redhat.com>
3681         * lib/message.c (gtk_message_internal): doesn't need to convert to
3682         UTF-8.
3684         * app/render_libart.c (draw_string): fixed transaction for UTF-8
3685         support.
3686         (get_text_width): ditto.
3688         * app/Makefile.am (EXTRA_DIST):
3689         s/paginate_gdiprint.c/paginate_gdiprint.cpp/
3691         * app/render_gdk.c (gdk_freetype_copy_glyph): fixed build issue.
3692         This function needs ifdef HAVE_FREETYPE because don't use it for
3693         --disable-freetype
3695 2002-02-04  Cyrille Chepelov  <cyrille@chepelov.org>
3697         * NEWS: updated with the new dependencies.
3698         
3699         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
3701         * objects/UML/class.h:
3702         * objects/UML/class.c:  
3703         * objects/UML/class_dialog.c: added code to handle the UMLParameterKind
3704         property using a GtkMenu. Options are Undefined, In, Out, In & Out
3706 2002-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3708         * app/render_libart.c: Slow but working libart freetype renderer,
3709         with color!
3711 2002-02-03  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3713         * app/render_gdk.c (draw_string): Fixed gc_function bug.
3715         * lib/widgets.c (dia_font_selector_init): Sorts the font list.
3717         * lib/font.c (freetype_render_string): 
3718         * lib/font.h:
3719         * app/render_gdk.c:
3720         * app/render_gdk.h: Changed freetype_render_string to use
3721         callback.  Rendering is broken.
3723 2002-02-03  Cyrille Chepelov  <cyrille@chepelov.org>
3725         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
3727         * objects/UML/uml.h:    
3728         * objects/UML/uml.c: added UMLInheritanceType and isQuery
3729         (constant) UML Operation attributes. UMLInheritanceType is either
3730         UML_ABSTRACT or UML_POLYMORPHIC  or UML_LEAF.
3732         * objects/UML/class.h:
3733         * objects/UML/class.c:  
3734         * objetcs/UML/class_dialog.c: added code to handle new
3735         UMLOperation attributes via a GtkMenu and a checkbox.
3737 2002-02-03  Akira TAGOH  <tagoh@redhat.com>
3739         * app/disp_callbacks.c (ddisplay_realize): fixed XIM issue.
3740         several client doesn't work with previous codes.
3742 2002-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3744         * lib/font.c (freetype_render_string): Kerning.  Very few fonts
3745         seem to use it.
3747 2002-02-02  Akira TAGOH  <tagoh@redhat.com>
3749         * app/disp_callbacks.c (ddisplay_canvas_events): fixed crashes,
3750         when doing the operation like invert the objects after active view is
3751         destroyed. when changes focus, it needs to set active_display.
3753         * app/layer_dialog.c (dia_layer_update_from_layer):
3754         (layer_dialog_edit_layer): need to convert to locale encoding
3755         if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3756         (edit_layer_ok_callback):
3757         need to convert to UTF8 if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3759         * lib/diagramdata.c (new_diagram_data): ditto.
3761         * app/layer_dialog.c (layer_dialog_new_callback): ditto.
3763         * lib/diagramdata.c (new_layer): use utfchar instead of char for
3764         argument.
3766         * lib/widgets.c: if HAVE_FREETYPE isn't defined, it can't build. fixed.
3767         (dia_font_selector_set_styles): when HAVE_FREETYPE is defined only,
3768         it's needed for now. also this function needs prototype declaration.
3770 2002-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
3772         * lib/widgets.c: Style now functional on font selector.  Some leak
3773         possible, but doesn't show up under stress test.
3775 2002-01-31  Akira TAGOH  <tagoh@redhat.com>
3777         * app/plugin-manager.c (clist_select_row): name and description needs to
3778         convert to locale encoding, when GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3779         (get_plugin_manager): ditto.
3781         * lib/plug-ins.c (dia_plugin_info_init): name needs to convert to UTF-8.
3783         * app/diagram_tree.c (get_object_name): fixed transaction for UTF-8
3784         support.
3786         * lib/prop_text.c (stringprop_reset_widget): fixed crashes,
3787         when prop->string_data is NULL.
3789 2002-01-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3791         * lib/widgets.c: 
3792         * lib/widgets.h: New font selector separating font and style.
3793         Style not functional yet.
3795 2002-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3797         * lib/text.c: 
3798         * app/render_gdk.c (draw_string): More freetype support, now
3799         renders text.  Still broken is font selection and exporting.
3801 2002-01-30  Akira TAGOH  <tagoh@redhat.com>
3803         * objects/chronogram/chronoref.c (chronoref_create): missing gettextize
3804         for font.
3806         * objects/chronogram/chronoline.c (chronoline_create): ditto.
3808         * objects/UML/usecase.c (usecase_create): ditto.
3810         * objects/UML/state.c (state_create): ditto.
3812         * objects/UML/object.c (objet_create): ditto.
3814         * objects/UML/node.c (node_create): ditto.
3816         * objects/UML/message.c (message_create): ditto.
3818         * objects/UML/component.c (component_create): ditto.
3820         * objects/UML/classicon.c (classicon_create): ditto.
3822         * objects/UML/actor.c (actor_create): ditto.
3824         * objects/SADT/box.c (sadtbox_create): ditto.
3826         * objects/SADT/annotation.c (annotation_create): ditto.
3828         * objects/GRAFCET/transition.c (TRANSITION_FONT): ditto.
3830         * objects/GRAFCET/step.c (STEP_FONT):
3831         * (step_create): ditto.
3833         * objects/GRAFCET/condition.c (CONDITION_FONT): ditto.
3835         * objects/GRAFCET/action.c (ACTION_FONT):
3836         (action_create): ditto.
3838         * objects/FS/function.c (function_create): ditto.
3840         * objects/FS/flow.c (flow_create):
3841         (flow_load): 
3842         (flow_apply_defaults): ditto.
3844         * objects/FS/flow-poly.c (flow_create):
3845         (flow_load):
3846         (flow_apply_defaults): ditto.
3848         * objects/FS/flow-ortho.c (orthflow_create):
3849         (orthflow_load):
3850         (orthflow_apply_defaults): ditto.
3852         * objects/ER/relationship.c: use utfchar instead of char for structure.
3853         (relationship_create): name needs to convert to UTF-8.
3855         * objects/ER/attribute.c: use utfchar instead of char for structure.
3856         (attribute_create): name needs to convert to UTF-8.
3858         * objects/ER/entity.c: use utfchar instead of char for structure.
3859         (entity_create): name needs to convert to UTF-8.
3861         * app/interface.c (fill_sheet_wbox): needs to convert UTF-8 to locale
3862         encoding for tooltips, if GTK_TALKS_UTF8 isn't defined.
3863         (fill_sheet_menu): needs to convert UTF-8 to locale encoding for menu
3864         items. if GTK_TALKS_UTF8 isn't defined.
3866 2002-01-29  Akira TAGOH  <tagoh@redhat.com>
3868         * objects/UML/class.c (umlclass_calculate_data): fixed malloc size.
3869         it was my careless mistake...
3871         * lib/attributes.c (attributes_set_default_font): temporarily gettextize
3872         a font name, because there are strings which isn't shown by "Courier".
3873         We need to consider a way to feel free to choose a font at runtime.
3875         * lib/render_object.c (render_object_load): ditto.
3877         * lib/text.c (data_text): ditto.
3879         * objects/EML/instantiation.c (instantiation_create): ditto.
3881         * objects/EML/interaction-ortho.c (interaction_ortho_create):
3882         (interaction_ortho_load): ditto.
3884         * objects/EML/interaction.c (interaction_create):
3885         (interaction_load): ditto.
3887         * objects/EML/process.c (fill_in_fontdata): ditto.
3889         * objects/ER/attribute.c (attribute_create): 
3890         (attribute_load): ditto.
3892         * objects/ER/entity.c (entity_create): 
3893         (entity_load): ditto.
3895         * objects/ER/relationship.c (relationship_create): 
3896         (relationship_load): ditto.
3898         * objects/UML/association.c (association_create): 
3899         (association_load): ditto.
3901         * objects/UML/class.c (fill_in_fontdata): ditto.
3903         * objects/UML/constraint.c (constraint_create): ditto.
3905         * objects/UML/dependency.c (dependency_create): ditto.
3907         * objects/UML/generalization.c (generalization_create): ditto.
3909         * objects/UML/implements.c (implements_create): ditto.
3911         * objects/UML/large_package.c (largepackage_create): ditto.
3913         * objects/UML/note.c (note_create): ditto.
3915         * objects/UML/realizes.c (realizes_create): ditto.
3917         * objects/UML/small_package.c (smallpackage_create): ditto.
3919         * objects/custom/shape_info.h (FONT_DEFAULT): ditto.
3921         * objects/custom/custom_object.c (custom_create): ditto.
3923         * objects/network/antenna.c (render_to_store): ditto.
3925         * objects/network/computer.c (render_to_store): ditto.
3927         * objects/network/disc.c (render_to_store): ditto.
3929         * objects/network/flash.c (render_to_store): ditto.
3931         * objects/network/hub.c (render_to_store): ditto.
3933         * objects/network/modem.c (render_to_store): ditto.
3935         * objects/network/modularswitch.c (render_to_store): ditto.
3937         * objects/network/monitor.c (render_to_store): ditto.
3939         * objects/network/printer.c (render_to_store): ditto.
3941         * objects/network/rj45plug.c (render_to_store): ditto.
3943         * objects/network/scead-plug.c (render_to_store): ditto.
3945         * objects/standard/textobj.c (textobj_load): ditto.
3947         * objects/sybase/client.c (render_to_store): ditto.
3949         * objects/sybase/dataserver.c (render_to_store): ditto.
3951         * objects/sybase/ltm.c (render_to_store): ditto.
3953         * objects/sybase/repserver.c (render_to_store): ditto.
3955         * objects/sybase/rsm.c (render_to_store): ditto.
3957         * objects/sybase/stableq.c (render_to_store): ditto.
3959         * plug-ins/dxf/dxf-import.c (read_entity_text_dxf): ditto.
3961         * objects/UML/uml.h (UML_STEREOTYPE_START):
3962         (UML_STEREOTYPE_END): changes default strings.
3964 2002-01-28  Akira TAGOH  <tagoh@redhat.com>
3966         * objects/UML/stereotype.c (string_to_bracketted): fixed transaction
3967         for UTF-8 support. if GTK+ and Dia don't handle UTF-8, all of characters
3968         which is given to arguments isn't UTF-8. so don't need to convert it.
3969         if GTK+ handle UTF-8, also don't need to convert it.
3970         (strend): remove.
3971         (bracketted_to_string): fixed transaction for UTF-8 support.
3972         also start/end bracket is not necessarily 1 character. so that when use
3973         strend(), it doesn't work correctly.
3974         (string_to_stereotype): use utfchar instead of char.
3975         (remove_stereotype_from_string): ditto.
3976         (stereotype_to_string): ditto.
3978         * objects/UML/stereotype.h: ditto.
3980         * objects/UML/message.c: use utfchar instead of char for structure.
3981         (MESSAGE_CREATE_LABEL, MESSAGE_DESTROY_LABEL): remove.
3983         * objects/UML/small_package.c: use utfchar instead of char for structure.
3985         * objects/UML/realizes.c: ditto.
3987         * objects/UML/object.c: ditto.
3989         * objects/UML/large_package.c: ditto.
3991         * objects/UML/implements.c: ditto.
3993         * objects/UML/generalization.c: ditto.
3995         * objects/UML/dependency.c: ditto.
3997         * objects/UML/constraint.c: ditto.
3999         * objects/UML/component.c: ditto.
4001         * objects/UML/class_dialog.c (attributes_get_current_values):
4002         (attributes_list_new_callback, attributes_fill_in_dialog):
4003         (parameters_set_values, parameters_get_values):
4004         (parameters_get_current_values, parameters_list_new_callback):
4005         (operations_set_values, operations_get_values):
4006         (operations_get_current_values, operations_list_new_callback):
4007         (operations_fill_in_dialog, templates_set_values):
4008         (templates_get_values, templates_get_current_values):
4009         (templates_list_new_callback, templates_fill_in_dialog):
4010         fixed transaction for UTF-8 support.
4012 2002-01-27  Akira TAGOH  <tagoh@redhat.com>
4014         * objects/UML/message.c (message_draw): fixed transaction for UTF-8 support.
4016         * objects/UML/class_dialog.c (class_read_from_dialog):
4017         (class_fill_in_dialog):
4018         (attributes_get_values): ditto.
4020         * objects/UML/actor.c (actor_create): ditto.
4022         * objects/UML/class.c (umlclass_calculate_data): ditto.
4024         * objects/UML/association.c (association_apply_properties):
4025         (fill_in_dialog): ditto.
4027         * objects/UML/uml.c (uml_get_attribute_string):
4028         (uml_get_operation_string):
4029         (uml_get_parameter_string):
4030         (uml_get_formalparameter_string): use utfchar instead of char.
4032         * objects/UML/uml.h: gettextize UML_STEREOTYPE_START and
4033         UML_STEREOTYPE_END.
4035         * objects/UML/class.h: use utfchar instead of char.
4037         * lib/dia_xml.c (data_add_string): ditto.
4039         * lib/text.c (text_insert_char): fixed characters# calculation
4040         when includes multibytes character in strings.
4042 2002-01-26  Steffen Macke  <sdteffen@yahoo.com>
4044         Patch from Richard Rowell <rwrowell@bellsouth.net>:
4046         * app/lineprops_area.c:
4047         * lib/arrows.h:
4048         * lib/arrows.c: 
4049         * lib/widgets.c: added crow foot arrow and cross arrow
4050         
4051         Patch from Frank Gevaerts <frank.gevaerts@fks.be>:
4052         
4053         * plug-ins/svg/render_svg.c: fixed arcs, fill and text alignment
4055 2002-01-26  Cyrille Chepelov  <cyrille@chepelov.org>
4057         * po/update.pl (REMOVED):
4058         * po/update.sh (REMOVED):
4059         * xml-i18n-merge.in.kg (REMOVED):
4060         * xml-i18n-update.in.kg (REMOVED):
4061         * sheets/Makefile.am:
4062         * Makefile.am:
4063         * autogen.sh:
4064         * configure.in: converted from xml-i18n-tools to intltools
4066         This looks like it fixes the build bugs of the snapshot tarballs, 
4067         and it supersedes #69611.       
4069 2002-01-25  Akira TAGOH  <tagoh@redhat.com>
4071         * lib/text.c (text_insert_char): fixed characters# calculation.
4072         it's not string length.
4074         * lib/plug-ins.c (dia_plugin_info_init): when GTK_DOESNT_TALK_UTF8_WE_DO
4075         is defined, needs to convert a description to UTF-8.
4077         * app/render_gdk.c (get_text_width): fixed transaction for
4078         UTF-8 support. also should uses gdk_text_width_wc() instead
4079         of gdk_text_width().
4081         * app/render_gdk.c (draw_string): when GTK_DOESNT_TALK_UTF8_WE_DO
4082         is defined, needs to convert to locale encoding for display.
4083         Also use utfchar instead of char for argument.
4085 2002-01-24  Hans Breuer  <hans@breuer.org>
4087         * app/commands.c(edit_paste_callback and more) : 
4088         call diagram_modified(ddisp->diagram) to fix #68083
4089         (help_menu_callback) : plug a DIR leak
4091         * app/disp_callbacks.c(ddisplay_canvas_events) : handle 
4092         GTK_TALKS_UTF8_WE_DONT
4094         * app/render_gdk.c(get_text_with) : it's a bad idea to use
4095         gdk_string_with() when GTK_TALKS_UTF8_WE_DONT instead of
4096         gdk_text_width(). The length value is still questionable ...
4098         * lib/charconv.c : use functions already available in early
4099         GLIB-1.3 days whiches API hasn't changed since, to avoid
4100         version problems with the win32 build
4102         * lib/font.c : finally fix #58045 and #68208
4104         * lib/dia_xml.c (xmlDiaSaveFile) : gzdopen in binary mode
4106 2002-01-24  Akira TAGOH  <tagoh@redhat.com>
4108         * app/disp_callbacks.c (ddisplay_canvas_events): when event returned
4109         no strings, fixed transaction.
4111         * lib/charconv.h: fixed typo.
4113         * app/menus.c: fixed typo.
4115         * lib/charconv.c (charconv_utf8_strchr): remove. use uni_strchr instead.
4117         * objects/UML/object.c: attrib's type uses utfchar instead of char.
4119         * app/disp_callbacks.c (ddisplay_canvas_events): forget g_free()
4121         * lib/text.c (text_create_change): use unichar instead of char.
4123         * lib/text.c (data_add_text, data_text, apply_textstr_properties):
4124         use utfchar instead of char.
4126         * lib/text.c (text_insert_char, text_key_event): fixed transaction for
4127         UTF-8 support.
4129         * lib/charconv.c (charconv_utf8_get_char): add new function.
4131 2002-01-23  Akira TAGOH  <tagoh@redhat.com>
4133         * lib/text.c (text_delete_forward, text_delete_backward,
4134         text_split_line): fixed transaction for UTF-8 support.
4136         * lib/text.c (text_copy): when UNICODE_WORK_IN_PROGRESS is defined,
4137         strlen[] has string length for UTF-8, so has to use alloclen[].
4139         * dia.pot: remove.
4141         * .cvsignore: add dia.pot.
4143 2002-01-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
4145         * configure.in: Added "sk" to ALL_LINGUAS.
4147 2002-01-22  Akira TAGOH  <tagoh@redhat.com>
4149         * lib/text.c (text_set_string, new_text, text_copy,
4150         text_get_string_copy, text_join_lines): use utfchar instead of gchar
4151         for strings.
4153         * lib/text.c (set_string): use charconv_utf8_strchr() instead of
4154         strchr().
4156         * lib/charconv.c (charconv_utf8_strchr): add new function.
4158         * lib/charconv.c (charconv_keyval_to_unicode): ditto.
4160         * lib/charconv.c (charconv_utf8_from_gtk_event_key): ditto.
4162         * app/disp_callbacks.c (ddisplay_canvas_events): needs to convert
4163         strings to the appropriate encoding.
4165 2002-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
4167         * app/object_ops.c (object_list_align_[hv]): Leak fix.
4169         * lib/Makefile.am (INCLUDES): Added debug flags.
4171         * app/object_ops.c: Fixed ordering problem of align equi-distant &
4172         adjacent. 
4174 2002-01-21  Akira TAGOH  <tagoh@redhat.com>
4176         * lib/font.c (font_string_width): use gdk_text_width_wc() instead of
4177         gdk_string_width().
4179         * objects/GRAFCET/boolequation.c: fixed invalid comment.
4181         * objects/UML/stereotype.c (string_to_bracketted): fixed build problem
4182         when defined UNICODE_WORK_IN_PROGRESS.
4184         * lib/dia_xml.c (data_add_string): fixed typo.
4186 2002-01-20  Akira TAGOH  <tagoh@redhat.com>
4188         * configure.in: fixed test gtk_advancement.
4190 2002-01-019  Steffen Macke  <sdteffen@yahoo.com>
4192         * plug-ins/svg/render_svg.c: fix for #69053, alignment of text
4193         exported to SVG
4195         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>: 
4197         * app/recent_files.[ch]: reworked to support GNOME, accelerators,
4198         tool tips, preferences, and arbitrarily long ~/.dia/history
4200         * app/menus.c: made 'Plugins' consistantly spelled and accelerated;
4201         removed 'Open Recent'; added new separators for recent documents on
4202         File menu.
4204         * app/interface.[ch] (interface_get_toolbox_shell): new function
4206         * app/diagram.c: added new parameter to recent_file_history_add() call
4208         * app/preferences.[ch]: added new 'Recent documents list size'
4209         preferences item
4210         
4211 2002-01-18  Akira TAGOH  <tagoh@redhat.com>
4213         * lib/font.c (font_get_gdkfont_helper): use gdk_fontset_load ().
4214         if it failed, should be used gdk_font_load ().
4216         * lib/font.c (font_data): added the font entries for CJK.
4218 2002-01-17  Steffen Macke  <sdteffen@yahoo.com>
4220         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>:
4222         * app/menus.c: replaced GDK_F1 with "F1" to fix segfault on startup
4223         
4224 2002-01-04  Cyrille Chepelov  <cyrille@chepelov.org>
4226         Patch from Martin Cracauer <cracauer@cons.org>:
4227         
4228         * app/menus.c: add missing #include <gdk/gdkkeysyms.h> (useful in the
4229         non-GNOME case ?)
4231 2002-01-01  Hans Breuer  <hans@breuer.org>
4233         * app/command.c : optional use GDI printing on windoze
4235         * app/preferences.[hc] : add option 'prefer_psprint' to 
4236         select the print engine to use (could be used for Dia/Gnome
4237         as well)
4239         * app/paginate_gdiprint.(h|cpp) : new files, which interlink the
4240         wmf plug-in with the common win32 print api. Now printing
4241         should work almost as expected from a windows program :-)
4243         * app/diagram.c app/menus.[hc] : rename _UpdatableMenuItems.delete
4244         to .edit_delete to avoid clashes with C++
4246         * app/makefile.msc : updated for GDI printing
4248         * plug-ins/wmf/wmf.cpp : some small modifications to support
4249         GDI printing. Also swap R and B channel in draw_image()
4251         * app/makefile.am : added windows only files to EXTRA_DIST
4253         * objects/uml/class.c(umlclass_set_props) : force recalculation
4254         when applying properties
4256         * lib/charconv.c lib/dia_xml.c : temporary back-ported to
4257         glib-1.3.2 (for win32) IMHO causes recent cvs introduces too
4258         many incompatible changes (and would force a gtk update)
4260         * objects/makefile.msc : don't build C-Objects which are
4261         already available as 'pure shape'
4263         * plug-ins/makefile.msc : remove diaimport from build. It was
4264         only available via mailing-list and is broken since the
4265         StdProp overhaul.
4268         Patch from Jose A Ortega Ruiz  <jaortega@acm.org>
4270         * app/preferences.[hc] : tweaked preferences.c to make 
4271         PREF_STRING work. Use it for 'diagram_tree_hidden'. Also
4272         added some more DiagramTree prefererences and their own
4273         notebook page.
4275         * app/diagram_tree.[hc] : allow to sort by object type or name
4276         and hide by type ...
4277         * app/diagram_tree_menu.[hc] : ... add respective menu entries ...
4278         * app/diagram_tree_menu_callbacks.[hc] : ... and callbacks.
4280         * app/diagram_tree_window.c : handle hidden types and window
4281         size restoring.
4283 2001-12-20  Hans Breuer  <hans@breuer.org>
4285         * plug-ins/python/Makefile.am : patch from Peter Moulder 
4286         <pmoulder@csse.monash.edu.au> to make the python plug-in
4287         compile on *nix too.
4289 2001-12-03  Cyrille Chepelov  <chepelov@calixo.net>
4291         Patch from Alan <horkana@tcd.ie>:
4293         * app/menus.c: bind the F1 shortcut to the Help/_Manual function.
4295 2001-11-20  Hans Breuer  <hans@breuer.org>
4297         * app/makefile.msc : add new diagram_tree_menu(_callbacks).obj
4299 2001-11-18  Jose A Ortega Ruiz  <jaortega@acm.org>
4301         * app/diagram_tree.[hc] : Added new functions and types for
4302         sorting diagram and objects, and attaching the popup menus.
4304         * app/preferences.h: Added more diagram tree preferences, using a
4305         DiagramTreeConfig struct in DiaPreferences. The new prefs are the
4306         height and width of the diagram tree window and the default sort
4307         orders for diagrams and objects.
4309         * app/preferences.c (prefs_data): Added new entries for the new
4310         diagram tree preferences.
4312         * app/preferences.c (prefs_tabs): New tab for diagram tree
4313         preferences.
4315         * app/diagram_tree_window.[hc] (create_diagram_tree_window): 
4316         * app/diagram_tree_window.c (diagram_tree_window_new): 
4317         * app/interface.c (create_tree_window): The diagram tree window is
4318         initialised using the DiagramTreeConfig part of prefs.
4321 2001-11-14  Jose A Ortega Ruiz  <jaortega@acm.org>
4323         * app/diagram_tree_menu.[hc]: New files. Functions to create the
4324         diagram tree popup menus.
4326         * app/diagram_tree_menu_callbacks.[hc]: New files. Callbacks for
4327         the diagram tree popup menus.
4329         * app/Makefile.am (dia_core_files): diagram_tree_menu* files
4330         added.
4332 2001-11-13  Jose A Ortega Ruiz  <jaortega@acm.org>
4334         * app/diagram_tree.c (double_click_callback, diagram_tree_new):
4335         double-clicking a diagram tree node raises the diagram window
4336         to the foreground (and, if a object node was clicked, selects the
4337         object in the diagram).
4339         * app/diagram_tree.c (select_tree_widget): selecting an object
4340         node with single click simply updates it (no raise).
4342 2001-11-08  Jose A Ortega Ruiz  <jaortega@acm.org>
4343         These changes make the diagram tree lazy: it is not created unless
4344         the diagram tree window is requested.
4345         
4346         * app/diagram_tree_window.[hc] (create_diagram_tree_window): new
4347         function for creating the tree window.
4349         * app/interface.c (create_tree_window): call
4350         create_diagram_tree_window() instead of diagram_window().
4352         * app/diagram_tree.c (diagram_tree_add, diagram_tree_remove) 
4353         (diagram_tree_update, diagram_tree_update_name) 
4354         (diagram_tree_add_object, diagram_tree_add_objects) 
4355         (diagram_tree_remove_object, diagram_tree_remove_objects) 
4356         (diagram_tree_update_object): accept a NULL tree as a nominal
4357         argument (and do nothing in this case!), so that the diagram tree
4358         is not initialised if not used.
4360         * app/diagram_tree_window.c (diagram_tree): do not create the
4361         diagram tree until diagram_window() or diagtree_show_callback()
4362         are invoked.
4364 2001-10-31  Jose A Ortega Ruiz  <jaortega@acm.org>
4365         [slightly modified and applied from Hans Breuer <hans@breuer.org>]
4367         * app/diagram_tree_window.[hc] : (new files) implementation of 
4368         the diagram tree window, a container for a diagram tree. [Removed
4369         the horizontal scroll bar glitch by disableing it]
4371         * app/diagram_tree.[hc] : (new files) implementation of the 
4372         diagram tree widget. [Don't rely on the layers GPtrArray to be
4373         NULL terminated, but use its ->len field] 
4375         * app/Makefile.am (dia_core_files): added new files
4376         diagram_tree.[hc] and diagram_tree_window.[hc]
4378         * app/interface.[hc] : (create_tree_window): this function 
4379         creates the new diagram tree window widget
4381         * app/undo.c (delete_objects_apply) (delete_objects_revert) 
4382         (insert_objects_apply) (insert_objects_revert) (group_objects_apply) 
4383         (ungroup_objects_apply) (ungroup_objects_revert): 
4384         every time that an undoable command modifies a diagram 
4385         adding/removing/(un)grouping objects, a diagram_tree_something() is 
4386         invoked to keep the diagram tree window in sync
4388         * app/properties.c (properties_apply): call to
4389         diagram_object_modified(), which updates the diagram tree window
4390         when the properties of an object are modified
4392         * app/preferences.[hc] : new "show_diagram_tree" configuration option 
4393         (whether the diagram tree window should be shown on dia startup)
4395         * app/menus.c : added '<Toolbox>/File/Diagram Tree' entry
4397         * app/diagram.h (diagram_object_modified): callback notifying of a
4398         diagram object modification
4400         * app/diagram.c (diagram_load_into): added call to
4401         diagram_tree_add() to add newly loaded diagrams to the diagram
4402         tree window
4403         (diagram_destroy): call to diagram_tree_remove() to remove a
4404         destroyed diagram from the diagram tree window
4405         (diagram_add_object): call to diagram_tree_add_object() to add an
4406         object to the diagram tree window
4407         (diagram_add_object_list): as above, but with an object list
4408         (diagram_selected_break_external): deletion of objects from the
4409         diagram is detected here, and diagram_tree_remove_object() is
4410         invoked to remove the object from the diagram tree window (it
4411         would be nice to have a diagram_remove_object() in the Diagram
4412         interface)
4413         (diagram_set_filename): update the diagram tree window when a
4414         diagram's filename changes
4416         * app/commands.c (file_new_callback): added call to
4417         diagram_tree_add() to add newly created diagrams to the diagram
4418         tree window
4420         * app/app_procs.c (app_init): added call to create_tree_window()
4422         * app/makefile.msc : updated
4424 2001-10-28  Hans Breuer  <hans@breuer.org>
4426         * app/preferences.h (DiaPreferences): 
4427         * app/preferences.c (prefs_data): new "show_diagram_tree"
4428         configuration option (whether the diagram tree window should be
4429         shown on dia startup)
4431         * app/menus.c: added the new "<Toolbox>/View/Diagram tree" menu
4432         entry (both for GNOME and gtk)
4434         * app/diagram.h (diagram_object_modified): callback notifying of a
4435         diagram object modification
4437         * app/diagram.c (diagram_load_into): added call to
4438         diagram_tree_add() to add newly loaded diagrams to the diagram
4439         tree window
4440         (diagram_destroy): call to diagram_tree_remove() to remove a
4441         destroyed diagram from the diagram tree window
4442         (diagram_add_object): call to diagram_tree_add_object() to add an
4443         object to the diagram tree window
4444         (diagram_add_object_list): as above, but with an object list
4445         (diagram_selected_break_external): deletion of objects from the
4446         diagram is detected here, and diagram_tree_remove_object() is
4447         invoked to remove the object from the diagram tree window (it
4448         would be nice to have a diagram_remove_object() in the Diagram
4449         interface)
4450         (diagram_set_filename): update the diagram tree window when a
4451         diagram's filename changes
4453         * app/commands.c (file_new_callback): added call to
4454         diagram_tree_add() to add newly created diagrams to the diagram
4455         tree window
4457         * app/app_procs.c (app_init): added call to create_tree_window()
4459 2001-10-28  Hans Breuer  <hans@breuer.org>
4461         * plug-ins/python/pydia-property.c : apparently I missed
4462         to commit this last time. Now it has some more SetAttr
4463         support (apply from property)
4465         * plug-ins/python/pydia-properties.h : added PyDiaProperty_Check
4467         * plug-ins/python/pydia-text.[ch] : new files
4469 2001-10-14  Hans Breuer  <hans@breuer.org>
4471         * lib/charconv.c : g_locale_to_utf8() does not handle NULL
4472         strings. Use g_strdup() for these.
4474         libxml2 does not produce 'any extra indentation when saving a tree'
4475         [libxml2-2.4.2/doc/upgrade.html] anymore, which was the default with
4476         libxml(1). To get human readable XML some extra tweaking is required.
4477         It is enabled by setting 'pretty_formated_xml' to 'true' in 'diarc'.
4478         * lib/dia_xml.[hc] : provide and use 'DIAVAR pretty_formated_xml'
4479         * app/preferences.[ch] : initialize 'pretty_formated_xml'
4481         * lib/libdia.def : updated externals
4483         * lib/properties.h : add prototype for prop_list_from_single ()
4485         * plug-ins/makefile.msc : build metapost plug-in
4487         * plug-ins/metapost/render_metapost.c : msvc does not like
4488         switch labels without operation 'default: }'. Added a noop.
4490         * plug-ins/python/pydia-text.[hc] : (new files) wrap DiaText
4491         * plug-ins/python/diamodule.c : added PyDiaText 
4492         * plug-ins/python/makefile.msc : dito. Also added LIBXML_CFLAGS.
4493         Although the python plug-in does not use libxml at all, the
4494         headers are required to use the lib/prop*.h headers
4496         * plug-ins/python/pydia-diagramdata.c : added wrappers for
4497         update_extents and get_sorted_selected (should I duplicate
4498         more functions from PyDiaDiagram or should they be moved?)
4500         * plug-ins/python/pydia-properties.c : allow to set (some) properties
4501         through the dictionary api
4502         * plug-ins/python/pydia-property.h : declare PyDiaProperty_ApplyToObject
4503         * plug-ins/python/pydia-property.c : implement it (currently only
4504         string properties can be set)
4506         Reimplement PyDiaProperty_GetAttr by means of the new StdProp api.
4507         Quoting myself: 'Still not convinced that this is better than an 
4508          integral property->type and some casting ...
4509          It is trading a straightforward 40 lines switch statement to
4510          this nice 'type safe' function mapping (about 125 lines)'
4511         (But now it works again, better than changing the News file :)
4512         
4513 2001-10-14  Cyrille Chepelov  <chepelov@calixo.net>
4515         patch from <robert.young@dsto.defence.gov.au>: 
4516         * objects/UML/component.c: remember to set font in UML component
4517         object (fixes #62132)   
4519 2001-10-02  Lars Clausen  <lrclause@cs.uiuc.edu>
4521         * plug-ins/metapost/metapost.c: 
4522         * plug-ins/metapost/Makefile.am:
4523         * plug-ins/metapost/render_metapost.c:
4524         * plug-ins/metapost/render_metapost.h:
4525         Metapost renderer from Chris Sperandio
4527 2001-09-14  Hans Breuer  <hans@breuer.org>
4529         * app/render_gdk.c : reflect the fact, that GTK already talks
4530         UTF8 on win32, fixes #59982, #56100, (#55992 ?) ...
4532         * lib/font.c : 
4533         * app/render_libart.c : trying to fix #58045 but it appears
4534         to be an Gdk/win32, too. 
4536         * lib/charconv.c : handle utf8 conversion with the help of
4537         glib-1.3 even in the !HAVE_UNICODE case.
4539         * lib/dia_xml.c : reduce complaing about missing encoding, by
4540         detecting if the default (utf8) would break the file.
4542 2001-09-13  Cyrille Chepelov  <chepelov@calixo.net>
4544         * lib/charconv.c: (get_local_charset): at least please try to not 
4545         silently change the logic, while avoiding crashes. 
4547         * lib/font.c: (suck_font): put a #error, we have a nasty something
4548         to fix there before we switch to Gtk 2.0.
4549         
4550 2001-09-09  Hans Breuer  <hans@breuer.org>
4552         * **/makefile.mingw : Approach to compile Dia with mingw.
4553         Compiling mostly works but running does not (yet) ... 
4555         * lib/geometry.h : 
4556         - use G_OS_WIN32 instead of _MSC_VER to drag in isinf, etc. definitions. 
4557           Apparently mingw needs it too.
4558         - enable 'normalization' of a null verctor. Otherwise the beziergon
4559           bounding box calculation would be broken at least with msvc. What's
4560           the mathematical correct result of 0.0/0.0 ?
4562         * lib/dia_xml.c : isinf() for mingw too.
4564         * lib/dia_dirs.c : use MAX_PATH instead of _MAX_PATH (works for mingw 
4565         and msvc)
4567         * lib/charconv.c : still crashes if strcmp(NULL, "UTF-8"). 
4568         Please don't do it.
4570         * lib/font.c : Trying to reflect that GTK_TALKS_UTF8_WE_DONT
4572         * lib/libdia.def : updated externals. Apparently mingw needs
4573         them to produce the right mangling.
4575         * plug-ins/shape/shape-exports.c : get prototypes for xmlStrdup
4576         and xmlDiaSaveFile
4578 2001-09-08  Wang Jian  <lark@linux.net.cn>
4580         * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN
4582 2001-09-07  Cyrille Chepelov  <chepelov@calixo.net>
4584         * lib/dia_xml_libxml.h:
4585         * lib/dia_xml.c: (data_add_string), (xmlDiaSaveFile): Duplicated
4586         libxml1's code, to rework the output file before it gets committed
4587         to disk. This is rubbish, and will be removed when libxml2
4588         switches from discouraged to mandatory. 
4589         All in all, this fixes #60152. 
4590         
4591         * lib/charconv.h: 
4592         * lib/charconv.c: (charconv_unichar_to_utf8):
4593         made the type of the input parameter explicitly an unsigned long.
4595         * configure.in: Added a check for libz (we must now include it
4596         explicitly, for xmlDiaSaveFile).
4597         
4598         * app/load_save.c: (diagram_data_save):
4599         * lib/plug-ins.c: (ensure_pluginrc), (info_fill_from_pluginrc),
4600         (dia_pluginrc_write):
4601         * plug-ins/shape/shape-export.c: (new_shape_renderer),
4602         (end_render), (draw_string):
4603         * plug-ins/svg/render_svg.c: (new_svg_renderer), (end_render),
4604         (draw_string):
4606         Made sure we always write UTF-8 XML files, and through
4607         xmlDiaSaveFile().
4609         * NEWS: documented that fact.
4610         
4611 2001-09-07  James Henstridge  <james@daa.com.au>
4613         * configure.in (found_libxml): refactor the check for libxml a
4614         little so that it handles finding both libxml1 and 2 better.
4616 2001-09-03  Cyrille Chepelov  <chepelov@calixo.net>
4618         * app/app_procs.c: removed a spurious } which caused a compilation
4619         error in the (!HAVE_GNOME && HAVE_POPT_H) case
4621         * lib/charconv.c: (get_local_charset): some versions of iconv(1)
4622         don't know what ANSI X3.4-1968 is. I didn't know until this day,
4623         but it's just plain old ASCII. Added a check to shield the poor
4624         XML library.
4626         Patches from <robert.young@dsto.defence.gov.au>:
4628         * lib/text.c: (text_calc_boundingbox) Bounding box now calculates the
4629         width and height of text before calculating bounds. Fixes #59928
4631         * app/preferences.c: Moved grid related items into Grid Tab.
4632         
4633 2001-09-02  Cyrille Chepelov  <chepelov@calixo.net>
4635         * app/interface.c: (create_zoom_widget): connected one more signal
4636         to the Zoom selector combo's list. Fixes #59879.
4638         * app/app_procs.[ch]: (app_init) (do_convert)
4639         (build_output_file_name): brought back into the main executable
4640         the rare useful bits of the ill-fated diaconv. This means we have
4641         one new feature : --export-to-format (-t), which should make
4642         writing conversion scripts easier, and a crude implementation of
4643         -t and -e for the poptless argument parsing, which means the Win32
4644         port should be able to take advantage of it (that should make
4645         resolving #58197 possible).
4647         * app/diaconv.c: kept the poor duck compiling (but that's about
4648         it).
4650         * plug-ins/svg/render_svg.c: updated the SVG DTD header (I hope
4651         I've got it right).
4653         * NEWS: updated about the new feature above, and documented the 
4654         "missing encoding specification" complaint. 
4655         
4656 2001-09-01  Abel Cheung  <maddog@linux.org.hk>
4658         * configure.in: Rename zh_TW.Big5 -> zh_TW in ALL_LINGUAS.
4660 2001-09-01  Cyrille Chepelov  <chepelov@calixo.net>
4662         * objects/standard/bezier.c: used g_new0 instead of g_new, to take
4663         care of #59837.
4665 2001-09-01  James Henstridge  <james@daa.com.au>
4667         * */Makefile.am: various changes to include missing files, and fix
4668         sheets dir to handle building with builddir != srcdir.
4670         * autogen.sh: unconditionally pass the --enable-maintainer-mode
4671         and --enable-db2html flags so that builds from CVS work correctly.
4673         * configure.in: increment version number.  Also add an
4674         --enable-db2html flag.  Without the flag, db2html won't be run (if
4675         the flag is passed and db2html is not present, do nothing).
4677 2001-08-30  Cyrille Chepelov  <chepelov@calixo.net>
4679         * lib/poly_conn.c: (polyconn_copy): it's a wonder this routine
4680         even compiled. It's really too bad there is no lint tool easily
4681         available (or a more cautious, pedandic, paranoid and verbose
4682         compiler). Anyway, this fixes #59662. (this didn't affect 0.88.x)
4684 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
4686         * app/load_save.c:
4687         * dia/lib/plug-ins.c: use g_strdup() instead of strdup(). Patch
4688         from <robert.young@dsto.defence.gov.au>. Fixes #59591.
4690         * app/menu.c: added ellipsis(...) to diagram properties menu item.
4691         * app/dia-props.c: diagram properties dialog contents did not
4692         represent current diagram settings.
4693         * app/dia-props.[ch]:
4694         * app/display.c: diagram properties contents now follows currently
4695         selected diagram.
4696         Patch also from <robert.young@dsto.defence.gov.au>, fixes #59409.
4698         * AUTHORS: added Robert Young.
4699         
4700 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
4702         * app/modify_tool.c: (modify_button_release): Patch from
4703         <robert.young@dsto.defence.gov.au>. Fixes the remaining bit from
4704         #59090: if selection dragging was released outside of the window, 
4705         artifacts of the selection box remained.
4707 2001-08-25  Cyrille Chepelov  <chepelov@calixo.net>
4709         * Objects/custom/shape_info.c: added missing #include <xmlmemory.h>
4711 2001-08-19  Cyrille Chepelov  <chepelov@calixo.net>
4713         * configure.in:
4714         * sheets/Makefile.am: prepared the terrain for the Version of
4715         xml-i18n-tools Which Comes After 0.9 (and which will feature at
4716         last a sane behaviour with XML files). Some reasonible delay
4717         before enforcing that version *will* be given.
4719         * xml-i18n-merge.in.kg: included the current CVS xml-i18n-merge.in
4720         
4721         * lib/plug-ins.c: <xmlmemory.h> defines xmlFree(), otherwise it
4722         becomes a nonexistent symbol.
4723         
4724 2001-08-18  Hans Breuer  <hans@breuer.org>
4726         * app/app_procs.c : made it compile without ENABLE_NLS
4728         * app/diap_callbacks.c : strcmp isn't guaranteed to work
4729         with NULL pointers
4731         * app/load_save.c :
4732         * lib/plug-ins.c : 
4733         * objects/custom/shape_info.c : avoid mixing allocators and dealocators. 
4734         It has to be :
4735                 xmlGetProp, ... -> xmlFree
4736                 malloc, strdup -> free
4737                 g_new, g_malloc, g_strdup - > g_free
4739         * app/win32print.c : some more error checking, still not
4740         working on Win9x
4742         * lib/charconv.c : get_local_charset is used even with !HAVE_UNICODE
4744         * lib/dia_xml.c : msvc still has no unistd.h
4746         * lib/dia_xml.c :
4747         * lib/sheets.c : temporary resolved libxml include brokeness
4749         * plug-ins/python/pydia-*.c : reflect Font and StdProp api
4750         changes. Compiles again, but doesn't do anything useful anymore.
4751         (see THE_PROP_TYPE_IS_INTEGRAL)
4753         * **/makefile.msc : updated to use LIBXML2
4755         * lib/libdia.def : reflect api changes
4757 2001-08-17  Cyrille Chepelov  <chepelov@calixo.net>
4759         * config.h.win32: added defines telling that gtk speaks UTF8.
4760         Hans, I believe this reflects what GTK on Win32 does.
4762         * app/app_procs.c: if GTK talks UTF8, we'll feed it UTF8 localised
4763         strings.        
4764         * lib/prop_inttypes.c: 
4765         * lib/prop_text.c:
4766         * lib/prop_widgets.c: fixed typos in the GTK_TALKS_UTF8_WE_DONT
4767         code path.
4768         
4769         * lib/plug-ins.c: (dia_register_plugins_in_dir): If there is a
4770         trailing // (or whatever (G_DIR_SEPARATOR * 2) is), a recursive
4771         search for plug-ins is done.
4772         * app/Makefile.am: made app/run_dia.sh use the // capability. No
4773         need to update this anymore if we get a new plug-in library (or
4774         remove one).
4776         * lib/dia_xml.c: #include <unistd.h> was missing.
4777         
4778         * lib/properties.h: 
4779         * lib/proplist.c: (pdtpp_defaults): Added a new flag,
4780         PROP_FLAG_NO_DEFAULTS. Will be used in the "automatic defaults"
4781         support.        
4783 2001-08-16  Cyrille Chepelov  <chepelov@calixo.net>
4785         * sheets/civil.sheet: removed duplicate "Danish" entries.
4787         * autogen.sh:
4788         * configure.in: 
4789         * .cvsignore:
4790         * sheets/Makefile.am: 
4791         * po/POTFILES.in:
4792         * Makefile.am: applied the xml-i18n-tools README's instructions.
4794         * po/(da de fr hu nl nn no sl).po: merged the translations from
4795         the sheet files into the .po files. I hope I haven't mixed
4796         languages...
4797         * sheets/*.sheet (REMOVED):
4798         * sheets/*.sheet.in (NEW): moved the sheet files sans
4799         translations into .sheet.in files. 
4800         
4801         * sheets/xml-i18n-unicodify: (NEW) included from xml-i18n-tools,
4802         because we don't yet want to force all translators to work using
4803         UTF-8 editors. We'll want to do that sometime (sooner rather than
4804         later). Okay, I sing a slightly different tune in po/ChangeLog...
4806         * dia.desktop (REMOVED):
4807         * dia.desktop.in (NEW): used also the x18t infrastructure for
4808         this too.
4810         * xml-i18n-update.in.kg (NEW): This one will stay in CVS until an
4811         "official" version of x18t with support for .sheet files is available.
4812         * xml-i18n-merge.in.kg (NEW): This one will stay in CVS until an
4813         "official" version of x18t which doesn't corrupt UTF-8 data in XML
4814         is available.
4815         
4816         ** yes, we are now using xml-i18n-tools to manage the sheet
4817         translations. For the Win32 build, Nemo stores snapshots of
4818         translated strings next to the CVS snapshots. **
4820         * sheets/checktrans.py: suddenly, some sheets have lots of
4821         translations (objects which existed before sheets, mostly).
4822         Adapted the formatting.
4824         * po/README (REMOVED): this is obsolete ! It was ignored, anyway.
4826         * app/display.[ch]: (ddisplay_autoscroll), (ddisplay_scroll):
4827         * app/modify_tool.[ch]: (modify_motion): A (modified) patch from
4828         <robert.young@dsto.defence.gov.au>, to fix #59090.
4830         * app/display.c: (ddisplay_scroll): While at it, added some
4831         margin, so that autoscrolling can happen within a margin outside
4832         the diagram's extents.
4834         * app/tool.[ch]: 
4835         * app/interface.c:
4836         * app/disp_callbacks.c: Robert "forced" me to go when I usually
4837         don't, namely the app/ directory. So while I was there, I
4838         scratched a long-time itch. If no object has focus, pressing the
4839         space bar will select back the tool which was selected before the 
4840         current one (I find this especially useful with "reset after create" !)
4841         
4842         * lib/proplist.c: (prop_list_from_single): Renamed
4843         prop_list_singleton() to avoid confusion with the Singleton
4844         pattern (which it definitely is not).
4845         
4846         * lib/propobject.c: (object_prop_by_name_type),
4847         (object_prop_by_name): The "flags" parameter was not necessary.
4848         These don't return synthetic properties, but properties built from
4849         a real property description list; therefore, we don't call
4850         make_new_prop() but use the existing property descriptor, which
4851         has perfectly valid (and meaningful) flags.
4853         * lib/proplist.c: (pdtpp_synthetic), (pdtpp_from_object): These
4854         new predicates better reflect the reason why properties exist when
4855         they're created by make_new_prop() or object_prop_by_name().    
4857         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
4858         * lib/prop_basic.c: (make_new_prop): used the new reasons instead
4859         of pdtpp_true().
4861         * lib/properties.h: reflects all the above changes.
4863         * objects/SADT/arrow.c:
4864         * objects/SADT/annotation.c:
4865         * sheets/SADT.sheet: minor renamings to better match FIPS 183's
4866         IDEF0 terminology.
4867         
4868 2001-08-15  Cyrille Chepelov  <chepelov@calixo.net>
4870         * lib/properties.h:
4871         * lib/proplist.c: (prop_list_singleton):
4872         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
4873         Added these, to simplify interactions of plug-ins with the StdProp
4874         core.
4876         * lib/Makefile.am:
4877         * lib/dia_xml.h:
4878         * lib/dia_xml_libxml.h (NEW): 
4879         * app/load_save.c:
4880         * lib/dia_xml.c:
4881         * lib/plug-ins.c:
4882         * lib/sheet.c:
4883         * objects/custom/shape_info.c: A few prototypes were causing
4884         #include hell, because we generally attempt to not pull the whole
4885         libxml header set when we include dia_xml.h. Moved those
4886         prototypes away for the rare cases they're necessary.
4887         
4888 2001-08-15  Hans Breuer  <hans@breuer.org>
4890         * lib/font.c : made LARS_TRACE_MESSAGES Standard C conform
4892         * lib/libdia.def : 
4893         * lib/makefile.msc : updated
4895         * lib/prop_basic.c : __FUNCTION__ is a gcc extension. Please
4896         use G_GNUC_FUNCTION instead.
4898         * lib/prop_inttypes.c : include <stdlib.h> for strtol()
4900         * objects/sadt/annotation.c : disable TEMPORARY_EVENT_TEST for
4901         msvc instead of cleaning missing includes
4903         * plug-ins/wmf/wmf.cpp :
4904         * plug-ins/wmf/wmf_gdi.h : fixed for Font to DiaFont renaming
4906 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
4908         * app/app_procs.c:
4909         * app/load_save.c:
4910         * lib/dia_xml.c:
4911         * lib/plug-ins.c:
4912         * lib/sheet.c:
4913         * objects/custom/shape_info.c:
4914         * plug-ins/shape/shape-export.c:
4915         * plug-ins/svg/render_svg.c: used the libxml1/libxml2
4916         compatibility macros as taught by http://xmlsoft.org/upgrade.html;
4917         removed xmlKeepBlanksDefault(0) in favour for proper
4918         xmlIsBlankNode() testing. Lots of other fixups to use the
4919         "libxml1.5" (libxml2 parser embedded in recent libxml1), and to
4920         make libxml1 output correct files.
4922         * configure.in: use libxml2 (>= 2.3.9) if it's found, or
4923         libxml1 (>= 1.8.14). Exactly one of these must be installed (devel
4924         packages). If both devel packages are found, the build will stop 
4925         (Fredrik: please add a Build-Conflicts: on libxml2-dev for the moment) 
4927         * lib/bezier_conn.c: (bezierconn_init): Lars, you forgot to
4928         allocate the first handle :-)
4929         
4930         * lib/object.c: (object_init): <gratuitous>g_new() used instead of
4931         a cast and a sizeof.</gratuitous>
4933         * objects/custom/custom_object.c: (custom_copy): don't call
4934         text_get_attrbutes if the shape has no text...
4935         (custom_update_data): The info->resize_with_text code was a bit
4936         directive; basically, the shape's bounding box was forced to be 
4937         proportional to the text's bounding box.... This fixes #57187.
4938         
4939         * objects/custom/shape_info.c: (load_shape_info): Set an obvious
4940         default for info->aspect_ratio; unobfuscated a line about
4941         info->resize_with_text;
4942         
4943 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
4945         * lib/properties.h: added comments next to the PROP_TYPEs to tell
4946         which C Property subclass to use.
4947         
4948         * plug-ins/dxf/dxf-import.c: (read_entity_line_dxf): Removed the
4949         cast-ridden form of setting properties in a list, in favour for
4950         the "local pointers" form. I'll take any better offer...
4952 2001-08-14  Cyrille Chepelov <chepelov@calixo.net>
4953         
4954         * lib/font.c: fprintf(...) --> fprintf(format...)
4956         * configure.in: added a disabled versioned test for glib.
4957         * lib/prop_geomtypes.c: (bezpointprop_load), (bezpointprop_save),
4958         (bezpointarrayprop_load), (bezpointarrayprop_save): replaced
4959         g_critical() with a simple g_error(). Proper fix is to implement
4960         that stuff. 
4962         * lib/properties.h: PROP_STD_TEXT is a PROP_TYPE_TEXT, not a
4963         PROP_TYPE_STRING.
4964         
4965         * lib/properties.h:     
4966         * lib/propdesc.c: (prop_desc_list_calculate_quarks):
4967         * lib/proplist.c: (find_prop_by_name_and_type):
4968         * lib/prop_basic.c: (make_new_prop), (initialize_property):
4969         * lib/propoffsets.c: (do_set_props_from_offsets),
4970         (do_get_props_from_offsets), (prop_offset_list_calculate_quarks):
4971         Added a type_quark member to PropDescription, Property and
4972         PropOffset. Used it to implement a safety in
4973         do_[sg]et_props_from_offsets().
4974                 
4975         * objects/flowchart/diamond.c: the diamond's text was not saved,
4976         and thus not even copied (c&p).
4977         * objects/standard/textobj.c: ditto.
4979         Most of the above changes thanks to Robert Young's testing. Thanks !
4980         
4981 2001-08-14  Kjartan Maraas  <kmaraas@gnome.org>
4983         * sheets/*.sheet: Added some Norwegian translations (both nynorsk
4984         and bokmÃ¥l).
4985         
4986 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
4988         * lib/proplist.c (prop_list_from_descs): added a call to
4989         prop_desc_list_calculate_quarks(). (find_prop_by_name_and_type):
4990         too embarrassing to tell.
4991         
4992         * lib/propdesc.c (prop_desc_list_calculate_quarks): converted the
4993         while loop to a for loop, for symmetry with
4994         prop_offset_list_calculate_quarks().
4996         * lib/geometry.h: new inline function, rectangle_equals.
4998         * lib/diagramdata.[ch]: refactored a bit the diagram extents
4999         computation logic, and changed it to always be the union of the
5000         visible layers' extents. This should close #58882 (Debian
5001         #107167), and fixes #55498.
5003         * app/display.c: made the initial visible box more coherent with
5004         the diagram being loaded's extents.
5006         * app/prop_attr.c: don't set the font (from offset) if font_data
5007         is NULL. Two brainos in colorprop_load() and fontprop_load().
5008         
5009 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
5011         * lib/properties.[ch]: split in a lot of pieces: 
5013         * lib/prop_*.[ch] (NEW): all property types are now first-class
5014         objects, inheriting from the original abstract Property type.
5015         * lib/propdesc.c (NEW): property description handling routines
5016         * lib/propoffsets.c (NEW): property offset handling routines
5017         * lib/proplist.c (NEW): property list handling routines
5018         * lib/propobject.c (NEW): property list <-> object routines
5019         * lib/propregistry.c (NEW): holds the PropertyType-->PropertyOps
5020         relations.
5021         * lib/propinternals.h: prototypes for stuff not usually needed by 
5022         the outside of StdProps.
5023         * lib/Makefile.am: a lot of new files have been added...
5025         THE ABOVE CHANGES ARE MAJOR CHANGES AND AFFECT THE WHOLE TREE, IN
5026         BOTH INTERFACES AND RUN-TIME STABILITY.
5028         * lib/plug-ins.h: bumped up DIA_PLUGIN_API_VERSION
5029         
5030         * lib/object.h: removed the incestuous relationship with
5031         properties.h' contents. Now a Property list is a GPtrArray -->
5032         object interface change !
5034         * app/app_procs.c/app_init(): removed a disabled call to a
5035         non-existent routine. Added a call to stdprops_init().
5036         
5037         * objects/Makefile.am: disabled the construction of EML. I'm not
5038         touching these until a certain issue is solved (or this module
5039         removed).
5040         * app/group.c:  
5041         * objects/**/*.c except objects/EML/*: adapted all stdprop-using 
5042         objects to the interface changes.
5043         
5044         * app/disp_callbacks.c: killed a warning.
5045         * lib/dia_xml.[ch]: sprinkled "const" modifiers. 
5047         * app/commands.c: 
5048         The macros PROP_VALUE_* have disappeared. Adapted to using the new 
5049         interface.
5051         * plug-ins/dxf/dxf-import.c: 
5052         * plug-ins/xfig/xfig-import.c: 
5053         PROP_VALUE_* macros have been removed. Converted to the new API.
5055         * plug-ins/python/**/*: I gave up converting this; I can't
5056         compile --with-python (problems with object.h defined both by us
5057         and by Python). I'll gladly help whomever cares to fix it !
5058         (or, fix it myself if someone tells me how to compile it).
5059         
5060         * configure.in: added the UNICODE-related progress defines.
5061                 
5062         * configure.in:
5063         * lib/geometry.h: On Solaris and perhaps other systems, finite()
5064         is defined in ieeefp.h rather than in math.h. Patch from Andrew
5065         Halper <ashalper@acm.org> with further modifications, isinf() is
5066         provided by -lsunmath (sunmath.h).
5067         
5068         * lib/font.c: conditionally disabled Lars' debugging messages.
5069         Bracketed the definition of DiaFontFamily with #ifdef HAVE_FREETYPE.
5070         
5071 2001-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
5073         * lib/bezier_conn.h: 
5074         * objects/standard/bezier.c (bezierline_create): 
5075         * lib/bezier_conn.c (bezierconn_init): 
5076         Preparations for use of userdata for bezier lines.
5077         
5078         * objects/standard/polygon.c: 
5079         * objects/standard/create.h:
5080         * lib/polyshape.c:
5081         * lib/polyshape.h:
5082         * plug-ins/xfig/xfig-import.c:
5083         Use of user_data for polygon as well, including adding
5084         polyshape_set_points.  Include file for non-interactive 
5085         creation of standard objects, objects/standard/create.h
5087 2001-08-10  Lars Clausen  <lrclause@cs.uiuc.edu>
5089         * app/render_gdk.c: 
5090         * app/render_gdk.h: 
5091         * lib/font.c:
5092         * lib/font.h:
5093         * lib/widgets.c:
5094         More preliminary freetype support.  Not at all functional, crashes
5095         when rendering.
5097         * lib/poly_conn.h: 
5098         * lib/poly_conn.c: 
5099         * objects/standard/polyline.c: 
5100         Support for creating polyline objects with more than two points.
5101         This includes an extra function and a prototype change in the
5102         poly_conn lib object.
5104         * lib/object.c (object_copy): Fixed memory leak of handles and
5105         connections.
5107 2001-08-08  Abel Cheung  <maddog@linux.org.hk>
5109         * dia.desktop: added traditional Chinese strings
5111 2001-08-04  Cyrille Chepelov  <chepelov@calixo.net>
5113         * NEWS: updated to reflect build-time dependencies.
5115         * lib/properties.[ch]: wrote get_prop_descriptions() as a wrapper
5116         around obj->ops->describe_props(obj). Quarks are none of an
5117         object's business in the general case... 
5118         * lib/text.c: Added an apply_textattr_properties() function to
5119         factor out some common code related to applying a dialog's text
5120         attribute properties to a (Text *) which wasn't edited there. 
5121         Ditto for textstr, for the string part of an objet.
5123         * objects/GRAFCET/action.c:
5124         * objects/SADT/annotation.c:
5125         * objects/SADT/box.c: used apply_textattr_properties().
5126         
5127         * objects/UML/actor.c: 
5128         * objects/UML/branch.c:
5129         * objects/UML/component.c:
5130         * objects/UML/constraint.c:
5131         * objects/UML/small_package.c:
5132         * objects/UML/state.c:
5133         * objects/UML/usecase.c:
5134         * objects/UML/large_package.c:
5135         * objects/UML/note.c:
5136         * objects/UML/node.c:
5137         * objects/UML/message.c:
5138         * objects/UML/classicon.c:
5139         * objects/UML/object.c:
5140         * objects/UML/realizes.c:
5141         * objects/UML/dependency.c:
5142         * objects/UML/implements.c:
5143         slim-fast(tm) cure using more StdProps, and UTF-8 audit.
5144         (most objects were already using StdProps to some extent ; this
5145         systematises usage and removes some dead wood). 
5146         
5147         * objects/UML/stereotype.[ch]: use UTF-8 internally. const police work.
5148         * objects/UML/uml.[ch]: audited for UTF-8.
5150         * objects/UML/class.c: the UML_STEREOTYPE_* strings defined by
5151         uml.h can be in UTF-8... this code isn't yet ready. Duplicating a
5152         private (ISO-8859-1) definition.
5153         
5154         * lib/charconv.c: Added a warning if we didn't run
5155         nl_langinfo(CODESET) but rely instead on a hardcoded default.
5156         
5157 2001-08-02  Cyrille Chepelov  <chepelov@calixo.net>
5159         * lib/diamenu.h:
5160         * app/disp_callbacks.c: added a way for an object to cause an
5161         already realised menu to be destroyed (for instance if it changes
5162         too much).
5164         * objects/custom/custom_object.c: used the above to fix #55073.
5166 2001-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
5168         * configure.in: Remove 2.50 prereq.
5170 2001-07-30  Cyrille Chepelov  <chepelov@calixo.net>
5172         * po-checktrans.py: under some circumstances, there was one column 
5173         more than what was supposed to be, thus breaking the formatting.
5174         
5175 2001-07-29  Cyrille Chepelov  <chepelov@calixo.net>
5176         
5177         * objects/SADT/annotation.c: forgot to add a #include <stdlib.h>
5179         * NEWS: updated with new stuff since 0.88
5181         * shapes/network/antenna.shape: the text was misplaced ; fixed.
5183         * shapes/network/firewall.(shape|xpm) (NEW): a brick-wall looking
5184         firewall router (upon request from Cyril Lacoux
5185         <clacoux@easter-eggs.com>)
5187         * configure.in (didn't rename to configure.ac): autoconf 2.50
5188         constructs were used ; added an AC_PREREQ call to guard against
5189         older autoconfs.
5190         
5191 2001-07-27  Cyrille Chepelov  <chepelov@calixo.net>
5193         * lib/properties.c: minor clean-ups with the event delivery code.
5195         * EML/instantiation.c: brought this object back from stone and ice
5196         age.    
5198         * app/diaconv.c(NEW): added a command-line conversion tool. Still
5199         lacks a man page and correctness. In fact, it doesn't work. Please
5200         see #58196 if you want to finish it.
5201         
5202         * lib/message.[ch]: redefined things a little so that a different
5203         message_internal routine could be passed.
5204         applications can use that to fit themselves to the display model.
5206 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
5208         * objects/SADT/box.c: 
5209         * objects/GRAFCET/action.c: spelling in property descriptors (name
5210         field...)
5211         * objects/SADT/annotation.c: ditto, plus a temporary test of the
5212         event delivery code (try to click on the "click me !" button !).
5214         * app/group.c: 
5215         * lib/properties.[ch]: improved (fixed) support for group event 
5216         handlers. Fixed various things from yesterday's code to make it
5217         not too obviously crash.
5219 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
5221         * app/group.c: added delivery of events to the first member of the
5222         group which is able to process it.
5224         * lib/properties.c(prop_desc_lists_intersection): properties
5225         don't match if they don't have identical event handler.
5226         * lib/properties.h: simplified the PropEventHandler signature.
5228         Event delivery code is still untested so far, but should be
5229         lurking harmless.
5230         
5231 2001-07-25  Cyrille Chepelov  <chepelov@calixo.net>
5233         * lib/properties.[ch]: Added (untested !) property event handler
5234         capability. Added a new PROP_TYPE_BUTTON, for the purpose of
5235         generating such events. This stuff compiles, and should lurk
5236         around silently as long as you don't declare property descriptors
5237         with events (AFAICT).
5238         In object_create_props_dialog() and friends:
5239         attached a single structure with lots of data instead of lots of
5240         little attachments of data to the dialog widget.
5241         
5242         * lib/object.h: fixed mild typedef breakage introduced by the above.
5244 2001-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
5246         * lots of files: Changed Font to DiaFont
5247         * */Makefile.am: Added FREETYPE_LIBS
5248         * plug-ins/xfig/xfig-export.c: Improved (working:) color handling
5250 2001-07-13  Kjartan Maraas  <kmaraas@gnome.org>
5252         * configure.in: Added "nn" to ALL_LINGUAS.
5253         
5254 2001-07-09  Alex Larsson  <alexl@redhat.com>
5256         * app/disp_callbacks.c:
5257         Add gdk_im_ready() calls to XIM code.
5259 2001-07-04  Cyrille Chepelov  <chepelov@calixo.net>
5261         * lib/properties.[ch]: splitted prop_get_widget() into
5262         prop_get_widget() (gives a widget but doesn't fill it) and 
5263         prop_reset_widget() (fills an existing widget with a property's value).
5265         * lib/widgets.[ch]: const enforcement police work.
5267         * shapes/network/antenna.shape: added a connection point at top,
5268         upon request from <Emmanuel.Quemener@cri.ens-cachan.fr>.
5269         
5270 2001-06-25  Cyrille Chepelov  <chepelov@calixo.net>
5272         * intl/*: tested with gettext-0.10.38
5273         * configure.in: moved a macro call around (AM_PROG_CC) to keep
5274         some of autogen.sh from complaining.
5275         * INSTALL: added a warning against gettext older than at least 0.10.36
5276         
5277 2001-06-19  Cyrille Chepelov  <chepelov@calixo.net>
5279         * configure.in: added explicit calls to AM_LANGINFO_CODESET and
5280         AM_ICONV (both provided by gettext)
5282 2001-06-14  Cyrille Chepelov  <chepelov@calixo.net>
5284         * lib/charconv.c: corrected the degraded mode for when
5285         !HAVE_UNICODE. Thanks to Ben A. Hetland for reporting this.     
5287         * objects/chronoline/chronoline_events.c: UTF8 compliance.
5288         
5289 2001-06-13  Cyrille Chepelov  <chepelov@calixo.net>
5291         * lib/properties.[ch]: convenience macros around PROP_NOTEBOOKS ;
5292         new "eye candy" properties: PROP_MULTICOL_(BEGIN|PAGE|END) to lay 
5293         widgets on several columns, PROP_FRAME_(BEGIN|END) to put widgets
5294         into a frame box.
5296         * objects/chronogram/chronoline.c:
5297         * objects/chronogram/chronoref.c: took advantage of the above to
5298         make nicer looking dialogs.
5300         * lib/charconv.[ch]: added charconv_unichar_to_utf8 ("inspired"
5301         from libunicode's internals).
5302         * lib/message.c: convert strings to local encoding prior to
5303         display (UNICODE_WORK_IN_PROGRESS)
5304         * lib/properties.[ch]: convert strings to local encoding prior to
5305         display, and back to UTF8 (UNICODE_WORK_IN_PROGRESS).
5306         * lib/render.h: tagged strings as (utfchar *) instead of (char *)
5307         * lib/stringprerenderer.[ch]: ditto
5309         (lib/text.c has been audited for UTF8, but the size of the changes
5310         make them inappropriate for commit before 0.89)
5311         
5312 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
5314         * objects/boolequation.h (<save|load>_boolequation): made the 
5315         prototypes for match the .c file.
5316         
5317         * samples/grafcet.dia: minor non-conformance with IEC-848
5318         fixed (in the transition from step 100 to step 101).
5320         * lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to
5321         disallow editing of properties if the object is part of a group.
5323         * objects/chronogram/chronoline.c: 
5324         * objects/SADT/annotation.c:
5325         * objects/SADT/box.c:
5326         * objects/GRAFCET/step.c:
5327         * objects/GRAFCET/transition.c:
5328         * objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE.
5329         
5330 2001-06-12  Hans Breuer  <hans@breuer.org>
5332         * lib/libdia.def : removed lazyprop exports
5333         * lib/makefile.msc : removed lazyprop.obj
5335         * objects/custom/custom_objects.c : use HAVE_UNISTD_H
5336         and avoid crashes by always creating a custom->text,
5337         when (custom->info->has_text) 
5339         * objects/makefile.msc : removed sybase from build
5341         * objects/GRAFCET/boolequation.c (<save|load>_boolequation) :
5342         ObjectNode is a pointer already, which is what we want
5343         instead of a pointer pointer.
5345         * plug-ins/wmf/wmf.cpp : fixed problem with arc scaling
5346         and implemented working export for images
5348         * shapes/network/zip-disk.shape : added connection points 
5350 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
5352         * objects/SADT/box.c: removed lazyprops for standard props.
5353         * objects/chronograms/chronoline.c: removed lazyprops (phew !)
5354         * objects/chronograms/chronoref.c: ditto 
5356         * lib/Makefile.am:
5357         * lib/dummy_dep.h:
5358         * lib/connpoint_line.c:
5359         * lib/lazyprops.[ch] (DELETED): good riddance (closes #55895)
5360         * lib/properties.[ch]: new property types:
5361             - PROP_TYPE_STATIC: static text to be displayed in the dialog.
5362             - PROP_TYPE_MULTISTRING: same as string, but renders as a
5363             multi-line entry box.
5364             - PROP_TYPE_NOTEBOOK_BEGIN,_PAGE,_END: stuff to make dialogs
5365             in a tabbed-notebook style (this is a bit complicated to use; 
5366             see objects/chronograms/chronoline.c for an example).
5367                
5368 2001-06-11  Cyrille Chepelov  <chepelov@calixo.net>
5370         * objects/GRAFCET/boolequation.[ch]: zap lazyprops. Add standard props.
5371         * objects/GRAFCET/step.c: ditto.
5372         * objects/GRAFCET/vector.c: ditto.
5373         * objects/SADT/annotation.c: ditto.
5374         * objects/SADT/arrow.c: ditto (plus bounding box fixes).
5375         
5376         * lib/properties.[ch]: two more non-visible types
5377         (PROP_TYPE_ENUMARRAY and PROP_TYPE_INTARRAY).
5379         * lib/neworthconn.[ch]:
5380         * lib/orthconn.[ch]: added support for manipulation through
5381         standard properties.
5383         * configure.in: removed -fomit-frame-pointer, this seems to
5384         confuse recent gcc/gdb's, maybe we'll get better stack dumps in 
5385         bugzilla.
5387         * charconv.[ch]: more functions from unicode.h.
5388         get_local_charset() wasn't working properly, fixed now.
5389         A subtle crashbug in charconv_utf8_to_local8() nailed (thanks to 
5390         ElectricFence !)
5391         
5392         * objects/EML/process.h: pulled the bits of lazyprops.h it uses.
5393         * lib/lazyprops.[ch]: put a big fat warning in.
5395         * app/render_eps.c: one line mysteriously went away, causing a
5396         variable to be used uninitialised....
5398 2001-06-10  Cyrille Chepelov  <chepelov@calixo.net>
5400         * app/app_procs.c: commented out the call to
5401         bind_textdomain_codeset(): it's premature.
5402         
5403         * lib/connpoint_line.c: a NULL point can be given to
5404         connpointline_adjust_count(), in case there's not really a clicked
5405         point.
5407         * lib/textattr.h(NEW): moved the definition of TextAttributes to sort
5408         #include order troubles. #included by lib/text.h, so there is no 
5409         impact outside lib/.
5410         * lib/properties.[ch]: added support for CONNPOINT_LINE and
5411         (nonvisible) TEXT properties.
5413         * objects/GRAFCET/action.c:
5414         * objects/GRAFCET/vergent.c: dropped lazyprops for standard
5415         properties.
5416         
5417         * objects/UML/lifeline.c: pruned some legacy stuff (now pure
5418         standard properties code). Grafted a dynamic number of connection
5419         points (heavily inspired from what Vergent does). This is the real
5420         fix for #55863.
5422         * objects/GRAFCET/boolequation.[ch]: audited for UTF-8
5424         * lib/fonts.c: some hardening (mostly g_assert())
5425 2001-06-09  Cyrille Chepelov  <chepelov@calixo.net>
5427         * app/app_procs.c (app_init): added a call to
5428         bind_textdomain_codeset() so that gettext gives us UTF-8 strings
5429         (UNICODE_WORK_IN_PROGRESS).
5430         
5431 2001-06-08  Cyrille Chepelov  <chepelov@calixo.net>
5433         * plug-ins/xfig/xfig-import.c: corrected a typo (fixes #55910)
5435         * objects/UML/lifeline.c: patch from Marc <mrw@siemens.ch> 
5436         (fixes #55863) : some clean-ups in the handling of connection
5437         points. Now the total number of connection points is just a
5438         #define (the proper solution is to retrofit the GRAFCET Vergent's
5439         dynamic behaviour wrt connection points).
5440         
5441 2001-06-07  Cyrille Chepelov  <chepelov@calixo.net>
5443         * app/app_procs.c (app_init): added a call to unicode_init() (only
5444         if HAVE_UNICODE, of course).
5446         * lib/charconv.c: simplified the code which detects the local
5447         charset. No need to use <langinfo.h>, libunicode already takes the
5448         burden of figuring that out. Also, if local charset is utf8, no
5449         conversion will take place.
5450         Exposed a way to get the current charset (similar to
5451         unicode_get_charset() but actually working, hopefully).
5453         * lib/charconv.h: Added a partial non-UTF8 implementation of
5454         unicode.h if !HAVE_UNICODE (actually, all the time for the
5455         moment). The UTF8 implementation is just macros on libunicode (use
5456         the functions prefixed by uni_, as defined by charconv.h, not
5457         unicode_, unless that code is to be compiled only if HAVE_UNICODE).
5458         From now on, all strings which don't *need* to be ASCII should be
5459         utfchar *, not gchar *. Just include charconv.h, let it sort out
5460         the details (such as: "is libunicode available and enabled?") 
5462         * lib/ps-utf8.c: fixed a few name clashes. Used the charconv.h
5463         "API" instead of directly libunicode. Removed the now unnecessary
5464         speculative clustering of characters in encoding pages.
5466         * app/render_eps.c: made the local8->utf8 conversions dependent of
5467         !UNICODE_WORK_IN_PROGRESS (this is not where the local8/utf8
5468         boundary will be when this WIP is done).
5470         * lib/dia_xml.c (data_point): fixed a format string typo.
5472         * po/POTFILES.in: added all C files from lib/ 
5473         
5474 2001-06-06  Cyrille Chepelov  <chepelov@calixo.net>
5476         * app/disp_callbacks.c: make sure the objects' connected objects
5477         are updated when the objects' size changes after a keypress event
5478         (fixes #51222)
5480         * configure.in: added a big warning about the possible future
5481         non-optionality of --enable-unicode. 
5483         * TODO: removed entries which look like done ; added a few ones
5484         (Bugzilla "enhancement" bugs may be a better way to keep track of
5485         this)
5486         
5487 2001-06-05  Cyrille Chepelov  <chepelov@calixo.net>
5489         * objects/UML/message.c: got rid of #55564 and of message_copy()
5490         by using more standard properties (are the message_state_*()
5491         functions still necessary ?)
5493 2001-06-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
5495         * lib/plug-ins.c: 
5496         * objecs/custom/shape_info.c:
5497         * plug-ins/shape/shape-export.c:
5498         * plug-ins/svg/render_svg.c: patch from obecian <obecian@openbsd.org>
5499         use xmlChar instead of obsolete CHAR.
5501 2001-06-03  Hans Breuer  <hans@breuer.org>
5503         * app/diagram.h : added prototype for diagram_update_menu_sensitivity()
5504         * app/commands.c : give the right number of parameters
5505         to diagram_update_menu_sensitivity ()
5507         * app/preferences.c : do proper initialization for DiaPrefsData:
5508         render_bounding_boxes. It would be a real surprise if 'hidden'
5509         properties would have ever worked before.
5510         Don't try to access the widgets of hidden property, it does not
5511         have one.
5513         * lib/diagramdata.h : make render_bounding_boxes a DIAVAR, cause
5514         it is defined in libdia, but initialized from dia app, which 
5515         otherwise gave nice start-up crashes.
5517         * lib/diagramdata.c : initialize the color for rendering bounding 
5518         boxes in the Dia range (0 .. 1.0)
5520         * lib/libdia.def : added *_bbox functions for export
5522         * lib/makefile.msc : added new sources
5524         * objects/custom/custom_object.c : use HAVE_UNISTD_H
5526 2001-05-30  Cyrille Chepelov  <chepelov@calixo.net>
5528         * app/interface.c:
5529         * app/menus.c: patch from Hubert Figuiere <hfiguiere@teaser.fr> ;
5530         removes a translation of menus (in a place where there shouldn't
5531         have been), which gets rid of a waterfall of warnings if LANG!=C,
5532         and a fix to #55047.
5534 2001-05-29  Steffen Macke     <sdteffen@yahoo.com>
5536         * lib/charconv.c : added #include <errno.h>
5538         * app/dia_embedd.c : updated menus_get_item_from_path usage
5539         
5540 2001-05-27  Cyrille Chepelov  <chepelov@calixo.net>
5542         * lib/ps-utf8.c: Strings in Symbol fonts were incorrectly rendered.
5543         Added a special case for Symbol strings, so that they're not
5544         re-encoded using the LN encoding (we use the bare Adobe encoding
5545         instead).
5547         * objects/custom/custom_object.c: Now that #52912 is fixed,
5548         I could remove the ugly hack I wrote to squash the shape bounding box
5549         problem shown by Ben A. Hetland a few months ago, and fix it
5550         properly this time.
5551         
5552         * lib/text.c: enlarged a little the bounding box to account for
5553         the cursor in rightmost position.
5554         
5555         * lib/diagramdata.c: draw bounding boxes only if the relevant
5556         variable is set (as before), but also only if the rendere is
5557         interactive (ie, don't bother rendering bounding boxes on 
5558         Postscript...)
5559         Made the bounding box's line width a fixed value, 0.01
5560         
5561         * lib/boundingbox.c: fixed the "pointy corners" code for polylines
5562         and assymmetric control beziers. Implemented ellipse_bbox().
5563         
5564         * Makefile.am: incantations to get po/dia.pot build, as suggested
5565         by Hubert in #55075.
5566         
5567         * shapes/network/computer.shape: typo fixed.
5568         * shapes/network/antenna.shape: fixed #55074 (antenna is now
5569         properly translucent, except for its base where it makes sense. It
5570         doesn't look that ugly anymore if transparent mode is on).
5572         * configure.in: --enable-unicode is now the default. This
5573         still currently affects only printing.
5574         
5575 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
5577         * lib/boundingbox.c: fixed a minor logic error wrt closed shapes. 
5578         The overshoot code is buggy, and the bounding boxes for polyshapes
5579         looks a bit cheezy. To be done ASAP.
5581 2001-05-26  James Henstridge  <james@daa.com.au>
5583         * configure.in: call AM_PATH_PYTHON rather than AM_PATH_PYTHON_JH.
5584         This should clear up some of the build problems people have been
5585         having.
5587         * acinclude.m4: call AM_PATH_PYTHON_JH AM_PATH_PYTHON
5589 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
5591         * lib/Makefile.am:
5592         * lib/boundingbox.[ch] (NEW): (some) refactoring of the bounding
5593         box code (beginning with lines, polylines and polybeziers), into a
5594         more generic facility. While at it, a better shot at correctly
5595         computing the bounding box of a Bezieroid (should take care of
5596         #53424, #51233 and of course is part 1 of #52912).
5598         * lib/diagramdata.c: turned the RENDER_BOUNDING_BOXES conditional
5599         into a hidden preference (set render_bounding_boxes in diarc).
5600         * app/preferences.[ch]: Added support for hidden preferences.
5602         * lib/geometry.[ch]: sprinkled with "const" modifiers.
5603         
5604         * lib/bezier_conn.[ch]:
5605         * lib/beziershape.[ch]:
5606         * lib/connection.[ch]:
5607         * lib/element.[ch]:
5608         * lib/poly_conn.[ch]:
5609         * lib/orth_conn.[ch]:
5610         * lib/neworth_conn.[ch]:
5611         * lib/polyshape.[ch]: adapted to take advantage of
5612         boundingbox.[ch] instead of relying on private (duplicate) code.
5614         * object/FS/flow.c:
5615         * object/GRAFCET/action.c:
5616         * objects/GRAFCET/condition.c:
5617         * objects/GRAFCET/vergent.c:
5618         * objects/GRAFCET/vector.c:
5619         * objects/SADT/annotation.c:
5620         * objects/SADT/arrow.c:
5621         * objects/ER/participation.c:
5622         * objects/UML/constraint.c:
5623         * objects/UML/implements.c:
5624         * objects/UML/lifeline.c:
5625         * objects/UML/message.c:
5626         * objects/UML/realizes.c:
5627         * objects/UML/generalization.c:
5628         * objects/UML/association.c:
5629         * objects/UML/dependency.c:
5630         * objects/FS/flow-ortho.c:
5631         * objects/network/bus.c:
5632         * objects/standard/arc.c:
5633         * objects/standard/bezier.c:
5634         * objects/standard/beziergon.c:
5635         * objects/standard/line.c:
5636         * objects/standard/polygon.c:
5637         * objects/standard/zigzagline.c:
5638         
5639         * objects/standard/polyline.c: Some *BBExtras structures changed
5640         names while moving to boundingbox.[ch]. A trivial mass-renaming.
5641         
5642 2001-05-20  Cyrille Chepelov  <chepelov@calixo.net>
5644         * app/disp_callbacks.c (ddisplay_canvas_events): Take into account
5645         wheel mouses for scrolling (from Patrick Sung <phsung@ualberta.ca>)
5647         * app/display.c (ddisplay_update_scrollbars): from Patrick's
5648         suggestion, remove the extra scrollable area (it was only visible
5649         to the scrollbars). This is experimental.
5650         
5651         * objects/custom/custom_object.c: If a shape's icon file doesn't 
5652         exist, warn and substitute a default icon, instead of crashing.
5653         (fixes #52913)
5654         
5655         * objects/network/network.c:
5656         * shapes/network/modularswitch.(shape|xpm) (NEW):
5657         * shapes/network/printer.(shape|xpm) (NEW):
5658         * shapes/network/genmonitor.(shape|xpm) (NEW):
5659         * shapes/network/computer.(shape|xpm) (NEW):
5660         * shapes/network/Makefile.am: four less objects, four more shapes.
5661         These were the last known RenderObjects. (phew !)
5663         * lib/Makefile.am:
5664         * lib/dummy_dep.h:
5665         * objects/sybase/Makefile.am: 
5666         * objects/network/Makefile.am: Removed the older Renderobjects
5667         from the build, and their infrastructure (not yet deleted,
5668         though).
5670         * shapes/network/sceadplug.shape:
5671         * shapes/network/antenna.shape:
5672         * shapes/network/modem.shape:
5673         * shapes/network/hub.shape:
5674         * shapes/network/rj45plug.shape:
5675         * shapes/sybase/client.shape:
5676         * shapes/sybase/dataserver.shape:
5677         * shapes/sybase/ltm.shape:
5678         * shapes/sybase/repserver.shape:
5679         * shapes/sybase/rsm.shape:
5680         * shapes/sybase/stableq.shape: Minor corrections (line widths were
5681         ten times too narrow).
5682         
5683 2001-05-19  Cyrille Chepelov  <chepelov@calixo.net>
5685         * objects/network/network.c:
5686         * shapes/network/sceadplug.(shape|xpm) (NEW):
5687         * shapes/network/antenna.(shape|xpm) (NEW):
5688         * shapes/network/modem.(shape|xpm) (NEW):
5689         * shapes/network/Makefile.am: four less objects, four more shapes.
5690         
5691         * lib/Makefile.am:
5692         * lib/diagramdata.c:
5693         * lib/render.h:
5694         * lib/string_prerenderer.[ch] (NEW):
5695         Add a new renderer primitive, predraw_string() (does nothing, to be
5696         used as a hook to optimise the character encodings if needed). 
5697         Added a string pre-renderer, which can be viewed as a filter
5698         renderer (to route draw_string() to predraw_string() and ignore
5699         the rest, in a first rendering pass)
5700         
5701         * app/render_eps.c: Took advantage of the above to make wholly
5702         optimised Postscript encoding page(s), even (especially) with 
5703         non-latin1 code (HAVE_UNICODE must be true).
5705         (#53512 in fact is wholly resolved).
5706         
5707 2001-05-18  Cyrille Chepelov  <chepelov@calixo.net>
5709         * lib/charconv.c: steps towards resolution of #53512 (inspired by
5710         Alexey Novodvorsky <aen@logic.ru>'s patch).
5712         * app/menus.c (dia_menu_signal_proxy): checked that the signal
5713         handler is not NULL before transferring control to it... (fixes #52836)
5715         * app/app_procs.c (app_init): removed non-constant initialiser
5716         (fixes #52950)
5718         * objects/custom/custom_object.c:
5719         * objects/custom/shape_info.[ch]:
5720         * objects/custom/test.xml: merged patch #53476 from Steven Hawkins 
5721         <skh@mathstar.com>. This add support for a <svg:text> shape
5722         element, and some related style properties (font, font height, 
5723         alignment)
5725         * doc/custom_shapes: a precision about the meaning of case in a
5726         SVG path (closes #52364)
5728         * lib/dummy_dep.h: fix for SGI IRIX 6.2 (#53053, reported and
5729         fixed by <drk@sgi.com>)
5730         
5731 2001-05-17  Cyrille Chepelov  <chepelov@calixo.net>
5733         * objects/network/network.c:
5734         * shapes/network/Makefile.am:
5735         * shapes/network/hub.(shape|xpm) (NEW):
5736         * shapes/network/flash.(shape|xpm) (NEW):
5737         * shapes/network/rj45plug.(shape|xpm) (NEW):
5738         More shapes, less renderobjects.
5740 2001-05-16  Cyrille Chepelov  <chepelov@calixo.net>
5741         
5742         * plug-ins/svg/render_svg.c: typo made exported ellipses
5743         corrupted (zero Y pseudo-radius).
5745         * objects/network/network.c:
5746         * objects/network/disc.c:
5747         * shapes/network/disc.(shape|xpm): Converted the first
5748         Renderobject into a shape. Normally, old diagrams should reload
5749         without problems (please check this against your diagrams). More
5750         flexibility should be gained that way. I intend to hunt and
5751         eradicate all renderobjects as I can commit cycles to that. 
5753         * objects/Makefile.am:
5754         * configure.in:
5755         * app/Makefile.am:
5756         * objects/sybase/sybase.c:
5757         * shapes/sybase/Makefile.am(NEW):
5758         * shapes/sybase/client.(xpm|shape) (NEW):
5759         * shapes/sybase/dataserver.(xpm|shape) (NEW):
5760         * shapes/sybase/ltm.(xpm|shape) (NEW):
5761         * shapes/sybase/repserver.(xpm|shape) (NEW):
5762         * shapes/sybase/rsm.(xpm|shape) (NEW):
5763         * shapes/sybase/stableq.(xpm|shape) (NEW): converted Sybase
5764         renderobjects into shapes. The Sybase objects are now not compiled
5765         anymore, and ready to be nuked if nobody objects in the next few weeks.
5766         
5767         * app/commands.c:
5768         * app/diagram.[ch]:
5769         * app/disp_callbacks.c:
5770         * app/display.[ch]:
5771         * app/interface.[ch]:
5772         * app/menus.[ch]:
5773         * app/modify_tool.c:
5774         * app/preferences.[ch]:
5775         * app/recent_files.c:
5776         * app/select.c: Added patch #52364 from Hubert Figuiere. This adds
5777         a menu bar reflecting the popup menu, to each display window. This
5778         is optional (changing the preference currently doesn't affect
5779         already opened windows; a few other rough edges to cut).
5781         * plug-ins/wpg/wpg.c:
5782         * plug-ins/xfig/xfig-import.c:
5783         * plug-ins/python/pydia-property.c:
5784         * plug-ins/python/pydia-properties.c:
5785         * plug-ins/python/pydia-geometry.c:
5786         * plug-ins/pstricks/render_pstricks.c:
5787         * lib/arrows.c:
5788         * objects/EML/dbox.c:
5789         * lib/ps-utf8.c: paleolithic C compilers choke on //. Should fix 
5790         #53054.
5792         * lib/ps-utf8.c: improved the clustering of alphabetic character
5793         definitions in custom encodings pages.
5794         
5795 2001-05-02  Hans Breuer  <hans@breuer.org>
5797         * lib/object.h : OBJECT_COMMON_PROPERTIES_OFFSETS correct type 
5798         of 'obj_bb' to PROP_TYPE_RECT
5800         * objects/custom/custom_object.c : take all quarks into account, 
5801         not only 4 as copy&paste suggests
5803         * objects/uml/objects.c : completed the implementation of the
5804         property api to avoid reading of totally bogus data. Removed
5805         the PROBABLY_DEAD_CODE. It actually was dead code, but not because
5806         there was too much but too less ...
5807   
5808         The above changes removed all known crashes (mentioned below) 
5809         from the Property API. Property access is still incomplete though.
5811         * objects/flowchart/box.c :
5812         * objects/flowchart/diamond.c :
5813         * objects/flowchart/ellipse.c :
5814         * objects/flowchart/parallelogram.c :
5815         * objects/uml/classicon.c :
5816         * objects/uml/state.c : calculate number of quarks from quark array 
5817         size instead of using hardcoded values for consistence and to avoid 
5818         future bugs like the above
5819         
5820         * objects/eml/nlist.c : include <string.h> for strcmp()
5822         * lib/dia_xml.c : relax g_warning for values, which
5823         appear to be too small. There is nothing which prevents
5824         them while saving
5826         * plug-ins/python/pydia-geometry.c : changed stringifying of
5827         geometry objects accept BezPoint back to %f, which does not
5828         crash anymore, because all the data is intialized now and it
5829         simply is more readable than %e ...
5831         * plug-ins/python/python-startup.py : removed dependency
5832         to PyGtk, because it isn't required here and probably won't
5833         in i.e.: export filters.
5835         * plug-ins/python/gtkcons.py : create the gtkoutfile even
5836         if sys.stderr.fileno() isn't supported
5838         * app/makefile.msc : make version 0.88
5839         * plug-ins/makefile.msc : make version 0.88 an added new
5840         xfig files to build
5842 2001-05-11  James Henstridge  <james@daa.com.au>
5844         * NEWS: remember to add news items this time.
5846         * dia.spec: update spec file for 0.88 release.
5848         * configure.in: up version number to 0.88
5850         * plug-ins/python/Makefile.am (EXTRA_DIST): fix up typo that was
5851         preventing any of the useful python scripts from being
5852         distributed.
5854         * sheets/Makefile.am (sheet-translation-report): fix bustage I
5855         introduced in my fixups for the 0.87 release :(
5857 2001-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
5859         * plug-ins/xfig/xfig-import.c: Finally got groups working.
5861 2001-05-09  Lars Clausen  <lrclause@cs.uiuc.edu>
5863         * plug-ins/xfig/xfig-import.c: Improvements to error handling and
5864         group manipulation.
5866 2001-05-09  Cyrille Chepelov  <chepelov@calixo.net>
5868         * lib/ps-utf8.[ch]:
5869         * lib/Makefile.am: fix makefile breakage which led to not
5870         including ps-utf8.[ch] in the released tarballs. 
5872 2001-05-09  James Henstridge  <james@daa.com.au>
5874         * Makefile.am (core-translation-report): dist scripts needed for
5875         this target, and change to $(srcdir) before running.
5877         * sheets/Makefile.am (EXTRA_DIST): actually dist the sheets.  DATA
5878         files aren't automatically included in the tarball by automake
5879         because they could be generated files.
5881         * objects/EML/Makefile.am (EXTRA_DIST): fix directory names.
5883         * doc/en/Makefile.am (install-data-hook): fix up where graphics
5884         are installed.
5886         * configure.in: up version number to 0.87
5888         * plug-ins/python/*.py: no longer necessary to explicitly set
5889         sys.argv, as python.c does it for us now (like it should).
5891         * plug-ins/python/gtkcons.py: fix up so it plays nicely as a dia
5892         python plugin.
5894         * plug-ins/python/python-startup.py: startup script that imports
5895         all modules in $(datadir)/dia/python and ~/.dia/python.
5897         * plug-ins/python/python.c (dia_plugin_init): change so that it
5898         only runs the $(datadir)/dia/python-startup.py script.  Make sure
5899         that sys.argv and __main__.__file__ are set when calling the
5900         startup script.
5902         * plug-ins/python/Makefile.am: update makefile.  Make it install
5903         gtkcons.py plugin.  I haven't set any other plugins to install, as
5904         they look like they are mainly for debugging purposes.
5906         * configure.in: add tests to detect if python is available, so we
5907         can build the python plugin.  Only run if --with-python passed to
5908         configure.
5910 2001-05-08  James Henstridge  <james@daa.com.au>
5912         * acinclude.m4: add macros for detecting python.
5914         * app/menus.c (dia_gnome_menu_get_widget): handle paths that point
5915         at GNOME_APP_UI_SUBTREE entries.
5916         (menus_add_path): function to add a menu item to the menubars.
5917         Uses a hash table to keep track of extra menu items it adds.  Also
5918         notifies the item factory about the entries so that accels can be
5919         saved for them.
5920         (menus_add_path): implement gtk only version.
5921         (menus_init): use menus_add_path() to add the menu.
5922         (plugin_callback): simplify.
5924 2001-05-08  Steffen Macke <sdteffen@yahoo.com>
5926         * app/menu.c: removed #ifndef GNOME; GNOME build was broken
5927         
5928 2001-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
5930         * plug-ins/xfig/xfig-export.c: 
5931         * plug-ins/xfig/xfig-common.c: 
5932         * plug-ins/xfig/xfig-import.c: 
5933         * plug-ins/xfig/xfig.c: 
5934         * plug-ins/xfig/xfig.h: 
5935         * app/Makefile.am: Added support for exporting to Fig format
5936         (except splits, which are less powerful in Fig).  Some refactoring
5937         along the way.
5939 2001-05-02  Hans Breuer  <hans@breuer.org>
5941         * plug-ins/python/debug_objects.py : added another
5942         test to get massive crashes from the Property API due
5943         to unintialized data.
5945         * app/menu.c : the callback_action wasn't incremented
5946         (should have checked my last optimization). Now more
5947         than one plug-in callback is supported again.
5949         * plug-ins/python/pydia-geometry.c : avoid crashes from
5950         glib, when trying to g_strdup_printf unintialized floats.
5952         * plug-ins/python/pydia-property.c : avoid crashes from
5953         because of string_data == NULL (PROP_TYPE_FILE, PROP_TYPE_STRING)
5955 2001-05-01  Hans Breuer  <hans@breuer.org>
5957         * objects/makefile.msc : added eml
5958         * objects/eml/instantiation.c : initialize 'inst' pointer
5959         before using, zero initialization for objects
5960         * objects/eml/interaction-ortho.c :
5961         * objects/eml/interaction.c : zero initialization for objects
5963         * app/menus.c : removed Gimp mru stuff which slipped in at
5964         2000-08-15, was never activated and will never be needed, 
5965         because of Steffens recent file list patch added at 2001-01-05.
5967         * objects/eml/*.c : some more zero initialization of objects
5968         to avoid infinite (uninitialized) bounding boxes
5970         Implemented a callback api which allows plug-ins to register
5971         menu call backs. Dia for Gnome should compile, but will need 
5972         some extra tweaking to make it work because I can't test it.
5974         * plug-ins/python/pydia-error.h :
5975         * plug-ins/python/pydia-render.c : moved Pxthon function return 
5976         value handling from pydia-render.c to pydia-error.h, to make it
5977         usable for
5978         * plug-ins/python/diamodule.c : implement callback function
5979         registration from and relaying to Python code
5981         * app/menus.c : register and use plug-in menu callbacks
5983         * lib/filter.[hc] : implement filter_register_callback() and
5984         filter_get_callbacks() for the above
5985         * lib/libdia.def : export them
5987         * plug-ins/python/debug_objects.py (new file): 
5988         sample using the above
5990 2001-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
5992         * plug-ins/shape/shape-export.c (new_shape_renderer): 
5993         The name of a shape is now taken from the dir, to conform with
5994         standard naming.
5996 2001-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
5998         * app/properties.c (properties_show): Added title containing
5999         object type, plus (hopefully) fix of the ghost properties dialog.
6001 2001-04-16  Cyrille Chepelov  <chepelov@calixo.net>
6003         * app/display.c: remove the display idle handler in case we
6004         destroy the ddisplay (caused crashes in ddd, probably random
6005         crashes elsewhere).
6007         * autogen.sh: 
6008         * configure.in:
6009         * Makefile.am: hack around gettext-0.10.36's new "features".
6010         
6011         * lib/properties.[ch]: added new function object_copy_props().
6012         Added new property type PROP_TYPE_ENDPOINTS
6014         * lib/connection.h: added support for load/saving through the
6015         properties interface.
6017         * lib/object.[ch]: object_load/save/copy_using_properties()
6018         support functions (code factorisations).
6019         
6020         * objects/GRAFCET/boolequation.c: check against null values in
6021         boolequation_set_value() and boolequation_destroy().
6023         * objects/GRAFCET/transition.c: Converted from lazyprops to
6024         standard properties. 31% less (x86) code !
6026         * objects/GRAFCET/condition.c: also converted from lazyprops to
6027         standard properties. Also killed lots of code.
6028         
6029 2001-04-13  Hans Breuer  <hans@breuer.org>
6031         * plug-ins/wmf/wmf.cpp : changed text conversion from
6032         g_utf8_utf16 to g_convert usage. The latter function is already
6033         available in tml's last "official" Gtk+ version (2000-12-26).
6034         This change allows to use recent Dia with either the official
6035         version or the latest cvs "gtk-1-3-win32-production"-branch.
6037 2001-04-14  Lars Clausen  <lrclause@cs.uiuc.edu>
6039         * Patch from David S. Thompson <dcthomp@mail.utexas.edu>:
6040         * app/disp_callbacks.c:
6041         - Allow submenus in DiaMenus.
6042         - Don't require DiaMenu.title to be non-null (so that
6043           submenus aren't required to have titles)
6045         * objects/FS/function.c:
6046         - object menu now has submenus, an almost complete list of
6047           standard-basis verbs, and a start on nouns.
6048         - box padding, dash length, and other visual attributes are
6049           scaled by the font size... eventually font height will be
6050           a function property.
6051         - draw functions with smaller font to make initial view hold
6052           a reasonable number of functions.
6053         
6054 2001-04-13  Cyrille Chepelov  <chepelov@calixo.net>
6056         * sheets/ER.sheet:
6057         * sheets/chronogram.sheet:
6058         * sheets/jigsaw.sheet:
6059         * sheets/sybase.sheet: Updated Dutch sheet translations from Dag
6060         Wieers <dag@wieers.com>
6062 2001-04-13  Hans Breuer  <hans@breuer.org>
6064         * app/app_procs.c (app_exit) : added g_return_if_fail (!app_exit_once)
6065         to ensure that all the deinitialization is only done once. Fixes
6066         recent app exit crash on win32
6068         * lib/dia_xml.c : provide isinf() replacement for msc which does only
6069         have _finite()
6071         * lib/libdia.def : updated
6073         * objects/makefile.msc : added wanlink.c 
6075         * objects/network/wanlink.c : added M_PI_2 definition for poor
6076         platforms which don't have one
6078         * objects/standard/arc.c :
6079         * objects/standard/zigzagline. c: part of ConectionBBExtras wasn't
6080         initialized which led to rather huge bounding boxes (try Ctrl^A on
6081         diagrams with Arcs or ZigZagLines).
6082         * objects/*/*.c : to avoid further bugs like the above changed all
6083         object initializations to g_malloc0 or g_new0
6086 2001-04-09  Cyrille Chepelov  <chepelov@calixo.net>
6088         * lib/paper.[ch]: get rid of "no previous prototype fo `foo'" by
6089         doing a s/T foo()/T foo(void)/ for all possible values of T and foo.
6091         * objects/UML/class.c: 
6092         * objects/UML/usecase.c:
6093         * objects/UML/large_package.c:
6094         * objects/UML/message.c:
6095         * objects/UML/object.c:
6096         * objects/UML/lifeline.c:
6097         * objects/FS/flow.c:
6098         * objects/FS/flow-ortho.c:
6099         * objects/FS/function.c:
6100         * objects/custom/custom_object.c:
6101         * objects/GRAFCET/vergent.c:
6102         * objects/chronogram/chronoref.c:
6103         * objects/SADT/box.c:
6104         * objects/SADT/annotation.c:
6105         * plug-ins/dxf/dxf-import.c:
6106         * plug-ins/xfig/xfig-import.c:
6107         * plug-ins/wpg/wpg.c:
6108         * app/command.c:
6109         * app/app_procs.c:
6110         * app/display.c: /* certainly more WIP than dead code there */
6111         Unused variables, unused static function definitions, forgotten or
6112         incomplete prototypes added or fixed, lack of const or unwanted const,
6113         etc. (mostly clean-ups of leftovers of the pre-properties era).
6114         Non-obvious cases bracketed by #define THIS_IS_PROBABLY_DEAD_CODE,
6115         please check these.
6117         * app/lineprops_area.c: More of the same. Missing prototypes
6118         added, and functions unused outside made static.
6120         * app/recent_files.c:
6121         * app/properties.c:
6122         * app/defaults.c: some variables are used only when doing a GNOME
6123         build.
6124         
6125         * app/magnify.c: missing #include <stdlib.h>.
6127         * app/paginate_gnomeprint.c: Unused variable; missing "message.h".
6129         These are a lot of clean-ups (by the way, this compiles and runs
6130         cleanly with "gcc-3.0 -O2 -Wall --std=gnu99" too !); please grep
6131         for DEAD_CODE, and if it's yours, judge it.
6132         
6133 2001-04-07  Cyrille Chepelov  <chepelov@calixo.net>
6135         * plug-ins/dxf-import.c: some progress with the arcs; still some
6136         clean-ups to do and line width scaling issues to figure out.
6138         * objects/standard/arc.c: start_point and end_point properties
6139         (duplicated from standard/line.c)
6141         * plug-ins/xfig/xfig-import.c: zip ! zap ! no more dead DXF import
6142         code there.
6143         
6144 2001-04-06  Cyrille Chepelov  <chepelov@calixo.net>
6146         * plug-ins/dxf-import.c: setlocale-related clean-ups and fixes ;
6147         preliminary support for arcs (doesn't work). Circles and ellipses are
6148         now transparent. Coordinate and width scaling are now a common 
6149         static constant (probably before morphing into a preference).
6150         
6151         * sheet/checktrans.py: improved error reporting. Made checktrans
6152         count lack of <name xml:lang="code"> as a lack of translation for
6153         language "code" (no, it's not a plot to bring down other
6154         language's scores !)
6155         
6156         * sheet/*.sheet: Ensured all sheets have an encoding="iso-8859-1"
6157         in the header, and have <name xml:lang="fr"> components.
6158         
6159 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
6161         * objects/custom/custom_object.c: temporary hack to fix the shape
6162         bounding box reported by Ben A. Hetland. Proper fix isn't .87
6163         material, see bugzilla #52912.
6165 2001-04-05  Lars Clausen  <lrclause@cs.uiuc.edu>
6167         * objects/standard/image.c (get_directory): Now uses
6168         G_SEPARATOR_CHAR_S instead of "/"
6170         * sheets/network.sheet: 
6171         * sheets/Logic.sheet:
6172         * sheets/Flowchart.sheet:
6173         * sheets/Electric.sheet:
6174         * sheets/Circuit.sheet:
6175         * sheets/ER.sheet:
6176         * sheets/Pneumatic.sheet:
6177         * sheets/SDL.sheet:
6178         * sheets/UML.sheet:
6179         * sheets/GRAFCET.sheet:
6180         * sheets/MSE.sheet:
6181         * sheets/chronogram.sheet:
6182         * sheets/civil.sheet:
6183         * sheets/network.sheet:
6184         Danish translations.
6185         
6186         * objects/standard/image.c (get_directory): Changed get_directory
6187         to use g_dirname to find the directory part.
6189 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
6191         * sheets/ER.sheet:
6192         * sheets/Electric.sheet:
6193         * sheets/Flowchart.sheet:
6194         * sheets/Logic.sheet:
6195         * sheets/network.sheet: More Dutch translations from Dag Wieers.
6197 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6199         * sheets/checktrans.py: now emits a warning when two descriptions
6200         for a single language code are found.
6202         * Makefile.am:
6203         * sheets/Makefile.am: -translation-reports now also depend on their
6204         checktrans.py
6205         
6206 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6208         * sheets/Circuit.sheet:
6209         * sheets/Contact.sheet:
6210         * sheets/Logic.sheet:
6211         * sheets/chronogram.sheet:
6212         * sheets/sybase.sheet: 
6213         Dutch translations from Dag Wieers <dag@wieers.com>
6215 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6217         * po-checktrans.py: Now shows the detailed counts alongside the
6218         percentage of translations.
6219         
6220 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
6222         * Makefile.am:
6223         * po-checktrans (NEW):
6224         * po-checktrans.py (NEW): builds core-translation-report:
6225         percentages of core (gettext) translations done [Not placed into
6226         po/ where that should belong, because of integration fear^Wissues
6227         with gettextize]. 
6229         TO THE KIND ATTENTION OF PACKAGERS: core-translation-report and 
6230         sheets/sheet-translation-report probably ought to be copied on the 
6231         user's /usr/share/doc/dia (or equivalent) directory.
6233         * sheets/Makefile.am: sheet-translation-report now a simple
6234         EXTRA_DIST; make install won't install it by default. 
6235         
6236 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
6238         * app/preferences.c: changed the default grid colour to something
6239         less intrusive. 
6241         * shapes/SDL/*.shape:
6242         * sheets/SDL.sheet: renamed all SDL shapes to conform to the
6243         "$LIBRARY - $NAME" convention. THIS REQUIRES FIXING THE EXISTING
6244         DIA FILES (well, for files using SDL), see the mailing list
6245         archive "SDL (ab)using the global shape namespace" for a script to
6246         do this conversion.
6248         * sheets/SDL.sheet: translated into French
6249         * sheets/network.sheet: fixed XML typos. Yay ! 100% :-)
6250         
6251 2001-04-02  Cyrille Chepelov  <chepelov@calixo.net>
6253         * lib/dia_xml.c: made data_point() more paranoid
6255         * sheets/Makefile.am:
6256         * sheets/checktrans (NEW):
6257         * sheets/checktrans.py: Made checktrans handle more gracefully the
6258         absence of python and python-xml packages, and made the error
6259         message more helpful.
6260         
6261 2001-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
6263         * lib/render_object.c (new_render_object): Made initial handles
6264         behave like on most other objects.
6266         * app/load_save.c (read_objects): Fixed premature free'ing ofr
6267         typestr causing garbage.
6269 2001-04-01  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6271         * objects/FS/flow-ortho.c: Fixed a crashbug causes by not
6272         accouting for handle ordering through copy and save. (#51479)
6274 2001-03-31  Cyrille Chepelov  <chepelov@calixo.net>
6276         * sheets/Circuit.sheet: Norwegian translation mistagged to German.
6278 2001-03-31  Steffen Macke  <sdteffen@yahoo.com>
6280         * sheets/Circuit.sheet
6281         * sheets/UML.sheet
6282         * sheets/network.sheet: Updated German translations
6283         
6284 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6285         * lib/arrows.[ch]:
6286         * lib/widgets.c:
6287         * app/lineprops_area.c: The return of the revenge of the arrow
6288         heads. Now all types covered by ISO 10303-201 should be covered.
6289         
6290 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6292         * sheets/Flowchart.sheet: translations in probably Hungarian were
6293         a victim of cut-n-paste from the German one. Fixed (hopefully).
6294         * sheet/UML.sheet: translation in probably Norwegian was a victim
6295         of cut-n-paste from the French one. Fixed (hopefully).
6296         * sheets/Logic.sheet: French translation not tagged with
6297         xml:lang="fr".
6298         
6299         * sheets/checktrans.py:
6300         * sheets/Makefile.am: new file, sheet-translation-report, to be
6301         installed along the sheets, show how much of them has been
6302         translated into which language (I wish the result was prettier...)
6304         * po/README: most translators don't read this file, but anyway...
6306         * sheets/.cvsignore:
6307         * objects/network/.cvsignore: the usual negotiation with CVS.
6309 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6311         * sheets/*.sheet: French translations
6313 2001-03-28  Cyrille Chepelov  <chepelov@calixo.net>
6315         Added patch #52363 from Hubert Figuiere <hfiguiere@teaser.fr>:
6317         ** objects/network/network.c:
6318         ** objects/network/wanlink.c:
6319         ** objects/network/pixmaps/wanlink.c:
6320         ** sheets/network.sheet:
6321         ** objects/network/Makefile.am: a better object to use instead of
6322         the older WAN Connection.
6323         
6324         ** lib/geometry.[ch]: rotation matrix functions in geometry.c (derived from gimp)
6326         ** objects/GRAFCET/vector.c: renamed Vector to GRAFCETVector to avoid a
6327         name clash 
6329         * objects/GRAFCET/vector.c: Re-renamed GRAFCETVector into
6330         Arc; kept the C file name (because CVS wouldn't like it), and
6331         still registering the older object name (but advertising the newer
6332         one in sheets/GRAFCET.sheet).   
6334 2001-03-24  Hans Breuer  <hans@breuer.org>
6336         * app/dia.def : some plug-ins (currently only python, xfig) are using 
6337         functions from the dia executable. To get them working these functions 
6338         need to be explicit exported on win32. IMO the much cleaner way would
6339         be to move these functions to libdia, but that would require some
6340         long term restructuring ...
6342         * lib/libdia.def : updated
6344         * plug-ins/makefile.msc : build xfig plug-in
6346 2001-03-24  Hans Breuer  <hans@breuer.org>
6348         * app/diagram.c : g_strdup (dia->filename) because it will be
6349         g_free ()d
6351         * app/display.c : set ddisp->renderer to NULL after destruction.
6352         This may solve or help to identify erroneous access to it after
6353         destruction.
6355         * plug-ins/wmf/wmf.cpp : convert string from utf8 to wchar to
6356         get 'umlauts' working
6358 2001-03-22  Cyrille Chepelov  <chepelov@calixo.net>
6360         * object/chronogram/chronoline_event.c: stupid bug ; rises and falls
6361         were reversed... (look for the patch, and drink a beer to my
6362         stupidity)      
6363         
6364 2001-03-23  Hans Breuer  <hans@breuer.org>
6366         * app/app_procs.c : don't g_error () if the config directory
6367         can't be created (at least not on windoze) because it's quite
6368         common that the user don't read or understand the FAQ ...
6370         * app/cursor.c : use ddisplay_active () instead of active_display
6371         from app/display.c
6373         * app/display.[hc] : made active_display var static and provide
6374         an accessor funtion ddisplay_active_diagram ()
6376         * app/dia-props.c : don't store the active_diagram, but ask
6377         for it everytime it needed.
6379         * lib/properties.h : #include "intl.h"
6381         * lib/makefile.msc : need to take care of inclusion order to
6382         avoid clashes with gtk+2.0's gdk-pixbuf
6384         * objects/makefile.msc : added uml/stereotype.c to build
6386 2001-03-23  Lars Clausen  <lrclause@cs.uiuc.edu>
6388         * **/*.c: Added config.h to the remaining .c files, and changed
6389         all to be <config.h>.
6391 2001-03-22  Steffen Macke <sdteffen@yahoo.com>
6393         * lib/arrows.c
6394         * lib/arrows.h
6395         * lib/widgets.c
6396         * app/lineprops_area.c: added new arrow types with double
6397         heads
6398         
6399 2001-03-20  Steffen Macke <sdteffen@yahoo.com>
6401         * shapes/Civil/civil_gas_bottle.xpm
6402         * shapes/Civil/civil_gas_bottle.shape
6403         * sheets/civil.sheet
6404         * shapes/Civil/Makefile.am: Added gas bottle shape by Arne
6405         Battermann
6406         
6407 2001-03-20  Lars Clausen  <lrclause@cs.uiuc.edu>
6409         * objects/custom/shape_info.c (load_shape_info): 
6410         * objects/custom/shape_info.h: 
6411         * objects/custom/custom_object.c (custom_update_data): 
6412         Better support for text outside the box -- new attributes 'resize'
6413         and 'align' for text entity.  Align not fully supported yet.
6415         * lib/text.c (text_calc_boundingbox): Adding BB for cursor width.
6417 2001-03-20  James Henstridge  <james@daa.com.au>
6419         * app/interface.c (display_data_received_callback): comment out
6420         status message.
6422 2001-03-19  James Henstridge  <james@daa.com.au>
6424         * app/GNOME_Dia.oaf: rename from GNOME_Dia.oafinfo.
6426         * objects/UML/realizes.c: similar here.
6428         * objects/UML/implements.c: similar here.
6430         * objects/UML/component.c: similar here.
6432         * objects/UML/generalization.c: same here.
6434         * objects/UML/dependency.c: allow NULL for ->name and
6435         ->stereotype.  This fixes a number of problems in loading saved
6436         files.
6438         * lib/properties.c: various changes so that NULL string properties
6439         should work.
6441         * objects/standard/line.c (line_update_data):
6442         line->extra.start_long and line->extra.end_long were not being
6443         initialised.  This fixes potential problems with the bounding box
6444         of "Standard - Line" objects.
6446 2001-03-19  Hans Breuer  <hans@breuer.org>
6448         * app/commands.c : added win32 specific code to display a html
6449         file. #include "text.h" for text_delete_all prototype.
6451         * app/dia.ico :
6452         * app/dia.rc : (new) to give Dia win32 an icon
6454         * app/win32print.[ch] : new files to support direct postscript
6455         file printing on win32. Beware: it *requires* a ps-printer!
6457         * app/paginate_psprint.c : disable the signal code for win32 build
6458         and added small specific changes to support win32print.
6460         * app/makefile.msc : added win32print and linking shell32.lib
6462         * lib/libdia.def : updated
6464 2001-03-18  Kevin Breit <battery841@mediaone.net>
6466         * doc/en/dia-C.omf: Added file.  Dia should now list in the Nautilus
6467           Help tabs.
6469 2001-03-17  James Henstridge  <james@daa.com.au>
6471         * app/paginate_psprint.c (diagram_print_ps): add code that traps
6472         SIGPIPEs during printing.  This gets rid of a number of crashes
6473         caused by printing (eg. typing an incorrect print command).
6475         * dia.spec (%install): gzip the manpage.
6477         * lib/beziershape.c (beziershape_save): fix off by one error in
6478         beziershape save code, which was adding an extra segment to the
6479         object on save.
6481         * app/menus.c: add a separator in the gnome version of the help
6482         menu.
6484         * app/app_procs.c (app_init): add a --nosplash argument which
6485         disables the splash screen.
6487         * app/dia_embedd.c (main): don't leave the splash screen open for
6488         embeddable component.
6490         * app/splash.c (app_splash_init): the gtk_widget_show_now() call
6491         didn't seem to be showing the splash screen like expected, so I
6492         have replaced it with some code that calls gtk_main() until the
6493         first exposure of the window.
6495 2001-03-16  James Henstridge  <james@daa.com.au>
6497         * app/Makefile.am (EXTRA_DIST): add extra pixmaps.
6499         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): add
6500         stereotype.h
6502         * lib/Makefile.am (libdia_a_SOURCES): add diavar.h here.
6504         * app/Makefile.am (dia_core_files): remove splash.h from file
6505         list, as it doesn't exist.
6507         * doc/en/Makefile.am (uninstall-local): remove the docdir on
6508         uninstall.
6510         * doc/Makefile.am (uninstall-local): target to remove the C
6511         symlink.
6513         * dia.spec (%files): include the documentation in the package.
6515         * app/menus.c (toolbox_menu_items): add menu item for manual,
6516         which calls help_manual_callback.
6518         * app/commands.c (help_manual_callback): find help file and load
6519         netscape to view it.
6521         * app/commands.h: add prototype for help_manual_callback()
6523         * doc/Makefile.am (helpdir): similar here.
6525         * doc/en/Makefile.am (helpdir): make the helpdir
6526         $(pkgdatadir)/help/en in the non gnome case.
6528         * configure.in (HAVE_GNOME): add conditional.
6530         * doc/en/Makefile.am: handle the graphics in a more general way,
6531         so it is easier for Kevin to add them to the build (just add them
6532         to the GRAPHICS var).
6534         * app/Makefile.am (embed_extra_print_files): make the case of
6535         building without gnome-print support but with bonobo support work.
6536         dia-embedd needs to be include the gnome-print
6538 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
6540         * samples/Makefile.am: included all samples in the distribution....
6541         
6542 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
6544         * configure.in: removed premature test for DPS. Added -*- m4 -*-
6545         at the beginning. Made HAVE_UNICODE non-default. po/es_ES.po has
6546         vanished, removed it from ALL_LINGUAS.
6548         * lib/charconv.[ch] (NEW): a very small wrapper around
6549         unicode_iconv to convert strings between utf8 and local charset
6550         (actually, ISO-8859-1, though one can do
6551         CFLAGS="-DEFAULT_8BIT_CHARSET=\"ISO-8859-2\"" and the like).
6553         * lib/ps-utf8.[ch] (NEW): A PostScript Unicoder ; a smallish
6554         library to help build Postscript streams which use as many custom
6555         font encodings as necessary to correctly represent all characters
6556         used (testing from users with non-latin1 and/or more than 256
6557         characters in routine use *very* welcome).
6559         * app/Makefile.am, lib/Makefile.am: integrated these into the
6560         build process.
6562         * shapes/Logic/.cvsignore (NEW): .cvsignore
6563         
6564         * app/render_eps.h: forwarded some changes Lars forgot to include.
6565         * app/render_eps.c: turned off ASCII85 and FILTERS, as this
6566         doesn't yet build.
6568 2001-03-08  Kevin Breit <battery841@mediaone.net>
6570         * doc/en/home_network.png: Added file.
6571         * doc/en/line_props.png: Added file.
6572         * doc/en/usage-objects.sgml: Added two graphics to file.
6573         * doc/en/usage-quickstart.sgml: Added one graphic to file.
6575 2001-03-06  Kjartan Maraas  <kmaraas@gnome.org>
6577         * app/grid.h: Place comment around text after #endif.
6578         * lib/bezier_conn.c: #include <string.h>.
6579         * lib/beziershape.c: #include <string.h>.
6580         * lib/connpoint_line.h: Comment after #endif.
6581         * lib/dia_dirs.c: #include <string.h>.
6582         * lib/element.c: Same.
6583         * lib/lazyprops.c: #include <config.h> and "intl.h".
6584         * lib/lazyprops.h: Comment out text after #endif.
6585         * lib/neworth_conn.c: #include <string.h>
6586         * lib/orth_conn.c: Same here.
6587         * lib/poly_conn.c: Here too.
6588         * lib/polyshape.c: And here.
6589         * lib/properties.c: Remove #include "intl.h" from here and add
6590         an array of static strings to work around bug in gettext that
6591         makes it miss strings in a #define body.
6592         * objects/GRAFCET/action_text_draw.h: Comment out text after #endif.
6593         * objects/GRAFCET/boolequation.h: Same here.
6594         * objects/chronogram/chronoline_event.h: Add prototype for
6595         destroy_cle().
6596         
6597 2001-03-05  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6599         * objects/FS/function.c: 
6600         * objects/FS/flow.c: 
6601         * objects/FS/flow-ortho.c: 
6602         Updated to use properties.
6604 2001-03-03  James Henstridge  <james@daa.com.au>
6606         * lib/lazyprops.c (__propdlg_build_enum): translate the radio
6607         button labels when creating them.
6609 2001-02-28  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6611         * objects/UML/actor.c
6612         * objects/UML/realizes.c 
6613         * objects/UML/implements.c 
6614         * objects/UML/generalization.c 
6615         * objects/UML/dependency.c 
6616         * objects/UML/constraint.c
6617         Updated to use properties.
6618         
6619         * objects/UML/stereotype.c 
6620         * objects/UML/stereotype.h
6621         Generalized to any kind of bracketting.
6622         
6623 2001-02-28  James Henstridge  <james@daa.com.au>
6625         * app/menus.c: add help entry to the help menu.  Need to get this
6626         working for the non GNOME case as well (maybe put help under
6627         $(datadir)/dia/help for non GNOME?)
6629         * doc/en/topic.dat: add a topic.dat file for GNOME menus.
6631         * doc/en/dia-manual.sgml (legalnotice): add an id attribute to
6632         this element so that we get a meaningful filename in the html
6633         translation.
6635         * doc/Makefile.am, doc/en/Makefile.am: new makefiles to handle the
6636         documentation.
6638         * configure.in (DB2HTML): add a check for the db2html program, and
6639         set an automake conditional if it is found.
6641         * Makefile.am: remove EXTRA_DIST rules that cover doc/ directory,
6642         and descend into doc/ directory while building.
6644         * configure.in (AC_OUTPUT): add doc/ makefiles to output list, now
6645         we need more complex rules for building the docs.
6647 2001-02-25  Hans Breuer  <hans@breuer.org>
6649         * config.h.win32 : some cleanup
6651         * app/prefererences.c : g_scanner_(freeze|thaw)_symbol_table
6652         are deprecated since glib-1.3.2. Sorry needing to use them
6653         contionally, but there is no glib-1.2 for win32
6655         * app/recent_files.c : use g_strescape (params) conditionally
6657         * lib/connection.c : include string.h for memcpy
6659         * lib/geometry.h : added some stuff for compatibility with
6660         msvc, which previously came from included config.h
6662         * lib/libdia.def : updated
6664         * objects/makefile.msc : updated
6666         * objects/GRAFCET/action.c(490) : fixed warning C4700: local variable 
6667         'extra' used without having been initialized
6669         * objects/network/bus.c(658) : initialize 'extra'
6671         * plug-ins/makefile.msc : updated
6673         * plug-ins/cgm/cgm.c :
6674         * plug-ins/pstricks/render_pstricks.c : 
6675         g_free() memory allocated by dia_image_rgb_data(). Plugs possibly 
6676         huge memory leaks.
6678         * plug-ins/python/python.c : use HAVE_DIRENT_H
6680 2001-02-23  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6682         * lib/connection.c (connection_update_boundingbox): 
6683         Made the BB shrink on right and lower sides, too.
6685 2001-02-23  Kjartan Maraas  <kmaraas@gnome.org>
6687         * */*.c: #incude <config.h> at the top.
6688         * */*.h: Remove include of "config.h" since it should only
6689         be included in .c files and at the very top for things to
6690         work.
6691         * sheets/*.sheet: Updated Norwegian translations.
6692         
6693 2001-02-22  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6695         * objects/UML/small_package.c: 
6696         * objects/UML/class.c: 
6697         * objects/UML/node.c: 
6698         * objects/UML/usecase.c:
6699         * objects/UML/lifeline.c: 
6700         * objects/UML/message.c:
6701         Various cleanup of properties in particular.  Now much more use of
6702         standard properties.
6704         * lib/diagramdata.c (layer_render): Visualization of bounding
6705         boxes, for debugging purpoises.
6707 2001-02-22  Cyrille Chepelov  <chepelov@calixo.net>
6709         * lib/geometry.h:
6710         * lib/connection.[ch]:
6711         * lib/poly_conn.[ch]:
6712         * lib/polyshape.[ch]:
6713         * lib/bezier_conn.[ch]:
6714         * lib/beziershape.[ch]:
6715         * lib/orth_conn.[ch]:
6716         * lib/neworth_conn.[ch]:
6717         * lib/element.[ch]: Changed a bit the _update_boundingbox()
6718         interface. Now the parent elements have an extra_spacing
6719         structure, which child objects just need to fill, to take care of
6720         most arrow & line width extra space needs.
6722         * objects/**/*.c: updated all objects to the new interface.
6723         While at it, killed all instances of (Object *) downcasts (phew !)
6725         * objects/GRAFCET/condition.c: removed the arrowhead, which IEC848
6726         doesn't speak about.
6727         
6728 2001-02-21  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6730         * sheets/Logic.sheet: New sheet for Logic symbols.
6732 2001-02-21  James Henstridge  <james@daa.com.au>
6734         * app/menus.c (dia_gnome_menu_get_widget): new function to find a
6735         widget by its path name.  Walks the GnomeUIInfo heirachy rather
6736         than widget tree, compares untranslated label names and ignores
6737         underscores in the labels.
6738         (menus_get_item_from_path): use dia_gnome_menu_get_widget so that
6739         lookups are not dependent on the current locale, as with
6740         gnome_app_find_menu_pos.
6742         * acconfig.h: guard against multiple inclusion of config.h.
6744         * app/select.c (select_style_callback): simply set the selection
6745         style to the value of action.
6747         * app/menus.c (menus_init): simplify the item factory based menu
6748         code a bit.  It looks like it was using some code cut and pasted
6749         from the gimp, which looked a bit unnecessary.  Things work fine
6750         without it.
6751         (selectmenu): set the action to the type of selection mode
6752         requested.
6753         (display_menu_items): use the symbolic enumeration values for the
6754         action field.
6756         * app/plugin-manager.c: 
6757         * app/plugin-manager.h: 
6758         * app/filedlg.c:
6759         * app/filedlg.h: 
6760         * app/select.c:
6761         * app/select.h: change prototypes.
6763         * app/commands.c: update all callback prototypes, and get rid of
6764         some #ifdef GNOME's.
6766         * app/commands.h: change function prototypes.
6768         * app/dia_embedd.c (save_fn):
6769         s/ex_Bonobo_IOError/ex_BonoboStorage_IOError/
6771         * app/menus.c (menus_init): for gnome menus, use
6772         gnome_app_fill_menu_custom and pass in a GnomeUIBuilderData
6773         structure that proxies the callbacks to have the same signature as
6774         GtkItemFactory type 1 callbacks.
6775         (menus_init): for GTK menus, change from callback type 2 to type
6776         1.
6777         (display_menu_items): add back tearoffs.  I don't know who removed
6778         these for the gtk menu case.
6780 2001-02-20  Kevin Breit <battery841@mediaone.net>
6782         * doc/en/usage-objects-special.sgml: Fixed a few of the special
6783         object descriptions.  More to come in the next few days.
6785 2001-02-20  Lars Clausen  <lrclause@cs.uiuc.edu>
6787         * app/render_eps.c: Fixed for internationalized floating point
6788         output. 
6790         * objects/UML/note.c: Fixed properties -- was missing
6791         Get/ApplyPropertiesFunc.  Also improved update to recalculate text
6792         position. 
6794 2001-02-19  Lars Clausen  <lrclause@cs.uiuc.edu>
6796         * plug-ins/xfig/xfig-import.c: 
6797         File added importing xfig files.  Still very rough, but good
6798         enough to let others hack on it.
6800 2001-02-07  Cyrille Chepelov  <chepelov@calixo.net>
6802         * app/interface.c:
6803         * app/linewidth_area.c:
6804         * lib/lazyprops.c:
6805         * lib/properties.c:
6806         * lib/widgets.c:
6807         * objects/ER/attribute.c:
6808         * objects/ER/entity.c:
6809         * objects/ER/relationship.c:
6810         * objects/custom/custom_object.c:
6811         * objects/flowchart/box.c:
6812         * objects/flowchart/diamond.c:
6813         * objects/flowchart/ellipse.c:
6814         * objects/flowchart/parallelogram.c:
6815         * objects/standard/box.c:
6816         * objects/standard/textobj.c: per Vlad Harchev's request, made
6817         page sizes of gtk_adjustments different than their step sizes.
6818         When sensible values of page size weren't found (overwhelming
6819         majority of cases), page sizes were set to 10.0 * respective step
6820         size.   
6822 2001-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
6824         * objects/network/hub.c: 
6825         Patch from Hubert Figuiere applied, adding connection points.
6827 2001-02-02  James Henstridge  <james@daa.com.au>
6829         * app/display.c (new_display): set update id to 0 here.
6830         (ddisplay_update_handler): rename from ddisplay_flush, and set
6831         update_id to 0 at end of processing.
6832         (ddisplay_flush): new implementation that simply sets an idle
6833         handler to perform the actual drawing.
6835         * app/display.h: add structure member to hold the redraw idle
6836         handler id.
6838 2001-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
6840         * objects/standard/ellipse.c (ellipse_copy): 
6841         * objects/standard/zigzagline.c (zigzagline_copy): 
6842         Fix of copying provided by Martin Hawlisch.
6844 2001-01-23  Kevin Breit <battery841@mediaone.net>
6846         * doc/en/graphics/: added directory
6848         * doc/en/graphics/greendots.png: added file
6850         * doc/en/*sgml: made minor and some major changes to prepare for 1.4
6851         release.
6853 2001-01-23  Kevin Breit <battery841@mediaone.net>
6855         * doc/en/*sgml: made some grammar changes and fixed a few markup bugs.
6856                         thanks to John Fleck!
6858 2001-01-21  Kevin Breit <battery841@mediaone.net>
6860         * doc/en/*sgml: made just minor changes to a few lines; nothing major.
6862 2001-01-12  Michael Meeks  <michael@helixcode.com>
6864         * app/dia_embedd.c (init_server_factory): do a bonobo_activate
6865         so our POA gets setup properly.
6867         * app/paginate_gnomeprint.c (paginate_gnomeprint): g_free
6868         things we g_malloc.
6870         * configure.in: Use bonobox_print.
6872         * app/dia_embedd.c (embeddable_factory): add print interface.
6873         (object_print): impl.
6875 2001-01-11  Michael Meeks  <michael@helixcode.com>
6877         * app/dia_embedd.c (embeddable_factory): aggregate PersistFile.
6878         (load_fn, save_fn): impl.
6879         (view_factory): hide modified status bar, & use activate fn.
6880         (refresh_view): force redraws of the views.
6881         (view_show_hide): split from
6882         (dia_view_activate): here.
6884         * app/diagram.c (diagram_load_into): split from diagram_load.
6885         (new_diagram): simplify bu splittin stuff into
6886         (diagram_init): here.
6888 2001-01-10  Steffen Macke <sdteffen@yahoo.com>
6890         * shapes/jigsaw/*.shape: replaced #000000 with foreground
6891         and #ffffff with background
6892         
6893 2001-01-08  Steffen Macke <sdteffen@yahoo.com>
6895         *configure.in: GTK+-build was broken due to missing
6896         have_bonobo=no
6897         
6898 2001-01-06  Michael Meeks  <michael@helixcode.com>
6900         * app/dia_embedd.c (main): add running context support.
6901         (dia_embeddable_destroy): remove old running object counting.
6902         (embeddable_factory): ditto.
6903         (view_factory): comment out menu path hiding.
6905         * lib/sheet.c (load_register_sheet): use free to free
6906         stuff from libxml not g_free.
6908         * acconfig.h: kill cover for USE_BONOBOX and USE_OAF
6910         * configure.in: remove USE_OAF checks, check for a precice
6911         Bonobo version >= 0.31, revamp bits.
6913         * app/dia_embedd.c (init_server_factory): upd.
6914         (init_dia_factory): remove OAF conditionals, everything uses
6915         oaf now.
6917         * app/GNOME_Dia.oafinfo: rename OAFIIDs
6919         * app/Makefile.am: remove ancient gnorba code.
6920         rename dia.oafinfo to GNOME_Dia.oafinfo
6922 2001-01-07  Hans Breuer <Hans@Breuer.Org>
6924         * config.h.win32
6925         * install.win32
6926         * readme.win32 : some more files required or useful to build 
6927         Dia on win32
6929         * plug-ins/wmf/wmf.cpp : fixed open issues like fill_arc and
6930         fill_bezier implementation, boundary drawing in fill mode, etc.
6931         Next one complaining gets the source, uncommented ...
6933         * shapes/network/router-symbol.xpm 
6934         * shapes/network/switch-atm-symbol.xpm 
6935         * shapes/network/switch-symbol.xpm : removed "-*- picture -*- "
6936         from /* XPM */ header, cause it stopped Dia/gdk_pixbuf to detect 
6937         the files as XPMs. Maybe the X versions of these functions are more
6938         tolerant ...
6940 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
6942         * plug-ins/python/Makefile.am: added libart path
6944         * plug-ins/python/python.c: added dirent.h
6946         * configure.in: added es_ES and pt_BR to ALL_LINGUAS
6947         
6948 2001-01-06  Hans Breuer <Hans@Breuer.Org>
6950         * objects/uml/actor.c
6951         * objects/uml/branch.c
6952         * objects/uml/class.c
6953         * objects/uml/classicon.c
6954         * objects/uml/component.c
6955         * objects/uml/large_package.c
6956         * objects/uml/node.c
6957         * objects/uml/note.c
6958         * objects/uml/object.c
6959         * objects/uml/small_package.c
6960         * objects/uml/state.c
6961         * objects/uml/usecase.c : started to implement the generic property
6962         interface for the uml objects. Would appreciate some help on how
6963         to implement properties which are list of properties themselves,
6964         e.g. member functions and their parameters of UMLClass.
6966 2001-01-06  Hans Breuer <Hans@Breuer.Org>
6968         * plug-ins/python/diamodule.c : finally ported to win32.
6969         Added new objects and implemented register_export function.
6971         * plug-ins/python/pydia-object.h
6972         * plug-ins/python/pydia-display.c
6973         * plug-ins/python/pydia-handle.c
6974         PyObject_HEAD_INIT needs some tweakink on win32. Done in
6975         pydia-object.h; others files simply using it.
6977         * plug-ins/python/pydia-layer.c : reflect 
6978         layer_find_closest_connection(_)point renaming
6980         * plug-ins/python/pydia-object.c : add property properties.
6981         Also change bounding_box to DiaRectangle.
6983         * plug-ins/python/python.c : extended error reporting; use
6984         all *.py files from Dia's plug-in dir instead of hardcoded
6985         test.py. This sollution should be fine with Win32, but on
6986         Unix it may need some tweaking (dunno) ...
6988         * plug-ins/python/export-object.py
6989         * plug-ins/python/export-render.py : test and documentation 
6990         implementations for export filter implementations in Python
6992         * plug-ins/python/pydia-color.[hc]
6993         * plug-ins/python/pydia-diagramdata.[hc]
6994         * plug-ins/python/pydia-error.[hc]
6995         * plug-ins/python/pydia-export.[hc]
6996         * plug-ins/python/pydia-font.[hc]
6997         * plug-ins/python/pydia-geometry.[hc]
6998         * plug-ins/python/pydia-image.[hc]
6999         * plug-ins/python/pydia-properties.[hc]
7000         * plug-ins/python/pydia-property.c
7001         * plug-ins/python/pydia-render.c : new objects in new files 
7003         * plug-ins/python/makefile.am : added new files but can't test it
7005         * plug-ins/python/pydia.def
7006         * plug-ins/python/makefile.msc : for win32 build
7008         * plug-ins/cgm/cgm.c
7009         * plug-ins/dxf/dxf-import.c
7010         * plug-ins/dxf/dxf-export.c
7011         * plug-ins/hpgl/hpgl.c : reflect export API change
7013         * plug-ins/shape/shape-export.c : reflect export API change
7014         and check for libart (better the availibility of a png exporter) 
7015         at run-time instead of compile-time. 
7017 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
7019         * app/recent_files.h was missing from Hans's commit
7021         * plug-ins/shape/shape_export.c: shape export was broken
7022         due to interface changes
7023         
7024 2001-01-05  Hans Breuer <Hans@Breuer.Org>
7026         Applied Steffen's recent file list patch :
7027         * app/Makefile.am : added recent_files.[hc]
7028         * app/diagram.c : add files to recent file list
7029         * app/menus.c : add recent file menu
7030         * app/app_procs.c : changed initialization order to
7031         make recent file list work with command line processing.
7033         The Filter export()/import() functions have got an additional 
7034         parameter to allow multiple filters via one C callback (required
7035         for Python bindings)
7037         * app/commands.[hc] : corrected the signature for gtk menu callback
7038         functions, which actually use the second or third parameter. This
7039         is the absolute minimum change to make these functions/menu entries
7040         work again. Using the other possible gtk menu callback signature
7041         would have required one more function to change. (see mailing list
7042         thread "Objects/Align/Equal Distance" for more information.
7044         * app/disp_callbacks.c : applied Gustavo J.A.M. Carneiro's
7045         zoom-combo focus patch
7047         * app/display.c
7048         * app/interface.c : wrapped the Zoom Combo code into 
7049         #ifndef WITHOUT_ZOOM_COMBO because IHMO it isn't an useabilty
7050         improvement but cluttering the user interface. Also it wasn't
7051         compiling on Win32 anyway. The win32 version does define 
7052         WITHOUT_ZOOM_COMBO to keep the old look. 
7053         There are plans to use the statusbar to display size and placement
7054         of selected objects, whereas the Zoom Combo would need to get out
7055         of the way as well.
7057         Added "Save Changes?" to diagram close dialog. Hopefuly the
7058         Yes/No/Cancel option isn't too much windoze like. IHMO this is
7059         an useability improvement.
7061         * app/export_png.c
7062         * app/filedlg.c
7063         * app/load_save.c
7064         * app/layer_dialog.c
7065         * app/paginate_psprint.c
7066         * app/render_eps.c
7067         - reflect signature changing of filter->export function
7068         - replaced '/' with G_DIR_SEPARARTOR where appropriate
7070         * app/diaunitspinner.c
7071         * app/render_libart.c
7072         added misssing headers like <string.h>
7074         * app/object_ops.c : fixed copy&paste bug in dialog string
7076         * app/splash.c : gdk_widget_show_now () does not ensure actual
7077         drawing of the splash screen, at least not on win32. Reuse the
7078         previous implementation with gtk_main_iteration() again.
7080         * */makefile.msc : make use of the build module (available in
7081         gnome-cvs/build. Updated for other source changes
7083         * lib/filter.h : added an user_data pointer to <ex/im>port()
7084         function signature and Dia<Im/Ex>portFilter to allow different
7085         filters to reuse the same callback function
7087         * lib/font.c : #include <string.h>
7089         * lib/orth_conn.c 
7090         * lib/poly_conn.c 
7091         * lib/poly_shape.c 
7092         * lib/neworth_conn.c
7093         * lib/text.c : don't mix allocator functions (g_)realloc, free, ...
7095         * */*.def : export function definition files required by win32 build
7097         * objects/custom/custom.c : #include <string.h>
7099         * plug-ins/pstricks/render_pstricks.c
7100         * plug-ins/shape/shape_export.c
7101         * plug-ins/svg/render_svg.c
7102         reflect changes to filter export function signature
7104         * plug-ins/wmf/wmf.cpp : fixed indent and scaling. It now should
7105         mostly work as expected
7106         * plug-ins/wmf/wmf_gdi.[hc] : Updated comment. Still not used
7107         to build the wmf plug-in because on the one hand the GDI emulation 
7108         isn't finished and on the other hand it isn't required when building
7109         for win32. Is there anybody out there, who wants to save WMF on non
7110         windoze platforms ?
7112         * plug-ins/wpg/wpg.cpp : fixed scaling to take axis dependent
7113         offset into account.
7115 2001-01-02  Steffen Macke <sdteffen@yahoo.com>
7117         * app/Makefile.am: added missing plug-ins to run_dia.sh
7119         * lib/paper.c: added paper sizes A0, A1, A2
7121         * objects/UML/class.c
7122         objects/UML/class.h
7123         objects/UML/class_dialog.c: added support for colored UML
7124         classes
7125         
7126 2000-12-30  Kevin Breit <battery841@mediaone.net>
7128         * doc/en/usage-customization.sgml: added more content
7130 2000-12-24  Kevin Breit <battery841@mediaone.net>
7132         * doc/en/usage-layers.sgml: added file, contributed by Remypsb
7133         <remy.viard@laposte.net>
7135 2000-12-24  Steffen Macke <sdteffen@yahoo.com>
7137         * added limiting lines to Civil Engineering sheet,
7138         fixed vertical pump icon
7139         
7140 2000-12-20  Steffen Macke <sdteffen@yahoo.com>
7142         * updated/additional Civil Engineering shapes: better icons,
7143         shapes use foreground/background colors now and are filled
7144         
7145 2000-12-03  Kevin Breit  <battery841@mediaone.net>
7147         * doc/en/dia-manual.sgml Integrated a few diffs.  New section should be
7148         the selection <sect1>
7150 2000-11-29  Fredrik Hallenberg  <hallon@lysator.liu.se>
7152         * app/load_save.c (diagram_data_save): avoid using obsoleted
7153         libxml calls (only matters when compiling with libxml2)
7155 2000-11-25  James Henstridge  <james@daa.com.au>
7157         * app/disp_callbacks.c (ddisplay_drop_object): add a function to
7158         handle the tool drops on the canvas.
7160         * app/interface.c (display_data_received_callback): do the check
7161         to make sure that the drag is from a local toolbox here as well.
7163         * app/interface.c (create_tools): unref the pixmap/mask after
7164         creating the GtkPixmap.
7165         (tool_setup_drag_source): function to set up a drag source for
7166         create object tool buttons.
7167         (create_tools): setup drag source for CREATE_OBJECT_TOOL's.
7168         (fill_sheet_wbox): same here.
7169         (create_display_shell): set up the display canvas as a drag
7170         destination.
7171         (display_drop_callback, display_data_received_callback): functions
7172         to handle drops of tool buttons.
7174         * app/menus.c (menus_init): don't use gnome_popup_menu_new().  It
7175         does weird shit to the user_data pointer for a menu item.  Object
7176         alignment should work again now.
7178         * app/splash.c (get_logo_pixmap): don't unref the bitmap if it is
7179         NULL, and mark this function static.
7180         (app_splash_init): use gtk_widget_show_now() instead of the
7181         gtk_main_iteration loop.
7182         (app_splash_init): connecting gtk_widget_destroy to the destroy
7183         signal of a widget seems pretty useless.
7185 2000-11-23  Kevin Breit <battery841@users.sourceforge.net>
7187         * doc/en/dia-manual.sgml:
7188                 Added sect1 for advanced object types.  Starting development
7189                 on that part.
7191 2000-11-18  Kevin Breit <battery841@mediaone.net>
7193         * doc/en/dia-manual.sgml:
7194                 Stupid spelling fixes.
7196 2000-11-18  Kevin Breit <battery841@mediaone.net>
7198         * doc/en/dia-manual.sgml:
7199                 Just some small changes I made.  Props to Greg LeBlanc on the
7200                 recommendations.
7202 2000-11-17  Alexander Larsson  <alla@lysator.liu.se>
7204         * app/display.c:
7205         (ddisplay_add_display_area): Clip input rectangle to
7206         the visible part of the display.
7207         (ddisplay_scroll): Optimization, don't scroll and
7208         redraw if moving to the same position as before.
7210         * app/render_libart.c (renderer_libart_copy_to_window):
7211         Removed sanity check. Now moved to ddisplay_add_display_area().
7213         * lib/diavar.h:
7214         Added return at end of file.
7215         
7216 2000-11-13 Kevin Breit <battery841@mypad.com>
7217         * doc/en/dia-manual.sgml
7218                 Commited manual changes from Henry House <hajhouse@houseag.com>
7220 2000-10-21 Hans Breuer <Hans@Breuer.Org>
7221         * lib/beziershape.c :
7222                 The previous code was accessing unowned memory due to IHMO
7223                 wrong index calculation. Now it appears to be fixed.
7224                 *Please Review!*
7226         * lib/makefile.msc
7227         * plug-ins/makefile.msc
7228         * objects/makefile.msc
7229         * app/makefile.msc: (new files)
7230                 Makefiles for Dia on Win32, Micro$oft VC only.
7232         * plug-ins/pstricks/render_pstricks.c
7233         * plug-ins/dxf/dxf-import.c
7234         * plug-ins/shape/shape-export.c
7235         * plug-ins/svg/render_svg.c
7236         * app/commands.c
7237         * app/filedlg.c
7238         * app/preferences.c
7239         * app/render_eps.c
7240         * lib/sheet.c
7241         * lib/plug-ins.c
7242         * objects/custom/custom.c
7243         * objects/standard/image.c
7244                 portability (not only win32): use HAVE_UNISTD_H, HAVE_DIRENT_H 
7245                 where   appropriate, add missing prototypes like <string.h>
7247         * plug-ins/wmf/wmf_gdi.cpp
7248         * plug-ins/wmf/wmf_gdi.h:
7249                 start of wmf write functions for non Win32 platform. Not 
7250                 finished yet. The other way to get it working maybe to
7251                 link the plug-in against wine libs.
7252                 
7253         * plug-ins/wpg/wpg.c : add missing brace
7255         * app/load_save.c :
7256                 Handling for unknown objects at load time. Previously Dia
7257                 was crashing, if you try to load a file referencing objects
7258                 whiches plug-ins aren't installed/available. Now it spits out 
7259                 a warning and ignores the unknown objects.
7261         * app/interface.c
7262                 toolbox DND support for files like The Gimp does it.
7264         * app/main.c
7265         * app/app_procs.h
7266                 Simple splash screen support and usage.
7268         * app/app_procs.c
7269                 Splash screen, portability fixes, dont' g_error if there is
7270                 g_get_homedir return NULL. This may remove the one and only
7271                 FAQ for Win32.
7273         * app/menus.c :
7274                 Make it compile without ENABLE_NLS
7276         * app/render_libart.c :
7277                 Sanity check to avoid calling libart with wrong window coordinates.
7278                 They come from the update handler. Direct Gdk is dealing nicely
7279                 with coordinates out of range, libart does access un-owned memory
7280                 in this case, mostly causing crashes.
7282         * app/winmain.c: (new file) Export the Win32 Gui version of the
7283                 main function. This file is only required for Windoze.
7285         * app/splash.c: (new file) splash screen implementation
7287         * lib/color.h
7288         * lib/font.h
7289         * lib/diavar.h: (new file)
7290                 moved special variable export code to diavar.h, because it is
7291                 needed in color.h and font.h
7293         * lib/paper.c :
7294                 M$VC cann't export inlined functions. Quick hack to let it
7295                 link again. Probably the glib mechanics should be used here?
7297         * objects/UML/lifeline.c : initialize var before usage
7299         * objects/GRAFCET/step.c : removed unused var
7301 2000-10-14  James Henstridge  <james@daa.com.au>
7303         * app/render_gnomeprint.c (draw_image): change code so images
7304         don't get flipped when printing.
7306         * app/paginate_gnomeprint.c (diagram_print_gnome): check to make
7307         sure that the return value of
7308         gnome_print_context_new_with_paper_size is not NULL.
7310         * app/render_gnomeprint.c (draw_arc): add code to convert arcs
7311         into a series of bezier segments.
7312         (fill_arc): similar code to handle filled arc segments.
7314 2000-10-12  Fredrik Hallenberg  <hallon@lysator.liu.se>
7316         * app/app_procs.c
7317         * app/commands.c
7318         * app/dia-props.c
7319         * app/diagram.c
7320         * app/diagram.h
7321         * app/disp_callbacks.c
7322         * app/display.c
7323         * app/linewidth_area.c
7324         * app/paginate_psprint.c
7325         * app/preferences.c
7326         * app/undo.c
7327         * app/font.c
7328         * app/message.c
7329         * app/neworth_conn.c
7330         * app/orth_conn.c
7331         * objects/standard/box.c: various small changes to get rid of 
7332         annoying warnings (eg faulty prototypes and unused variables)
7334         * app/disp_callbacks.c
7335         * app/cursor.h
7336         * app/magnify.c
7337         * app/magnify.h: update magnify tool icon when pressing/releasing
7338         shift. I will try to make something more general so that similar
7339         things can be used by other tools.
7341         * shapes/SDL/inout.shape
7342         * shapes/SDL/return.shape: fixed some typos
7344 2000-10-09  James Henstridge  <james@daa.com.au>
7346         * objects/custom/shape_info.c (parse_path): apply patch from
7347         Robert Young <robertdotyoung@dsto.defence.gov.au> to fix bug
7348         #25221
7350 2000-10-08  James Henstridge  <james@daa.com.au>
7352         * objects/standard/image.c (image_set_props): if the file could not
7353         be loaded, show the broken image icon.
7355         * plug-ins/Makefile.am (SUBDIRS): add shape to the subdirs list.
7357         * plug-ins/shape/*: the shape export plugin by Steffen Macke.
7359         * app/interface.c (fill_sheet_wbox): use gdk-pixbuf to load the
7360         object icon when loading from a file.  This allows you to have PNG
7361         icon files for shapes.
7363 2000-10-07  James Henstridge  <james@daa.com.au>
7365         * app/Makefile.am (dia_LDADD): remove GDK_IMLIB_LIBS reference.
7367         * lib/Makefile.am, app/Makefile.am (INCLUDES): remove
7368         GDK_IMLIB_CFLAGS reference.
7370         * app/commands.c (help_about_callback): remove imlib code.
7372         * lib/dia_image.c: only include the pixbuf version of the image
7373         routines.
7375         * acconfig.h: remove the HAVE_GDK_PIXBUF flag from here.
7377         * configure.in (CPPFLAGS): remove the check for imlib, as we now
7378         require gdk-pixbuf.
7380         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer):
7381         conditionally define \setfont as well.
7383 2000-10-05  James Henstridge  <james@daa.com.au>
7385         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer): fix
7386         preamble so that we define \setlinejoinmode and \setlinecaps
7387         commands conditionally on them being undefined.  This way, the
7388         pstricks output files should work without modification, and will
7389         support the commands when they are implemented in pstricks.
7391 2000-10-05  Szabolcs Ban  <shooby@gnome.hu>
7393         * dia.desktop: added hungarian translations to dia.desktop
7395 2000-10-04  James Henstridge  <james@daa.com.au>
7397         * sheets/UML.sheet: fix typo.
7399         * objects/custom/shape_info.c: use strtod instead of g_strtod.
7400         (parse_path): actually call setlocale around strtod calls.
7402         * lib/dia_xml.c: use strtod rather than g_strtod.  We wrap each
7403         call in setlocale(LC_NUMERIC, "C"), so there is no reason to call
7404         the g_strtod wrapper.
7406         * shapes/SDL/: add SDL shapes from Rubens Ramos
7407         <rubens_ramos@yahoo.com>
7409         * acinclude.m4 (DIA_CHECK_CFLAG): fix up macro.
7411         * sheets/Makefile.am (SHEETS): add SDL.sheet to list.
7413         * shapes/MSE/: add Mobile Subscriber Equipment shapes from
7414         W. Michael Petullo <mike@flyn.org>.
7416         * sheets/Makefile.am (SHEETS): add civil.sheet (which got missed
7417         from the 0.86 tarball) and jigsaw.sheet.
7419         * configure.in: add shapes/jigsaw/Makefile to list of generated files.
7421         * shapes/jigsaw/: jigsaw shapes from Martin Hawlisch.
7423         * shapes/network/: add network-additional shapes here.
7425         * sheets/network.sheet: add the network-additional shapes from
7426         Martin Hawlisch <Martin.Hawlisch@bflow.com> to the main network
7427         sheet.
7429 2000-09-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
7431         * configure.in: Updated ALL_LINGUAS
7433         * po/nl.po: Removed newline from translation
7435 2000-09-17  Asbjorn Pettersen  <asbjornP@dualog.no>
7437         * app/commands.c (help_about_callback): Use G_DIR_SEPARATOR_S in 
7438         logo filename generation. 
7440         * lib/dia_dirs.c (dia_get_data_directory): Handle empty subdir better.
7441         Avoiding "//dia_logo.png".
7443 2000-09-16  Asbjorn Pettersen  <asbjornP@dualog.no>
7445         * app/filedlg.c: add include <sys/types.h> to
7446         remove warning. (OS/2)
7448 2000-09-13  Cyrille Chepelov <chepelov@calixo.net>
7450         * objects/chronogram/chronoline_event.c (reparse_clevent):
7451         the __checksum routine was simply bogus. Redone it in a slightly
7452         saner way (reported by Michael Farr <mfarr@cs.latrobe.edu.au>).
7454 2000-09-10  Asbjorn Pettersen  <asbjornP@dualog.no>
7456         * app/create_object.c (create_object_button_press): 
7457         * app/modify_tool.c (click_select_object): 
7458         * lib/object.h: select renamed to selectf to prevent
7459         compiler problems with function select().  OS/2 version.
7461 2000-09-08  Karsten Weiss  <knweiss@gmx.de>
7463         * po/de.po: Updated.
7465 2000-09-07  Karsten Weiss  <knweiss@gmx.de>
7467         * dia.desktop: Added German translation
7468         * app/menus.c: "Diagram Propeties..." -> "Diagram Properties..."
7470 2000-08-29  Manuel de Vega Barreiro <barreiro@arrakis.es>
7472         * configure.in (ALL_LINGUAS): added "es"
7474 2000-08-28  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
7476         * app/magnify.c:
7477         * app/cursor.h:
7478         * app/cursor.c:
7479         * app/scroll_tool.c:
7480         Standardized cursor function get_cursor().  Magnify now has
7481         looking-glass cursor with + and -.
7483         * app/create_object.c (create_object_button_press): 
7484         Newly created connections now snap to connection points even when
7485         off the grid. 
7487 2000-08-17  Daniel Egger  <egger@suse.de>
7489         * app/menus.c: #ifdef'ed some code for the none GNOME
7490         case.
7491         * app/dia_embedd.c: Changed obvious hackery. Can anyone
7492         please have a look at the GNOME UI menu creation? The
7493         gnome-app-helper code is ages old and plainly broken!
7495 2000-08-15  Daniel Egger  <egger@suse.de>
7497         * app/commands.c:
7498         * app/commands.h:
7499         * app/diagram.c:
7500         * app/display.c:
7501         * app/menus.c:
7502         * app/select.c: First big patch to get the menus
7503         working again in the international version. Copied
7504         some code written by Sven and me from GIMP and
7505         thus implemented automatic tearoffmenu creation and
7506         proper translation. I also removed that pseudo
7507         radiomenu hack and cleaned up several translation
7508         hacks which have never really worked. All in all
7509         this is part I of the big menu patch. Enjoy and tell
7510         me if you detect any problems.
7512 2000-08-14  Daniel Egger  <egger@suse.de>
7514         * sheets/UML.sheet: Changed one German translation as
7515         suggested by Heribert Schuetz <hs@heribert-schuetz.de>.
7517 2000-08-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
7519         * app/diapagelayout.c:
7520         * lib/diagramdata.c:
7521         * lib/diagramdata.h:
7522         * lib/Makefile.am:
7523         * lib/paper.c:
7524         * lib/paper.h: honour PAPERCONF env variable and /etc/papersize when
7525         selecting paper size for a new diagram. TODO: Use libpaper if 
7526         available and use gnome_paper-stuff if using GNOME.
7528         * sheets/Electric.sheet: fixed typo.
7529         
7530 2000-08-08  James Henstridge  <james@daa.com.au>
7532         * po/README: added a readme file to tell translators to translate
7533         the .sheet files as well.
7535         * app/commands.c (help_about_callback): fix small bug where we tried
7536         to gdk_bitmap_unref() the mask for the about box image, even though
7537         it was NULL.  Now check for a NULL mask.
7539 2000-08-07  Daniel Egger  <egger@suse.de>
7541         * sheets/*.sheet: Added translations for the name
7542         in the toolbar tab. Brushed up some descriptions 
7543         and some translations a bit.
7545 2000-08-06  James Henstridge  <james@daa.com.au>
7547         * plug-ins/svg/render_svg.c (new_svg_renderer): update public
7548         identifier and dtd url for SVG output.
7549         (new_svg_renderer): fix the output of the viewBox output.  The
7550         second two numbers are the width and height -- not the right
7551         and bottom sides of the box.
7553         * shapes/*/*.shape: update svg namespace URI.
7555         * objects/custom/shape_info.c (load_shape_info): change the
7556         namespace URI for custom shapes yet again to match the Candidate
7557         Recommedation.  It looks like this one will probably be the final
7558         one.
7560         * app/display.c (new_display): remove the code that sets ic and
7561         ic_attr members to NULL, as one of the previous function calls
7562         causes the display to be realised.  This means that the ic gets
7563         lost.  Thanks to Yukihiro Nakai <ynakai@redhat.com> for finding
7564         this one.
7566 2000-08-06  James Henstridge  <james@daa.com.au>
7568         * shapes/Makefile.am (SUBDIRS): add Civil back to list.
7570         * NEWS: fixed date in NEWS file, as I will release today.
7572         * README: updated the README a little.  Added note that Dia is now
7573         a GNU program.
7575         * dia.spec: fix up spec file.
7577         * plug-ins/wpg/wpg.c: changed DIAG_NOTE stuff here as well.
7579         * plug-ins/hpgl/hpgl.c: change Hans's DIAG_NOTE stuff so that we don't
7580         get heaps of warnings when you turn off debugging.
7581         Also made a few other warning fixes.
7583 2000-08-02  James Henstridge  <james@daa.com.au>
7585         * plug-ins/svg/Makefile.am (INCLUDES): add XML_CFLAGS to INCLUDES.
7587         * configure.in: update version number.
7589 2000-08-01  James Henstridge  <james@daa.com.au>
7591         * app/commands.c (help_about_callback): add Hans to about dialog.
7593         * doc/shape.dtd: dtd for shape file format.
7595         * doc/custom-shapes: update doc file about creating custom shapes.
7597         * shapes/*/*.shape: change namespace URI for the SVG portion to the
7598         one for the latest draft.
7600         * shapes/*/*.shape: fix up rect definitions.
7602         * objects/custom/shape_info.c (load_shape_info): recognise newer
7603         namespace tag for SVG.
7604         (parse_svg_node): the rect element should take attributes x, y, width
7605         and height -- not x1,y1,x2,y2.
7607         * plug-ins/svg/render_svg.c (new_svg_renderer): updated doctype
7608         output to use the newest draft DTD.
7610         * plug-ins/svg/svg.c: initialisation code for plugin.
7612         * plug-ins/svg/render_svg.c: move svg export code to a plugin.
7614         * plug-ins/svg/Makefile.am: makefile for svg plugin.
7616         * app/app_procs.c (internal_plugin_init): don't register the svg
7617         export filter here.
7619         * app/Makefile.am (dia_core_files): don't compile in render_svg.[ch]
7621 2000-07-31  James Henstridge  <james@daa.com.au>
7623         * objects/standard/textobj.c (textobj_get_defaults): 
7624         * objects/standard/polygon.c (polygon_get_defaults): 
7625         * objects/standard/image.c (image_get_defaults): 
7626         * objects/standard/ellipse.c (ellipse_get_defaults): 
7627         * objects/standard/box.c (box_get_defaults): 
7628         * objects/standard/beziergon.c (beziergon_get_defaults): 
7629         * objects/flowchart/parallelogram.c (pgram_get_defaults): 
7630         * objects/flowchart/ellipse.c (ellipse_get_defaults): 
7631         * objects/flowchart/diamond.c (diamond_get_defaults): 
7632         * objects/flowchart/box.c (box_get_defaults): 
7633         * objects/custom/custom_object.c (custom_get_defaults): 
7634         * objects/FS/flow.c (flow_get_defaults): 
7635         * objects/FS/flow-poly.c (flow_get_defaults): 
7636         * objects/FS/flow-ortho.c (orthflow_get_defaults): ref and sink the
7637         defaults widget.
7639         * app/defaults.c (defaults_show): don't keep on ref'ing the defaults
7640         widgets for various object types.
7641         (create_dialog): ref and sink the no_defaults_dialog.
7643         * app/preferences.c (prefs_create_dialog): change
7644         gtk_container_border_width call to gtk_container_set_border_width.
7646 2000-07-29  James Henstridge  <james@daa.com.au>
7648         * app/commands.c (view_aa_callback): show a warning dialog if
7649         you start AA mode.
7651         * app/interface.c (fill_sheet_menu): don't add a menu item for
7652         empty sheets.
7654 2000-07-26  James Henstridge  <james@daa.com.au>
7656         * plug-ins/dxf/dxf-export.c: updates from Steffen to fix bug #18677
7658         * app/menus.c: remove edit grid menu item.
7660         * app/commands.[ch] (view_edit_grid_callback): removed.
7662         * app/display.c (new_display): don't initialise removed Grid members.
7664         * app/grid.c: remove unused functions.
7666         * app/grid.h: remove dialog related stuff from Grid structure.
7667         Remove prototypes for dialog functions.
7669         * app/menus.c: add to menus
7670         
7671         * app/commands.[ch] (view_diagram_properties_callback): new command
7672         for showing the diagram properties dialog.
7674         * app/dia-props.[ch]: a new diagram properties dialog.  To replace
7675         the edit grid dialog.
7677 2000-07-25  James Henstridge  <james@daa.com.au>
7679         * app/grid.c (grid_x_update): 
7680         (grid_y_update): as the grid setting is stored with the diagram,
7681         update all displays when a change is made.
7683         * app/modify_tool.c (modify_motion): use new snap_to_grid sig.
7685         * app/create_object.c (create_object_button_press): 
7686         (create_object_motion): use new snap_to_grid signature.
7688         * app/grid.c (grid_draw): use the grid settings in the DiagramData,
7689         and handle invisible grid lines.
7690         (snap_to_grid): use new grid settings.  Also changed signature to
7691         take a DDisplay rather than Grid pointer.
7692         (grid_show_dialog): get the defaults from the correct place.
7694         * app/display.c (new_display): do not set ddisp->grid.width_[xy].
7696         * app/diagram.c (new_diagram): set the grid size defaults from the
7697         user preferences.
7699         * app/load_save.c (diagram_data_save): save grid and guide info to
7700         diagram file.
7701         (diagram_data_load): add guide and grid load support.
7703         * lib/diagramdata.c (new_diagram_data): set the new DiagramData
7704         members.
7706         * lib/diagramdata.h: add members to DiagramData for grid and guide
7707         settings.
7709         * configure.in (BONOBO_LIBS): update configure scripts
7711         * app/dia.oafinfo: oafinfo file for dia embeddables.
7713         * app/dia_embedd.c: add OAF support.
7715 2000-07-24  James Henstridge  <james@daa.com.au>
7717         * plug-ins/wpg/Makefile.am: 
7718         * plug-ins/pstricks/Makefile.am: 
7719         * plug-ins/hpgl/Makefile.am: 
7720         * plug-ins/dxf/Makefile.am: same here.
7722         * plug-ins/cgm/Makefile.am: remove LIBADD.  Dia already links with
7723         the required libraries, and the link line was causing libtool not
7724         to build a shared library on some systems :(
7726         * plug-ins/cgm/cgm.c (write_real): the initial if statement should
7727         be checking x, not n.
7729 2000-07-23  James Henstridge  <james@daa.com.au>
7731         * app/preferences.c (prefs_data): set the "reset tools after
7732         create" preference to true by default.  That seems to be what most
7733         people expect.
7735         * app/interface.c (create_sheets): instead of a notebook, use an
7736         option menu that updates the sheet tools.  The notebook tabs were
7737         getting a bit unwieldly, so the option menu should fix that.  This
7738         also reduces the number of widgets in the tools radio button
7739         group, which should make the UI a little more responsive.
7741 2000-07-19  Fatih Demir <kabalak@gmx.net>
7742         
7743         * configure.in: Added tr to ALL_LINGUAS.
7744                 [ Yeah, we're now having a Turkish translation,
7745                    too. ]
7746         
7747         * dia.desktop: Added the Turkish entries.
7749 2000-07-02  Fredrik Hallenberg  <hallon@lysator.liu.se>
7751         * doc/diagram.dtd: changed string-element so it conforms to the
7752         output from dia.
7754 2000-06-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
7756         * configure.in: added chinese. 
7757         Use AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL.
7759         * app/app_procs.c:
7760           app/load_save.c:
7761           app/render_svg.c:
7762           lib/dia_xml.c:
7763           lib/plug-ins.c:
7764           lib/sheet.c:
7765           objects/custom/shape_info.c: 
7766           shapes/Circuit/npn.shape:
7767           shapes/Circuit/pnp.shape:
7768           sheets/*.sheet: dia now works with libxml2.
7769         Libxml2 is a bit more picky when parsing xml and reported errors on all 
7770         sheet files because they use non ascii characters (added 
7771         encoding="iso-8859-1"). Also "xml:lang=en@layman" is not proper xml so 
7772         I commented out these.
7774 2000-06-30  Christopher R. Gabriel  <cgabriel@linux.it>
7776         * configure.in (ALL_LINGUAS): added Italian
7778 2000-06-27  Sung-Hyun Nam  <namsh@lgic.co.kr>
7780         * configure.in (ALL_LINGUAS): added Korean
7782 2000-06-25  James Henstridge  <james@daa.com.au>
7784         * objects/flowchart/parallelogram.c (pgram_create): use default font
7785         and add properties interface support.
7787         * objects/flowchart/ellipse.c (ellipse_create): use default font and
7788         add properties interface support.
7790         * objects/flowchart/diamond.c (diamond_create): use default font and
7791         add properties interface code.
7793         * objects/flowchart/box.c (box_create): use default font.
7795         * objects/custom/custom_object.c (custom_create): use default font
7796         here too.
7798         * objects/standard/textobj.c (textobj_create): update to use default
7799         font.
7801         * lib/attributes.c: add implementations.
7803         * lib/attributes.h (attributes_[gs]et_default_font): add function
7804         prototypes for setting/getting a default font.
7806 2000-06-24  James Henstridge  <james@daa.com.au>
7808         * app/paginate_gnomeprint.h: updated prototype.
7810         * app/paginate_gnomeprint.c (paginate_gnomeprint): update to use
7811         diagram page settings.
7813         * objects/standard/beziergon.c (beziergon_copy): same here.
7815         * objects/standard/polygon.c (polygon_copy): copy the fill colour
7816         as well.
7818         * app/undo.h: 
7819         * app/tool.h (tool_options_dialog_show): 
7820         * app/scroll_tool.h (free_scroll_tool): 
7821         * app/render_svg.h: 
7822         * app/render_libart.h (renderer_libart_copy_to_window): 
7823         * app/render_gdk.h (renderer_gdk_copy_to_window): 
7824         * app/properties.h (properties_hide_if_shown): 
7825         * app/preferences.h (prefs_load): 
7826         * app/object_ops.h: 
7827         * app/modify_tool.h (free_modify_tool): 
7828         * app/magnify.h (free_magnify_tool): 
7829         * app/linewidth_area.h (linewidth_area_create): 
7830         * app/layer_dialog.h: 
7831         * app/handle_ops.h (handle_is_clicked): 
7832         * app/group.h: 
7833         * app/grid.h (grid_destroy_dialog): 
7834         * app/defaults.h (defaults_show): 
7835         * app/cut_n_paste.h (cnp_exist_stored_objects): 
7836         * app/create_object.h (free_create_object_tool): 
7837         * app/connectionpoint_ops.h (diagram_unconnect_selected): 
7838         * app/commands.h: 
7839         * app/color_area.h (color_area_create): 
7840         * app/app_procs.h (app_is_embedded): remove extern keyword from
7841         function prototypes.
7843         * lib/text.h: 
7844         * lib/sheet.h (load_all_sheets): 
7845         * lib/render_store.h: 
7846         * lib/render_object.h (render_object_load): 
7847         * lib/polyshape.h (polyshape_closest_segment): 
7848         * lib/poly_conn.h (polyconn_closest_segment): 
7849         * lib/orth_conn.h: 
7850         * lib/object.h: 
7851         * lib/objchange.h (new_object_state_change): 
7852         * lib/neworth_conn.h (neworthconn_add_segment): 
7853         * lib/message.h (message_error): 
7854         * lib/lazyprops.h: 
7855         * lib/geometry.h: 
7856         * lib/font.h (font_descent): 
7857         * lib/focus.h (remove_focus): 
7858         * lib/element.h: 
7859         * lib/diagramdata.h: 
7860         * lib/dia_xml.h (data_add_composite): 
7861         * lib/dia_image.h: 
7862         * lib/connpoint_line.h: 
7863         * lib/connection.h (connection_move_handle): 
7864         * lib/color.h: 
7865         * lib/attributes.h (attributes_set_default_line_style): 
7866         * lib/arrows.h (arrow_draw): remove extern keyword from function
7867         definitions.  It is not required for functions.
7869         * plug-ins/dxf/Makefile.am (INCLUDES): 
7870         * plug-ins/pstricks/Makefile.am (INCLUDES): 
7871         * plug-ins/cgm/Makefile.am (INCLUDES): 
7872         * objects/SADT/Makefile.am (INCLUDES): 
7873         * objects/chronogram/Makefile.am (INCLUDES): 
7874         * objects/GRAFCET/Makefile.am (INCLUDES): 
7875         * objects/flowchart/Makefile.am (INCLUDES): 
7876         * objects/sybase/Makefile.am (INCLUDES): 
7877         * objects/FS/Makefile.am (INCLUDES): 
7878         * objects/standard/Makefile.am (INCLUDES): 
7879         * objects/network/Makefile.am (INCLUDES):
7880         * objects/UML/Makefile.am (INCLUDES): same here.
7882         * objects/ER/Makefile.am: changed inclusion of some macros to
7883         variables.
7885         * lib/plug-ins.c (dia_register_plugins_in_dir): use a few defines to
7886         handle the plug in extension, rather than have all the #ifdef's in
7887         the code.
7889         * plug-ins/Makefile.am: add renderer.inc to dist.
7891         * plug-ins/dxf/dxf-import.c: Updates from Steffen Macke.
7893 2000-06-11  Asbjorn Pettersen  <asbjornP@dualog.no>
7895         * lib/plug-ins.c: Handle OS/2 dll's too.
7897 2000-06-07  James Henstridge  <james@daa.com.au>
7899         * app/plugin-manager.c (get_plugin_manager): set some table
7900         packing options to make it look a little nicer.
7902         * plug-ins/hpgl/Makefile.am, plug-ins/wpg/Makefile.am: added
7903         makefiles for these plug-ins.
7905         * plug-ins/{hpgl,wmf,wpg}/*: removed dos style cariage returns.
7907         * configure.in: added hpgl and wpg directories to build.  Added
7908         note about whether gnome-print support was enabled, and noted that
7909         it is not recommended.
7911 2000-06-06  James Henstridge  <james@daa.com.au>
7913         * plug-ins/{hpgl,wmf,wpg}/*: Hans Breuer's plug-ins.  They still need
7914         a little work, but I am checking them in so I don't lose them.
7916 2000-06-01  James Henstridge  <james@daa.com.au>
7918         * objects/standard/arc.c: added extra properties.
7920         * lib/beziershape.c (beziershape_closest_handle): fix a bug where I
7921         was using the wrong index into the handles array.  This gets corner
7922         type changing working correctly.
7924         * lib/properties.[ch]: add support for BezPoint's and BezPoint arrays
7925         to properties code (no editing or loading yet though).  Also added
7926         support for point array manipulation through the offsets interfaces.
7928         * lib/Makefile.am (INCLUDES): added include of gdk-pixbuf 
7930         * app/interface.c (origin_button_press): changes so the origin
7931         button doesn't grab the pointer when we pop up the menu.
7933         * app/commands.c (help_about_callback): fix small memory leak in
7934         about box code.
7936         * app/menus.c (menus_init): fixed breakage I introduced in the non
7937         gnome menus when I was doing the menu changes.  The tearoffs work
7938         really nicely in plain gtk mode as well.
7940         * objects/standard/beziergon.c (beziergon_create): changed the
7941         returned handles to match the handle numbering changes.  Now
7942         segment addition and removal works correctly with undo!
7944         * lib/beziershape.c: various changes to the code.  Changed the
7945         numbering of handles, and fixed the segment removal code.
7947 2000-05-31  James Henstridge  <james@daa.com.au>
7949         * objects/standard/beziergon.c: remove connection point handling.
7950         There is still a bit of work to be done to get adding and removing
7951         of segments working correctly.
7953         * lib/beziershape.c: add connection point handling to beziershape.
7954         I set it for two connection points per segment.
7956 2000-05-30  James Henstridge  <james@daa.com.au>
7958         * objects/standard/polygon.c: don't do connectionpoint handling.
7960         * lib/polyshape.c: changed to handle connection points internally.
7961         Also, don't worry about connections to handles on polyshape, as
7962         all handles are non connectable.
7964 2000-05-30 Ville Hautamaki <villeh@cs.joensuu.fi>
7966         * configure.in: Added finnish
7967         
7968 2000-05-30  James Henstridge  <james@daa.com.au>
7970         * sheets/*.sheet: translation updates to the .sheet files.
7972         * po/fr.po: updated po file from Christophe Merlet.
7974         * menus.h: removed prototypes for functions which have been removed.
7976 2000-05-29  James Henstridge  <james@daa.com.au>
7978         * app/layer_dialog.c (layer_dialog_set_diagram): set the selected
7979         item in the option menu when changing selected diagram.
7981         * app/dia_embedd.c (view_factory): fix up function to work with new
7982         menus API.
7984         * app/disp_callbacks.c (ddisplay_realize): remove call to
7985         display_set_active from here.
7986         (ddisplay_canvas_events): move call here.  This gets rid of all the
7987         warnings, as the renderer has been fully set up correctly at this
7988         point.
7990         * app/menus.c (menus_init): add the tearoff item to the start of the
7991         right click menu.
7993         * app/app_procs.c (create_user_dirs): we don't need to create the
7994         menus directory anymore.
7996         * app/disp_callbacks.c (ddisplay_popup_menu): it should not be
7997         necessary to update the menu state here, as it was done when the
7998         active display was set.
8000         * app/display.c (display_set_active): update the menu state when
8001         changing active displays.
8003         * app/interface.c (origin_button_press): set the display as active
8004         when a click is made on the menu button.
8006         * app/menus.c (menus_init): set up a quit function to save the accels
8007         at exit.
8008         Add tearoff items for the non GNOME menus, add accelerators for
8009         several GNOME menus.
8011         * app/disp_callbacks.c (ddisplay_popup_menu): get the menu with
8012         menus_get_image_menu().
8014         * app/menus.c (menus_get_item_from_path): use display_menus here
8015         rather than ddisp->popup.
8017         * app/display.h: remove the popup member in the DDisplay structure.
8019         * app/interface.c: remove option of not using wrap box.
8020         (create_toolbox): change to always use menus_get_toolbox_menubar
8021         even when using gnome menus.
8022         (create_display_shell): use menus_get_image_menu to load accelerators
8023         only -- not the actual popup menu.
8025         * app/menus.c (menus_init): new function to create the menus.
8026         (menus_get_toolbox_menubar): use this function whether gnome is
8027         in use or not.  Changed to use menus_init.
8028         (menus_get_image_menu): same here.  Also, now this function always
8029         returns the same menu, rather than a new one each time.
8030         (menus_init): read a menurc file to load accelerators here.
8032 2000-05-28  James Henstridge  <james@daa.com.au>
8034         * app/display.c (ddisplay_really_destroy): unset active display if
8035         active display is destroyed.
8036         (ddisplay_active): simplify function to return active_display as set
8037         by display_set_active.  This allows using a pinned menu with any
8038         display -- not just the one it was popped up from.
8039         (display_set_active): notify the layer dialog of change of diagrams
8040         when active diagram changes.
8042         * app/disp_callbacks.c (ddisplay_canvas_events): set active display
8043         on button and key presses.
8044         (ddisplay_realize): set active display on realize.
8046         * app/display.c (display_set_active): simple implementation of this
8047         function.
8049         * app/display.h (display_set_active): add prototype for setting
8050         the active display.
8052         * app/interface.c (create_display_shell): don't give focus to the
8053         menu button.
8055         * app/menus.c: fix up menus for Beziergon.
8057         * app/interface.c (create_display_shell): make the widget in the
8058         top left corner a button that can be used to pop up the right click
8059         menu, like in gimp and sketch.
8061         * app/disp_callbacks.c (ddisplay_popup_menu): new function to popup
8062         the display menu.
8064         * objects/standard/beziergon.c (beziergon_set_corner_type_callback):
8065         add code to set corner types for beziergon.
8067         * lib/beziershape.c (beziershape_set_corner_type): fix up corner type
8068         setting code.
8069         (beziershape_move_handle): use the previous corner type for right
8070         controls.
8072         * app/interface.c (tool_data): add beziergon to toolbox.
8074         * objects/standard/standard.c (dia_plugin_init): initialise the new
8075         Beziergon object type.
8077         * objects/standard/beziergon.c: an object based on BezierShape.
8079         * lib/dummy_dep.h (dummy_dep): added to dummy_dep.
8081         * lib/beziershape.[ch]: new files implementing a bezier shape.
8083 2000-05-26  James Henstridge  <james@daa.com.au>
8085         * lib/text.c (text_key_event): handle multibyte inserts.
8086         (text_key_event): also add home and end keybindings.
8088         * app/interface.c (create_display_shell): connect handlers for
8089         focus_in_event, focus_out_event, realize and unrealize signals.
8091         * app/display.[ch] (new_display): initialise input context members.
8093         * app/disp_callbacks.[ch]: added XIM support here.
8095         * lib/font.c (suck_font): the black and white pixel values should be
8096         taken from a 1 bit colormap rather than the default colormap.
8098         Hans Breuer's Windows patches ...
8100         * lib/font.c: use Courier New for fixed width font on windows
8101         machines.
8103         * lib/dia_image.h: change to "struct _DiaImage".
8105         * lib/dia_image.c: change "struct DiaImage" to "struct _DiaImage"
8107         * app/disp_callbacks.c (ddisplay_canvas_events): allow ctrl+right
8108         mouse button for object menu.  This will make two button mouse owners
8109         happier.
8111 2000-05-25  James Henstridge  <james@daa.com.au>
8113         * app/filedlg.c (file_open_ok_callback): use diagram_load here.
8115         * app/app_procs.c (app_init): add extra NULL argument to call of
8116         diagram_load.
8118         * app/load_save.h: remove prototype.
8120         * app/load_save.c: remove diagram_data function here.
8122         * app/diagram.h: added prototype.
8124         * app/diagram.c (diagram_load): new function here, which uses import
8125         filters.
8127         * plug-ins/dxf/dxf.c: register the import filter as well.
8129         * plug-ins/dxf/dxf-import.c: added (unfinished) DXF import filter from
8130         Steffen Macke <macke@heini.fbbwu.fh-lueneburg.de>
8132         * objects/standard/line.c: add start_point and end_point properties
8133         to standard line object.
8135 2000-05-21  James Henstridge  <james@daa.com.au>
8137         * app/paginate_psprint.c: added missing include of locale.h.
8139         * objects/custom/custom_object.c (custom_draw): use fabs rather than
8140         abs for scaling factors.
8141         (custom_distance_from): same here.
8143         * dia.spec: make sure rpm doesn't bomb out when LINGUAS isn't set.
8145 2000-05-18  James Henstridge  <james@daa.com.au>
8147         * po/POTFILES.in: updated POTFILES.in.
8149         * dia.spec: incremented version number in spec file.
8151         * NEWS: added (lots of) news items for the 0.85 release.
8153         * app/preferences.c (prefs_save): set LC_NUMERIC to C while writing
8154         the config file.
8156         * configure.in: updated version number here.
8158         * app/Makefile.am (run_dia.sh): include plug-ins in the lib path.
8160 2000-05-17  James Henstridge  <james@daa.com.au>
8162         * app/app_procs.c (internal_plugin_init): register the native import
8163         filter.
8165         * app/load_save.c (diagram_data_load, diagram_load): split this
8166         function into two -- one that does all the work on the DiagramData
8167         structure, and the other that provides compatibility with the old
8168         function.
8169         (dia_import_filter): use diagram_data_load to define an import
8170         filter.
8172         * app/diagram.h (new_diagram): added const to prototype.
8174         * app/filedlg.c (file_open_callback): change to use new import filter
8175         code.
8177         * lib/filter.c: added import filter management functions.
8179         * lib/filter.h: added prototypes for import filter interface.
8181         * app/commands.c (help_about_callback): updated about dialog to
8182         contain a few more names.
8184 2000-05-16  James Henstridge  <james@daa.com.au>
8186         * configure.in (Configuration): added a status message to the end of
8187         the configure script to give the user some idea of what was
8188         configured.
8190         * plug-ins/dxf/Makefile.am: Makefile for new plugin.
8192         * plug-ins/dxf/dxf.c (dia_plugin_init): added file to initialise the
8193         plugin.
8195         * plug-ins/dxf/dxf-export.c: new file -- Steffen Macke's DXF export
8196         filter for dia.
8198         * configure.in (AM_PATH_LIBART): use the check function provided
8199         with libart rather than our own code.  It is more reliable, and
8200         it only requires that people who build out of CVS have libart.m4
8201         installed (not necessarily all of libart).
8202         (AM_PATH_GDK_PIXBUF): same here for gdk-pixbuf.
8204 2000-05-12  Andreas Hyden  <a.hyden@cyberpoint.se>
8206         * dia.desktop: Added Swedish translation.
8208 2000-05-09  James Henstridge  <james@daa.com.au>
8210         * lib/dia_xml.c: you can't free a const pointer, so remove const
8211         from variable definitions.
8213         Explicitely set LC_NUMERIC where needed, as sometimes it isn't
8214         initialised correctly.
8216         * app/render_svg.c (export_svg): set locale to C.
8218         * app/paginate_psprint.c (paginate_psprint): set locale to C.
8220         * app/render_eps.c (export_eps): set locale to C for EPS export.
8222         * lib/dia_xml.c (data_add_real): change to C locale for snprintf call.
8223         (data_add_point): same here.
8224         (data_add_rectangle): same here.
8225         (data_real): use g_strtod to convert strings to real numbers, so that
8226         locales are taken into account.
8227         (data_point): same here.
8228         (data_rectangle): same here.
8230         * AUTHORS: added Henk and Jacek to authors file.
8232         Daniel Egger's code cleanups.
8234         * app/select.c (select_invert_callback): remove unused variable.
8236         * app/plugin-manager.c (get_plugin_manager): fix typo.
8238         * app/load_save.c (read_connections, write_objects): 
8239         (write_connections): made some functions static.
8241         * app/interface.c (toolbox_delete, toolbox_destroy): made some
8242         functions static.
8244         * app/filedlg.c (file_export_callback): remove unused variable.
8246         * app/app_procs.c: various warning fixes.
8248         Integrating Jacek Pliszka's pstricks export filter.
8250         * plug-ins/pstricks/pstricks.c: code to initialise the plugin.
8252         * plug-ins/pstricks/render_pstricks.[ch]: Jacek Pliszka's pstricks
8253         renderer (with a few small modifications by me).
8255         * plug-ins/pstricks/Makefile.am: new makefile for pstricks plug-in.
8257         * plug-ins/Makefile.am (SUBDIRS): add pstricks subdirectory.
8259 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
8261         * configure.in:
8262         * sheets/Makefile.am:
8263         * shapes/Makefile.am:
8264         * shapes/Civil/Makefile.am:
8265         * sheets/civil.sheet:
8266         * shapes/Civil/*:
8267         Added civil/hydraulic/structural engineering objects from
8268         sdteffen <macke@heini.fbbwu.fh-lueneburg.de>.
8269         
8270 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
8272         * objects/FS/flow-poly.c:
8273         * objects/FS/flow.c:
8274         Fix division by zero in point_normalize().
8275         Patch by David Thompson <dcthomp@mail.utexas.edu>
8277 2000-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
8279         * lib/arrows.c:
8280         * lib/bezier_conn.c:
8281         * lib/connpoint_line.c:
8282         Added checks for zero-length lines before calls to point_normalize.
8284 2000-04-24  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8286         * app/preferences.c (prefs_data): Changed
8287         reversed_dragging_intersects to not make the dialog ridiculously
8288         wide.
8289         
8290 2000-04-22  James Henstridge  <james@daa.com.au>
8292         Hans's win32 patches:
8294         * app/export_png.c: include message.h
8295         * app/interface.c: include dia_dirs.h
8296         * app/linewidth_area.c: check for rint
8297         * app/main.c: include interface.h
8298         * app/paginate_psprint.c: remove unused variable.
8299         * app/preferences.c: include message.h
8300         * app/render_svg.c: include stdlib.h
8301         * app/select.c: include object_ops.h
8302         * lib/dia_dirs.c: miscelaneous fixes for win32.
8303         * lib/dia_image.c: include string.h
8304         * lib/plug-ins.c: look for .dll files rather than .la files on win32.
8305         * lib/properties.c: include stdlib.h
8306         * lib/properties.h: define extra data for standard properties as
8307         static variables on win32 (to get around dynamic linker problems).
8308         * objects/standard/polygon.c: polygon_create_change missing return
8309         statement.
8311 2000-04-18  Pablo Saratxaga <pablo@mandrakesoft.com>
8313         * configure.in (ALL_LINGUAS): added Catalan
8315 2000-04-18  James Henstridge  <james@daa.com.au>
8317         * objects/standard/bezier.c (bezierline_get_object_menu): add a
8318         separator to the object menu between the add/remove segment items
8319         and the corner type items.
8320         (bezierline_get_object_menu): add code to disable the menu item for
8321         the current corner type.  Really just a cosmetic change.
8323         * app/disp_callbacks.c (create_object_menu): handle DiaMenuItems with
8324         a NULL for the label or with no associated callback.
8326         * objects/standard/bezier.c (bezierline_menu_items): use the
8327         enumeration values rather than numeric values for the corner types.
8329         * lib/bezier_conn.[ch]: added a corner_types member to the BezierConn
8330         structure, and add code to handle it.  Also, don't save the corner
8331         types inline in the bez_points node.  The way it is conditionally
8332         including the element just feels like it will break.
8334         * lib/geometry.h (BezPoint): removed the corner_type stuff from
8335         BezPoint.  The corner type stuff is a user interface level idea rather
8336         than something required by the renderer, so should be taken care of
8337         at the object level.
8339 2000-04-17  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8341         * configure.in: Fixed some problems with the gdk-pixbuf/imlib
8342         checks.  Weren't able to reproduce original bug, tough.
8344 2000-04-16  Cyrille Chepelov  <chepelov@calixo.net>
8346         * sheets/Electric.sheet:
8347         * sheets/Contact.sheet:
8348         * sheets/Pneumatic.sheet:
8349         * sheets/Circuit.sheet: sprayed some <br/>'s around.
8350         (added a few French translations in the last file)
8351         
8352 2000-04-16  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8354         * lib/geometry.h: 
8355         * lib/bezier_conn.h: 
8356         * objects/standard/bezier.c: 
8357         * lib/bezier_conn.c: Support for cuspy, smooth and symmetric
8358         bezier points.  Only one minor problem known:  Menus are active
8359         for endpoints minor handles.
8360         11:28: Save and load now works, too.
8361         (bezierconn_closest_major_handle): 12:03: New function to get the
8362         non-control point handle associated with the nearest control
8363         point.  
8364         Also fixed the menu activation problem, and made remove_segment
8365         not remove the endpoint.
8367 2000-04-15  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8369         * configure.in: Added check for gdk-pixbuf being >= 0.7.0 since
8370         new API is in use.
8372 2000-04-15  Asbjorn Pettersen  <asbjornP@dualog.no>
8374         * lib/plug-ins.c: Added <sys/types.h> and moved <fcntl.h> below
8375         <sys/stat.h>.   OS/2 patch.
8377 2000-04-15  James Henstridge  <james@daa.com.au>
8379         * objects/FS/flow-ortho.c, objects/FS/function.c: Applied David
8380         Thompson's patch that adds undo support to the function structure
8381         diagram objects.
8383 2000-04-14  James Henstridge  <james@daa.com.au>
8385         * objects/custom/custom_object.c (custom_distance_from): new
8386         implementation of distance algorithm that actually takes the
8387         display list into account when calculating the distance.  Much nicer
8388         than a simple bounding box.
8390 2000-04-13  Lars Clausen  <lrclause@cs.uiuc.edu>>
8392         * lib/geometry.c (line_crosses_ray): Fixed division by zero bug
8394 2000-04-12  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8396         * objects/standard/polygon.c: Start of polygons own changes (for
8397         connectionpoints).  Need to do seperate changes in polyshape, too,
8398         rather than reuse the bezier changes.
8400 2000-04-13  James Henstridge  <james@daa.com.au>
8402         * lib/dia_image.c (dia_image_draw): use the new enumeration values
8403         from after the gdk-pixbuf cleanup.
8405         * lib/geometry.c (bez_point_distance_and_ray_crosses): fix up limit
8406         on for loop.  Last set of coefficients were not beeing calculated,
8407         which caused a bit of breakage.
8409         * lib/bezier_conn.c (bezierconn_closest_segment): use the new
8410         functions in geometry.c for calculating the closest segment.
8411         (bezierconn_distance_from): use distance_bez_line_point to calculate
8412         the distance.
8414         * lib/geometry.c (distance_bez_line_point): new function to calculate
8415         the distance from an open bezier line to a point.
8416         (distance_bez_shape_point): new function to calculate the distance
8417         from a closed bezier shape.
8418         (distance_ellipse_point): new function to calculate the distance from
8419         a filled ellipse to a point.
8421         * lib/geometry.h (BezPoint): moved this structure here from render.h
8423 2000-04-12  James Henstridge  <james@daa.com.au>
8425         * lib/geometry.c (distance_bez_seg_point): new function to calculate
8426         the distance from a bezier segment.
8428         * lib/polyshape.c (polyshape_distance_from): use distance_polygon_point
8429         to calculate the distance from the object.
8431         * lib/geometry.c (distance_polygon_point): function for calculating
8432         the distance from a polygon to a point.
8434 2000-04-12  Cyrille Chepelov  <chepelov@calixo.net>
8436         * app/interface.c:
8437         * lib/sheet.[ch]: added a <br/> tag in sheet files, so that line 
8438         breaks can be inserted in the tool box. 
8440         * doc/sheet.dtd: updated the DTD
8441         * sheets/GRAFCET.sheet: tried <br/> on that sheet (more to come).
8442         
8443 2000-04-12  James Henstridge  <james@daa.com.au>
8445         * app/plugin-manager.c (get_plugin_manager): use the GTK_DIALOG
8446         macro if the dialog is a GtkDialog :(
8448 2000-04-11  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8450         * objects/standard/polygon.c: Connectionpoints now properly
8451         managed in a GList.  As far as I can tell, this will not dieturb
8452         the order (but I have the nagging doubt...)
8454         * lib/polyshape.c: No longer knows about connectionpoints.
8456 2000-04-11  James Henstridge  <james@daa.com.au>
8458         * app/Makefile.am: fix makefile for bonobo build.
8460         * configure.in: fix checks for bonobo.
8462         * app/menus.c: added entries for the plugin manager.
8464         * app/Makefile.am (dia_core_files): added plugin manager to files
8465         list.
8467         * app/plugin-manager.[ch]: the plugin manager dialog.
8469         * app/display.c (display_update_menu_state): set the antialiased
8470         menu entry to the correct value.
8472 2000-04-11  Cyrille Chepelov  <chepelov@calixo.net>
8474         * objects/custom/custom_object.c: not all renderers like ellipses with
8475         negative dimensions. This could cause ellipses to disappear when using
8476         the flip_h and flip_v functions.
8478         * samples/grafcet.dia: fixed speling and correctness.
8479         
8480 2000-04-11  James Henstridge  <james@daa.com.au>
8482         * lib/plug-ins.[ch]: added more accessors for use by a plugins dialog.
8483         exposed the dia_plugin_load and dia_plugin_unload functions.
8485         * lib/plug-ins.c (plugin_load): change plugin_load to work on an
8486         already created PluginInfo structure.
8488         * app/app_procs.c (app_exit): call dia_pluginrc_write() to write
8489         the pluginrc file.
8491         * lib/sheet.c: fix up call to dia_config_filename.
8493         * lib/plug-ins.[ch]: started writing code for handling a pluginrc
8494         file.  This would save information such as which plugins not to
8495         load during startup.
8497 2000-04-09  James Henstridge  <james@daa.com.au>
8499         * lib/sheet.c: use dia_config_filename to resolve file in ~/.dia.
8501 2000-04-10  Alexander Larsson  <alla@lysator.liu.se>
8503         * lib/plug-ins.c (dia_register_plugins):
8504         Don't free the value returned from g_getenv.
8506 2000-04-09  Anders Carlsson  <andersca@gnu.org>
8508         * app/preferences.h: Add reverse_rubberbanding_intersects preference variable.
8510         * app/preferences.c (prefs_data): Add reverse_rubberbanding_intersects preference data.
8512         * app/modify_tool.c (modify_button_release): If rubberbanding is done from 
8513         right to left, select objects that intersect the rubberbanding rectangle
8514         instead of selecting objects that are in the rectangle.
8516         * lib/diagramdata.c (layer_find_objects_intersecting_rectangle): Add function.
8518         * lib/diagramdata.h: Likewise.
8521 2000-04-09  James Henstridge  <james@daa.com.au>
8523         * lib/plug-ins.[ch]: add copyright messages to files.
8525         * plug-ins/cgm/cgm.c (dia_plugin_init): convert plugin over to new
8526         plugin interface.
8528         * objects/sybase/sybase.c (dia_plugin_init): 
8529         * objects/network/network.c (dia_plugin_init): 
8530         * objects/flowchart/flowchart.c (dia_plugin_init): 
8531         * objects/custom/custom.c (dia_plugin_init): 
8532         * objects/chronogram/chronogram.c (dia_plugin_init): 
8533         * objects/UML/uml.c (dia_plugin_init): 
8534         * objects/SADT/sadt.c (dia_plugin_init): 
8535         * objects/GRAFCET/grafcet.c (dia_plugin_init): 
8536         * objects/FS/fs.c (dia_plugin_init): 
8537         * objects/ER/er.c (dia_plugin_init): updated plugin load code for
8538         object libraries.
8540         * objects/standard/standard.c (dia_plugin_init): change over to new
8541         plugin interface.
8543         * lib/plug-ins.h (DIA_PLUGIN_CHECK_INIT): added a macro to define
8544         the version checker for plugins.
8546         * app/app_procs.c: remove plugin loading code from here, and use
8547         code from plug-ins.[ch].  Also move registration of internal
8548         objects/filters to a `builtin' plugin.
8550         * lib/Makefile.am (libdia_a_SOURCES): added plug-ins.[ch] to library.
8552         * configure.in: use AC_PROG_LIBTOOL rather than AM_PROG_LIBTOOL.
8554         * app/Makefile.am (EXTRA_DIST): you can't include a conditionally
8555         defined variable in EXTRA_DIST.
8557         * app/preferences.h: removed dia_config_filename from header.
8559         * app/preferences.c: removed dia_config_filename function.
8561         * lib/dia_dirs.c (dia_config_filename): moved function over to this
8562         file.  Also changed implementation slightly so that it should work
8563         on the win32 port correctly (and use NT home directories).
8565         * lib/dia_dirs.h (dia_config_filename): move dia_config_filename where
8566         it should have been.
8568         * lib/plug-ins.[ch]: new plugin loading code.
8570 2000-04-08  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8572         * objects/standard/polygon.c: Fixed startup crash bug (do'h!).
8574         * lib/polyshape.c: Fix closest segment finding, exposes deeper
8575         bugs in adding corners to 'wraparound' segment.
8577         * objects/standard/polygon.c: Added connection points (fixed so
8578         far), set menu sensitivity.
8580         * lib/polyshape.c: Changed to box-style handles, fixed for start
8581         and ends not being special, added initial connections,
8583         * lib/dummy_dep.h: Added polyshape (gotcha!)
8585         * objects/standard/pixmaps/ellipse.xpm: 
8586         * objects/standard/pixmaps/box.xpm: 
8587         Filled element pixmaps with white.
8589         * lib/polyshape.c: 
8590         * objects/standard/polygon.c: 
8591         * lib/polyshape.h: 
8592         * objects/standard/standard.c: 
8593         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
8594         * lib/Makefile.am (libdia_a_SOURCES): 
8595         * app/menus.c: 
8596         * app/interface.c (tool_data): 
8597         Added Standard/Polygon object and PolyShape lib object.  Still
8598         needs inside grab and connection points.
8600         * app/commands.c (help_about_callback): Now uses gdk-pixbuf if
8601         available. 
8603         * configure.in: Made imlib a fallback if gdk-pixbuf is absent or
8604         not wanted.
8606         * app/app_procs.c (app_init): Moved gtk_init outside #ifdef, moved
8607         if (argv) outside ifdefs.
8609 2000-04-04  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8611         * objects/standard/image.c (image_set_props): 
8612         Aspect ratio is back in town.
8614         * app/Makefile.am (dia_LDADD): 
8615         * acconfig.h: 
8616         * configure.in: 
8617         Check for gdk_pixbuf (by default disabled, for now)
8619         * app/render_eps.c (draw_image): 
8620         * app/render_libart.c (draw_image): 
8621         * app/render_gnomeprint.c (draw_image): 
8622         Support for alpha mask in rendering.  Color postscript, too.
8624         * lib/dia_image.c: 
8625         * lib/dia_image.h: 
8626         Support for gdk_pixbuf and proper masking for exports.
8628 2000-04-01  Kjartan Maraas  <kmaraas@online.no>
8630         * sheets/*.sheets: Updated Norwegian translations.
8631         
8632 2000-03-30  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8634         * lib/text.c (text_insert_char): 
8635         * lib/render_store.c (add_data): 
8636         Made realloc double the alloced space rather than add
8637         a fixed amount, to reduce memory stress.
8639         * app/select.c: Added new select method 'Transitive'
8640         that select every reachable (by connections) object.
8642 2000-03-27  Kjartan Maraas  <kmaraas@online.no>
8644         * dia.desktop: Added Norwegian translation.
8645         
8646 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
8648         * app/render_eps.c:
8649         * app/render_svg.c:
8650         Don't dereference NULL pointer if the renderer
8651         couldn't open the file. Fix by Lars Clausen.
8652         Bug reported by Martin Chisholm <b1mt@unb.ca>
8653         
8654 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
8656         * dia.desktop:
8657         * po/pt.po:
8658         Updated pt translation from Pedro Morais <pmmm@rnl.ist.utl.pt>
8660 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
8662         * app/dia.gnorba (location_info):
8663         Changed to correct executable name.
8665 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
8667         * app/app_procs.c:
8668         Don't do any argument parsing or initialization
8669         if argv==NULL.
8671         * app/dia_embedd.c:
8672         Call init_server_factroy before app_init.
8673         Call app_init with argv==NULL
8674         Now we don't get any critical error on startup.
8676         * configure.in:
8677         Add Electric and Pneumatic to makefile list.
8678         
8679 2000-03-24  Cyrille Chepelov <chepelov@calixo.net>
8681         * shapes/Electric/*:
8682         * sheets/Electric.sheet:
8683         Add some Electric circuit shapes.
8685         * shapes/Pneumatic/*:
8686         * sheets/Pneumatic.sheet:
8687         Add some Pneumatic & Hydraulic circuit shapes
8688         (both sheets are still incomplete, though feature enough 
8689         things for basic circuits).
8691         * shapes/Contact/l_*.(xpm|shape):
8692         * sheets/Contact.sheet
8693         * shapes/Contact/Makefile.am
8694         made the older electric circuit shapes in Contact obsolete (disabled
8695         them in the sheet, made that sheet Ladder only). Fixed the makefile
8696         for forgotten items.
8697         
8698 2000-03-24  Alexander Larsson  <alla@lysator.liu.se>
8700         * app/Makefile.am:
8701         Add support for Dia bonobo component.
8702         Currently a bit raw, so it's commented out.
8703         
8704         * app/dia_embedd.c:
8705         * app/dia.gnorba:
8706         New files for embedding dia.
8707         The menu disabling hack is a bit gross. Esp. for GNOME.
8709         * app/app_procs.h:
8710         Add new function app_is_embedded();
8712         * app/diagram.c:
8713         Don't destroy diagram when last display is destroyed if embedded.
8714         
8715         * app/display.c:
8716         Change initialization of display so it works with embedding.
8718         * app/display.h:
8719         Clarify comment about display destruction.
8721         * app/interface.[ch]:
8722         Added top_level_window argument to create_display_shell.
8723         Don't open a top-level window if embedding.
8724         Don't quit app if trying to close toolbox window when embedding.
8725         Add toolbox_show() and toolbox_hide().
8727         * app/main.c:
8728         Added app_is_embedded() function (just returns false).
8729         Added toolbox_show() call in main().
8731         * app/menus.c:
8732         Added code for getting toolbox menus. This is used to
8733         hide some menu items when running embedded.
8734         
8735         * app/app_procs.c:
8736         Include sheet.h to remove warning.
8738         * objects/UML/association.c:
8739         Clarify association direction text.
8740         
8741 2000-03-16  Fredrik Hallenberg  <hallon@lysator.liu.se>
8743         * dia.1
8744         Fixed man page so whatis parsing works.
8746 2000-03-12  Alexander Larsson  <alla@lysator.liu.se>
8748         * app/render_libart.c (new_libart_renderer):
8749         Fix from segg <segg@infonet.ca> to compile without libart.
8750         I forgot to change the stub for new_libart_renderer when doing
8751         the interactive renderer stuff for libart.
8753 2000-03-11  Alastair McKinstry  <mckinstry@computer.org>
8755         * dia.desktop: Added Irish translation.
8756         
8757         * configure.in (ALL_LINGUAS): Added Irish (ga) translation.
8759 2000-03-07  Asbjorn Pettersen  <asbjornP@dualog.no>
8761         * app/load_save.c (fchmod): OS/2 defines only.
8763 2000-03-07  James Henstridge  <james@daa.com.au>
8765         * lib/properties.c (prop_get_widget): set the position in the option
8766         menu correctly.
8768 2000-03-06  Alexander Larsson  <alla@lysator.liu.se>
8770         * app/display.c:
8771         * app/export_png.c:
8772         * app/render_libart.[ch]:
8773         Don't export png:s with an interactive libart renderer.
8775 2000-03-03  Asbjorn Pettersen  <asbjornP@dualog.no>
8777         * lib/arrows.c (finite): define finite(d) isfinite(d)  for OS/2
8779 2000-03-02  James Henstridge  <james@daa.com.au>
8781         * dia.spec (%build): unset LINGUAS before running configure.  This
8782         ensures that all translations get included in the RPM.
8784         * lib/properties.c (object_create_props_dialog): put in a check for
8785         a NULL return from the describe_props() object method.
8786         (prop_desc_lists_union): make sure that the returned array is not
8787         NULL.
8788         (prop_desc_lists_intersection): same here.
8790 2000-02-29  Alexander Larsson  <alla@lysator.liu.se>
8792         * objects/ER/Makefile.am:
8793         * objects/FS/Makefile.am:
8794         * objects/UML/Makefile.am:
8795         Don't link object libs with gtk.
8797 2000-02-29  James Henstridge  <james@daa.com.au>
8799         * app/preferences.c (prefs_save): check to see if the file could
8800         be opened before writing the prefs.
8802         * app/disp_callbacks.c (popup_object_menu): pass the button event
8803         to gtk_menu_popup.  This allows you to click and release to open
8804         the object menu.
8805         (ddisplay_canvas_events): same here.
8806         (create_object_menu): set the object type menu item in the object
8807         menu to be insensitive.
8809         * app/render_svg.c (draw_string): call xmlEncodeEntitiesReentrant,
8810         as we are now requiring a new version of libxml.
8812         * dia.spec: updated version number.  Added requirement for
8813         libxml >= 1.8.5
8815         * configure.in: incremented version number to 0.84.
8816         Added check for libxml >= 1.8.5.  This will prevent some of the
8817         problems people have had with broken libxml versions.
8819         * NEWS: added news items.
8821         * app/interface.c (create_color_area): removed call to realize parent
8822         widget.  Segg <segg@infonet.ca> reported that it caused a warning,
8823         but I haven't seen it on my copy of dia.
8825 2000-02-28  James Henstridge  <james@daa.com.au>
8827         * app/export_png.c: added copyright notice, and made the band height
8828         a constant.
8830 2000-02-27  Alexander Larsson  <alla@lysator.liu.se>
8832         * lib/font.c (suck_font):
8833         Fixed off-by one bug in font pixmap height.
8834         Fixes the problem with garbage at the bottom of some text in aa mode
8835         and in png exported files.
8837 2000-02-27  James Henstridge  <james@daa.com.au>
8839         * app/app_procs.c: add the png export filter if it was compiled in.
8841         * app/export_png.c (export_png): new PNG export filter.  This requires
8842         the libart renderer to work as it needs a renderer that renders to a
8843         pixel buffer.
8845         * configure.in: add check for libpng.
8847         * lib/message.c (message_internal): use a GNOME dialog here as well.
8849         * app/display.c (ddisplay_close): use a GNOME dialog here.
8851         * app/render_eps.c (create_eps_renderer): use diagram scaling factor
8852         when exporting to EPS.  This is because some people said the EPS
8853         output was too large
8855 2000-02-26  James Henstridge  <james@daa.com.au>
8857         * app/defaults.c (create_dialog): use a GNOME dialog for the defaults
8858         window.
8860         * app/app_procs.c (app_exit): use a GNOME dialog here.
8862         * app/preferences.c (prefs_create_dialog): if GNOME support is
8863         enabled, show a GNOME dialog.
8865         * app/grid.c (grid_draw): use preferences when drawing page break
8866         lines.
8868         * app/preferences.c: add page break preferences to dialog.
8870         * app/preferences.h: added page break preferences.
8872 2000-02-25  James Henstridge  <james@daa.com.au>
8874         * sheets/UML.sheet: added new objects.
8876         * objects/UML/uml.c: link in the two new objects.
8878         * objects/UML/node.c: 
8879         * objects/UML/branch.c: new UML objects from Stfan Seefeld
8880         <seefelds@magellan.umontreal.ca>.
8882 2000-02-24  James Henstridge  <james@daa.com.au>
8884         * objects/custom/custom_object.c: converted to use the properties
8885         interface.  In the future, it would be nice to add support for
8886         defining custom properties for custom objects, but that can wait.
8888 2000-02-22  James Henstridge  <james@daa.com.au>
8890         * sheets/Circuit.sheet: added new circuit shapes to sheet.
8892         * plug-ins/cgm/cgm.c: cgm plugin updates from Henk Jan Priester
8893         <hj@justcroft.com>.  Fixes number encoding, colour encoding, fonts
8894         and adds a few new features.
8896 2000-02-21  Daniel Egger  <egger@suse.de>
8898         * sheets/*.sheets: Added German translations and made some
8899         corrections to the others.
8900         
8901 2000-02-21  James Henstridge  <james@daa.com.au>
8903         * shapes/Circuit/Makefile.am (SHAPES): added new shapes to list.
8905         * shapes/Circuit/...: added new shapes from Erik Janssens.
8907 2000-02-20  James Henstridge  <james@daa.com.au>
8909         * app/interface.c (create_color_area): realize the parent window
8910         first.
8912         * objects/standard/image.c: properties patch for standard image
8913         object, from Lars Clausen.
8915         * lib/properties.c: support for PROP_TYPE_FILE from Lars Clausen.
8917         * lib/properties.h (PropType): added file property type.
8919         * shapes/Circuit/speaker_de.xpm: changed size of pixmap to match
8920         other shapes.
8922         * app/interface.c: use wrap box for toolbox.
8924         * app/Makefile.am: added new files.
8926         * app/gtk*wrapbox.[ch]: added wrap box widget.
8928 2000-02-19  James Henstridge  <james@daa.com.au>
8930         * sheets/network.sheet: added extra shapes to networks sheet.
8932         * configure.in (AC_OUTPUT): added shapes/network/Makefile
8934         * shapes/network/*: added shapes that were posted to the list a while
8935         back.
8936         
8937         * shapes/Makefile.am (SUBDIRS): added network subdirectory
8939         * app/menus.c (toolbox_menu_items): don't right justify help menu for
8940         gtk+ version of menus.
8942         * app/properties.c (create_dialog): use a GnomeDialog if we happen
8943         to be using gnome.
8945 2000-02-18  James Henstridge  <james@daa.com.au>
8947         * objects/flowchart/box.c: set extra data for corner radius and text
8948         padding properties.
8950         * objects/standard/box.c: set extra data for corner radius property.
8952         * lib/properties.h: set extra data in some standard properties.
8954         * lib/properties.c (prop_get_widget): look at the extra data for
8955         int, real and enum property types.  They now use GtkSpinButton and
8956         GtkOptionMenu respectively.
8958         * lib/properties.h: extra data members for creating property setting
8959         widgets.
8961 2000-02-17  James Henstridge  <james@daa.com.au>
8963         * objects/flowchart/box.c: reverted load/save functions back to
8964         previous implementations.  Made box use standard property names.
8966         * plug-ins/cgm/cgm.c (set_linestyle): was missing a */
8968         * app/grid.c: add more digits to the grid edit dialog.  This patch
8969         was also from Lars Clausen.
8971         * objects/standard/zigzagline.c: 
8972         * objects/standard/textobj.c:
8973         * objects/standard/polyline.c:
8974         * objects/standard/line.c:
8975         * objects/standard/ellipse.c:
8976         * objects/standard/box.c: 
8977         * objects/standard/bezier.c: 
8978         * objects/standard/arc.c: patches to add properties code to standard
8979         objects.  Based on patches from Lars Clausen.  I have also removed
8980         some dead code from the files.
8982         * lib/properties.h (PROP_STD_*): define a number of standard
8983         properties.  Where appropriate, objects should include these
8984         properties in their PropDescription list.  This way, the intersection
8985         of properties of two different shapes will be greater.
8987 2000-02-14  James Henstridge  <james@daa.com.au>
8989         * objects/flowchart/box.c (box_load, box_save): use property save
8990         routines.  Make sure that any props not handled by object_load_props
8991         are loaded before calling object_load_props, or we get errors because
8992         update_data is called.
8994         * lib/properties.c (object_get_props_from_offsets): fixed an indexing
8995         error that could cause properties to be loaded incorrectly.
8996         (object_set_props_from_offsets): similar here.
8998         * lib/properties.[ch] (prop_{load,save}): functions for loading
8999         or saving a property in Dia's XML file format.
9000         (object_{load,save}_props): load or save some properties of an
9001         object.  These functions should help simplify the load/save methods
9002         of objects that implement the properties interface.
9004 2000-02-13  James Henstridge  <james@daa.com.au>
9006         * objects/flowchart/box.c: use offset code to simplify property
9007         get/set routines.
9009         * lib/element.h (ELEMENT_COMMON_PROPERTIES): standard element
9010         properties.
9011         (ELEMENT_COMMON_PROPERTIES_OFFSETS): offsets.
9013         * lib/object.h (OBJECT_COMMON_PROPERTIES): list of standard object
9014         properties.
9015         (OBJECT_COMMON_PROPERTIES_OFFSETS): the offsets of the properties.
9017         * lib/properties.[ch] (object_{get,set}_props_from_offsets): new
9018         functions 
9020 2000-02-12  Alexander Larsson  <alla@lysator.liu.se>
9022         * app/Makefile.am:
9023         Add the custom object to DIA_LIB_PATH in run_dia.sh
9025 2000-02-10  Cyrille Chepelov  <chepelov@calixo.net>
9027         * sheets/Circuit.sheet:
9028         * shapes/l_sout* (NEW):
9029         * shapes/l_outj.* (NEW): added new outputs : jump, and the power-saved
9030         variants of simple, inverted, set and reset outputs.
9031         Still to do: all Schneider/Telemecanique TSX *7 function blocks ; 
9032         probably a split of Contact and Ladder sheets. And then a major 
9033         revamping of the Contact sheet.
9035 2000-02-10  James Henstridge  <james@daa.com.au>
9037         * app/Makefile.am (dia_LDADD): don't link with libcustom_objects.
9039         * app/app_procs.c (register_all_objects): don't explicitely
9040         register the custom objects library -- let it be loaded by the
9041         normal plugin loading methods.
9043         * lib/Makefile.am (libdia_a_SOURCES): don't include custom.h here.
9045         * objects/custom/Makefile.am: build libcustom_objects as a shared
9046         library again.
9048         * objects/custom/shape_info.[ch]: don't read the description field
9049         of custom shapes.  It makes more sense to have these in the sheet
9050         file to localise the parts of dia that translators have to deal
9051         with.
9053         * objects/custom/custom_object.c (custom_object_new): do not
9054         create the sheet object for the new custom shape -- this is
9055         handled by the custom sheet code.
9057         * objects/custom/custom.c: change over to being a normal plug-in
9058         rather than being linked with the main dia executable.
9060 2000-02-09  James Henstridge  <james@daa.com.au>
9062         * sheets/Circuit.sheet: 
9063         * sheets/Flowchart.sheet: 
9064         * sheets/Contact.sheet: fixed up sheets.
9066         * objects/custom/custom_object.c (custom_object_new): set the
9067         extra ObjectType fields.
9069         * lib/sheet.c: use extra ObjectType fields when creating sheet
9070         objects.  Give a warning if <shape> tags are found in a sheet
9071         file.  Now the custom sheet code does not know about custom
9072         shapes -- they look like any other object type.
9074         * lib/object.h (ObjectType): added extra members
9076 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
9078         * app/linewidth_area.c:
9079         Added code to set arbitrary line width.
9080         Patch by Lars Clausen <lrclause@cs.uiuc.edu>
9082 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
9084         * app/linewidth_area.c: 
9085         * lib/font.[ch]:
9086         Add support for font-sucking.
9087         Implementation borrowed from gnome-canvas.
9088         
9089         * app/render_libart.[ch]:
9090         Implement text rendering.
9092 2000-02-07  Alexander Larsson  <alla@lysator.liu.se>
9094         * app/properties.c (create_dialog):
9095         ref and sink no_properties_dialog.
9097 2000-02-07  James Henstridge  <james@daa.com.au>
9099         * app/group.c (group_describe_props): new function.  Return the
9100         intersection of the properties of the contained objects that
9101         implement the describe_props interface.
9102         (group_get_props): implement by iterating through contained objects
9103         and calling their get_props method until all properties have been
9104         set.  Maybe this should go through all objects all the time??
9105         (group_set_props): implement by calling set_props method on all
9106         contained objects.
9107         (group_ops): use standard props dialog creation routines.
9109         * lib/properties.c (prop_desc_lists_intersection): fix implementation
9110         of intersection -- I was using i++ instead of i-- in a for loop :(
9112         * objects/custom/custom.c (custom_register_objects): fix usage
9113         of dia_get_data_directory again.
9115         * lib/sheet.c: fix up use of dia_get_data_directory, so that we
9116         actually read the sheets.
9118 2000-02-06  Alexander Larsson  <alla@lysator.liu.se>
9120         Win32 port by Hans Breuer <Hans@Breuer.org>
9122         * app/Makefile.am:
9123         Remove DATADIR and LIBDIR defines.
9125         * lib/Makefile.am:
9126         Add dia_dirs.c and dia_dirs.h
9127         Added DATADIR and LIBDIR defines.
9129         * lib/dia_dirs.[ch]:
9130         New files for handling special directories.
9132         * app/app_procs.c:
9133         * app/commands.c:
9134         * lib/sheet.c:
9135         * objects/custom/custom.c:
9136         Fix warnings.  Use directory functions.
9138         * app/diagram.h:
9139         Add prototype for diagram_redraw_all.
9141         * app/diaunitspinner.c:
9142         * app/filedlg.c:
9143         * app/interface.c:
9144         * app/preferences.c:
9145         Fix warning.
9147         * app/load_save.c:
9148         Win32 doesn't have mkstemp and fchmod.
9150         * app/paginate_psprint.c:
9151         Win32 calls popen _popen and pclose _pclose.
9152         
9153         * app/arrow.c:
9154         Win32 calls finite _finite.
9156         * lib/color.h:
9157         Win32 needs to dllexport the color vars.
9159         * objects/GRAFCET/step.c:
9160         * objects/chronogram/chronoref.c:
9161         snprintf -> g_snprintf
9163 2000-02-05  James Henstridge  <james@daa.com.au>
9165         * lib/properties.c: more fixes so that it doesn't crash when using
9166         properties.  The undo/redo stuff also works!!
9168         * objects/flowchart/box.c (box_{describe, get, set}_props): test
9169         object where I have implemented the new properties interface
9170         complete with automatic properties dialog generation.
9172         * lib/properties.c (object_apply_props): fixed stupid error when
9173         creating the old_props array.  Also, it no longer frees the props
9174         array -- you will have to do that yourself.
9176 2000-02-04  James Henstridge  <james@daa.com.au>
9178         * app/properties.c (properties_apply): pass object_part to
9179         apply_properties.
9181         * lib/object.h (ApplyPropertiesFunc): added widget argument.
9183         * lib/lazyprops.h (PROPDLG_CREATE): ref and sink properties dialogs
9184         created this way as well.
9186         * objects/*/*.c: ref and sink the properties dialog window for each
9187         widget.  It can't rely on ref count being incremented by
9188         properties_show anymore.
9190         * app/properties.c (properties_show): don't ref the widget before
9191         removing it, or its ref count will increase each time you open the
9192         properties dialog.  Don't unparent the widget, as container_remove
9193         does that for us.
9195         * lib/object.h: fixed up prototypes for new object methods.
9197         * lib/properties.[ch]: added functions for automatically creating
9198         a properties dialog from the output of describe_props, get_props and
9199         set_props.
9200         (object_apply_props): apply properties and return an ObjectChange
9201         structure that can be used for undo.
9203 2000-02-03  Cyrille Chepelov  <chepelov@calixo.net>
9205         * objects/GRAFCET/transition.c: minor leak plugged.
9207         * sheets/GRAFCET.sheet:
9208         * objects/GRAFCET/pixmaps/condition.xpm: (NEW)
9209         * objects/GRAFCET/condition.c: (NEW) added a new object type, action 
9210         conditions.
9211         * objects/GRAFCET/Makefile.am: fixed incorrect dependencies, added
9212         new ones (for condition.c).
9213         * objects/GRAFCET/action.c: added connection points for the conditions.
9214         * samples/grafcet.dia: updated the sample to improve conformance to
9215         IEC 848 and take advantage of dia's new features.
9216         
9217         * lib/geometry.h: (point_get_normed) fixed a typo.
9219 2000-02-02  James Henstridge  <james@daa.com.au>
9221         * lib/object.h: added object functions describe_props, get_props and
9222         set_props.  Do type definitions so that object.h doesn't need to
9223         include properties.h, since properties.h includes object.h.
9225         * lib/properties.[ch]: more hacking.
9227         * po/de.po: updated po file.
9229 2000-01-30  James Henstridge  <james@daa.com.au>
9231         * configure.in: don't add flags to CFLAGS unconditionally.  Instead,
9232         check to see if the C compiler accepts the flag beforehand.
9234         * lib/properties.[ch]: start of properties code.
9236         * shapes/Contact/Makefile.am (SHAPES): fix up makefile.
9238 2000-01-30  Cyrille Chepelov  <chepelov@calixo.net>
9239         
9240         * sheets/GRAFCET.sheet:
9241         * sheets/GRAFCET/etapemc.xpm: (NEW)
9242         * sheets/GRAFCET/etapesp.xpm: (NEW)
9243         * objects/GRAFCET/step.c: Added the macro and
9244         sub-program call step types.
9246         * objects/GRAFCET/receptivity.[ch]: renamed to 
9247         objects/GRAFCET/boolequation.[ch]. 
9248         * objects/GRAFCET/transition.c: changed (Receptivity *) to 
9249         (BoolEquation *)
9251         * lib/connpoint_line.[ch]: 
9252         * objects/chronogram/chronoline.c:
9253         * objects/chronogram/chronoref.c:
9254         * objects/GRAFCET/vergent.c:
9255         * objects/standard/line.c:
9256         * objects/SADT/box.c: Minor CPL interface changes, factored out the
9257         point count adjustment code into the CPL object.
9258         
9259 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
9261         * app/render_libart.c:
9262         Added support for images and bezier curves.
9263         Only text/fonts missing now.
9265         * app/render_gdk.c:
9266         Removed old erronous comment.
9268 2000-01-29  Cyrille Chepelov <chepelov@calixo.net>
9270         * objects/chronogram/chronoline_event.c: removed references to
9271         lround(). Please don't insist, I'm already red of shame.
9272         
9273 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
9275         * app/render_libart.[ch]:
9276         * app/Makefile.am:
9277         Non-finished libart renderer.
9279         * acconfig.h:
9280         Added HAVE_LIBART flag
9282         * configure.in:
9283         Added libart probe
9285         * app/app_procs.c:
9286         Call gdk_rbg_init().
9288         * app/connectionpoint_ops.c:
9289         * app/disp_callbacks.c:
9290         * app/grid.c:
9291         * app/handle_ops.c:
9292         * app/magnify.c:
9293         * app/modify_tool.c:
9294         Change ddisp->renderer type from RendererGdk * to Renderer *
9295         Draw zoom and select rects in ddisp->canvas->window instead
9296         of ddisp->renderer->renderer->pixmap.
9298         * app/display.[ch]:
9299         Add aa_renderer to DDisplay, and  support for it.
9300         New function ddisplay_set_renderer() for changing renderer.
9301         Add ddisplay_transform_coords_double() function, used by aa renderer.
9302         Change ddisp->renderer type from RendererGdk * to Renderer *
9304         * app/menus.c:
9305         Add antialias to menu.
9306         
9307         * app/commands.[ch]:
9308         add view_aa_callback function
9309         Change ddisp->renderer type from RendererGdk * to Renderer *
9311         * lib/geometry.[ch]:
9312         Added IntRectangle and int_rectangle_union.
9314 2000-01-28  James Henstridge  <james@daa.com.au>
9316         * app/commands.h: removed prototypes.
9318         * app/commands.c: removed the functions that have been moved to
9319         filedlg.c.
9321         * app/filedlg.h: added new prototypes.
9323         * app/filedlg.c (file_open_callback): move open dialog to this
9324         file.  This implementation should remember the current directory
9325         between file loads.
9326         (file_save_as_callback): moved this dialog as well.
9327         (file_save_callback): moved this function here.
9329         * app/paginate_psprint.c (paginate_psprint): if not in fit to mode,
9330         align page boundaries to the origin.
9332         * app/diagram.c (diagram_update_extents): redraw the diagram if the
9333         scaling factor changes while updating the extents.  This is so the
9334         page breaks get redrawn correctly.
9336         * app/pagesetup.c (pagesetup_apply): added diagram_flush call when
9337         applying changes.
9339         * app/grid.c (grid_draw): draw page breaks as well as grid lines.
9340         For normal mode, use (0,0) as the origin.  For `fit to' mode, use
9341         the corner of the bounding box.
9343         * app/pagesetup.c (create_page_setup_dlg): load new paper attributes
9344         into page setup dialog.
9345         (pagesetup_apply): apply new `fit to' attributes to the diagram.
9347         * app/load_save.c (diagram_load): load new paper `fit to' attributes.
9348         (diagram_data_save): save `fit to' data.
9350         * lib/diagramdata.c (new_diagram_data): initialise `fit to' members.
9351         (data_update_extents): when in `fit to' mode, update scale factor
9352         when we update the extents.
9354         * lib/diagramdata.h (PaperInfo): added `fit to' members to PaperInfo
9355         structure.
9357         * .../.cvsignore: added some cvsignore files to quieten cvs.
9358         
9359         * app/pagesetup.c (pagesetup_changed): added code to change the
9360         scaling/fit to values as you change the options in the page setup
9361         dialog.  I haven't added code so that the fit to options are saved
9362         though.
9364         * app/diapagelayout.[ch]: changed the scaling portion of the widget
9365         to make it easier to set a `fit to' style scaling factor.
9367 2000-01-27 Cyrille Chepelov <chepelov@calixo.net>
9368         * lib/neworth_conn.[ch]: (NEW) Temporary (hopefully) fork of orth_conn,
9369         but connpoint_line-based, so that there's a connection point at the 
9370         middle of each segment. Currently only the SADT arrow uses this.
9372         * objects/SADT/* (NEW): SADT (both idf0 and idf1) support.
9373         
9374 2000-01-26 Cyrille Chepelov <chepelov@calixo.net>
9375         * lib/lazyprops.[ch]:(NEW) Added a bunch of macros for loading, 
9376         saving and editing of properties (and default properties). 
9377         See the new objects (GRAFCET, SADT, chonograms) for examples.
9378         For already too hairy stuff, see objects/chronogram/chronoline.c.
9380         * lib/connpoint_line.[ch] (NEW): This subobject manages a line of 
9381         evenly spaced connection points, which the user can add or remove at
9382         will. An object can own several connection point lines. See the SADT
9383         Box, or the GRAFCET vergents for examples.
9385         * lib/dummy_dep.h: added dependencies to new files. Told gcc to keep 
9386         quiet about unused stuff.
9388         * objects/GRAFCET (NEW):
9389         * samples/grafcet.dia (NEW):
9390         Added support for GRAFCET charts. 
9392         * objects/chronogram (NEW):
9393         * samples/chronograms.dia (NEW):
9394         Added support for chronograms (feature requested by Ronald L. Chichest;
9395         I found I'd use it often, too).
9397         * objects/standard/line.c: Replace the middle connectionpoint by 
9398         a whole connection point line, which defaults to one point (hint, 
9399         hint). New Line object menu to take advantage of this. 
9400         "Bothwards" compatibility is preserved (although you may loose 
9401         connections if you load a newer file in a older dia).
9403         * app/lineprops_area.c:
9404         * lib/arrows.[ch]:
9405         * lib/widgets.c: Added hollow and filled ellipse arrow head type. 
9406         (feature requested by Benjamin Kahn).
9407         Merged in Steffen Macke's slashed arrow head type.
9409         * app/Makefile.am (app/run_dia.sh actually):
9410         Added $DEBUGGER in front of dia's invocation, so that
9411         you can call "DEBUGGER=ddd app/run_dia.sh" (maybe naive, but useful).
9412         Added $(EFENCE) to app/dia's LDFLAGS, so that you can do 
9413         "EFENCE=-lefence" to link with Electric Fence.
9415         * configure.in: Made gcc do more aggressive optimisations on i386, and
9416         enabled warnings.
9417         
9418 2000-01-24  James Henstridge  <james@daa.com.au>
9420         * lib/geometry.[ch]: added inline versions of functions.  Used
9421         glib's G_INLINE_FUNC stuff, so it should still work on systems
9422         without inline funcs.
9424         * plug-ins/cgm/cgm.c (draw_ellipse, fill_ellipse): fixed up so that
9425         it outputs the correct element id for the ellipse objects.
9427 2000-01-24 Cyrille Chepelov <chepelov@calixo.net>
9429         * lib/object.[ch]: added object_add_connectionpoint_at, similar to
9430         object_add_handle_at. Message typo fixed.
9431         
9432         * lib/sheet.c (load_register_sheet):
9433         potential bug fixed (warning hunt).
9435         * objects/custom/custom.c (custom_object_load): disabled an assertion
9436         which made dia abort upon failure to load a shape file. Fixed a
9437         subsequent crash. 
9439         * objects/custom/shape_info.c (load_shape_info): Made the custom 
9440         shape load code ignore XML comments between <?xml ...?> and the 
9441         root object (mostly useful to put the emacs magic comments).
9442         
9443         * app/load_save.c: Made dia do backup copies of files when saving,
9444         and complain in case of failure.
9446 2000-01-24  Cyrille Chepelov  <chepelov@calixo.net>
9448         * AUTHORS: fixed my address (ISP thought it was a great idea to change
9449         the domain name)
9450         
9451         * configure.in:
9452         * shapes/Contact:
9453         * shapes/Contact/*:
9454         * sheets/Contact.sheet:
9455         * sheets/Makefile.am:
9456         Added support for Contact and LADDER charts.
9458         * dia.desktop: Added a French translation.
9459         
9460 2000-01-23  James Henstridge  <james@daa.com.au>
9462         * app/commands.c (help_about_callback): don't die if can't load
9463         logo image.
9465         * app/render_gdk.c (bezier_add_lines): sanity check to try to weed
9466         out NaN's when performing bezier curve subdivision.
9468         * objects/custom/custom_object.c: initialise memory of Custom structs
9469         to zero.
9471         * app/render_svg.c (draw_image): added image support to the XML
9472         output filter.  The image is just referenced, rather than being
9473         included inline, so if you copy the SVG file somewhere else, you
9474         may need to move the images or fix up the links.
9476         * plug-ins/cgm/cgm.c (draw_string): output a text colour element,
9477         so the text is not just displayed in black all the time.
9479 2000-01-15  Fredrik Hallenberg  <hallon@lysator.liu.se>
9481         * configure.in: fixed libpopt test so we wont try to build with
9482         too old libpopt.
9484 1999-12-18  Yuri Syrota  <rasta@renome.rovno.ua>
9486         * configure.in: Added "uk" to ALL_LINGUAS.
9488 1999-12-24  James Henstridge  <james@daa.com.au>
9490         * po/ru.po: updated russian translation from Valek Filippov.
9491         
9492         * app/render_svg.c (new_svg_renderer): make output use 19991203
9493         version of SVG DTD.  Use viewBox to set the extents of the view.
9495         * INSTALL (FONTS): updated locations of gnome-xml and imlib.  List
9496         ftp.gnome.org as the download.
9498         * TODO (TODO): weeded out completed todo items and added a few extra.
9500         * Makefile.am (EXTRA_DIST): added documentation to EXTRA_DIST.
9502         * doc/sheet.dtd: first stab at a DTD for the sheet files.  It would
9503         be good to get rid of the object/shape distinction and separate
9504         the custom shape code out from the main application.
9506         * objects/custom/README, diagram.dtd: moved to new doc directory.
9507         Renamed the custom shapes README to custom-shapes.  Also updated
9508         custom shape docs a bit and removed the section on sheet files, as
9509         that has changed a bit.
9511         * plug-ins/cgm/cgm.c (draw_image): give an error if the row length
9512         of the image data is larger than the maximum cell array.  I should
9513         add code to break scan lines down further in this case, but for now
9514         an error message is better than an infinite loop.
9516         * app/filedlg.c (file_export_ok_callback): show a dialog if we
9517         couldn't determine the export filter to use.
9519         * app/commands.c (help_about_callback): fixed up about box logo
9520         expose bug.  Now just use a GtkPixmap widget rather than a
9521         GtkDrawingArea and calling gdk_imlib_paste_image.
9523         * app/Makefile.am (EXTRA_DIST): added print stuff to extra dist,
9524         because automake does not always get things right.
9526         * configure.in: updated version number to 0.83.
9528         * app/preferences.c (prefs_save): 
9529         * app/render_svg.c (new_svg_renderer): "wt" is not a valid flag string
9530         for fopen.  Text is the default file mode anyway.
9532         * app/commands.c (file_save_as_dialog_ok_callback, file_new_callback): 
9533         * app/grid.c (grid_x_update, grid_y_update, grid_show_dialog): 
9534         * app/load_save.c (write_objects, write_connections): 
9535         * app/filedlg.c (file_export_ok_callback): 
9536         * lib/dia_xml.c (data_add_int, data_add_enum, data_add_real): 
9537         * lib/dia_xml.c (data_add_point, data_add_rectangle): 
9538         * lib/font.c (init_x11_font, font_get_gdkfont): changed calls to
9539         snprintf to calls to g_snprintf.
9541         * plug-ins/cgm/cgm.c (export_cgm): write the original dia file name
9542         as the picture name.
9544 1999-12-23  James Henstridge  <james@daa.com.au>
9546         * plug-ins/cgm/cgm.c (write_int32, write_int16): fixed up output of
9547         negative numbers.  This fixes the upside down text problem I was
9548         having previously.
9549         (draw_image): implemented the image code.  It will try to split the
9550         image data up into bands if it is too big to fit into a single
9551         cgm cell array element.  It will have problems if you try to insert
9552         an image wider than about 10,000 pixels though.
9554         * Makefile.am: use gnomedatadir for the files that need to be
9555         installed in gnome's datadir.  This is mainly to help people doing
9556         packages for weird setups.
9558 1999-12-22  James Henstridge  <james@daa.com.au>
9560         * plug-ins/cgm/cgm.c: added support for text.  Now only images and
9561         beziers are left to do.  The text seems to be the wrong way up
9562         still.  This is probably a problem with character orientation
9563         element, but I have used what the settings given in the standard.
9564         Other than this, the CGMs dia produces are readable (and displayable)
9565         by ralcgm and corel draw.
9566         (draw_string): subtract from the X coord rather than the Y coord for
9567         center and right aligned text.
9569         * plug-ins/cgm/cgm.c: a few fixups for the output.  Use REALSIZE as
9570         the size of a real number, and changed name of write_double to
9571         write_real.  Consider changing to fixed real encoding.  Also, now
9572         all element headers are correct.  Once the real number encoding is
9573         fixed, only text, beziers and images are left to do.
9575 1999-12-21  James Henstridge  <james@daa.com.au>
9577         * Makefile.am (SUBDIRS): recurse into plug-ins.
9579         * configure.in: add plug-ins directory makefiles to list.
9581         * plug-ins/cgm/cgm.c: start of cgm export filter.  Beziers and text
9582         not done yet.  Also, the output files are not quite correct.
9584         * app/render_eps.c (print_reencode_font): don't reencode the Symbol
9585         font.  It doesn't work if you do.
9587 1999-12-20  James Henstridge  <james@daa.com.au>
9589         * app/app_procs.c (app_init): don't use diagram_export_to_eps to
9590         export the files.  Instead, use filter_guess_export_filter to
9591         guess the correct format to save in and use the appropriate filter.
9592         It defaults to postscript for compatibility.
9594         * app/diagram.[ch] (diagram_export_to_eps): removed export to eps
9595         function.
9597         * app/commands.[ch]: removed export to eps functions.
9599         * app/menus.c: removed export to eps menu items.
9601         * app/app_procs.c: register new export filters.
9603         * app/load_save.[ch]: define dia native export filter.
9605         * app/render_eps.[ch]: define eps export filter.
9607         * lib/filter.h: added diafilename argument to the DiaExportFunc
9608         prototype.  This is useful for putting the source of the diagram
9609         into the output file for instance.
9611         * app/app_procs.c (app_init): register the SVG export filter.  Have
9612         to get EPS code converted to this API, and maybe also allow saving in
9613         DIA's native format from the export dialog.  In fact, it is now
9614         possible to load an export filter from a shared library and it will
9615         integrate into the interface correctly.
9617         * app/menus.c: removed references to the SVG renderer.
9619         * app/commands.[ch]: removed svg stuff.
9621         * app/diagram.[ch]: removed diagram_export_to_svg function.
9623         * app/render_svg.[ch]: added a DiaExportFilter structure for this
9624         renderer.
9626         * app/filedlg.[ch]: code for the new export diagram dialog.  Will
9627         probably move the open/save dialogs to this file as well.
9629 1999-12-19  James Henstridge  <james@daa.com.au>
9631         * lib/filter.[ch]: start of interface for generalised handling of
9632         filters.  I have only done code for export filters so far.  I still
9633         need to do the gui for this, and convert the current SVG and EPS
9634         filters to the new API.
9636         * lib/bezier_conn.c (bezierconn_copy): fix up copy operation.  We
9637         weren't setting the last handle correctly.  It was actually assigning
9638         to the wrong position in the handles array, so the last handle was
9639         left as NULL, which caused the segfault.
9641         * objects/standard/image.c (image_copy): modified routine so that
9642         it just adds a reference to the DiaImage structure in the new image
9643         object.  This seems to have cleared up the problems with copying
9644         image objects.
9646         * dia.spec: spec file additions from John Gotts.
9648 1999-12-12  James Henstridge  <james@daa.com.au>
9650         * configure.in (GNOME_LIBS): updated version number to 0.82.  0.82
9651         has not been released yet though.
9653         * Makefile.am (EXTRA_DIST): distribute diagram.dtd.
9655         
9656         The following based on a patch from Lars Clausen:
9657         
9658         * objects/standard/bezier.c (bezierline_move_handle): when performing
9659         the initial drag of the bezierline, move the control points to keep
9660         the line straight.
9662         * lib/bezier_conn.c (bezierconn_add_segment): when adding a segment,
9663         make the new control points a bit closer to the major point.
9665         * app/create_object.c (create_object_motion): use HANDLE_MOVE_CREATE
9666         as the reason for the move.
9667         (create_object_button_release): use HANDLE_MOVE_CREATE_FINAL as the
9668         move reason.
9670         * lib/handle.h: new handle move reasons.
9672 1999-12-09  James Henstridge  <james@daa.com.au>
9674         * dia.spec: include the new files in RPMs.
9676         * Makefile.am: install these new files.
9678         * dia.keys.in: file describing actions and icon for dia diagrams for
9679         use in the gnome file manager.
9680         
9681         * dia.mime: a file defining the application/x-dia-diagram mime type.
9682         
9683         * dia-diagram.png: an icon for dia diagrams.
9685 1999-12-08  James Henstridge  <james@daa.com.au>
9687         * plug-ins/python/pydia-diagram.c: added heaps of new methods.
9689         * plug-ins/python/pydia-display.[ch]: wrapper for display.
9691         * objects/standard/ellipse.c: applied Lars's patch to optionally not
9692         draw the background of the ellipse.
9694         * app/load_save.c (read_connections): do some sanity checking on the
9695         handle and connection point numbers before performing the object
9696         connection.
9698         * lib/bezier_conn.c (bezierconn_load): give the correct number of
9699         handles when loading a BezierConn.
9701 1999-12-07  Kjartan Maraas  <kmaraas@online.no>
9703         * sheets/*.sheet: Finished Norwegian translations.
9704         
9705 1999-12-07  James Henstridge  <james@daa.com.au>
9707         * plug-ins/python/diamodule.c (PyDia_Load): load diagram function.
9708         (PyDia_GetObjectType): find object type function.
9710         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_Save): added a save
9711         method for diagrams.
9713         * plug-ins/python/pydia-object.c: added methods for DiaObject and
9714         DiaObjectType.
9716         * AUTHORS: added Lars and Cyrille to the authors file.
9718         * objects/standard/bezier.c (bezierline_add_segment_callback): place
9719         new point correctly.
9721         * lib/bezier_conn.h (bezierconn_closest_segment): fixed prototype.
9723         * lib/bezier_conn.c: applied Lars's patch for placement of the new
9724         point when adding a segment to a BezierConn.
9726 1999-12-06  James Henstridge  <james@daa.com.au>
9728         * plug-ins/python/test.py: test script for the python plug-in.
9730         * plug-ins/python/python.c: this file contains the plug-in startup
9731         code for the python plugin.  Right now, it just initialises the
9732         dia module and executes a script.
9734         * objects/standard/polyline.c (polyline_draw): fix start arrow size.
9736         * objects/standard/bezier.c (bezierline_draw): draw control lines for
9737         bezier curve if we are using an interactive renderer (ie. only if
9738         displaying to the screen).
9740         * lib/bezier_conn.[ch] (bezierconn_draw_control_lines): function
9741         to draw control lines on to a bezier curve.  Based on implementation
9742         from Lars.
9744         * objects/standard/bezier.c (bezierline_delete_segment_callback):
9745         calculate segment number using closest_segment rather than
9746         closest_handle.  Sometimes the closest handle is part of a different
9747         segment.
9748         (bezierline_draw): use correct size for start arrow.
9750         The next few entries are from Peter Moulder <reiter@netspace.net.au>:
9751         * lib/geometry.c (distance_line_point): added notes to documentation
9752         in comment.
9753         * app/object_ops.c (object_list_align_v): 
9754         (object_list_align_h): fix of by one error when calculating free space
9755         for equal distance alignment.
9756         * app/menus.c (objects_align_h, objects_align_v): include align
9757         adjacent menu items in the gnome version of the menus.
9758         * app/diagram.c (diagram_update_menu_sensitivity): set sensitivity on
9759         align adjacent menu items correctly.
9762         * lib/dummy_dep.h (dummy_dep): added bezierconn to dummy dependency
9763         table.
9765         * objects/standard/bezier.c: converted bezierline to use BezierConn.
9766         Still a few bugs.  It crashes on deleting line segments.
9768         * lib/Makefile.am (libdia_a_SOURCES): added BezierConn to libdia.
9770 1999-12-05  James Henstridge  <james@daa.com.au>
9772         * lib/bezier_conn.[ch]: start of BezierConn object
9774         * app/interface.c: add bezierline to toolbox.
9776         * objects/standard/standard.c: initialise bezierline.
9778         * objects/standard/bezier.c: new object from Lars R. Clausen.  I have
9779         made a few modifications to get it working nicely.  It still needs
9780         a bit of work though.  Maybe create a BezierConn object in lib.
9782 1999-12-02  James Henstridge  <james@daa.com.au>
9784         * plug-ins/python/pydia-*.c: fixed compile errors in these files.
9785         
9786         * plug-ins/python/Makefile.am: tried building everything.  It is
9787         building as a library at the moment.  I will have to convert it
9788         to a libtool library and add some initialisation code.
9789         
9790         * plug-ins/python/diamodule.c: start of the dia module, using the
9791         other object wrappers.  Not complete.
9793 1999-12-01  James Henstridge  <james@daa.com.au>
9795         * plug-ins/python/pydia-object.c (PyDiaObject_GetAttr): implement
9796         the handles and connections attributes.
9798         * plug-ins/python/pydia-layer.c: added functions that use
9799         ConnectionPoint's.
9801         * plug-ins/python/pydia-handle.[ch]: wrapper for Handle's.
9803         * plug-ins/python/pydia-cpoint.[ch]: wrapper for ConnectionPoint's.
9805         * plug-ins/python/pydia-*.[ch]: starts of python scripting plug-in.
9806         I am currently wrapping the basic elements in the diagram in python
9807         objects -- nothing to see or play with yet.
9809 1999-11-30  Alexander Larsson  <alla@lysator.liu.se>
9811         * AUTHORS:
9812         * HACKING:
9813         James Henstridge <james@daa.com.au> is now the maintainer of Dia.
9815 1999-11-29  Alexander Larsson  <alla@lysator.liu.se>
9817         * configure.in:
9818         * po/ru.po:
9819         Added russian translation from Valek Filippov <frob@df.ru>
9821 1999-11-24  James Henstridge  <james@daa.com.au>
9823         * sheets/UML/*: 
9824         * sheet/ER/*: moved extra sheet pixmaps back to separate dirs as
9825         discussed with Alex.  Also added extra makefiles so that make install
9826         works correctly.
9828 1999-11-23  Alexander Larsson  <alla@lysator.liu.se>
9830         * app/preferences.[ch]:
9831         * app/display.c:
9832         Added snap to grid preference.
9833         Patch from Michael Leslie <mles@springboardwireless.com>
9835 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9837         * app/load_save.c:
9838         * lib/dia_xml.c:
9839         * lib/sheet.c:
9840         * lib/text.c:
9841         * objects/custom/shape_info.c:
9842         All strings returned by libxml must be freed with free, not
9843         g_free, or there will be problems if you use memory debugging
9844         in glib.
9845         
9846 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9848         * app/create_object.[ch]:
9849         * app/menus.c:
9850         * app/tool.[ch]:
9851         * app/commands.[ch]:
9852         * app/pixmaps.h:
9853         * app/interface.[ch]:
9854         Reverted the tool menu patch. It has some 'issues'.
9855         I liked it though, so it'll probably return.
9857 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9859         Fixed a lot of memory leaks. Thanks to Bruce Mitchener
9860         <bruce@cybersight.com> for some purify runs and analysis.
9861         Also a great thank you to Owen Taylor for creating MemProf, a
9862         free memory leak detector that was used to find and verify a
9863         lot of these fixes.
9864         
9865         * app/diagram.c:
9866         * app/paginate_psprint.c:
9867         * app/render_eps.[ch]:
9868         * app/render_svg.[ch]:
9869         Free renderers.
9871         * app/interface.c:
9872         Don't add a reference to ddisp->shell. Why was this done in
9873         the first place?
9875         * app/load_save.c:
9876         * lib/dia_xml.c:
9877         * lib/sheet.c:
9878         * lib/text.c:
9879         Free all strings returned from xmlGetProp
9881         * app/modify_tool.c:
9882         Plug leak.
9884         * objects/custom/custom.c:
9885         Use closedir() after opendir().
9887         * objects/custom/shape_info.c:
9888         User g_free() instead of "if (tmp) free(tmp)".
9890         * sheets/ER.sheet:
9891         Add newline at end of file.
9892         
9894 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
9896         Based on patch from Patrick Reynolds <reynolds@cs.duke.edu>
9897         Adds tool menu and keyboard shortcuts.
9899         * app/create_object.[ch]:
9900         Use tool_set() instead of tool_reset().
9901         create_create_object_tool() takes extra type argument
9903         * menus.c:
9904         Add tools menu.
9905         
9906         * tool.[ch]:
9907         Moved tool_data here, export it.
9908         Add separate tool type for all create objects tools.
9909         new functions tool_set().
9911         * commands.[ch]:
9912         New callback tool_set_callback.
9914         * pixmaps.h:
9915         Moved some pixmaps to interface.c.
9916         
9917         * interface.[ch]:
9918         Remove tool_data array (moved to tool.c).
9919         Use the tool_data from tool.c.
9920         Remove modify_tool_button global var.
9921         
9922 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
9924         Patch from Patrick Reynolds <reynolds@cs.duke.edu>
9925         
9926         * app/app_procs.c:
9927         Interprets command-line arguments as files to open even when
9928         HAVE_POPT is not defined.
9930         * app/magnify.c:        
9931         Shift-clicking when zooming zooms out, like the Gimp.
9933         * app/menus.c:
9934         Has hotkeys for zoom-100% and snap-to-grid.
9936 1999-11-17  James Henstridge  <james@daa.com.au>
9938         * app/scroll_tool.c (scroll_motion): fixed shift style scrolling so
9939         that it is not jumpy.
9941         * app/Makefile.am (EXTRA_DIST): added extra files to extra dist list.
9943         * app/scroll_tool.c (scroll_motion): added `grabbing hand' type
9944         scrolling by pressing the shift key when using the scroll tool.
9946         * sheets/Makefile.am: fixed makefile so that install actually works
9947         if the directories $(pkgdatadir)/sheets/UML and $(pkgdatadir)/sheets/ER
9948         don't exist.
9949         (SHEETS): install Circuit.sheet
9951 1999-11-15  Alexander Larsson  <alla@lysator.liu.se>
9952         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
9954         * sheets/Circuit.sheet:
9955         * sheets/ER.sheet:
9956         * sheets/FS.sheet:
9957         * sheets/Flowchart.sheet:
9958         * sheets/UML.sheet:
9959         * sheets/network.sheet:
9960         * sheets/sybase.sheet:
9961         Changed name space
9963         * sheets/Circuit.sheet:
9964         added some missing French translations
9966         * lib/sheet.c:
9967         killed the temporary sheet namespace
9969         * objects/custom/custom.c:
9970         obsolete comment cleaned up
9972 1999-11-12  Alexander Larsson  <alla@lysator.liu.se>
9974         * configure.in:
9975         * po/pt.po:
9976         Added portugese translation from Pedro Morais
9977         <pmmm@rnl.ist.utl.pt>
9979 1999-11-11  Alexander Larsson  <alla@lysator.liu.se>
9981         Changed all sheets to be specified in xml.
9982         All sheet objects removed from the C code.
9983         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
9984         
9985         * Makefile.am:
9986         * configure.in:
9987         Adding shapes dir.
9988         Updated version to 0.81cvs.
9989         
9990         * app/Makefile.am:
9991         Update run_dia.sh with sheet-dir.
9992         
9993         * app/app_procs.c:
9994         Load all sheets on startup.
9995         Create sheet directory first time.
9996         Don't call custom_register_sheets().
9998         * lib/Makefile.am:
9999         Add sheetdir define
10001         * lib/custom.h:
10002         Remove custom_register_sheets().
10004         * lib/sheet.[ch]:
10005         Add sheet loading code.
10007         * sheet/Circuit.sheet:
10008         * sheet/ER.sheet:
10009         * sheet/FS.sheet:
10010         * sheet/Flowchart.sheet:
10011         * sheet/UML.sheet:
10012         * sheet/network.sheet:
10013         * sheet/sybase.sheet:
10014         Added sheet files.
10016         * sheet/ER/weakentity.xpm:
10017         * sheet/UML/aggregation.xpm
10018         * sheet/UML/umlclass_template.xpm
10019         Added sheet pixmaps.
10020         These are moved from their old places.
10022         * sheet/.cvsignore:
10023         Shut up cvs.
10025         * objects/*/*.c:
10026         Removed sheet objects and sheet registration.
10027         
10028         * objects/ER/Makefile.am:
10029         * objects/ER/pixmaps/weakentity.xpm:
10030         * objects/UML/Makefile.am:
10031         * objects/UML/pixmaps/aggregation.xpm:
10032         * objects/UML/pixmaps/umlclass_template.xpm:
10033         Removed alternative pixmaps. (Moved to sheet).
10035         * objects/custom/Makefile.am:
10036         * objects/custom/load_sheet.[ch]:
10037         Removed old sheet loading code.
10038         
10039         * objects/custom/custom.c:
10040         Load all shapes instead of sheets.
10041         Removed custom_register_sheets().
10043         * objects/custom/custom_object.c:
10044         Added debug code.
10046         * objects/custom/shape_info.[ch]:
10047         Added shape_info_getbyname().
10049         * objects/flowchart/Makefile.am:
10050         * objects/flowchart/collate.shape            
10051         * objects/flowchart/delay.shape              
10052         * objects/flowchart/display.shape            
10053         * objects/flowchart/document.shape           
10054         * objects/flowchart/extract.shape            
10055         * objects/flowchart/flowchart.c              
10056         * objects/flowchart/intstorage.shape         
10057         * objects/flowchart/magdisk.shape            
10058         * objects/flowchart/magdrum.shape            
10059         * objects/flowchart/magtape.shape            
10060         * objects/flowchart/manualinput.shape        
10061         * objects/flowchart/manualop.shape           
10062         * objects/flowchart/merge.shape              
10063         * objects/flowchart/offlinestore.shape       
10064         * objects/flowchart/offpageconn.shape        
10065         * objects/flowchart/or.shape                 
10066         * objects/flowchart/predefdproc.shape        
10067         * objects/flowchart/preparation.shape        
10068         * objects/flowchart/punchedcard.shape        
10069         * objects/flowchart/punchedtape.shape        
10070         * objects/flowchart/sort.shape               
10071         * objects/flowchart/sumjunction.shape        
10072         * objects/flowchart/terminal.shape           
10073         * objects/flowchart/transaction.shape        
10074         * objects/flowchart/transmittape.shape       
10075         * objects/flowchart/pixmaps/collate.xpm      
10076         * objects/flowchart/pixmaps/delay.xpm        
10077         * objects/flowchart/pixmaps/display.xpm      
10078         * objects/flowchart/pixmaps/document.xpm     
10079         * objects/flowchart/pixmaps/extract.xpm      
10080         * objects/flowchart/pixmaps/intstorage.xpm   
10081         * objects/flowchart/pixmaps/magdisk.xpm      
10082         * objects/flowchart/pixmaps/magdrum.xpm      
10083         * objects/flowchart/pixmaps/magtape.xpm      
10084         * objects/flowchart/pixmaps/manualinput.xpm  
10085         * objects/flowchart/pixmaps/manualop.xpm     
10086         * objects/flowchart/pixmaps/merge.xpm        
10087         * objects/flowchart/pixmaps/offlinestore.xpm 
10088         * objects/flowchart/pixmaps/offpageconn.xpm  
10089         * objects/flowchart/pixmaps/or.xpm           
10090         * objects/flowchart/pixmaps/predefdproc.xpm  
10091         * objects/flowchart/pixmaps/preparation.xpm  
10092         * objects/flowchart/pixmaps/punchedcard.xpm  
10093         * objects/flowchart/pixmaps/punchedtape.xpm  
10094         * objects/flowchart/pixmaps/sort.xpm         
10095         * objects/flowchart/pixmaps/sumjunction.xpm  
10096         * objects/flowchart/pixmaps/terminal.xpm     
10097         * objects/flowchart/pixmaps/transaction.xpm  
10098         * objects/flowchart/pixmaps/transmittape.xpm 
10099         Moved shapes and their pixmaps to shapes/flowchart
10101         * shapes/Circuit/Makefile.am:
10102         * shapes/Circuit/index.sheet:
10103         Removed index.sheet.
10104         
10105         * shapes/Makefile.am:
10106         * shapes/flowchart/Makefile.am:
10107         * shapes/flowchart/*.shape:
10108         * shapes/flowchart/*.xpm:
10109         Added flowchart shapes. (Moved from objects/flowchart)
10110         
10112 1999-11-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
10114         * app/app_procs.c: Fixed popt stuff.
10116 1999-11-01  James Henstridge  <james@daa.com.au>
10118         * shapes/Circuit/[hv]led_de.{shape,xpm}: new circuit shapes from
10119         Andreas Scherf.
10121 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
10123         * dia.spec:
10124         * configure.in:
10125         Update version to 0.81.
10126         
10127         * NEWS:
10128         Update with news for 0.81.
10129         
10130         * shapes/Circuit/*:
10131         * shapes/Circuit_eu/*:
10132         Moved european circuit objects to Circuit sheet.
10134 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
10135         
10136         * lib/diagramdata.[ch]:
10137         Added layer_set_object_list() function.
10139         * app/undo.[ch]:
10140         Added support for undo of reordered objects.
10141         Fix the undo of delete to keep the right order on undo.
10142         
10143         * app/diagram.c:
10144         changed loop to object_add_updates_list() calls.
10145         Added undo support to bring to front/back.
10147         * app/disp_callbacks.c:
10148         * app/paginate_psprint.c:
10149         Remove warnings.
10151 1999-10-30  Alexander Larsson  <alla@lysator.liu.se>
10153         This plugs some leaks. Thanks to
10154         Bruce Mitchener <bruce@cybersight.com> for running
10155         Dia through purify for me.
10156         
10157         * app/app_procs.c:
10158         Free displays and diagrams on exit.
10160         * app/modify_tool.c:
10161         Free gc when freeing tool.
10163         * lib/diagramdata.c:
10164         Free layer name.
10165         
10166         * app/display.c:
10167         Free update and display lists when destroying display.
10168         
10169         * lib/diagramdata.c:
10170         Don't leak layer name.
10172         * objects/custom/load_sheet.c: 
10173         * objects/custom/shape_info.c:
10174         Free loaded xml documents.
10176 1999-10-28  Alexander Larsson  <alla@lysator.liu.se>
10178         * app/commands.c:
10179         * app/object_ops.[ch]:
10180         Add undo handling to alignment ops.
10181         Based partially on patch by Dan Cohn <dan@internap.com>.
10183         * objects/standard/image.c (image_move_handle):
10184         Don't divide by zero for small images.
10185         Patch by Dan Cohn <dan@internap.com>.
10187         * objects/UML/class.c (umlclass_destroy): 
10188         * objects/custom/custom_object.c (custom_destroy):
10189         Don't free connectionpoints before calling element_destroy
10190         which unconnects them.
10192 1999-10-26  Alexander Larsson  <alla@lysator.liu.se>
10194         * objects/custom/custom_object.c: 
10195         Load and save padding too. Fixes strange load crashes.
10197         * app/group.c (group_destroy):
10198         Don't unconnect already freed connectionpoints when
10199         destroying group. Probably fixes bug reported by
10200         Elliot Lee <sopwith@redhat.com>.
10202         * app/render_gdk.c:
10203         Don't crash on zero-size (broken) bezier curves.
10204         Different sort of fix. This should work on closed bezier curves
10205         too.
10207         * objects/standard/textobj.c:
10208         Activate default properties dialog for Text objects.
10210         * app/render_eps.c: 
10211         * app/load_save.c:
10212         * app/preferences.c:
10213         * app/render_svg.c:
10214         fopen files in binary or text mode.
10216 1999-10-26  Alexander Larsson  <alex@cendio.se>
10218         * app/render_gdk.c (bezier_add_lines):
10219         Don't crash on zero-size (broken) bezier curves.
10220         Fixes a crashing bug.
10222 1999-10-25  James Henstridge  <james@daa.com.au>
10224         * app/Makefile.am (run_dia.sh): allow dia to find internal shape files
10225         before it is installed.
10227         * objects/flowchart/flowchart.c: use relative paths to find shapes.
10229         * objects/custom/custom.c (custom_object_load): take file names
10230         relative to $(pkgdatadir)/shape-internal, and check an environment
10231         variable for an alternative directory.
10233         * app/...: added copyright messages to the top of my new code.
10235         * app/paginate_psprint.c: some general clean ups.  Also, give an error
10236         dialog if we can't open the command or output file for writing.
10238         * app/diapagelayout.c (dia_page_layout_set_orientation): fixed
10239         function so it would set orientation to landscape correctly.
10241         * app/paginate_psprint.c: use the paper settings that come with
10242         the diagram.  Also implemented landscape printing.
10244         * app/render_eps.c (new_psprint_renderer): use diagram paper metrics
10245         in PS header.
10247         * app/commands.[ch] (file_pagesetup_callback): added callback for
10248         the page setup dialog.
10250         * app/menus.c: added page setup menu item.
10252         * app/pagesetup.[ch]: implementation of the page setup dialog.
10254         * app/diapagelayout.[ch]: added accessors for the scaling factor.
10255         
10256         * app/load_save.c (diagram_load): load paper information from save
10257         file.
10258         (diagram_save): save the paper info.
10260         * lib/diagramdata.c (new_diagram_data): initialise paper info section
10261         of DiagramData structure.
10262         (diagram_data_destroy): free the paper name.
10264         * lib/diagramdata.h: added a paper member to the DiagramData structure
10265         that holds the page layout info for a diagram.
10267 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
10269         * objects/flowchart/box.c:
10270         * objects/flowchart/ellipse.c:
10271         * objects/flowchart/diamond.c:
10272         * objects/flowchart/parallelogram.c:
10273         Load and save padding too. Fixes strange load crashes.
10275 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
10277         * app/app_procs.c (name_is_lib):
10278         .dll, .sl and .so.0.0.0 are also libraries.
10280 1999-10-20  James Henstridge  <james@daa.com.au>
10282         * configure.in: added extra makefile.
10283         
10284         * shapes/Circuit_eu/*: a new set of european circuit shapes from
10285         Andreas Scherf <scherfa@fh-trier.de>.  Made a few small modifications
10286         (added fuses to makefile, fill the area of some of the components).
10288 1999-10-19  Alexander Larsson  <alla@lysator.liu.se>
10290         * lib/Makefile.am:
10291         * app/Makefile.am: 
10292         Add GDK_IMLIB_CFLAGS to includes.
10293         Changed --export-dynamic to -export-dynamic
10295         * lib/widgets.c:
10296         * objects/UML/message.c:
10297         Removed c++ comment.
10299         * lib/render_store.[ch]:
10300         Don't use empty structure. That is not Ansi C.
10302 1999-10-19  James Henstridge  <james@daa.com.au>
10304         * app/diapagelayout.c (dia_page_layout_init): use DiaUnitSpinner's for
10305         the margin entries, as they allow interpretation of units.
10306         (paper_size_change): display the current page dimensions.
10308         * app/diaunitspinner.[ch]: a widget derived from the standard
10309         GtkSpinButton that tries to take units into account.  So if you enter
10310         "1in" into the entry, it will convert it to 2.54cm.
10312 1999-10-18  Alexander Larsson  <alla@lysator.liu.se>
10314         * app/app_procs.c:
10315         Removed include of dlfcn.h
10317 1999-10-18  James Henstridge  <james@daa.com.au>
10319         * app/diapagelayout.c (paper_size_change, orient_changed): set upper
10320         bound on margin widths.  It is set to the paper width/height.
10322         * objects/flowchart/diamond.c (diamond_distance_from): fixed distance
10323         routine for the diamond.  This bug was found and fixed by Daniel Wang
10324         <danwang@CS.Princeton.EDU>
10326 Sun Oct 17 19:46:36 1999  ape@gandalf.spacetec.no  (Asbjorn Pettersen)
10328         * app/commands.c: Add <sys/types.h> before <sys/stat.h> to
10329         remove warning (OS/2 version).
10331 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
10333         * README:
10334         Put a pointer to objects/custom/README.
10335         
10336 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
10338         * dia.spec:
10339         Updated version to 0.80
10341         * configure.in:
10342         Updated version to 0.80cvs
10344 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
10346         * Released Dia 0.80
10347         Tag called DIA_0_80
10348         
10349 1999-10-17  Fredrik Hallenberg  <hallon@lysator.liu.se>
10351         * app/Makefile.am
10352         * lib/Makefile.am
10353         * objects/UML/Makefile.am
10354         * objects/ER/Makefile.am
10355         * objects/network/Makefile.am
10356         * objects/standard/Makefile.am
10357         * objects/FS/Makefile.am
10358         * objects/sybase/Makefile.am
10359         * objects/flowchart/Makefile.am
10360         * objects/custom/Makefile.am
10361         Added -I$(top_srcdir)/intl which is needed for
10362         --with-included-gettext.
10364         * POTFILES.in
10365         Updated.
10366         
10367         * po/sv.po
10368         Updated swedish translation.
10370 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
10372         * configure.in:
10373         Updated version number to 0.80.
10375         * KNOWN_BUGS:
10376         New file.
10378         * TODO:
10379         Updated. Moved bugs to KNOWN_BUGS.
10381         * NEWS:
10382         Updated with 0.80 release notes.
10383         
10384 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
10385         
10386         * lib/orth_conn.c:
10387         For backwards compatibility, make sure handle 0 and 1 are the
10388         first and last handle. Fixes compatibility with 0.41, breaks
10389         compatibility with cvs version.
10390         Fixed bug in undo/redo of adding deleting endpoint segments
10391         when the endpoint was connected.
10392         Start OrthConn objects with three segments.
10394 1999-10-16  James Henstridge  <james@daa.com.au>
10396         * objects/custom/custom_object.c (custom_update_data): changed
10397         resizing behaviour a bit so that shapes don't grow huge when you try
10398         to resize them to smaller than the size required by the text box.
10399         Also, now shapes will not grow with fixed aspect ratio when you enter
10400         text into them unless the shape has the fixed aspect ratio flag set.
10402 1999-10-15  James Henstridge  <james@daa.com.au>
10404         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10406         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10408         * objects/flowchart/magdrum.shape: 
10409         * objects/flowchart/offlinestore.shape: 
10410         * objects/flowchart/punchedtape.shape: 
10411         * objects/flowchart/transmittape.shape: 
10412         * objects/flowchart/punchedcard.shape: new shapes.
10414         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10416         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10418         * objects/flowchart/collate.shape:
10419         * objects/flowchart/delay.shape:
10420         * objects/flowchart/extract.shape:
10421         * objects/flowchart/intstorage.shape:
10422         * objects/flowchart/magdisk.shape:
10423         * objects/flowchart/magtape.shape:
10424         * objects/flowchart/merge.shape:
10425         * objects/flowchart/or.shape:
10426         * objects/flowchart/sort.shape:
10427         * objects/flowchart/sumjunction.shape: new shapes.
10429 1999-10-15  Alexander Larsson  <alla@lysator.liu.se>
10431         * TODO (BUGS):
10432         Added bug:
10433         Entering an erronous command as print command
10434         crashes dia.
10436         * app/paginate_psprint.c:
10437         Save all print dialog values for next time.
10438         
10439         * app/Makefile.am:
10440         Remove custom lib from DIA_LIB_PATH.
10442 1999-10-14  James Henstridge  <james@daa.com.au>
10444         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10446         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10447         
10448         * objects/flowchart/offpageconn.shape: 
10449         * objects/flowchart/manualop.shape: 
10450         * objects/flowchart/preparation.shape: 
10451         * objects/flowchart/manualinput.shape: 
10452         * objects/flowchart/predefdproc.shape: 
10453         * objects/flowchart/terminal.shape: new shapes in the flowchart sheet.
10455 1999-10-13  James Henstridge  <james@daa.com.au>
10457         * app/diapagelayout.[ch]: added accessors to paper information.  The
10458         widget should be just about complete now.
10460         * app/diapagelayout.[ch]: fleshed out the page setup widget a bit more.
10461         It actually does something now.
10463 1999-10-12  James Henstridge  <james@daa.com.au>
10465         * app/pixmaps/portrait.xpm, app/pixmaps/landscape.xpm: support pixmaps
10466         for the page layout widget.
10468         * app/diapagelayout.[ch]: start of page layout widget.  Not actually
10469         built yet as it is not complete.
10471         * objects/flowchart/flowchart.c: added new shapes to sheet.
10473         * objects/flowchart/display.shape:
10474         * objects/flowchart/transaction.shape: new shapes.
10476         * AUTHORS: added my name to the spec file.
10478         * dia.spec: include the dia desktop entry to the spec file.
10480         * Makefile.am: install the dia.desktop file.
10482         * dia.desktop: added a gnome desktop entry so you can start dia
10483         from the gnome panel menu.
10485 1999-10-11  James Henstridge  <james@daa.com.au>
10487         * objects/custom/custom_object.c:
10488         * objects/custom/shape_info.c: warning fixes.
10490         * objects/flowchart/document.shape: a shape file for the `document'
10491         flowchart shape.
10493         * lib/custom.h: new header with the custom shape prototypes.
10495         * app/app_procs.c: register custom objects as well.
10496         (register_objects_in): close shared libraries if they don't load
10497         correctly, and call g_module_make_resident on libraries that load
10498         correctly.
10500         * app/Makefile.am (dia_LDADD): added libcustom_objects.a to link list.
10502         * objects/custom/custom.c: removed get_version, added custom_ prefix
10503         to register_objects and register_sheets.
10505         * objects/custom/Makefile.am: converted to a normal library.
10507 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
10509         * app/lineprops_area.c:
10510         * app/render_svg.c:
10511         * lib/objchange.c:
10512         * objects/custom/shape_info.c:
10513         * objects/flowchart/box.c:
10514         * objects/flowchart/diamond.c:
10515         * objects/flowchart/ellipse.c:
10516         * objects/flowchart/parallelogram.c:
10517         * objects/network/flash.c:
10518         * objects/network/scead-plug.c:
10519         * objects/sybase/client.c:
10520         Removed -Wall warnings.
10521         
10522         * objects/network/bus.c:
10523         Removed unused functions.
10525         * objects/FS/flow-ortho.c:
10526         * objects/FS/flow-poly.c:
10527         * objects/FS/flow.c:
10528         * objects/FS/function.c:
10529         
10530         Implemented "non-implemented" undo for FS objects.
10531         Now at least it won't crash.
10532         
10533 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
10535         * objects/network/bus.c:
10536         Implemented undo.
10537         Handles are now added and removed using the object menu.
10538         Default to 6 handles instead of 10.
10539         Changed name from "Standard - Bus" to "Network - Bus". Kept old
10540         name for backwards compatibility.
10542         * objects/network/network.c:
10543         Changed name from "Standard - Bus" to "Network - Bus". Kept old
10544         name for backwards compatibility.
10546         * app/properties.[ch]:
10547         * app/undo.c:
10548         Update properties in properties dialog if the shown object
10549         is part of and ObjectChange (undo or redo).
10551         * lib/poly_conn.c:
10552         Remove old known bugs list.
10554         * objects/UML/class_dialog.c:
10555         Removed debug printf's.
10557 1999-10-10  James Henstridge  <james@daa.com.au>
10559         * objects/custom/custom.c (custom_object_load): new function that
10560         provides a nice entry point to the custom shape code for when it
10561         gets used by other libraries.
10563         * configure.in: removed 11 makefiles from AC_OUTPUT list.  This
10564         speeds builds up a bit.
10566         * */Makefile.am (EXTRA_DIST): include pixmaps in distribution.
10567         (SUBDIRS): do not descend into pixmaps subdirs.
10569         * */pixmaps/Makefile.am: removed -- incorporate into parent makefiles.
10570         This speeds up build process.
10572         * objects/custom/custom.c (sheets): made variable static.
10574         * objects/custom/custom_util.[ch] (custom_get_relative_filename):
10575         renamed function.
10577         * objects/custom/load_sheet.[ch] (custom_sheet_load): renamed function.
10579         * objects/custom/custom.c: look in ~/.shapes instead of
10580         ~/.dia_shapes as the per-user shapes directory.
10582         * app/preferences.c (prefs_save): save config to ~/.diarc.
10583         (prefs_load): load configuration from ~/.diarc.  If the file
10584         does not exist, fallback on the old ~/.diarc location.
10586         * app/app_procs.c (create_user_dirs): create the ~/.dia directory
10587         on startup.
10588         (register_all_objects): look for user specific objects in
10589         ~/.objects rather than ~/.dia_libs.
10591 1999-10-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
10593         * configure.in:
10594         * app_procs.c:
10595         * objects/flowchart/box.c
10596         * objects/flowchart/ellipse.c
10597         * objects/flowchart/flowchart.c 
10598         Use gmodule for dynamic linking. As gmodule is using
10599         RTLD_GLOBAL i had to change flowchart box and ellipse
10600         so the typenames doesn't conflict with the standard
10601         box and ellipse.
10603         * message.c
10604         * commands.c
10605         Use button box to make dialogs look better.
10607 1999-10-09  Alexander Larsson  <alla@lysator.liu.se>
10609         * objects/UML/class_dialog.c:
10610         * objects/UML/class.h:
10611         Implemented undo for "UML - Class" objects.
10612         Not 100% tested yet.
10614         * objects/UML/classicon.c:
10615         * objects/UML/constraint.c:
10616         * objects/UML/dependency.c:
10617         * objects/UML/generalization.c:
10618         * objects/UML/implements.c:
10619         * objects/UML/large_package.c:
10620         * objects/UML/lifeline.c:
10621         * objects/UML/message.c:
10622         * objects/UML/object.c:
10623         * objects/UML/realizes.c:
10624         * objects/UML/state.c:
10625         * objects/UML/usecase.c:
10626         Removed warnings.
10627         
10628         * lib/connectionpoint.h:
10629         Fixed typo.
10630         
10631 1999-10-09  James Henstridge  <james@daa.com.au>
10633         * objects/custom/*.[ch]: added copyright notices to custom object
10634         files.
10636         * shapes/Circuit/hdiode.shape:
10637         * shapes/Circuit/hzener.shape: 
10638         * shapes/Circuit/opamp.shape:
10639         * shapes/Circuit/vdiode.shape:
10640         * shapes/Circuit/vzener.shape: made adjustments to make the circuit
10641         shapes look nice after the custom shape code changes.
10643         * objects/custom/README: updated docs to cover changes to drawing
10644         code.
10646         * objects/custom/custom_object.c (custom_draw): honour the line
10647         properties when drawing the shape.
10649         * objects/custom/shape_info.[ch]: added support for setting line
10650         properties for individual drawing elements in a custom shape.  You
10651         can set the dash style, dash length, cap style and join style.
10653 1999-10-07  James Henstridge  <james@daa.com.au>
10655         * objects/custom/shape_info.c (parse_style): added a few extra synonyms
10656         for foreground and background.
10658         * objects/custom/custom_object.c (custom_draw): use the new style
10659         information when drawing the object.
10661         * objects/custom/shape_info.[ch]: store all shape style info in the
10662         GraphicStyle structure.  This makes adding support for extra CSS
10663         attributes easier -- we don't have to keep adding extra arguments to
10664         a lot of functions.
10666 1999-10-05  James Henstridge  <james@daa.com.au>
10668         * lib/intl.c (unalias_lang): merged in changes from the i18n code
10669         swiped from gnome-libs.
10671 1999-10-03  Alexander Larsson  <alla@lysator.liu.se>
10673         * objects/standard/image.c (get_directory):
10674         Fix memleak. Found by Kjartan Maraas <kmaraas@online.no>
10676 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
10678         * lib/poly_conn.c (polyconn_destroy):
10679         Fix bug. Access of freed memory.
10680         Rememeber, you can't free the handles of an object
10681         before calling object_destroy(), as it unconnects the handles
10682         therefore referencing them.
10684 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
10686         * app/undo.c:
10687         undo_clear() didn't set stack->depth to zero.
10688         This made other undo functions crash after this had been called
10689         on a "full" stack.
10690         
10691         * dia.xpm:
10692         Slightly modified by Chris Love <clove@exactis.com>
10694 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
10696         * objects/UML/class.h: 
10697         * objects/UML/class_dialog.c:
10698         Retrun NULL ObjectChange on class property change.
10699         This means no crashes, but "UML - Class" doesn't support undo yet.
10700         
10701 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
10702         
10703         * lib/text.c:
10704         Indentation fix.
10706         * objects/UML/classicon.c:
10707         * objects/UML/dependency.c:
10708         * objects/UML/generalization.c:
10709         * objects/UML/implements.c:
10710         * objects/UML/large_package.c:
10711         * objects/UML/lifeline.c:
10712         * objects/UML/message.c:
10713         * objects/UML/object.c:
10714         * objects/UML/realizes.c:
10715         * objects/UML/state.c:
10716         * objects/UML/usecase.c:
10717         Update to new undo (w. get/set_state).
10718         Add object menu to add/delete segments.
10720 1999-09-17  Alexander Larsson  <alla@lysator.liu.se>
10722         * app/menus.c:
10723         Add equal distance alignment.
10725         * app/object_ops.c:
10726         Add equal distance alignment.
10727         Fix bug in adjacent alignment.
10729 1999-09-16  Alexander Larsson  <alla@lysator.liu.se>
10731         * objects/UML/constraint.c: 
10732         Update to new undo (w. get/set_state).
10734 1999-09-15  Alexander Larsson  <alla@lysator.liu.se>
10736         * app/paginate_psprint.c:
10737         Save (parts, more todo) of the info in the print dialog to the
10738         next time it's opened.
10739         Patch from Yo Ric Dude <ricdude@toad.net>
10741 1999-09-14  Alexander Larsson  <alla@lysator.liu.se>
10743         * configure.in:
10744         Updated version string to 0.41cvs.
10746         * objects/UML/assocition.c:
10747         Update to new undo (w. get/set_state).
10748         Add object menu to add/delete segments.
10750         * app/app_procs.c:
10751         Added function debug_break() and called it after all
10752         objects and sheets are loaded. Place a breakpoint here if you
10753         want to debug objects. All symbols should be loaded.
10755 1999-09-12  James Henstridge  <james@daa.com.au>
10757         * app/menus.c (display_menu_items): added print menu item.
10758         (filemenu): always add print menu item -- even if gnome-print is
10759         not installed.
10761         * app/commands.h, app/commands.c (file_print_callback): the print
10762         menu item is now available for both gnome-print and non gnome-print
10763         setups.
10765         * app/paginate_psprint.c (diagram_print_ps): show a dialog to let you
10766         print with the non gnome-print driver.
10768 1999-09-11  James Henstridge  <james@daa.com.au>
10770         * app/paginate_gnomeprint.c (diagram_print_gnome): moved the gnome
10771         printer dialog code out of commands.c.
10773         * app/paginate_psprint.c: new file containing the pagination code for
10774         psprint.
10776         * app/render_eps.c: made a few modifications so as well as producing
10777         EPS files, this renderer can be set up to do postscript printing.
10778         This basically entailed adding an extra function to create a RenderEPS
10779         renderer which did not bother setting the viewport for the document.
10780         That was left for the pagination code.
10782 1999-09-10  James Henstridge  <james@daa.com.au>
10784         * app/render_gnomeprint.c (draw_ellipse, fill_ellipse): since
10785         gnome-print does not support elliptic arcs at the moment, approximate
10786         the ellipse with eight bezier curves.  This gives a pretty good
10787         match to a true ellipse.
10789 1999-09-09  James Henstridge  <james@daa.com.au>
10791         * app/commands.c (file_gnome_print_callback): added support for
10792         scaling the diagram.  Also fixed a few other bugs.
10794         * app/paginate_gnomeprint.c (print_page): added ability to scale
10795         document.  Fixed up test to see if the page has no objects on it.
10796         This should prevent some blank pages being printed.  Non square
10797         objects such as lines could still cause problems.
10799 1999-09-08  James Henstridge  <james@daa.com.au>
10801         * app/commands.c (file_gnome_print_callback): changed from using the
10802         standard printer selection dialog to one that also has a paper size
10803         selector as well.
10805         * commands.[ch]: added callbacks for the print menu item.  Currently
10806         it only does A4 output.  I will make it configurable soon.
10807         
10808         * app/menus.c: add a print diagram menu item if gnome-print support
10809         is enabled.
10810         
10811         * app/paginate_gnomeprint.c, app/paginate_gnomeprint.h: this is a
10812         bit higher level than the gnome-print renderer.  It splits the
10813         diagram into page size chunks and then renders them.  For each
10814         page, it only renders the objects whose bounding box intersects
10815         the page, and it sets the clip mask so that the diagram does not
10816         overlap the margins.
10817         
10818         * app/render_gnomeprint.c, app/render_gnomeprint.h: added a renderer
10819         that uses gnome-print as its back end.
10820         
10821         * configure.in: added a check for gnome-print.  It is disabled by
10822         default because the code is not really working correctly yet.
10824         * app/menus.c: the delete object menu item was missing from the
10825         GnomeUIInfo style menus.
10827 1999-09-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
10829         * configure.in
10830         Added japanese to ALL_LINGUAS.
10831         Fix for Linux on Alpha.
10833 1999-09-07  Alexander Larsson  <alla@lysator.liu.se>
10835         * app/create_object.c (create_object_button_press):
10836         Always initialize tool->obj. Otherwise we store a null
10837         in the undo Change.
10839         * lib/text.c:
10840         Set linestyle before drawing cursor.
10841         Fix undo of backwards delete.
10843 1999-09-05  James Henstridge  <james@daa.com.au>
10845         * dia.spec: updated spec file to distribute $(prefix)/share/dia.
10847         * app/render_svg.c (draw_image): some fixes so that the appropriate
10848         style attributes are set.  Before it was setting line styles on
10849         fill_* functions.  Now it only does this for the draw_* variants.
10851         * app/Makefile.am (run_dia.sh): set the DIA_SHAPE_PATH environment
10852         variable so that custom shapes can be loaded.
10854         * shapes/: new directory for custom shapes.  The Circuit sheet has
10855         been moved here.
10857 1999-09-02  James Henstridge  <james@daa.com.au>
10859         * TODO: removed a few todo items that have been implemented.
10861         * app/interface.c (create_sheets): enabled the popup page menu to the
10862         notebook.  This can make it easier to select different sheets.
10864         * object/custom/Circuit/: added diode, zener diode, ground point and
10865         operational amplifier shapes.
10866         
10867         * objects/custom/Makefile.am: added a note about adding DEBUG_CUSTOM
10868         if you want the output.
10870         * objects/custom/shape_info.c (parse_path): same here.
10872         * objects/custom/load_sheet.c (load_with_readdir): don't print so
10873         much debugging output.  To get the previous level of output, define
10874         DEBUG_CUSTOM.
10876         * objects/custom/shape_info.c (parse_svg_node): polygons were being
10877         recorded as polylines in the ShapeInfo structure.
10879         * objects/custom/README: some notes on writing new custom shapes.
10880         
10881 1999-09-01  James Henstridge  <james@daa.com.au>
10883         * objects/custom/Circuit/hinductor.*:
10884         * objects/custom/Circuit/vinductor.*: added inductor shapes that
10885         also test out the bezier curve and SVG path support.
10886         
10887         * objects/custom/custom_object.c (custom_draw): added support for
10888         drawing bezier paths and filled shapes.
10890         * objects/custom/shape_info.c (parse_path): new function to parse
10891         SVG path elements.  It does not do quadratic beziers or elliptic
10892         arcs though.  Only moves, lines and cubic beziers.
10893         (*): added support for paths.
10895 1999-08-31  James Henstridge  <james@daa.com.au>
10897         * objects/sybase/ltm.c (render_to_store): use the newer bezier API.
10899         * app/render_svg.c (draw_bezier, fill_bezier): updated renderer
10900         interface
10902         * app/render_eps.c (draw_bezier, fill_bezier): updated renderer
10903         interface
10905         * app/render_gdk.c (draw_bezier, fill_bezier): updated renderer
10906         interface.
10908         * lib/render_store.[ch]: use newer bezier functions.
10910         * lib/render.h: changed the bezier drawing functions to use an array
10911         of BezPoint structures instead of normal Point structures to allow
10912         lineto's mixed in with the curveto's.
10913         
10914         * objects/custom/Circuit/pnp.*: added pnp transistor shape.
10915         
10916         * objects/custom/Circuit/Makefile.am (SHAPES): added index.sheet and
10917         xpm images for different shapes to Makefile.
10919         * objects/custom/custom_object.c (custom_object_new): set the icon
10920         for the sheet button if there is one.  Otherwise fall back on the
10921         default custom object icon.
10923         * objects/custom/shape_info.c (load_shape_info): read the sheet
10924         icon name from the shape file.
10926         * app/interface.c (create_sheet_page): if sheet_obj->pixmap == NULL,
10927         check the pixmap_file field for the name of a pixmap file to load
10928         for the tool.
10930         * lib/sheet.h (SheetObj): added pixmap_file field to structure.  It is
10931         at the end of the structure, and it isn't used if the pixmap field
10932         is non NULL, so it should not break binary compatibility.
10934         * objects/custom/load_sheet.[ch]: moved sheet loading code here.  Also
10935         added support for the use of an index.sheet file so you can specify
10936         the ordering of the shapes in the sheet, and also internationalise
10937         the sheet name and actually be able to give a description.  The old
10938         readdir based sheet loading code acts as a fallback if an index.sheet
10939         file can not be found.
10941         * objects/custom/custom_util.[ch]: new file containing useful routines
10942         needed by the custom object code.  Currently only contains a simple
10943         routine for resolving relative paths.
10945         * objects/custom/custom_object.c (custom_draw): fixed problem with
10946         drawing rectangles if the shape has been flipped.
10948 1999-08-30  James Henstridge  <james@daa.com.au>
10950         * objects/custom/custom_object.c (custom_get_object_menu): allow
10951         flipping of custom shapes.  This uses the miggle click object
10952         menu.
10954         * objects/custom/Circuit/npn.shape: fix aspect ratio.
10956         * objects/custom/custom_object.c (custom_update_data): honour the
10957         aspect ratio constraints.
10959         * objects/custom/shape_info.c (load_shape_info): updated aspect ratio
10960         tag parsing, so you can specify a free, fixed or a range for aspect
10961         ratios for the shape.
10963 1999-08-29  James Henstridge  <james@daa.com.au>
10965         * objects/custom/test.xml, objects/custom/Circuit/*.shape: fixed
10966         up shape namespace tag.
10968         * objects/custom/shape_info.c (load_shape_info): check xml:lang
10969         attribute on <description> elements to support i18n for custom
10970         shape descriptions.
10971         Also changed the shape namespace for custom shapes to something
10972         a little more sensible.
10974         * lib/dummy_dep.h (dummy_dep): added extra dummy dependency.
10976         * lib/intl.c: new file containing some functions for i18n stuff.
10978         * app/layer_dialog.c (create_button_box): fixed a warning.
10980         * objects/custom/custom_object.c: use current line style.  Save dash
10981         length.
10983         * objects/flowchart/diamond.c: use current line style.  Save dash
10984         length.
10986         * objects/flowchart/parallelogram.c: use current line style.  Save
10987         dash length.
10989         * objects/flowchart/ellipse.c: use current line style.  Save dash
10990         length.
10992         * objects/flowchart/box.c: use current line style.  Save dash length.
10994         * objects/standard/ellipse.c: make ellipse use current line style.
10996         * objects/standard/box.c: use the line style set in the toolbox for
10997         new boxes, and remember the dash length.
10999         * app/commands.c (view_toggle_rulers_callback): fix reshowing of
11000         rulers.
11002 1999-08-24  James Henstridge  <james@daa.com.au>
11004         * objects/flowchart/ellipse.c (ellipse_update_data): made some changes
11005         to try to stop ellipse to get infinite width/height when we resize,
11006         while trying to keep the text inside the ellipse.
11008         * objects/flowchart/box.c, objects/flowchart/parallelogram.c,
11009         * objects/flowchart/diamond.c, objects/flowchart/ellipse.c: fixed
11010         resizing behaviour, so that you can't push objects round the screen
11011         with the resize handles.
11013         * app/lineprops_area.c (dia_arrow_chooser_init, dia_line_chooser_init):
11014         get the OK buttons in the dialogs to take default clicks.
11016         * objects/custom/custom_object.c: added code so that resizing the
11017         shape does not end up pushing it round the screen.
11019 1999-08-23  Alexander Larsson  <alla@lysator.liu.se>
11021         * app/display.[ch]:
11022         Generate rectangle with the union of the damaged regions.
11023         This is used to optimize the grid paint and the object rendering.
11024         display_render_pixmap passes this info to grid_draw() and data_render().
11026         * app/grid.[ch]:
11027         grid_draw doesn't draw grid lines outside of damaged rectangle.
11028         Sets dashlength when drawing non-solid grid.
11029         
11030         * lib/diagramdata.[ch]:
11031         data_render() and layer_render() takes an optional damaged rectangle
11032         argument. No objects not intersecting this are drawn.
11034         * app/diagram.c:
11035         Fix warning.
11036         Call data_render with NULL update rectangle.
11037         
11038 1999-08-23  James Henstridge  <james@daa.com.au>
11040         * objects/custom/custom_object.c (custom_update_data): if the aspect
11041         ratio is fixed, make sure the shape is not distorted.
11043         * object/custom/shape_info.h, objects/custom/shape_info.c: notice if
11044         a <fixaspectratio/> tag is given in the shape file.
11046         * objects/custom/shape_info.[ch], objects/custom/custom_object.c:
11047         added support for stroke-width, stroke and fill CSS attributes
11048         specified in style attributes of the SVG elements.  The line width
11049         is relative to the user specified line width.  The stroke and fill
11050         attributes can only be used to swap the foreground/background
11051         colours.
11053         * lib/widgets.c (dia_line_style_selector_set_linestyle): set the
11054         sensitivity on the dash length selector when this function is called.
11056         * objects/standard/arc.c: same.  Also handle dash length.
11057         * objects/standard/zigzagline.c: same.
11058         * objects/standard/polyline.c: same.  Also handle dash length.
11059         * objects/standard/line.c: use default arrow/line styles.
11061         * app/interface.c: added callbacks to set the default attributes.
11063         * lib/attributes.c: added implementations of these functions.
11065         * lib/attributes.h: added extra prototypes for the new line properties
11066         area in the toolbox.
11068         * app/interface.c (create_lineprops_area): added line properties
11069         area to bottom of toolbox.
11071         * app/lineprops_area.h: a header exporting a few routines of the
11072         line properties area widgets.
11074         * app/lineprops_area.c: new file containing a selector for arrows
11075         and line styles to go in the main toolbox.
11077 1999-08-22  Alexander Larsson  <alla@lysator.liu.se>
11079         * HACKING:
11080         Update Gtk+ 1.0.5 comment to 1.2.0.
11082         * INSTALL:
11083         Demand libtool 1.3
11085         * acconfig.h:
11086         Add HAVE_LIBPOPT
11088         * configure.in:
11089         Make sure we don't propagate -ldl and -lpopt to all LIBS
11090         by adding new var APP_LIBS that only app/dia links with.
11091                 
11092         * app/Makefile.am:
11093         Update run_dia.sh to load custom and flowchart objects.
11095         * objects/ER/Makefile.am:
11096         * objects/FS/Makefile.am:
11097         * objects/UML/Makefile.am:
11098         * objects/network/Makefile.am:
11099         * objects/standard/Makefile.am:
11100         * objects/sybase/Makefile.am:
11101         Don't build versioned libs.     
11102         
11103 1999-08-22  James Henstridge  <james@daa.com.au>
11105         * configure.in: added objects/custom/Circuit/Makefile to AC_OUTPUT
11106         list.
11108         * objects/Makefile.am (SUBDIRS): added custom to subdir list -- it
11109         should actually work a bit now.
11111         * objects/custom/Circuit/*: a test sheet for the custom shape code.
11112         It is a small collection of circuit elements.
11114         * objects/custom/shape_info.c: fixed up loading of polylines and
11115         polygons.  Before it was removing negative signs :(
11117         * objects/custom/pixmaps/custom.xpm: drew the custom shape icon.  A
11118         placeholder was here before.  I still need to work out how to set
11119         icons for individual custom shapes.
11120         
11121         * objects/custom/custom.c: added code to load the shapes into sheets
11122         properly.  The shape files should be arranged into directories, and
11123         each directory represents a different sheet in the toolbox.  This
11124         will make it very easy to distribute a collection of dia shapes as
11125         a tarball.  I still need to work out internationalisation, and maybe
11126         also shape ordering in the sheet.
11128         * objects/custom/custom_object.c: fixed up dialogs for these objects.
11129         (custom_create): fix for objects without text areas.
11131         * objects/custom/shape_info.h, objects/custom/custom_object.c: loading
11132         and saving of custom object works correctly now.
11134 1999-08-21  James Henstridge  <james@daa.com.au>
11136         * objects/flowchart/ellipse.c: 
11137         * objects/flowchart/diamond.c: 
11138         * objects/flowchart/parallelogram.c: 
11139         * objects/flowchart/box.c: Fixed up a few bugs in these objects when
11140         copying or loading these object types.  Not all the connection
11141         points would be initialised correctly.
11143         * objects/flowchart/Makefile.am (libflowchart_objects_la_LDFLAGS):
11144         similar here.
11146         * objects/custom/Makefile.am (libcustom_objects_la_LDFLAGS): do not
11147         build a versioned library.  It will only ever be dlopen'd, so this
11148         is not a problem.
11150         * objects/custom/custom_object.c (custom_distance_from): allow
11151         selecting the object by clicking on the text.  This fixes problems
11152         where the text box is outside the graphic.
11154         * objects/custom/shape_info.c (load_shape_info): fixed up reading
11155         of connections points.  It should be possible to add connections
11156         to custom objects now.
11158         * objects/custom/custom_object.c (custom_update_data): fixed resizing
11159         due to changes to text.
11161         * configure.in: added extra makefiles.
11162         
11163         * objects/custom/shape_info.[ch]:
11164         * objects/custom/custom_object.c:
11165         * objects/custom/custom.c: the starts of custom shape support in dia.
11166         This is not built by default at the moment, since it is not quite
11167         complete.  When it is, it will let you create more shapes for dia
11168         without writing a line of C.  Its implementation includes buzzwords
11169         such as XML and SVG, so it must be good :)
11171 1999-08-19  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
11173         * app/app_procs.c (app_exit): Use button labels "Quit" and
11174         "Cancel" instead of "Yes" and "No".
11175         Set default action to "Cancel" instead of "Quit".
11177 1999-08-19  James Henstridge  <james@daa.com.au>
11179         * objects/flowchart/flowchart.c: added ellipse object.
11180         
11181         * objects/flowchart/ellipse.c: a new shape for the flowchart toolbox.
11183 1999-08-18  James Henstridge  <james@daa.com.au>d
11185         * app/color_area.c (color_area_edit): small fix to prevent dia from
11186         segfaulting when you try to change the default foreground/background.
11188 1999-08-17  Alexander Larsson  <alla@lysator.liu.se>
11190         * app/diagram.[ch] (diagram_redraw_all):
11191         Added function that redraws all diagrams.
11193         * app/preferences.c (prefs_apply):
11194         Call diagram_redraw_all when prefs are changed.
11196         * app/render_svg.c:
11197         Don't use xmlEncodeEntitiesReentrant(). It doesn't exist on
11198         older libxml's, and the old version works good enought here.
11199         
11200 1999-08-17  James Henstridge  <james@daa.com.au>
11202         * lib/widgets.c: changed handlers that were connected to the GtkButton
11203         "pressed" signal to connect to the "clicked" signal.  This removes the
11204         problem where dialogs are inactive until you click a mouse button
11205         after using a colour selector.
11207         * configure.in: added extra makefiles to AC_OUTPUT list.
11208         
11209         * objects/Makefile.am (SUBDIRS): added flowchart module
11211         * objects/flowchart/*: a collection of shapes for use in flowcharts.
11213         * app/color_area.c (color_area_events): similar here.
11215         * app/linewidth_area.c (linewidth_area_events): sometimes a configure
11216         event is recieved with event->width == 0, which causes a warning if we
11217         try to create a pixmap of that width.
11219         * app/preferences.c, app/preferences.h, app/grid.c: added code to
11220         allow you to configure the colour of the grid, and also lets you
11221         set the grid to use dotted lines instead of solid ones.
11222         
11223         * app/commands.c, app/commands.h, app/diagram.c, app/diagram.h,
11224         app/menus.c, app/Makefile.am: added menu entry for exporting SVG files.
11225         
11226         * app/render_svg.h, app/render_svg.c: an SVG (Scalable Vector Graphics)
11227         export filter.  It is not quite complete, but for most shapes it
11228         works as expected.  Fonts still need a bit of work.
11230 1999-08-11  Robert Brady  <rwb197@ecs.soton.ac.uk>
11232         * configure.in: Added "en_GB" to ALL_LINGUAS.
11234 1999-08-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
11236         * menus.c
11237         Added Undo and Redo to GNOME menus.
11238         
11239         * objects/ER/attribute.c:
11240         * objects/ER/entity.c:
11241         * objects/ER/participation.c:
11242         * objects/ER/relationship.c:
11243         Added get/set_state functions.
11245         * objects/ER/participation.c:
11246         Added add/delete segment.
11248         * po/sv.po
11249         Updated Swedish translation.
11251 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11253         * app/preferences.[hc]:
11254         Added undo_depth pref.
11255         
11256         * app/undo.[ch]:
11257         Never grow stack larger than pref.undo_depth.
11258         undo_depth == 0 means unlimited.
11259         Converted printfs to conditionally compiled DEBUG_PRINTFs.
11260         
11261 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11263         * app/diagram.c:
11264         * app/group.c:
11265         * lib/object.h:
11266         * lib/render_object.c:
11267         * objects/ER/attribute.c:
11268         * objects/ER/entity.c:
11269         * objects/ER/participation.c:
11270         * objects/ER/relationship.c:
11271         * objects/FS/flow-ortho.c:
11272         * objects/FS/flow-poly.c:
11273         * objects/FS/flow.c:
11274         * objects/FS/function.c:
11275         * objects/UML/actor.c:
11276         * objects/UML/association.c:
11277         * objects/UML/class.c:
11278         * objects/UML/classicon.c:
11279         * objects/UML/component.c:
11280         * objects/UML/constraint.c:
11281         * objects/UML/dependency.c:
11282         * objects/UML/generalization.c:
11283         * objects/UML/implements.c:
11284         * objects/UML/large_package.c:
11285         * objects/UML/lifeline.c:
11286         * objects/UML/message.c:
11287         * objects/UML/note.c:
11288         * objects/UML/object.c:
11289         * objects/UML/realizes.c:
11290         * objects/UML/small_package.c:
11291         * objects/UML/state.c:
11292         * objects/UML/usecase.c:
11293         * objects/network/bus.c:
11294         * objects/standard/arc.c:
11295         * objects/standard/box.c:
11296         * objects/standard/ellipse.c:
11297         * objects/standard/image.c:
11298         * objects/standard/line.c:
11299         * objects/standard/polyline.c:
11300         * objects/standard/textobj.c:
11301         * objects/standard/zigzagline.c:
11302         Removed all traces of is_empty(). It doesn't work in an
11303         Undo/Redo world.
11305 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11307         * app/diagram.c:
11308         * app/group.[ch]:
11309         * app/undo.[ch]:
11310         Undoable grouping and ungrouping.
11312         * app/layer_dialog.c:
11313         * lib/diagramdata.[ch]:
11314         Undoable layer ops.
11316         * app/modify_tool.c:
11317         Undoable unconnect on handle move.
11319         * lib/orth_conn.[ch]:
11320         Working undoable add/remove segment.
11321         Removed endpoint_handles from OrthConn, renamed
11322         midpoint_handles to handles and put the endpoint
11323         handles there.
11325         * objects/standard/zigzagline.c:
11326         * objects/ER/participation.c:
11327         * objects/UML/association.c:
11328         * objects/UML/dependency.c:
11329         * objects/UML/generalization.c:
11330         * objects/UML/realizes.c:
11331         Update for the changes in OrthConn
11332         
11333 1999-07-23  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
11335         * configure.in: Added "de" to ALL_LINGUAS.
11337 1999-07-17  Alexander Larsson  <alla@lysator.liu.se>
11339         * dia.1:
11340         Fixed typo.
11342         * app/display.c:
11343         * po/da.po:
11344         * po/fr.po:
11345         * po/hu.po:
11346         * po/no.po:
11347         * po/pl.po:
11348         * po/sv.po:
11349         Don't have the <Display> etc part of the menu strings
11350         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
11352         * app/diagram.c:
11353         Don't have the <Display> etc part of the menu strings
11354         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
11355         Don't remove is_empty() objects, that don't work with undo.
11357         * lib/objchange.[ch]:
11358         New files.
11359         Definition of ObjectChange. This is essentially an Change
11360         exported to the object libs. It encapsulates a change made
11361         to an objects internals. It can be applied, reverted and freed.
11362         There are also utility functions for doing ObjectChanges that
11363         only get/set the whole state of an object to store the change.
11364         This cannot be used when the object change deletes or adds a
11365         object which has references from other objects, eg. Handles which
11366         might be connected.
11368         * lib/Makefile.am:
11369         Added objchange.c and objchange.h.
11371         * lib/dia_image.c:
11372         Return NULL when loading fails.
11374         * lib/diamenu.h:
11375         Menu callbacks return an ObjectChange.
11377         * lib/dummy_dep.h:
11378         Reference objchange.o
11380         * lib/focus.h:
11381         Key events return ObjectChange if they modify the object.
11383         
11384         * lib/object.h:
11385         Added object_add_handle_at() function.
11386         Apply properties returns an ObjectChange.
11387         Remove ObjectState and the get/set state functions, these
11388         don't always work. Use the new ObjectChange instead.
11389         
11390         * lib/object.c:
11391         Added object_add_handle_at() function implementation.
11392         
11393         * lib/orth_conn.[ch]:
11394         Use ObjectChange. Not finished yet.
11395         Removed get/set/free state functions
11397         * lib/poly_conn.[ch]:
11398         Use ObjectChange.
11399         Don't remove segments that are small.
11400         Removed get/set/free state functions
11402         * lib/text.[ch]:
11403         Use ObjectChange.
11404         Added functions to get/set all text attributes.
11406         * objects/standard/arc.c:
11407         * objects/standard/box.c:
11408         * objects/standard/ellipse.c:
11409         * objects/standard/image.c:
11410         * objects/standard/line.c:
11411         * objects/standard/polyline.c:
11412         * objects/standard/textobj.c:
11413         * objects/standard/zigzagline.c:
11414         Use ObjectChange.
11415         fixed bug in image_set_state.
11416         zigzagline.c not finished yet.
11418         * app/disp_callbacks.c:
11419         Use ObjectChange that are returned from menu callbacks and
11420         key_events for undo.
11422         * app/properties.c:
11423         Use ObjectChange that are returned from properties apply
11424         for undo.
11426         * app/undo.c:
11427         * app/undo.h:
11428         New undo type: ObjectChangeChange. This wraps a change to the
11429         internals of an object (and ObjectChange) in code that does
11430         app specific stuff (object_add_updates etc.)
11432 1999-07-11  Alexander Larsson  <alla@lysator.liu.se>
11434         * lib/orth_conn.[ch]:
11435         Added code for add/delete segment.
11437         * objects/standard/zigzagline.c:
11438         Use the new orth_conn code.
11439         
11441 1999-07-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
11443         * objects/FS/Makefile.am
11444         Removed fs.h from sources.
11446         * Makefile.am
11447         * dia.1
11448         Added man page.
11450 1999-07-07  Alexander Larsson  <alla@lysator.liu.se>
11452         * app/disp_callbacks.c (ddisplay_canvas_events):
11453         Fix for bug. Every other arrow-key press got lost.
11454         patch from Mr. Data Esq. <data@r47h102.res.gatech.edu>
11456         * INSTALL:
11457         change automake.sh to autogen.sh
11458         
11459 1999-06-24  Alexander Larsson  <alla@lysator.liu.se>
11461         * app/diagram.c:
11462         Don't remove 'empty' objects.
11463         This violent destruction of objects won't work
11464         with the new undo framework.
11466         * app/disp_callbacks.c:
11467         Save undo info for object menu calls and key_events.
11469         * app/properties.c:
11470         Save undo info on properties apply.
11472         * lib/dia_image.[ch]:
11473         Add refcounting for images.
11475         * app/render_eps.c:
11476         * app/render_gdk.c:
11477         * lib/render.h:
11478         DiaImage * -> DiaImage
11480         * app/undo.[ch]:
11481         Add undo functions for object state changes.
11483         * lib/focus.h:
11484         * lib/text.c:
11485         change of semntics for focus->key_event.
11486         Now returns TRUE if the object recieving the event
11487         was changed.
11489         * lib/object.h:
11490         Comment changes.
11492         * lib/orth_conn.[ch]:
11493         Don't automatically create and delete segments when
11494         handles are moved. This is incompatible with undo.
11495         Added state get, set and free functions.
11497         * lib/orth_conn.[ch]:
11498         Added state get, set and free functions.
11500         * objects/UML/object.c:
11501         * objects/UML/uml.c:
11502         Fixed typo "UML - Objet" -> "UML - Object".
11503         Saved old for backwards compatibility.
11505         * objects/standard/arc.c:
11506         * objects/standard/box.c:
11507         * objects/standard/ellipse.c:
11508         * objects/standard/image.c:
11509         * objects/standard/line.c:
11510         * objects/standard/polyline.c:
11511         * objects/standard/textobj.c:
11512         * objects/standard/zigzagline.c:
11513         Added get/set state functions.
11514         Textobj has a redo crash-bug.
11515         Zigzagline needs object menus to add segments.
11516         
11518 1999-06-20  Alexander Larsson  <alla@lysator.liu.se>
11520         * app/render_eps.c (set_dashlength):
11521         Don't generate eps files with zero dash-length.
11523 1999-06-16  Alexander Larsson  <alla@lysator.liu.se>
11525         * app/commands.c:
11526         * app/create_object.c:
11527         * app/undo.[ch]:
11528         Finished undo for create and paste.
11529         
11530         * lib/object.h:
11531         Started properties undo.
11533 1999-06-14  Alexander Larsson  <alla@lysator.liu.se>
11535         * TODO:
11536         Added resizeable groups.
11538         * app/app_procs.c:
11539         Removed unused variable.
11541         * app/commands.c:
11542         * app/undo.[ch]:
11543         Undo/redo for cut/delete done.
11545         * app/create_object.c:
11546         * app/modify_tool.c:
11547         * lib/diagramdata.[ch]:
11548         * app/diagram.[ch]:
11549         renamed diagram_add_selected -> diagram_select
11550         renamed diagram_remove_selected -> diagram_unselect
11551         
11552         * app/properties.[ch]:
11553         Added properties_hide_if_shown() function.
11555 1999-06-13  Alexander Larsson  <alla@lysator.liu.se>
11557         * app/undo.[ch]:
11558         * app/Makefile.am:
11559         Undo functions.
11560         
11561         * app/commands.[ch]
11562         * app/modify_tool.[ch]
11563         * app/object_ops.[ch]
11564         * app/connectionpoint_ops.c
11565         * app/menus.c
11566         Use undo functions.
11567         WARNING: Not finished. Will break.
11568         Finished: move object, move handle.
11570         * app/diagram.[ch]
11571         Added diagram_selected_break_external() function.
11572         It removes all connections between selected objects
11573         and non-selected.
11574         Add undo stack to Diagram.
11575         
11576         * lib/diagramdata.[ch]
11577         Added layer_remove_objects() function
11578         
11579 1999-06-11  Fredrik Hallenberg  <hallon@lysator.liu.se>
11581         * objects/FS/Makefile.am
11582         * objects/sybase/Makefile.am
11583         Now uses GNOME_CFLAGS.
11585         * app/app_procs.c
11586         Now compiles with GNOME even if popt.h isn't available.
11588 1999-06-10  Alexander Larsson  <alla@lysator.liu.se>
11590         * configure.in
11591         * objects/Makefile.am
11592         * objects/sybase/*
11593         First version of sybase objects from
11594         Brian Bruns <camber@umcc.ais.org>
11596 1999-06-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
11598         * configure.in
11599         Added fr to ALL_LINGUAS
11601 1999-06-09  Fredrik Hallenberg  <hallon@lysator.liu.se>
11603         * configure.in
11604         * app/app_procs.c
11605         Popt-code is activated if popt is available.
11607 1999-06-08  Alexander Larsson  <alla@lysator.liu.se>
11609         This is a patch from David Thompson <dcthomp@mail.utexas.edu>
11610         
11611         * lib/orth_conn.[ch]:
11612         Added orthconn_get_middle_handle()
11614         * lib/text.[ch]:
11615         Added text_set_cursor_at_end()
11616         
11617         * objects/FS/*
11618         Added first version of functions structure diagrams.
11619         
11620 1999-05-24  Alexander Larsson  <alla@lysator.liu.se>
11622         * app/modify_tool.c:
11623         Include math.h to remove warning.
11625         * app/commands.c (dialogs_properties_callback):
11626         Bring up correct properties dialog when selected
11627         from menu.
11628         From Dan Cohn <dan@internap.com>
11630 1999-05-20  Alexander Larsson  <alla@lysator.liu.se>
11632         Patch from Lars R. Clausen 
11633         
11634         * app/modify_tool.c:
11635         Changed abs to fabs.
11637 1999-05-19  Alexander Larsson  <alla@lysator.liu.se>
11639         * INSTALL: 
11640         * configure.in:
11641         Require Gtk+ 1.2.0
11643 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
11645         Patches from Dan Cohn <dan@internap.com>
11646         
11647         * app/commands.[ch]: 
11648         * app/display.[ch]: 
11649         * app/menus.c:
11650         * app/preferences.[ch]:
11651         Implements ability to turn on/off connection points in
11652         current drawing and in global prefs.
11654 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
11656         * lib/widgets.c (dia_line_style_selector_init): 
11657         Fixed warnings.
11658         
11659         * lib/diagramdata.c (layer_update_extents):
11660         Fixed uninitialized variable error.
11662 1999-05-17  Alexander Larsson  <alla@lysator.liu.se>
11664         * lib/dia_image.c:
11665         Made some changes to the gdk_imlib visual+colormap setup.
11667 1999-05-17  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11669         * objects/UML/usecase.c: 
11670        * objects/UML/lifeline.c
11671         Fine tunning.
11673         * objects/UML/object.c: 
11674         * objects/UML/message.c: 
11675         Changed font from Courier to Helvetica.
11677         * lib/widgets.c: 
11678         * lib/widgets.h:
11679         Added dash lenth to the LineStyle widget.
11680         
11681         * objects/standard/ellipse.c :
11682         * objects/standard/zigzagline.c: 
11683         * objects/standard/line.c: 
11684         Added dash lenght property.
11686 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
11688         * app/render_eps.c:
11689         First shot at latin1 encoded eps files.
11690         Works, but the eps files get a bit large.
11691         
11692 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
11694         * objects/UML/class.[ch]: 
11695         * objects/UML/uml.[ch]:
11696         Reverted the line wrap changes.
11697         Some day this might return, but it has to be selectable and
11698         default to off for loaded objects, otherwise it breaks file
11699         format compatibility.
11700         There was also some complains about how it looked, so a making it
11701         selectable is good for this too.
11703 1999-05-15  Alexander Larsson  <alla@lysator.liu.se>
11705         * objects/UML/class.[ch]:
11706         Some indentation cleanup.
11707         Added wrap_lines variable to class.
11708         I'll fix the line break stuff tomorrow.
11710 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
11712         * lib/dummy_dep.h:
11713         Added ref to poly_conn.o.
11715         * objects/standard/polyline.c (polyline_draw): 
11716         * objects/standard/zigzagline.c (zigzagline_draw): 
11717         * objects/standard/arc.c (arc_draw): 
11718         * objects/standard/line.c (line_draw):
11719         Draw lines before arrows. This makes hollow arrows not
11720         show the line.
11722 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
11724         Changes from Kim Peasley <kpeasley@ior.com> 
11725                 
11726         * objects/UML/class.c:
11727         Break lines with long operations so classes won't be
11728         so wide.
11730         * objects/UML/uml.[ch]:
11731         Helperfunctions for the above.
11732         
11733         * objects/UML/objects.c:
11734         Fix bug that duplicated the text in the attributes
11735         textwidget each time the object was selected.
11736         
11737 1999-05-12  Alexander Larsson  <alla@lysator.liu.se>
11739         Changes from Lars R. Clausen <lrclause@cs.uiuc.edu>
11740         
11741         * app/modify_tool.c:
11742         * app/modify_tool.h:
11743         Control-drag is restricted to vertical/horizontal movement
11744         
11745         * lib/object.h:
11746         ModifierKeys argument added to object_move_handle
11748         * app/connectionpoint_ops.c:
11749         * app/create_object.c:
11750         * app/object_ops.c:
11751         * objects/ER/attribute.c:
11752         * objects/ER/entity.c:
11753         * objects/ER/participation.c:
11754         * objects/ER/relationship.c:
11755         * objects/UML/actor.c:
11756         * objects/UML/association.c:
11757         * objects/UML/class.c:
11758         * objects/UML/classicon.c:
11759         * objects/UML/component.c:
11760         * objects/UML/constraint.c:
11761         * objects/UML/dependency.c:
11762         * objects/UML/generalization.c:
11763         * objects/UML/implements.c:
11764         * objects/UML/large_package.c:
11765         * objects/UML/lifeline.c:
11766         * objects/UML/message.c:
11767         * objects/UML/note.c:
11768         * objects/UML/object.c:
11769         * objects/UML/realizes.c:
11770         * objects/UML/small_package.c:
11771         * objects/UML/state.c:
11772         * objects/UML/usecase.c:
11773         * objects/network/bus.c:
11774         * objects/standard/arc.c:
11775         * objects/standard/box.c:
11776         * objects/standard/ellipse.c:
11777         * objects/standard/image.c:
11778         * objects/standard/line.c:
11779         * objects/standard/polyline.c:
11780         * objects/standard/textobj.c:
11781         * objects/standard/zigzagline.c:
11782         Changed calls to move_handle to pass the new argument.
11783         
11784         * lib/widgets.c:
11785         * lib/widgets.h:
11786         Default line width, color etc #define'd
11787         
11788         * po/da.po:
11789         Updates of danish menus
11791 1999-05-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
11793         * dia.xpm
11794         * dia_gnome_icon.png
11795         * dia_gnome_menu_icon.png
11796         * dia_logo.png
11797         Graphics by Toussaint Frédéric <ftoussin@club-internet.fr>.
11799         * app/commands.c
11800         About dialog shows dia_logo.png. Removed the GNOME about dialog.
11802         * Makefile.am
11803         Distribute the icons and install logo in pkgdatadir.
11804         
11805         * app/Makefile.am
11806         Added DATADIR-define.
11807         
11808 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
11809         Patches from Enrico Scholz <enrico.scholz@wirtschaft.tu-chemnitz.de>
11811         * dia.spec:
11812         Updated version number, made setup quiet, can build from cvs,
11813         --enable-gnome, now using automake 1.4 DESTDIR feature, install-strip
11815         * lib/Makefile.am
11816         * objects/ER/Makefile.am
11817         * objects/UML/Makefile.am
11818         * objects/network/Makefile.am
11819         * objects/standard/Makefile.am
11820         now builds better with gnome
11822         * objects/UML/class_dialog.c
11823         Fixed typo -> po files must be updated too!!
11824         
11825 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
11827         * lib/dummy_dep.h:
11828         Added reference so that widgets.o gets linked to the app.
11830 1999-04-23  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11832         * objects/UML/classicon.c: 
11833         Added object mode.
11835         * objects/UML/actor.c: 
11836         Changed position of 'snap-to-grid' so connection points are
11837         in the grid.
11839 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
11841         * objects/UML/classicon.c:
11842         Changed position of 'snap-to-grid'.
11843         By Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
11844         
11845 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
11847         * objects/network/antenna.c
11848         * objects/network/flash.c
11849         * objects/network/hub.c
11850         * objects/network/modem.c
11851         * objects/network/modularswitch.c
11852         * objects/network/rj45plug.c
11853         * objects/network/scead-plug.c
11854         * objects/network/network.c
11855         * objects/network/Makefile.am
11856         * objects/network/pixmaps/antenna.xpm
11857         * objects/network/pixmaps/flash.xpm
11858         * objects/network/pixmaps/hub.xpm
11859         * objects/network/pixmaps/modem.xpm
11860         * objects/network/pixmaps/modularswitch.xpm
11861         * objects/network/pixmaps/rj45plug.xpm
11862         * objects/network/pixmaps/sceadplug.xpm
11863         * objects/network/pixmaps/Makefile.am
11864         Lots of new network objects from
11865         Roland Steinbach <roland@support-system.com>.
11867 1999-04-15  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11869         * objects/UML/classicon.c: 
11870         Fixed connection positions, saved type as int (it has 3 states),
11871         and other small fixes.
11872         
11873 1999-04-14  Alexander Larsson  <alla@lysator.liu.se>
11875         * app/preferences.c:
11876         * app/load_save.c:
11877         Added preference compress_save. It lets dia save uncompressed
11878         xml files.
11880         * objects/UML/class.c:
11881         Fixed bug with size calculation on methods that had class scope.
11882         
11883 1999-04-13  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11885         * objects/UML/usecase.c: 
11886         Added collaboration mode
11887         Fixed connection points with text > ellipse bug and other 
11888         small things
11890         * objects/UML/state.c:
11891         Fixed bug of bad position of text after being either end
11892         or begin, moved and returned to text
11894 1999-04-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
11896         * app/preferences.c: Add prototype declaration for prefs_apply.
11898 1999-04-11  Alexander Larsson  <alla@lysator.liu.se>
11900         * app/preferences.c:
11901         Added 'ok' button.
11902         Apply don't hide window.
11904         * app/properties.c:
11905         Add 'ok' button.
11907         * objects/UML/object.c:
11908         * objdcts/UML/state.c:
11909         Some data was not copied on copy.
11911         This patch is from
11912         Ben Hochstedler <benh@eeyore.moneng.mei.com>
11914 1999-04-09  Alexander Larsson  <alla@lysator.liu.se>
11916         * app/Makefile.am:
11917         Changed link order between X and libxml.
11918         Some people had problems with an old libz in their
11919         x11 directory.  
11921 1999-04-09  Kjartan Maraas  <kmaraas@online.no>
11923         * po/no.po: updated translation.
11924         
11925 1999-04-08  Lars R. Clausen <lrclause@cs.uiuc.edu>
11927         * lib/message.c (message_error):
11928         Fixed small error.
11930         * app/commands.[ch]:
11931         * app/diagram.[ch]:
11932         Added begining of xfig importing
11934 1999-04-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11936         * objects/UML/pixmaps/state.xpm: 
11937         * objects/UML/state.c: 
11938         New UML object state machine.
11940         * objects/UML/uml.c:
11941         * objects/UML/Makefile.am:
11942         * objects/UML/pixmaps/Makefile.am:
11943         Added the state object.
11944         
11945 1999-04-08  Alejandro Aguilar Sierra  <ale@bucefalo>
11947         * objects/UML/usecase.c: 
11948         Added dialog to allow move text outside the ellipse.
11950 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
11952         * Released Dia 0.41
11953         Tag called DIA_0_41
11955         * NEWS:
11956         Updates for 0.41.
11957         
11958 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
11960         * configure.in:
11961         Updated version number to 0.41
11963         * po/*.po:
11964         Update po-files
11966 1999-04-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
11968         * app/app_procs.c
11969         Changed errormessage for --export-to-ps. Removed call to 
11970         g_log_set_always_fatal().
11972         * app/diagram.c
11973         * app/disp_callbacks.c
11974         * app/load_save.c
11975         (i18n) Removed gettext from some debugmessages.
11977         * app/menus.c
11978         Small fix in GNOME-menus. Added warning that will help track
11979         problems with translations.
11981         * po/sv.po
11982         (i18n) Updated swedish translation.
11984 1999-04-02  Alexander Larsson  <alla@lysator.liu.se>
11986         * po/da.po:
11987         New updates
11989 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
11991         * po/da.po:
11992         * po/no.po:
11993         Some fixes.
11994         
11995 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
11997         * po/da.po:
11998         (i18n) Updated the danish translation.
11999         From Lars R. Clausen.
12001 1999-04-01  Fredrik Hallenberg  <hallon@lysator.liu.se>
12003         * app/menus.c
12004         (i18n) The popup menu is translated now.
12006         * po/sv.po
12007         (i18n) Updated swedish translation.
12009 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
12011         * Released Dia 0.40
12012         Tag called DIA_0_40
12014         * NEWS:
12015         Updated for new release
12016         
12017 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
12019         * objects/network/bus.c:
12020         Added initialization of properties dialog to NULL.
12022         * app/commands.c (edit_cut_callback):
12023         Update menu sensitivity when cut object.
12025         * app/modify_tool.c (click_select_object):
12026         * app/modify_tool.c (modify_button_release): 
12027         Call diagram_update_menu_sensitivity() when
12028         selecting objects to update stuff that depends
12029         on selected/not selected.
12031 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
12033         * Makefile.am:
12034         Change order of subdir so that libintl.a builds.
12035         Now passed make distcheck.
12037 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
12039         * lib/font.c (init_x11_font):
12040         Stupid bug fixed.
12042 1999-03-28  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12044         * objects/UML/pixmaps/classicon.xpm: 
12045         * objects/UML/classicon.c:
12046         * objects/UML/uml.c:
12047         Added the class stereotype icon objects.
12049         * app/commands.c:
12050         Changed default ps extension from .ps to .eps.
12051         
12052 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
12054         * lib/Makefile.am:
12055         Added diamenu.h and intl.h
12057         * lib/font.c:
12058         Stupid typo fix.
12059         
12060         * objects/UML/pixmaps/Makefile.am:
12061         Added message.xpm
12063         * objects/standard/pixmaps/Makefile.am:
12064         Added image.xpm
12066 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
12068         * lib/font.c:
12069         Use a scalable font before fixed when real font not found.
12071         * app/commands.c:
12072         Removed warning.
12074         * objects/standard/image.c:
12075         Better handling of loading/saving of images.
12077         * INSTALL:
12078         Added some text about cvs, fonts and rewrote some parts.
12080         * TODO:
12081         Updated with new stuff.
12082         
12083         * configure.in:
12084         Bump up version number to 0.40.
12085         
12086 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
12088         * app/display.c:
12089         Moved diagram_add_ddisplay() call into new_display().
12090         Fixed new_display to not use uninitialized variables
12091         causing loaded files to show up as black (or garbage).
12092         
12093         * app/commands.c:
12094         * app/app_procs.c:
12095         Removed unneeded calls to diagram_add_ddisplay().
12096         
12097 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
12099         * objects/UML/lifeline.c:
12100         Fixed bug in copy.
12101         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
12103         * objects/UML/message.c:
12104         Fixed bug loading messages with null-text.
12105         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
12107 1999-03-27  Fredrik Hallenberg  <hallon@lysator.liu.se>
12109         * po/sv.po
12110         Updated swedish translation.
12112         * app/menus.c
12113         (GNOME) Removed help-browser from help menu. Fixed typo.
12115         * app/interface.c
12116         (GNOME) Accelerators in diagrams should work now. 
12118 1999-03-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
12120         * app/app_procs.c
12121         * app/commands.c
12122         * app/defaults.c
12123         * app/disp_callbacks.c
12124         * app/display.c
12125         * app/interface.c
12126         * app/menus.c
12127         * app/preferences.c
12128         * app/render_eps.c
12129         * lib/diagramdata.c
12130         * lib/font.c
12131         * lib/message.c
12132         * lib/widgets.c
12133         * objects/ER/*.c
12134         * objects/UML/*.c
12135         * objects/network/*.c
12136         * objects/standard/*.c
12137         * po/update_pofiles_in.sh
12138         * po/POFILES.in
12139         More i18n. All strings (expect rare debug messages) can be
12140         translated now. Moved intl.h from app to lib. Updated
12141         update_pofiles_in.sh to check all .c-files.
12143 1999-03-23  Alexander Larsson  <alla@lysator.liu.se>
12145         * app/disp_callbacks.c (ddisplay_canvas_events):
12146         Don't drop keys while num-lock, scroll-lock etc is on.
12148 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12150         * app/render_eps.c (draw_image):
12151         Fixed exporting of images.
12152         Still not perfect, but not outright buggy.
12153         
12154 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12156         * configure.in:
12157         * po/hu.po:
12158         Added hungarian translation. By Shooby Ban <bansz@szif.hu>.
12160         * app/Makefile.am:
12161         Added $* to the dia call in run_dia.sh
12163 1999-03-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12164         
12165         * lib/color.[ch]:
12166         Added color_equals() call.
12168         * objects/standard/arc.c:
12169         * objects/standard/line.c:
12170         Don't save unneccesary data.
12171         
12172         * objects/standard/box.c:
12173         * objects/standard/ellipse.c:
12174         * objects/standard/image.c:
12175         * objects/standard/polyline.c:
12176         * objects/standard/zigzagline.c:
12177         Share properties dialog.
12178         Don't save unneccesary data.
12179         
12180 1999-03-22  Seth Alves  <alves@hungry.com>
12182         * app/menus.c:
12183         * app/diagram.c:
12184         * app/display.c:
12185         small changes so that gnome menus aren't broken
12186         
12187 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12189         * po/da.po:
12190         Added danish translation from lrclause@cs.uiuc.edu.
12192         * po/POFILES.in:
12193         Updated file.
12195         * po/update_pofiles_in.sh:
12196         Added script that updates POFILES.in.
12197         This should probably be run automatically from somewhere.
12199 1999-03-19  Alexander Larsson  <alla@lysator.liu.se>
12201         * app/diagram.[ch]:
12202         Added function diagram_update_menu_sensitivity() which
12203         sets the sensitivity of some menu items. This function
12204         is called at each diagram state change (from diagram_modified()).
12205         This is needed  because otherwise the keyboard accelerators
12206         don't work correctly.
12208         * app/display.[ch]:
12209         Changed display_set_menu_sensitivity() to display_update_menu_state().
12210         Moved lots of code to diagram_update_menu_sensitivity() in
12211         diagram.c. Optimized to only look up menu-items from path:s once.
12212         
12213         * app/disp_callbacks.c:
12214         * app/interface.c:
12215         When we get a GDK_FOCUS_CHANGE, update menu sensitivity.
12216         Need to set GDK_FOCUS_CHANGE_MASK.
12217         
12218         * app/create_object.c:
12219         Call diagram_modified when an object has been created and
12220         selected so that the menu sensitivity is updated. 
12222         * app/menus.[ch]:
12223         removed menus_set_sensitive() and menus_set_state(). Exported
12224         renamed function menus_get_item_from_path().
12226 1999-03-15  Alexander Larsson  <alla@lysator.liu.se>
12228         * app/disp_callbacks.c:
12229         Show (empty) object menus on object that has none.
12230         Show title on object menus.
12232         * app/display.c:
12233         Set zoom factor correctly when opening new displays.
12234         Better setting of scrollbars.
12236         * app/grid.c:
12237         * app/menus.h:
12238         Some reformating cleanup.
12240         * lib/diamenu.h:
12241         Added title to object menus.
12243         * objects/*/*.c:
12244         Added object menu method (NULL-valued) to all objects.
12246         * objects/standard/polyline.c:
12247         Added title to object menu.
12249 1999-03-14  Alexander Larsson  <alla@lysator.liu.se>
12251         * app/preferences.[ch]:
12252         New files. Implements the preferences dialog and
12253         loading/saving of ~/.diarc.
12255         * app/Makefile.am:
12256         Added preferences.[ch].
12258         * app/app_procs.c:
12259         Load preferences on startup.
12261         * app/commands.[ch]:
12262         Added file_preferences_callback to show the preferences dialog.
12264         * app/create_object.c:
12265         Update extents when creating object.
12266         Use the reset_tools_after_create preferences setting.
12268         * app/display.c:
12269         Use preferences when creating new display.
12271         * app/menus.c:
12272         Add preferences to menu.
12274         * app/defaults.c:
12275         * app/layer_dialog.c:
12276         * app/properties.c:
12277         Don't allow shrinking of dialog.
12278         Add i18n of some strings.
12280 1999-03-11  Kjartan Maraas  <kmaraas@fib.hl.no>
12281         * po/no.po:
12282         Norwegian translation added.
12283         
12284 1999-03-11  Alexander Larsson  <alla@lysator.liu.se>
12286         * objects/standard/line.c: 
12287         * objects/standard/arc.c: 
12288         * objects/standard/polyline.c: 
12289         * objects/standard/zigzagline.c:
12290         Loading of arrow data fixed.
12292 1999-03-09  Alexander Larsson  <alla@lysator.liu.se>
12294         * app/commands.c:
12295         Update extents when saving and exporting to postscript.
12296         Fixes a bug with postscript bounding-box being wrong.
12298         * app/defaults.c:
12299         Changed border width from 5 to 2.
12301         * app/group.c:
12302         Move grouped objects by the move-point of the first object.
12303         Fixes bug that made all objects in the group be off-grid
12304         when moving the group, even though all objects was on-grid.
12306         * app/layer_dialog.c:
12307         Update extents when changing layer.
12309 1999-03-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12311        * objects/UML/uml.c: 
12312        * objects/UML/component.c: 
12313        * objects/UML/pixmaps/component.xpm: 
12314        Added the UML component object
12315         
12316 1999-03-04  Seth Alves  <alves@hungry.com>
12318         * objects/UML/generalization.c (generalization_create): avoid
12319         math on uninitialized genlz->text_width (NaN causes sigfpe)
12320         
12321         * objects/UML/realizes.c (realizes_create): same
12323         * objects/UML/dependency.c (dependency_create): same
12325 1999-03-01  Seth Alves  <alves@hungry.com>
12327         * app/display.c (ddisplay_active): don't fly a warning panel
12328         if ddisplay_active is called when no views are open.
12330         * app/commands.c (set_default_file_selection_directory): set
12331         file selector's default directory if there is already
12332         a document open.
12334 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12336         * INSTALL:
12337         New info about imlib requirements.
12339         * Configure.in:
12340         Added lib/pixmaps/Makefile to created makefiles.
12342         * app/app_procs.c:
12343         * app/commands.c:
12344         Change from obsoleted to newer gtk calls.
12345         
12346         * load_save.c:
12347         Pass filename of the diagram when loading and saving.
12348         This creates better oportunities to handle filename saving.
12350         * lib/object.h:
12351         Pass filenames to load and save methods.
12352         
12353         * lib/dia_image.[ch]:
12354         Added dia_image_get_broken() call that returns a image which
12355         is used for 'broken' images.
12356         
12357         * lib/pixmaps/.cvsignore:
12358         * lib/pixmaps/Makefile.am:
12359         * lib/pixmaps/broken.xpm:
12360         New files for the broken image bitmap.
12362         * lib/widgets.c:
12363         Fixed bug with double destroyed filedialog.
12365         * objects/*/*.c:
12366         Updated load and save prototypes to use the new filename argument.
12368         * objects/image.c:
12369         Render broken image instead of line when got no image.
12370         Use the new filename in load and save to save (if possible)
12371         relative pathnames and to better try to find loaded images.
12373 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12375         * TODO:
12376         Some updates to the todo file.
12377         
12378         * app/menus.c:
12379         * app/display.c:
12380         Place over/place over => sent to back/bring to front.
12381         Added some keyboard shortcuts to menus.
12382         
12383 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12385         * lib/dia_xml.c:
12386         Changed string saving/loading to a new method. This should
12387         be much better att handling &,<,> and whitespaces.
12388         Loading strings of the old kind is still supported for backwards
12389         compatibility.
12391         * samples/ER-demo.dia:
12392         * samples/UML-demo.dia:
12393         Updated to use the new strings.
12394         
12395         * app/load_save.c:
12396         statusbar modified update fix.
12398 1999-02-27  Seth Alves  <alves@hungry.com>
12400         * app/app_procs.c (app_init): added a --export-to-ps option
12401         which will cause dia to load a dia file and save it as ps
12402         and then exit.  this is a little bogus, because it still
12403         pops up a window.  this option only shows up if --enable-gnome
12404         is used
12406         * app/display.c (display_set_menu_sensitivity): no Edit/Delete
12407         menu when built with --enable-gnome
12409         * app/interface.c (create_display_shell): build status bar
12410         even if --enable-gnome is used
12412         * app/menus.c: menu fixes for --enable-gnome
12414         * app/commands.c (file_open_dialog_ok_callback): fixed up
12415         menus when --enable-gnome is used
12416         (file_export_to_eps_callback): set a default file name
12417         when dialog is created
12419 1999-02-27  Alexander Larsson  <alex@c125.ryd.student.liu.se>
12421         * objects/UML/association.c (association_create):
12422         Fixed usage of not initialized variable.
12423         Pointed out by Seth Alves <alves@hungry.com>.
12425 1999-02-24  Alexander Larsson  <alex@c125.ryd.student.liu.se>
12427         * configure.in:
12428         Fixed detection of gnome-xml.
12429         From Valtteri Vuorikoski <vuori@k.notcom.org>.
12430         
12431         * app/app_procs.c:
12432         Fixed error detection on dlsym calls. 
12433         From Valtteri Vuorikoski <vuori@k.notcom.org>.
12435 1999-02-23  Alexander Larsson  <alla@lysator.liu.se>
12437         * objects/UML/message.c (fill_in_dialog):
12438         Fixed warnings.
12440 1999-02-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12442         * objects/standard/zigzagline.c:
12443         * objects/standard/polyline.c:
12444         * objects/standard/line.c:
12445         * objects/standard/arc.c:
12446         * lib/widgets.h:
12447         * lib/arrows.h:
12448         * lib/widgets.c:
12449         Support for sizeable arrows. 
12451         * objects/standard/box.c:
12452         * objects/standard/ellipse.c:
12453         * objects/standard/image.c:
12454         Changed creation handle to lower-right.
12455         Transparent box/ellipse.
12456         
12457         * objects/standard/image.c:
12458         Better layout of properties boxes.
12460 1999-02-20  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12462         * objects/UML/message.c (fill_in_dialog): 
12463         Fixed dialog fill in. Common dialog for all messages.
12465         * objects/UML/object.c: 
12466         Added multiple instance. Dialog related bugs fixed.
12467         Common dialog for all instances. Completed copy and destroy.
12469         * objects/UML/lifeline.c (lifeline_load): 
12470         Conn initialization bug fixed and few bad loading prevention flags.
12471         Common dialog for all lifeline objects.
12472         
12473 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12475         * lib/dia_image.[ch]:
12476         More work on the DiaImage abstraction.
12477         
12478         * app/app_procs.c:
12479         * app/render_eps.c:
12480         * app/render_gdk.c:
12481         * objects/standard/image.c:
12482         Use the new DiaImage calls.
12484 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12486         * app/menus.c:
12487         * app/display.c:
12488         Reversed the meaning of align horizontal/vertical.
12490 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12492         * app/load_save.c (diagram_load):
12493         Statusbar update fix.
12495 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12497         * app/interface.c (create_display_shell):
12498         Fixed status bar size.
12499         
12500 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12502         * lib/dia_image.[ch]:
12503         Added extern declaration for dia_image_release.
12504         Removed dia_image_draw, as it's not neseccary.
12506 1999-02-14  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12507         
12508         * app/object_ops.c: 
12509         * app/menus.c: 
12510         Added equal distance alignment both vertical and horizontal.
12511         
12512         * objects/UML/object.c: 
12513         Added a couple of attributes to load/read that were missing.
12515         * objects/UML/lifeline.c: 
12516         Better handling of handles. Fixed another bug I forgot to add
12517         to my last patch.
12518         
12519 1999-02-13  Alexander Larsson  <alla@lysator.liu.se>
12521         Patch from Lars Clausen <lrclause@shasta.cs.uiuc.edu>
12522         
12523         * lib/dia_image.[ch]:
12524         * lib/Makefile.am:
12525         New files. DiaImage wraps the GdkImlibImage.
12527         * lib/render.h:
12528         * app/render_eps.c:
12529         * app/render_gdk.c:
12530         * lib/render_store.[ch]:
12531         * objects/standard/image.c:
12532         Use the new DiaImagetype.
12534         * lib/widgets.c:
12535         Removed unused variable to eliminate  warning.
12537 1999-02-11  Alexander Larsson  <alla@lysator.liu.se>
12539         * objects/standard/box.c:
12540         Added rounded corners on the box object.
12542         * lib/widgets.[ch]:
12543         Updated the DiaFileSelector widget.
12544         
12545 1999-02-09  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12547         * objects/UML/object.c (objet_draw): 
12548         Completed underlining of all object name lines. 
12550         * objects/UML/message.c (fill_in_dialog): 
12551         Fixed a bug that filled incorrectly the message's dialog.
12553         * objects/UML/lifeline.c (lifeline_load): 
12554         Some cleanning and fixed a couple of bugs that caused
12555         crashes after reading diagrams with lifelines.
12557         * lib/text.c: 
12558         Added flags to prevent crash with void strings
12560 1999-02-07  Matthias Köster <Matthias.Koester@Informatik.Uni-Oldenburg.DE>
12561         * app/display.[ch]:
12562         Added statusbar to the display widget. Currently shows the zoom
12563         factor and modified flag of the viewed diagram. The statusbar is
12564         updated upon calls to ddisplay_zoom and ddisplay_update_statusbar.
12565         This caused the following additions:
12566         
12567         * app/diagram.[ch]:
12568         Added function diagram_set_modified. Calls
12569         ddisplay_update_statusbar for all displays showing the modified diagram.
12570         Changed diagram_modified to call diagram_set_modified.
12571         
12572         * app/interface.c:
12573         Added the creation of the statusbar.
12574         
12575         * app/load_save.c:
12576         diagram_save now calls diagram_set_modified instead of setting
12577         dia->modified. Needed to force call to display_update_statusbar
12578         
12579         * app/commands.c:
12580         Changed the way view_show_all works. Now calls ddisplay_zoom
12581         instead of directly setting the zoom_factor, so the zoom factor is
12582         correctly shown in the statusbar.
12584         * app/magnify.c:
12585         Fixed rubberband zoom to use ddisplay_zoom().
12586         
12587 1999-02-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
12589         * app/app_procs.c
12590         Rudimentary GNOME session management.
12591         
12592         * app/disp_callbacks.c
12593         * app/interface.c
12594         * app/menus.c
12595         * app/menus.h
12596         GNOME menus. Problems: 
12597         Callbacks doesn't get user_data.
12598         Weird warnings when creating popup menus.
12599         menus_set_sensitive(), menus_set_state() doesn't work.
12601 1999-02-05  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12603         * configure.in:
12604         Add AM_PATH_GDK_IMLIB() call.
12606         * app/Makefile.am:
12607         Add gdk_imlib to linking flags.
12609         * app/app_procs.c:
12610         Init gdk_imlib.
12611         Print library-loading error messages on stdout too.
12613         * app/interface.c:
12614         Add standard image to toolbox.
12615         
12616         * app/render_eps.c: 
12617         Set a more reasonable dot length.  Fixed
12618         missing initialization of dot length.
12619         Added draw_image methods.
12621         * app/render_gdk.c (new_gdk_renderer): 
12622         Dot a bit wider.  Looks good in normal mode now.
12624         * objects/standard/image.c:
12625         * objects/standard/pixmaps/image.xpm:
12626         New files. Standard object for images.
12627         
12628         * app/render_eps.c (set_linestyle):
12629         * app/render_gdk.c (set_linestyle):
12630         * lib/widgets.c (dia_line_style_selector_init): 
12631         * lib/render.h: 
12632         New line style DOTTED.
12634         * lib/render.h:
12635         * lib/render_store.c:
12636         Change DrawImage call to use gdk_imlib.
12638         * lib/widgets.[ch]:
12639         Added widgets for selecting files.
12640         Added dotted to the linestyle selector.
12642 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
12644         * objects/network/printer.c:
12645         * objects/network/network.c:
12646         * objects/network/pixmaps/printer.xpm:
12647         * objects/network/.cvsignore:
12648         * objects/network/Makefile.am:
12649         * objects/network/pixmaps/Makefile.am:
12650         New printer object in network.
12651         From Martin Hawlisch <hawlisch@roxi.rz.fh-mannheim.de>
12653         * TODO:
12654         Added known XML bug.
12655         
12656 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
12658         * app/load_save.c:
12659         * lib/dia_xml.c:
12660         Reverted back from #include <gnome-xml/tree.h> to
12661         #include <tree.h> as this is fixed by the xml-config program.
12662         The former way broke for some people.
12663         Reported by blizzard@redhat.com.
12665         * objects/UML/lifeline.c:
12666         * objects/UML/message.c:
12667         * objects/UML/object.c:
12668         Removed some warnings.
12669         
12670 1999-02-04  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12672         * objects/UML/lifeline.c: 
12673         Fixed connection points over the life line when the focus of
12674         control is not drawn.
12676         * objects/UML/message.c: 
12677         Now a recursive message can be freely resized using the handles.
12679 1999-02-02  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12681         * objects/UML/lifeline.c:
12682         Added connection points.
12683         Added properties dialog with the option to draw/hide focus of control
12684         box and destruction mark.
12686         * objects/UML/object.c: 
12687         Added properties dialog and stereotype, explicit state and attributes. 
12688         It's also possible to mark the object as active.
12690         * objects/UML/pixmaps/object.xpm: 
12691         Cosmetic change.
12693         * objects/UML/message.c:
12694         Added "recursive" message type (was not necessary to use OrthConn).
12696 1999-02-02  Alexander Larsson  <alla@lysator.liu.se>
12698         * objects/standard/arc.c:
12699         Removed old debug code. Fixes a visual bug. From lrclause@cs.uiuc.edu.
12701 1999-02-01  Alexander Larsson  <alla@lysator.liu.se>
12703         Patch from Lars R. Clausen <lrclause@cs.uiuc.edu>
12704         
12705         * app/load_save.c:
12706         * lib/dia_xml.c:
12707         Update xml includes to gnome-xml/*.h.
12709         * objects/standard/arc.c:
12710         Only one property dialog per type.
12711         Fix arrows directions.
12713         * objects/standard/box.c:
12714         * objects/standard/ellipse.c:
12715         * objects/standard/textobj.c
12716         Added default properties dialog.
12717         
12719 1999-01-31  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12721         * objects/UML/Makefile.am: 
12722         * objects/UML/uml.c:
12723         * objects/UML/lifeline.c: 
12724         * objects/UML/object.c: 
12725         * objects/UML/message.c:
12726         * objects/UML/pixmaps/lifeline.xpm: 
12727         * objects/UML/pixmaps/object.xpm: 
12728         * objects/UML/pixmaps/message.xpm:
12729         Added 3 new UML objects for dynamic modeling. To avoid internal 
12730         conflicts, the name "objet" is used for object "object".        
12732         * lib/arrows.[ch]: 
12733         Added ARROW_HALF_HEAD arrow type to allow drawing asynchronous
12734         UML messages.
12735         
12736 1999-01-30  Alexander Larsson  <alla@lysator.liu.se>
12738         * app/display.[ch]:
12739         * app/modify_tool.c:
12740         Added autoscrolling while doing rubber-band select.
12741         This patch from Matthias Köster
12742         (Matthias.Koester@Informatik.Uni-Oldenburg.DE)
12743         
12745 1999-01-28  Alexander Larsson  <alla@lysator.liu.se>
12747         * app/defaults.[ch]:
12748         New files, deals with default properties dialog.
12750         * lib/diamenu.h:
12751         New file. Contains definitions for the new object menu.
12753         * lib/poly_conn.[ch]:
12754         New file. Base class for poly-line like objects.
12756         * objects/standard/polyline.c:
12757         * objects/standard/pixmaps/polyline.xpm:
12758         New files. Polyline object.
12760         * app/app_procs.c:
12761         Fixed bug with infinite loop when registering sheets.
12762         
12763         * app/commands.c:
12764         Removed unneccesary stuff.
12766         * app/disp_callbacks.c:
12767         Support for object menus.
12769         * app/interface.c:
12770         Added polyline to toolbox.
12771         Added call to tool_options_dialog_show() when double clicking on
12772         tool.
12774         * app/tool.[ch]:
12775         New function tool_options_dialog_show() for tool properties.
12777         * lib/arrows.[ch]:
12778         Added ARROW_NONE.
12780         * lib/object.h:
12781         Added ObjectType methods for handling object default dialogs.
12782         Added Object method for handling object_menu.
12783         Added unused methods to ObjectTypeOps for future binary
12784         compatibility.
12786         * lib/widgets.[ch]:
12787         Added DiaArrowTypeSelector widget.
12789         * objects/standard/arc.c:
12790         * objects/standard/zigzagline.c:
12791         Added support for default properties.
12793         * objects/standard/line.c:
12794         Added support for default properties.
12795         Just use one properties dialog for all line objects. NOTE: This
12796         seems to have a bug. We're working on it.
12798         * standard/standard.c:
12799         Add the polyline object.
12801 1999-01-27  Alexander Larsson  <alla@lysator.liu.se>
12803         * app/modify_tool.c:
12804         Commented out buggy transitive select function. It wasn't really
12805         meant to go into cvs.
12806         
12808 1999-01-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
12810         * autogen.sh:
12811         * acconfig.h:
12812         * configure.in:
12813         * Makefile.am:
12814         * app/Makefile.am:
12815         * po/POTFILES.in:
12816         * app/intl.h
12817         i18n-support.
12819         * po/sv.po:
12820         Swedish translation. Not completed.
12821         
12822         * configure.in:
12823         * acconfig.h:
12824         Added possibility to enable GNOME specific code with configure.
12826         * configure.in:
12827         Added possibility to set debug level with configure.
12829         * commands.[hc]:
12830         Added about dialog.
12832         * app_procs.c
12833         * commands.c
12834         * interface.c
12835         * menus.c
12836         Added some GNOME specific code. Not ready for use.
12838 1999-01-24  Alexander Larsson  <alla@lysator.liu.se>
12840         * INSTALL:
12841         Added text about needing gtk 1.1.13 and gnome-xml.
12842         
12843         * NEWS:
12844         Described changes since last version (0.20).
12846         Released version 0.30, tagged DIA_0_30.
12848 1999-01-22  Alexander Larsson  <alla@lysator.liu.se>
12850         * app/magnify.c (magnify_button_release):
12851         Fixed a problem when zooming in on a very small box would
12852         not release the grabbed pointer-focus.
12854 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
12856         * app/load_save.c (diagram_load):
12857         Be somewhat more robust when loading files that
12858         are not diagrams.
12859         
12860 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
12862         * app/app_procs.c:
12863         * objects/ER/er.c:
12864         * objects/UML/uml.c:
12865         * objects/network/network.c:
12866         * objects/standard/standard.c:
12867         Added versioning of object libraries.
12869         * app/create_object.c:
12870         Don't change tool when an object is created.
12871         
12872         * objects/network/network.c:
12874         * TODO:
12875         Update
12877 1999-01-19  Alexander Larsson  <alla@lysator.liu.se>
12879         * configure.in:
12880         Updated gtk requirement to Gtk+ 1.1.13.
12882         * app/display.c:
12883         Always add one screenful of scrolling space on
12884         each side of a diagram window.
12886 1999-01-19  Jeff Garzik  <jgarzik@pobox.com>
12888         * autogen.sh:
12889         Tell automake to auto-install missing files.
12891         * app/menus.c:
12892         Renamed deprecated Gtk+ function.
12894 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
12896         * Makefile.am:
12897         * configure.in:
12898         * samples/Makefile.am:
12899         * samples/ER-demo.dia:
12900         * samples/UML-demo.dia:
12901         Added samples directory.
12902         Added samples for ER and UML.
12903         
12904         * app/commands.c:
12905         * app/disp_callbacks.c:
12906         * app/menus.c:
12907         Zoom is done by sqrt(2) instead of 2.
12908         Lots of more zoom options in the menu.
12910         * objects/ER/relationship.c:
12911         Relationships have 8 connectionpoints instead of 4.
12913         * objects/UML/class.c:
12914         UML class name font a bit smaller.
12915         Fixed stupid bug in the copy operation.
12916         
12917         * app/display.c:
12918         Displays are opened at 500x400 instead of 256x256.
12920         * app/load_save.c:
12921         Fixup of internal error message.
12923         * app/color_area.c:
12924         * app/diagram.c:
12925         * app/modify_tool.c:
12926         * lib/object.c:
12927         Removed debug printf's.
12928         
12929         * TODO (BUGS):
12930         Added new known bug.
12932 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
12934         * app/interface.c:
12935         * app/menus.c:
12936         Fixed so accelerator groups work in all windows.
12937         Updated to new gtk function names.
12939         * TODO (BUGS):
12940         Removed fixed bug.
12942         * app/display.c:
12943         Updated to new gtk function names.
12944         Set sensitivity of the align menu items.        
12946         * objects/ER/pixmaps/Makefile.am:
12947         * objects/UML/pixmaps/Makefile.am:
12948         * objects/network/pixmaps/Makefile.am:
12949         Fix so that make dist works.
12951         * app/app_procs.c:
12952         * app/color_area.c:
12953         * app/commands.c:
12954         * app/diagram.c:
12955         * app/grid.c:
12956         * app/layer_dialog.c:
12957         * app/load_save.c:
12958         * app/object_ops.c:
12959         * app/properties.c:
12960         * lib/diagramdata.[ch]: 
12961         * lib/message.c:
12962         * lib/objects/ER/attribute.c:
12963         * lib/objects/ER/entity.c:
12964         * lib/objects/ER/participation.c:
12965         * lib/objects/ER/relationship.c:
12966         * lib/objects/ER/.c:
12967         * objects/UML/actor.c:
12968         * objects/UML/association.c:
12969         * objects/UML/class_dialog.c:
12970         * objects/UML/dependency.c:
12971         * objects/UML/generalization.c:
12972         * objects/UML/large_package.c:
12973         * objects/UML/realizes.c:
12974         * objects/UML/.c:
12975         * objects/UML/.c:
12976         Updated to new gtk function names.
12977         Removed warnings.
12979 1999-01-15  Alexander Larsson  <alla@lysator.liu.se>
12981         * TODO:
12982         Update TODO.
12984         * app/app_procs.c:
12985         Fixed loading of diagrams specified as arguments.
12987         * objects/ER/attribute.c:
12988         * objects/ER/entity.c:
12989         * objects/ER/er.c:
12990         * objects/ER/participation.c:
12991         * objects/ER/relationship.c:
12992         Updated the ER objects.
12993         
12995 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
12997         * configure.in:
12998         * app/Makefile.am:
12999         * objects/Makefile.am:
13000         * objects/ER/attribute.c:
13001         * objects/ER/entity.c:
13002         * objects/ER/er.c:
13003         * objects/ER/participation.c:
13004         * objects/ER/relationship.c:
13005         * objects/ER/pixmaps/Makefile.am:
13006         * objects/ER/pixmaps/attribute.xpm:
13007         * objects/ER/pixmaps/entity.xpm:
13008         * objects/ER/pixmaps/participation.xpm:
13009         * objects/ER/pixmaps/relationship.xpm:
13010         * objects/ER/pixmaps/weakentity.xpm:
13011         First commit of entity relationship objects.
13012         These were done by hallon@lysator.liu.se.
13013         There are still stuff to do on these.
13014         
13015 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
13017         * TODO:
13018         Updates.
13020         * app/diagram.[ch]:
13021         Change diagram_remove_all_selected to take new argument
13022         delete_empty. Empty objects are deleted only if it is TRUE.
13023         Removed call to close_eps_renderer. This is now done in end_render
13024         in the eps renderer.
13026         * app/create_object.c:
13027         * app/layer_dialog.c:
13028         Update calls to diagram_remove_all_selected.
13030         * app/commands.c:
13031         Update calls to diagram_remove_all_selected.
13032         Some code reformating.
13033         Changed order of adding updates i align_h and align_v.
13035         * app/modify_tool.c:
13036         Update calls to diagram_remove_all_selected.
13037         Added pointer grab when doing rubber-band selection, this fixes
13038         the bug when draging the box over to another window.
13040         * app/connectionpoint_ops.[ch]:
13041         diagram_update_connections_object changed to take an argument
13042         update_nonmoved. This lets connections that has not moved, but
13043         the stuff they're connected to has been moved work.
13044         Update calls to the new diagram_update_connections_object.
13046         * app/properties.c:
13047         Update calls to the new diagram_update_connections_object.
13048         Update extents when properties are applied.
13049         
13050         * app/disp_callbacks.c:
13051         Added support for zooming with the '+' and '-' keys.
13053         * app/menus.c:
13054         Removed old keyboard shortcuts for zoom.
13056         * lib/render.h:
13057         Added calls begin_render and end_render to renderer.
13058         These can be used for setup and cleanup.
13060         * lib/diagramdata.c:
13061         Added calls to begin_render and end_render in data_render.
13063         * app/render_gdk.c:
13064         Added begin_render and end_render.
13066         * app/render_eps.[ch]:
13067         Added begin_render and end_render.
13068         Moved close_eps_renderer code to end_render.
13069         Various fixes to the generated eps code. This fixes importing
13070         generated eps into LYX.
13071         
13072 1999-01-12  Alexander Larsson  <alla@lysator.liu.se>
13074         * TODO:
13075         Update of todo.
13076         
13077         * app/menus.c:
13078         Menus for alignment updated.
13080         * app/object_ops.[ch]:
13081         Functions for object alignment updated.
13083         * app/commands.[ch]:
13084         Object alignment callbacks updated.
13085         New diagrams are called Untitled-<nr>.
13087         * app/layer_dialog.c:
13088         Active layer selected when showing layers from new
13089         diagram.
13091         * app/load_save.c:
13092         Compress xml files when saving.
13093         Use xml namespace 'dia'.
13095         * lib/object.h:
13096         Minor comment update.
13098         * objects/UML/class_dialog.c:
13099         Cleanup of the gkt_list_item moving code.
13100         Fixed bug with update of operation when moving parameters.
13102 1999-01-10  Alexander Larsson  <alla@lysator.liu.se>
13104         * app/layer_dialog.[ch]:
13105         Fixed the rest of the layers dialog.
13107         * app/dialog.c:
13108         Added call to redo layer dialogs diagram list when changing
13109         diagram name.
13111         * lib/diagramdata.[ch]:
13112         Added data_raise_layer and data_lower_layer functions for
13113         raising/lowering layers. Added data_add_layer_at for adding a
13114         layer at a specified index.
13116 1999-01-05  Alexander Larsson  <alla@lysator.liu.se>
13118         This is the asierra-990105 patch done by asierra@servidor.unam.mx.
13119                 
13120         * app/app_procs.c:
13121         Added support for reading diagrams from the command line.
13123 1998-12-21  Alexander Larsson  <alla@lysator.liu.se>
13125         This is the asierra-981220 patch done by asierra@servidor.unam.mx.
13126                 
13127         * app/commands.[ch]:
13128         Added objects_align_callback().
13130         * app/menus.c:
13131         Added align objects to menu.
13133         * app/object_ops.[ch]:
13134         Add object_list_align().
13135         
13136 1998-12-17  Alexander Larsson  <alla@lysator.liu.se>
13137         * app/layer_dialog.[ch]:
13138         New files. Handles the layers dialog. Needs a bugfix for glib to
13139         work. Sent patch to gtk-list.
13140         
13141         * app/pixmaps/new.xpm:
13142         * app/pixmaps/eye.xbm:
13143         * app/pixmaps/lower.xpm:
13144         * app/pixmaps/raise.xpm:
13145         * app/pixmaps/delete.xpm:
13146         New files. Images for the layer dialog buttons.
13147         
13148         * lib/diagramdata.h
13149         * lib/diagramdata.c
13150         New files for the DiagramData and Layer structures and functions.
13151         
13152         * app/app_procs.c:
13153         Added call to create_layer_dialog() on startup.
13154         
13155         * app/commands.[ch]:
13156         New callbacks for showing the properties and layout dialog.
13157         Changes for the new DiagramData structure.
13159         * app/connectionpoint_ops.c:
13160         * app/cut_n_paste.c:
13161         * app/diagram.[ch]:
13162         * app/display.[ch]:
13163         * app/group.c:
13164         * app/modify_tool.c:
13165         * app/object_ops.[ch]:
13166         * app/render_eps.c:
13167         * lib/object.[ch]:
13168         Changes for the new DiagramData structure.
13170         * app/interface.c:
13171         * app/properties.c:
13172         Set correct wmclasses.
13174         * app/load_save.c:
13175         Fix load and save of layers.
13177         * diagram.dtd:
13178         Update DTD for layers.
13179         
13180         * app/menus.c:
13181         New menus for dialogs.
13183         
13184         * TODO:
13185         Some updates.
13186         
13187 1998-12-06  Alexander Larsson  <alla@lysator.liu.se>
13189         * TODO:
13190         Removed the gtk 1.1.5 stuff.
13192         * configure.in:
13193         Updated gtk check to version 1.1.5.
13194         Updated version from 0.20 to 0.30
13196         * app/commands.[ch]:
13197         Updated some callbacks to be of type GtkItemFactoryCallback1.
13198         Not all are done yet, but it works anyway.
13200         * app/display.h:
13201         Removed Gtk 1.0.0 GtkAcceleratorTable references.
13202         
13203         * app/interface.c:
13204         * app/menus.[ch]:
13205         Update to Gtk 1.1.x functions.
13206         Use ItemFactory instead of MenuFactory.
13207         
13208         * app/render_gdk.c:
13209         Removed Gtk 1.0.0 references.
13211         * objects/UML/class_dialog.c:
13212         Scrolled window updates for Gtk 1.1.5.
13213         
13214         * lib/dia_xml.c:
13215         Removed ugly fix for gnome-xml bug. Make sure you get the
13216         newest version of gnome-xml from CVS.
13217         
13218 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
13220         * TODO:
13221         Removed the xml load/save line.
13223         * lib/files.[ch]:
13224         Removed files.
13225         
13226         * lib/Makefile.am:
13227         Removed building of files.c
13229         * app/load_save.c:
13230         * lib/connection.c:
13231         * lib/element.c:
13232         * lib/object.c:
13233         * lib/orth_conn.c:
13234         * lib/render_object.c:
13235         * objects/UML/actor.c:
13236         * objects/UML/association.c:
13237         * objects/UML/class.c:
13238         * objects/UML/constraint.c:
13239         * objects/UML/dependency.c:
13240         * objects/UML/generalization.c:
13241         * objects/UML/implements.c:
13242         * objects/UML/large_package.c:
13243         * objects/UML/note.c:
13244         * objects/UML/realizes.c:
13245         * objects/UML/small_package.c:
13246         * objects/UML/uml.c:
13247         * objects/UML/usecase.c:
13248         * objects/network/bus.c:
13249         * objects/standard/arc.c:
13250         * objects/standard/box.c:
13251         * objects/standard/ellipse.c:
13252         * objects/standard/line.c:
13253         * objects/standard/textobj.c:
13254         * objects/standard/zigzagline.c:
13255         Removed all includes of files.h
13257         
13258 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
13260         * dialog.dtd:
13261         Made the val property of string be implied.
13262         This makes it possible to save strings that
13263         are NULL. Just leave out val.
13265         * objects/lib/dia_xml.c:
13266         Fixed string so that it is possible to save strings
13267         that are NULL. Also made an ugly workaround of a
13268         bug in gnome-xml which removes empty properties.
13269         
13270         * objects/lib/orth_conn.c:
13271         Fixed a bug in saving. Forgot to step through the
13272         directions.
13273         
13274         * objects/UML/association.c: 
13275         * objects/UML/class.c: 
13276         * objects/UML/constraint.c: 
13277         * objects/UML/dependency.c: 
13278         * objects/UML/generalization.c: 
13279         * objects/UML/implements.c: 
13280         * objects/UML/large_package.c: 
13281         * objects/UML/note.c: 
13282         * objects/UML/small_package.c:
13283         * objects/UML/realizes.c:
13284         * objects/UML/usecase.c: 
13285         * objects/UML/actor.c: 
13286         Fixed UML objects to save as xml.
13287         The last two were done by asierra@servidor.unam.mx (asierra-981204)
13288         
13289         * objects/UML/uml.[ch]:
13290         Updated *_write() and *_read() functions to use xml.
13292         * objects/network/bus.c: 
13293         * objects/network/computer.c: 
13294         * objects/network/disc.c: 
13295         * objects/network/monitor.c:
13296         Updated network diagrams to use xml.
13298 1998-12-02  Alexander Larsson  <alla@lysator.liu.se>
13300         * dialog.dtd:
13301         New file. DTD that describes the xml file format
13302         dia uses.
13304         * lib/dia_xml.[ch]:
13305         New files. Support for saving object to xml files.
13307         * configure.in:
13308         * app/Makefile.am:
13309         * lib/Makefile.am:
13310         Added check for and usage of gnome-xml library.
13312         * app/load_save.c:
13313         Major chages. Now saves/loads diagrams as xml.
13315         * lib/object.[ch]:
13316         * lib/element.[ch]:
13317         * lib/connection.[ch]:
13318         * lib/orth_conn.[ch]:
13319         * lib/render_object.[ch]:
13320         * lib/text.[ch]:
13321         Updated object support load/save functions for xml:
13323         * object/standard/arc.c:
13324         * object/standard/box.c:
13325         * object/standard/ellipse.c:
13326         * object/standard/line.c:
13327         * object/standard/textobj.c:
13328         * object/standard/zigzagline.c:
13329         Updated all standard objects to use xml.
13330         
13331         NOTE NOTE NOTE
13332         Only the standard objects are converted right now, don't
13333         save or load uml or network diagrams yet. Also, since this
13334         is new code it is deemed a bit unstable.
13335         
13336         * TODO
13337         Added a know bug.
13339 1998-12-01  Alexander Larsson  <alla@lysator.liu.se>
13341         * objects/UML/class.c:
13342         Changed classname font to Helvetica.
13343         Added more space above the classname
13345         * objects/UML/usecase.c:
13346         Correct placements of connectionpoints on ellipse.
13347         Better algorithm for deciding aspect ration on
13348         ellipse.
13350         These changes were made by Alejandro Aguilar Sierra
13351         <asierra@servidor.unam.mx>. (asierra-981201)
13353 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
13355         * objects/UML/actor.c:
13356         Changed the extents and alignment of the element
13357         and the text.
13359         * objects/UML/.cvsignore:
13360         Added usecase.lo and actor.lo.
13362 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
13364         * objects/UML/actor.c:
13365         * objects/UML/usecase.c:
13366         * objects/UML/pixmaps/actor.xpm:
13367         * objects/UML/pixmaps/case.xpm:
13368         New files. Implements usecase and actor UML objects.
13369         These objects are done by Alejandro Aguilar Sierra
13370         <asierra@servidor.unam.mx>.
13371         
13372         * objects/UML/Makefile.am:
13373         * objects/UML/pixmaps/Makefile.am:
13374         Added usecase and actor to makefile.
13375         
13376         * AUTHORS:
13377         Added Alejandro and Jerome to autors list.
13378         
13379 1998-11-25  Alexander Larsson  <alla@lysator.liu.se>
13381         * objects/UML/class.c (umlclass_load):
13382         Fixed typo. Reported by Jerome.Abela@solsoft.fr
13384 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
13386         * app/properties.c:
13387         Update connections when doing apply in the properties window.
13389         * objects/UML/uml.[ch]:
13390         * objects/UML/class.[ch]:
13391         * objects/UML/class_dialog.c:
13392         Added connection points on both sides of attributes and
13393         operations in UML classes.
13394         Based on idea from Jerome.Abela@solsoft.fr
13395         
13396 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
13398         * README:
13399         Some new documentation about handles and connectionpoints.
13400         
13401         * lib/object.[ch]:
13402         Added functions object_add_connectionpoint and
13403         object_remove_connectionpoint for handling a dynamic
13404         number of connectionpoints.
13406         * objects/UML/class.c:
13407         Only reserve space for stereotype when it is shown.
13409         These changes are from Jerome Abela <Jerome.Abela@solsoft.fr>
13411 1998-11-08  Alexander Larsson  <alla@lysator.liu.se>
13413         * app/connectionpoint_ops.c:
13414         * app/commands.c:
13415         * app/disp_callbacks.c:
13416         * app/display.[ch]:
13417         * app/grid.c:
13418         * app/handle_ops.c:
13419         * app/magnify.c:
13420         * app/modify_tool.c:
13421         * app/render_gdk.[ch]:
13422         * lib/render.h:
13423         Huge cleanup of internal rendering system.
13424         Moved a lot of data (pixmap, width, height & gc) into the GdkRenderer.
13425         This gives a few new methods for Interactive Renderers for setting
13426         clipping regions and drawing pixel based lines and rects.
13427         Updated the rest of the code to use the new stuff.
13428         
13429         * app/render_eps.c:
13430         Fixed warning.
13432         * lib/widgets.c:
13433         * objects/standard/zigzagline.c
13434         Fixed unused variable warnings.
13436         * lib/font.c:
13437         Fixedbug with stringwidth where width==0.
13439         * TODO:
13440         Added known bug.
13442 1998-11-02  Alexander Larsson  <alla@lysator.liu.se>
13444         * lib/widgets.[ch]:
13445         Added suppot for setting the font of a
13446         DiaFontSelector widget.
13447         Also fixed some typos in the header.
13449         * lib/object.h: 
13450         Added a comment about the GetPRoperties method call.
13451         You have to make sure to update widget state when
13452         this method is called. (Not all objects do this yet,
13453         to be fixed.)
13455         * TODO:
13456         Some small updates
13458 1998-11-01  Alexander Larsson  <alla@lysator.liu.se>
13460         * lib/font.c
13461         Fixed problem with height of ascent and descent for fonts.
13462         It didn't use the whole height (==ascent+descent) when calculatine
13463         ascent_ratio and descent_ratio.
13465         * objects/standard/textobj.c:
13466         * objects/standard/box.c:
13467         * objects/standard/ellipse.c:
13468         * objects/standard/line.c:
13469         * objects/standard/arc.c:
13470         Updated and added property dialogs for these objects.
13471         Also added line width/color/style to those objects
13472         that didn't have it.
13473         This change breaks fileformat compatibility for these objects.
13474         
13475         * objects/standard/zigzagline.c:
13476         Changed zigzagline to be based on OrthConn, much nicer.
13477         Also added line style and color to properties.
13478         This change breaks fileformat compatibility for zigzagline.
13480         * lib/message.c:
13481         Fixed bug in message(). Forgot a pair of '&'.
13483 1998-10-29  Alexander Larsson  <alla@lysator.liu.se>
13485         * lib/widgets.[ch]:
13486         Added DiaColorSelector widget.
13487         This is a colored button that pops up a color selection
13488         dialog when pressed.
13490 1998-10-28  Alexander Larsson  <alla@lysator.liu.se>
13492         * lib/widgets.[ch]:
13493         * lib/Makefile.am:
13494         New files, added widgets for selecting fonts, alignment
13495         and line-style. Will be used later.
13497 1998-10-12  Alexander Larsson  <alla@lysator.liu.se>
13499         * app/Makefile.am:
13500         * lib/Makefile.am:
13501         * objects/UML/Makefile.am:
13502         * objects/network/Makefile.am:
13503         * objects/standard/Makefile.am:
13504         Changed "CFLAGS = -Wall -g" to "CFLAGS = @CFLAGS@"
13505         in all Makefile.am.
13507 1998-10-03  Alexander Larsson  <alla@lysator.liu.se>
13509         * app/handle_ops.c (handle_draw):
13510         connected HANDLE_MINOR_CONTROL also becomes red.
13512 1998-10-02  Alexander Larsson  <alla@lysator.liu.se>
13514         * Makefile.am:
13515         removed -ldl from linking. This is added if needed by configure.
13517         * app/app_procs.c:
13518         Open dlls with RTLD_LAZY if it is defined.
13519         Some cleanups: char *error -> const char *error
13520         Added fprintf()'s to where we exited because of errors.
13522         * lib/files.c:
13523         Include <sys/types.h>
13525 1998-10-01  Alexander Larsson  <alla@lysator.liu.se>
13527         * acconfig.h:
13528         * configure.in:
13529         * app/app_procs.c:
13530         Detect dlopen better.
13531         Detect wether dlopen needs an underscore in the identifier.
13532         This code was mostly borrowed from guile.
13534         * lib/sheet.[ch]:
13535         * app/app_procs.c:
13536         * objects/standard/standard.c:
13537         * objects/network/network.c:
13538         * objects/UML/uml.c:
13539         * most objects:
13540         Changed the way sheets reference objects to use just the
13541         name. Changed module loading to a two stage model:
13542         First register_objects() is called for all modules.
13543         Then register_sheets() is called. This means that
13544         sheets can safely include objects from other modules.
13545         
13547 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
13549         * objects/network/bus.c:
13550         * objects/network/network.c:
13551         * objects/network/Makefile.am:
13552         New file bus.c. Added new object: Ethernet bus.
13554         * objects/standard/box.c:
13555         Added call to gtk_spin_button_set_numeric for linewidth spinner
13556         in property dialog.
13558 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
13560         * app/connectionpoint_ops.c:
13561         * app/create_object.c:
13562         * app/group.c:
13563         * app/handle_ops.c:
13564         * app/modify_tool.c:
13565         * lib/connection.c:
13566         * lib/element.c:
13567         * lib/handle.h:
13568         * lib/object.c:
13569         * lib/orth_conn.c:
13570         * loads of objects:
13571         Changed handle->connectable to handle->connect_type.
13572         Now handles can be HANDLE_CONNECTABLE_NOBREAK, which means
13573         that their connections don't break when moving objects.
13575         * app/diagram.c:
13576         Always select the last handle in an object that has
13577         the closest distance.
13578         
13579         * lib/geometry.[ch]:
13580         Added rectangle_add_point function.
13581         
13583 1998-09-27  Alexander Larsson  <alla@lysator.liu.se>
13585         * app/properties.[ch]: New files. Handles the new properties
13586         dialog.
13588         * app/modify_tool.c: Changed to use new properties dialog.
13590         * app/object_ops.[ch]: Removed object_changed_callback, as it's
13591         not needed anymore. This is now handled differently in
13592         properties.c
13594         * lib/object.[ch]:
13595         Changed the properties ops for objects. Removed typedefs
13596         ChangedObjectTime and ObjectChangedFunc needed for the old way.
13597         Added object_return_null function.
13598         
13599         * app/group.c:
13600         * lib/render_object.c:
13601         * objects/*/*.c:
13602         Changed objects to use the new properties dialog.
13603         
13605 1998-09-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
13607         * */Makefile.am (INCLUDES): Changes to work with srcdir !=
13608         builddir.
13610         * autogen.sh: New file. Copied from gtk and added a call to
13611         libtoolize. Anyone knows why this isn't done in gtk?
13613         * Removed autogenerated files.
13615 1998-09-12  Alexander Larsson  <alla@lysator.liu.se>
13617         * Added call setlocale(LC_NUMERIC, "C") so that formating of
13618           floating-point numbers in postscript output will be correct.
13619         * Did some cleanup of generated postscript files.