fixed dia_image_rgb_data() for non-alpha images
[dia.git] / ChangeLog
blob53ec2e1ce54b6ede7e0356113bec7807a4cf2d63
1 2003-01-13  Steffen Macke <sdteffen@web.de>
3         * lib/dia_image.c: dia_image_rgb_data() is working for
4         non-alpha images now. Fixes #93762
5         * Makefile.am: added makefile.msc to EXTRA_DIST
6         
7 2003-01-10  Steffen Macke <sdteffen@web.de>
9         * app/paginate_psprint.c: Closing print dialog when file
10         could not be written. Fixes #84746
11         
12 2003-01-04  Steffen Macke <sdteffen@web.de>
14         * doc/custom-shapes: incomplete description of <svg:text>
16 2003-01-03  Steffen Macke <sdteffen@web.de>
18         * makefile.msc(new): new makefile to create file
19         structure suitable for running dia win32 under
20         $(TOP)/dia/build/win32
21         
22 2003-01-02  Steffen Macke <sdteffen@web.de>
23         
24         * lib/dia_svg.c: including stdlib.h
25         * lib/makefile.msc: added gdk_pixbuf libs to linker
26         * app/makefile.msc: added gdk_pixbuf libs, made libart
27         libs compatible with gnuwin32 package
28         
29 2003-01-01  Hans Breuer  <hans@breuer.org>
31         * lib/font.c : more comment about global_size_one
33         * app/menus.c : <control>[<shift>]A for plain gtk build too.
35         * plug-ins/wmf/wmf.cpp : some type juggling to make 
36         msvc7 happy
38 2002-12-31  Steffen Macke <sdteffen@web.de>
40         * app/makefile.msc: added hint on how to enable console output
41         
42 2002-12-17  Lars Clausen  <lrclause@cs.uiuc.edu>
44         * objects/standard/textobj.c (textobj_load): Get the handle type
45         right, at least to be the same as when created.
47 2002-12-12  Lars Clausen  <lrclause@cs.uiuc.edu>
49         * lib/dialibartrenderer.c (draw_string): Removed extra 'is'.
51 2002-12-08  Hans Breuer  <hans@breuer.org>
53         * app/commands.c : fixed bug #85315 'give diagram properties, 
54         instead of no object selected error' almost a one-liner
56         * app/splash.c : don't make having the logo pixmap
57         mandatory. Fixes bug #96068. 
59         * app/defaults.c : avoid crashing from open-dialog,esc,open-dialog
60         sequence by connecting to the "delete_event"
61         * app/objects/uml/class_dialog.c : handle "destroy" for 
62         the same reason.
64         * lib/libdia.def : remove diaXmlNewChild again
66         * app/paginate_gdiprint.cpp : reflect Dia's page setting
67         portrait/landscape in the windoze print dialog
69         * objects/makefile.msc : only UML needs to link against
70         $(GTK2_LIBS) and only custom against $(LIBXML2_LIBS)
72 2002-12-08  Lars Clausen  <lrclause@cs.uiuc.edu>
74         * objects/standard/ellipse.c (ellipse_distance_from): 
75         * lib/geometry.c (distance_ellipse_point): Ellipse now uses the
76         correct distance function.  Could be faster, but it's not really
77         essential. 
79 2002-12-07  Lars Clausen <lrclause@cs.uiuc.edu>
81         * lib/font.c: Changed global_size_one to more correct 28.35.
82         Looks better, too.
84         * app/load_save.c:
85         * lib/dia_xml.h: 
86         * lib/dia_xml.c: Removed pretty print hack, the libxml thing works
87         after all.
89 2002-12-07  Hans Breuer  <hans@breuer.org>
91         * lib/widgets.c : g_file_get_contents() silently assumes
92         a binary file. Reflect when creating the font_menu file
93         to get rid of junk in font menus
95 2002-12-06  Hans Breuer  <hans@breuer.org>
97         * app/diapsrenderer.[hc] app/diapsft2renderer.[hc] :
98         removed 0xD 0xD 0xA line ends which get created by
99         cvs if windoze line ends 0xD 0xA are checked in from
100         *nix and checked out on win32.
102         * app/preferences.c : changed toolbox_on_top default to
103         false. It is currently not possible to change the behaviour
104         at runtime, at least not on win32.
106         * lib/dialibartrenderer.c : bug #94791 'rendering to 
107         bitmap without PangoFt2' got delayed to milestone future 
108         so wrap libart text rendering into PANGO_WIN32_FUTURE. 
109         It is not available without my Pango patch in bugzilla.
111         * lib/font.c : added comment to global_size_one and adapt
112         the arbitrary size scaling in dia_font_build_layout() for
113         win32, too. This is needed to get an acceptable font size 
114         approximation for Dia 0.90 and earlier files.
115         Also #include "message.h".
117         * app/makfile.msc app/dia.def lib/makefile.msc lib/libdia.def :
118         reflect movement of group.[hc]
119         * lib/group.h : export group_type which gets used by app/*
121         * lib/diagtkfontsel.c : added #undef GTK_DISABLE_DEPRECATED
122         to get the GtkTypeInfo definition
124         * plug-ins/makefile.msc : dxf and xfig don't need to link
125         against app/ anymore now that group is moved to lib/
127         * plug-ins/python/pydia-render.c : remove massive leaking
128         of self, i.e. PyDiaRenderer
130         *  plug-ins/python/makefile.msc : remove linking against
131         GTK libs
133 2002-12-06  Lars Clausen  <lrclause@cs.uiuc.edu>
135         * objects/standard/line.c: Removed properties options for gaps,
136         until release is done.
138         * configure.in: Check for freetype version.
140         * lib/text.c (text_insert_char): Fixed small buffer overflow for
141         length = 0.
143         * lib/dialibartrenderer.c (draw_string): Removed debugging printf.
145         * app/diapsft2renderer.h: 
146         * app/diapsft2renderer.c: 
147         * app/diapsrenderer.h: 
148         * app/diapsrenderer.c: Split ps rendering into standard and freetype.
150         * app/render_eps.c (export_eps, new_psprint_renderer): Using
151         PS_FT2 renderer when available.  Old render stuff killed.  Yay!
153         * lib/properties.h: Fixed bad frame end def.
155         * app/Makefile.am (dia_core_files): Added diapsft2renderer.[ch].
157         * lib/dia_xml.c (data_add_string): Avoid #-less strings.
158         
159         * objects/bondgraph/Makefile.am: Removed unneeded EXTRA_DIST.
161 2002-12-05  Lars Clausen  <lrclause@cs.uiuc.edu>
163         * lib/font.c: Now checking for the proper dia-style standard fonts.
165         * lib/Makefile.am: 
166         * app/Makefile.am: Moving group.[ch]
168         * plug-ins/dxf/dxf-import.c: 
169         * plug-ins/xfig/xfig-import.c: 
170         * plug-ins/xfig/xfig-export.c: Now can refer directly to group.h.
172         * app/object_ops.c: 
173         * app/object_ops.h: 
174         * lib/object.c (object_list_move_delta, object_copy_list): 
175         * lib/object.h: Moved some object-related functions from
176         object_ops to object to assist moving group.c.
178         * lib/diatypes.h: Added Group typedef.
180         * lib/group.h: 
181         * lib/group.c: Moved from app to lib to a) resolve plug-ins
182         references, and b) make groups more "real" objects.
184         * lib/Makefile.am (libdia_la_SOURCES): Added diatyps.h
186 2002-12-03  Lars Clausen <lrclause@cs.uiuc.edu>
188         * lib/font.c (dia_font_init): Added check that the three standard
189         fonts exist.
191 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
193         * lib/dia_xml.[ch]:
194         * app/load_save.c: Linebreaks in dia files, no indentation.
195         Should help text tools.  xmlNewChild wrapped in diaXmlNewChild for
196         this. 
197         
198         * objects/standard/line.c: Small but important fixes to the line
199         gap code.
201         * lib/dia_xml.h: 
202         * lib/dia_xml.c (diaXmlNewChild): 
203         * app/load_save.c (diagram_data_write_doc, write_objects): Simple
204         XML prettyprinting wrapper.
206 2002-12-03  Steffen Macke <sdteffen@web.de>
208         * shapes/Cisco/Makefile.am:
209         * shapes/Cisco/*.shape: finished conversion of Cisco icons
210         to *.png
211         
212 2002-12-02  Steffen Macke <sdteffen@web.de>
214         * doc/en/Makefile.am:
215         * doc/en/usage-objects.sgml:
216         * doc/en/graphics/line_icon.png: (new) added line icon
217         
218 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
220         * objects/standard/line.c: Binary search object edge line gap.
222 2002-12-01  Lars Clausen  <lrclause@cs.uiuc.edu>
224         * configure.in: Added Cisco makefile, sorted Makefiles list.
226         * shapes/Makefile.am (SUBDIRS): Added Cisco dir
228         * configure.in: Now checks for availability of PangoFT2 and
229         FreeType, raising an error if not found.
231         * app/Makefile.am (dia_core_files): Adding diapsft2renderer from
232         Hans.
234 2002-12-01  Steffen Macke <sdteffen@web.de>
235         
236         * doc/en/usage-loadsave.sgml: updated information on import
237         and export formats
238         
239 2002-11-28  Lars Clausen  <lrclause@cs.uiuc.edu>
241         * app/commands.c (edit_copy_callback): Freeing copy_list.
243 2002-11-28  Steffen Macke <sdteffen@web.de>
244         
245         * app/render_libart.c: art_config.h was included twice
247 2002-11-27  Lars Clausen  <lrclause@cs.uiuc.edu>
249         * sheets/.cvsignore: More ignorance.
251         * lib/diagdkrenderer.c (draw_string): Removed silly #ifdef 1.
253         * lib/prop_widgets.h: Two (currently unused) settings for frame
254         foldability.
256         * lib/prop_widgets.c (frame_beginprop_get_widget): Frames are now
257         (by default) foldable. 
259         * lib/propinternals.h: 
260         * lib/propdialogs.c (prop_dialog_add_raw_with_flags): Way to add
261         widgets in a more controlled manner.
263         * objects/standard/line.c (line_update_data): Line gap things
264         inserted.  Can do xeyes now:)
266 2002-11-26  Christian Neumair  <chris@gnome-de.org>
268         * .cvsignore: Changed.
269         * objects/bondgraph/.cvsignore, plug-ins/metapost/.cvsignore,
270         plug-ins/xslt/.cvsignore, shapes/Assorted/.cvsignore, shapes/Misc/.cvsignore:
271         Added.
273 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
275         * app/pixmaps/delete.xpm: Trashcan stolen from Gimp.
277         * lib/widgets.c (dia_font_selector_get_font): Fixed wrong name
278         passing to font hash.
280         * app/filedlg.c (file_save_as_ok_callback): Check that filename is
281         utf-8 or locale-convertible before adding to dialog text.  This
282         probably needs done in a number of places where we get text from
283         the environment and send it to GTK to display.
285         * lib/widgets.c: Fixed case problems for font menu entries.
287         * objects/SADT/annotation.c: Don't run the event test (but leave
288         it here for inspiration).
290         * lib/widgets.c: 
291         * lib/widgets.h: Allowing setting preview text for fonts.
293 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
295         * objects/bondgraph/Makefile.am: 
296         * objects/bondgraph/bondgraph.c: 
297         * configure.in: 
298         * objects/Makefile.am: Added bond graph dir.
300 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
302         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor size.
304 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
306         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor
307         positioning. 
309         * app/diapsrenderer.c: Freetype rendering is back in force.
311         * app/disp_callbacks.c: Added missing updates for pre-text-change.
313 2002-11-25  David Hoover <jazzdaq@yahoo.com>
315         * app/render_libart.c: Added missing #include line for libart.
317         * lib/geometry.h:
318         * lib/geometry.c: Added point_convex function.  This computes
319         points inside a line segment (0 <= alpha <= 1) or outside the
320         line segment (alpha < 0 | alpha > 1).
322         * objects/standard/line.c: Line now has additional code/attributes
323         which permit the line to extend past the line anchors (gap < 0) or
324         leave a gap without reaching the anchor (gap > 0).  If no gap is
325         specified, the default gap of 0 will result in identical line
326         behavior as before.  If the 'fractional' attributes are TRUE, the
327         gap length is not fixed, but a percentage of the line length.  I
328         did not know how create the GTK widgets so the gap code currently
329         cannot be used without adding XML attributes by hand.
331 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
333         * lib/diagdkrenderer.c (draw_string): Removed timing bits.
335         * lib/Makefile.am (libdia_la_SOURCES): Added fontsel files to SOURCES.
337 2002-11-24  Lars Clausen  <lrclause@cs.uiuc.edu>
339         * lib/font.c: Debugging functionality in separate functions.
341         * lib/widgets.c: Using fontsel with context.
343         * lib/diagtkfontsel.[ch]: Context-aware copy of the GTK fontsel.
345         * objects/custom/custom_object.c: Orientation handling for shapes,
346         patch thanks to Martin Hans <opfinder@gmx.net>.
348         * objects/standard/zigzagline.c (zigzagline_move_handle): Starting
349         work on even better orientation handling.
351         * app/menus.c (menus_get_item_from_path): Fixed sily warnings from
352         casting NULL pointers.  Should be unnecessary in an upcoming GTK
353         release. 
355 2002-11-18  Lars Clausen  <lrclause@cs.uiuc.edu>
357         * lib/font.h:
358         * lib/font.c:
359         * lib/widgets.c: Now uses correct context to get font families.
361         * lib/diagdkrenderer.c (get_text_width, draw_string): 
362         * lib/dialibartrenderer.c (draw_string): 
363         * lib/font.h: 
364         * lib/font.c (dia_font_init): Removed old kludgy font name compare.
365         (dia_font_build_layout): Unified the twiddle factors into a use of
366         global_size_one.  But I deeply distrust Pango for seeming to
367         change size of fonts every time I turn my back.
369         * app/display.c: 
370         * app/diagram.c: 
371         * app/menus.c:
372         * app/menus.h: Updated some more methods to also be more specific
373         on the types.
375         * app/menus.h:
376         * app/recent_files.c: 
377         Changed to return most specific type, to avoid run-time type errors.
379         * app/menus.c (menus_get_item_from_path): Non-gnome version now
380         gets menu_item rather than widget, which works better.
382 2002-11-17  Cyrille Chépélov  <cyrille@chepelov.org>
384         * app/display.c: (new_display):
385         * app/menus.c: (menus_get_item_from_path):
386         Relying on the tearoff to locate the input methods menu wasn't a
387         good idea: tearoffs seem to be an endangered species nowadays.
388         Anyway, the IM menu seems to be working now.
390         * app/interface.c: hinted the window manager that the toolbox window
391         is a toolbox window. Not that my (fairly default configuration)
392         sawfish cares, but other NETWM compliant WMs may.
394         * app/commands.c: 
395         * app/defaults.c: 
396         * app/dia-props.c:
397         * app/filedlg.c: 
398         * app/interface.c: 
399         * app/layer_dialog.c: 
400         * app/linewidth_area.c: 
401         * app/properties.c: 
402         * app/sheets_dialog.c: 
403         * app/splash.c: 
405         The GTK doc says to avoir gtk_window_set_wmclass() and 
406         gtk_window_set_policy(), and use gtk_window_set_role() and
407         gtk_window_set_resizable(), respectively.
408         
409         * app/preferences.c: (prefs_create_dialog):
410         * app/preferences.h:
411         * app/display.c: (display_set_active):
412         Added a preference to have the toolbox hover over diagram windows.
413                 
414 2002-11-12  Lars Clausen  <lrclause@cs.uiuc.edu>
416         * lib/diagdkrenderer.c (get_text_width, draw_string):
417         Freetype-based string drawing now works.  Not very fast, though.
418         I wish I could use the graphics card for this:(  I'm doing three
419         bitmap loops where I should be doing one.  The size is not correct
420         either, despite having get_text_width give the right thing.
422 2002-10-21  Lars Clausen  <lrclause@cs.uiuc.edu>
424         * app/connectionpoint_ops.c (diagram_update_connections_object):
425         Allows more than one connectionpoint on an object to be moved at a
426         time (bug #96306).
428 2002-10-18  Stanislav Brabec  <sbrabec@suse.cz>
430         * configure.in: Added cs to ALL_LINGUAS.
432 2002-10-17  Lars Clausen  <lrclause@cs.uiuc.edu>
434         * app/paginate_psprint.c: Removed unnecessary decl of autosave
435         stuff.
437         * app/display.c (ddisplay_set_renderer): Calls to begin/end render.
439         * app/export_png.c (export_png_ok): Saving more variables from the
440         evil setjmp.
442 2002-10-16  Lars Clausen  <lrclause@cs.uiuc.edu>
444         * lib/dialibartrenderer.c (begin_render):
445         (end_render): Correct pushing and popping of font contexts.
446         (draw_string): Double zooming eliminated, strange twiddle factor
447         introduced (grumble).  Close to working now, but there are still
448         strange differences from font to font.  In particular, some fonts
449         really mess with the cursor and extents.
451         * app/render_eps.c (export_eps): 
452         * app/diapsrenderer.c (dia_ps_renderer_finalize): 
453         Fixed file closing confusion, no longer dependent on PS/EPS.
455         * app/diagram.c (diagram_place_down_selected) 
456         (diagram_place_up_selected): Now implemented.
458         * lib/font.c (dia_font_init): 
459         * lib/font.h: 
460         Redesigned the font init/context pushing code.  Start of fix for
461         font name differences.
462         
463 2002-10-15  Kjartan Maraas  <kmaraas@gnome.org>
465         * app/sheets_dialog_callbacks.c: Fix a typo.
466         
467 2002-10-15  Hans Breuer  <hans@breuer.org>
469         * app/diapsrenderer.[hc] : (new files, old content :-)
470         simple base class for post script rendering. Does neither 
471         use Pango/FT2 nor does it handle non latin1 characters. 
472         The fancy stuff which nowadays appears to be needed should 
473         probably be done in derived class(es)
475         * app/makefile.msc app/Makefile.am : added new files
477         * app/paginate_psrint.c : re-enabled and used as test
478         for the simple ps renderer above.
480         * app/render_eps.[hc] : ripped out common ps code and
481         moved to DiaPsRenderer. The rest of the file is mostly
482         disabled. And I don't understand enough of it to 
483         change port it.
485         * app/diaepsrenderer.h : short lived, removed.
487 2002-10-15  Lars Clausen  <lrclause@cs.uiuc.edu>
489         * lib/plug-ins.c (dia_register_plugin): Don't try to load libdia
490         as a plugin (thanks to Torben Nielsen).
492 2002-10-14  Lars Clausen  <lrclause@cs.uiuc.edu>
494         * app/diaepsrenderer.h: 
495         * app/render_eps.h: 
496         * app/paginate_psprint.c: 
497         #ifdef'd out enough ps stuff to allow compile.  Now we just need
498         to convert it.
499         
500 2002-10-12  Hans Breuer  <hans@breuer.org>
502         [last plug-in ported]
504         * plug-ins/xfig/xfig-export.c : ported to new renderer api
506         * plug-ins/xfig/xfig-import.c(fig_create_object) : need to
507         scale color values to [0..1.0] to properly reconstruct
508         user colors
510         * plug-ins/xfig/xfig-common.c : some cleaning
512 2002-10-12  Hans Breuer  <hans@breuer.org>
514         [decrease inter-plug-in-dependencies]
516         * objects/custom/shape_info.[hc] : move parse_style()
517         to lib/dia_svg.[hc] as dia_svg_parse_style(); Namespace
518         the related structs and constants.
519         * objects/custom/custom_object.c : reflect namespace
520         changes
522         * lib/dia_svg.[hc] : new files
523         * lib/makefile.msc lib/Makefile.am : add new files
524         * lib/libdia.def : updated externals
526         * plug-ins/svg/svg-import.c : use dia_svg_parse_style()
528         * plug-ins/svg/svg.c : enable svg import for win32 (and
529         probably for other non ELF builds)
531         * plug-ins/makefile.msc : enable svg import
533 2002-10-11  Hans Breuer  <hans@breuer.org>
535         * plug-ins/metapost/render_metapost.[hc] : ported
537         * plug-ins/pstricks/render_pstricks.[hc] : dito
539 2002-10-11  Hans Breuer  <hans@breuer.org>
541         * plug-ins/cgm/cgm.c : ported, appears to work as before,
542         but graphic apps available to me can't import the generated 
543         files (the could not with Dia-0.90 cgm as well) ...
545         * plug-ins/dxf/dxf-export.c : Ported to new renderer api.
546         Removed all those function which did emulate 'complex' 
547         drawing ops with basic ones (e.g. rect by line) cause this
548         stuff is already provided by the base class
549         * plug-ins/dxf/dxf-import.c : removed render.h include
551         * plug-ins/python/pydia-font.[hc]
552           plug-ins/python/pydia-text.c : finally ported to new font api
554         * plug-ins/python/pydia-layer.c : add extra parameter
555         to layer_find_closest_connectionpoint()
557         * plug-ins/python/pydia-render.c : ported to DiaRenderer api
559         * plug-ins/python/python.c : added missing copyright notice
561         * plug-ins/hpg/hpgl.c plug-ins/wpg/wpg.c plug-ins/wmf/wmf.cpp : 
562         actually use the renderers set_font implementation
564         * plug-ins/renderer.inc : unused now, removed
565         * plug-ins/Makefile.am : reflect it
567 2002-10-08  Hans Breuer  <hans@breuer.org>
569         * app/render_gdk.c : don't add the InteractiveRenderer
570         interface multiple times (it's added to the type, not
571         the object)
572         * app/render_libart.c : dito. It's currently added
573         unconditional cause eport_png uses it, but claims
574         to be non-interactive. Probably set_size should be moved
575         to the DiaRenderer interface.
577         * lib/dialibartrenderer.c : add implementations for
578         get_<width|height>_pixels. Libart rendering works again.
579         DiaLibartRenderer::draw_image : use dia_image_rowstride()
580         instead of width*3
582         * lib/diatransform.c(dia_transform_coords_double) :
583         don't ROUND() the returned values
585         * plug-ins/pixbuf/pixbuf.c : added import function. It
586         simply creates a wrapping "Standard - Image" object.
588         * plug-ins/shape/shape-export.c : use the more direct
589         method to call base class methods
591 2002-10-07  Lars Clausen  <lrclause@cs.uiuc.edu>
593         * lib/font.c (dia_font_init): Changed dia_font_init to return old
594         pango context, to allow stacked contexts (for printing while
595         antialiased).
596         
597         * lib/arrows.h
598         * lib/bezier_conn.h
599         * lib/beziershape.h
600         * lib/boundingbox.h
601         * lib/color.h
602         * lib/connection.h
603         * lib/connectionpoint.h
604         * lib/create.h
605         * lib/dia_image.h
606         * lib/diagdkrenderer.h
607         * lib/diagramdata.h
608         * lib/dialibartrenderer.h
609         * lib/diamenu.h
610         * lib/diarenderer.h
611         * lib/diasvgrenderer.h
612         * lib/diatransform.h
613         * lib/element.h
614         * lib/filter.h
615         * lib/focus.h
616         * lib/font.h
617         * lib/geometry.h
618         * lib/handle.h
619         * lib/neworth_conn.h
620         * lib/objchange.h
621         * lib/object.h
622         * lib/orth_conn.h
623         * lib/paper.h
624         * lib/plug-ins.h
625         * lib/poly_conn.h
626         * lib/polyshape.h
627         * lib/properties.h
628         * lib/ps-utf8.h
629         * lib/sheet.h
630         * lib/text.h
631         * lib/textattr.h
632         * lib/widgets.h
633         * lib/diatypes.h
634         Moved all externally visible struct typedefs into diatypes.h, as
635         per Hans' suggestions.
637 2002-10-07  Steffen Macke <sdteffen@web.de>
639         * lib/Makefile.am: removed a '\' causing problems
641 2002-10-07  Hans Breuer  <hans@breuer.org>
643         [Libart Renderer resurrected; almost it's compiling but
644          almost instantly crashing :-]
646         * lib/dialibartrenderer.[hc] : new files, ported to DiaRenderer
647         * app/render_libart.[hc] : ported to DiaInteractiveRenderer
648         * lib/diatransform.[hc] : added dia_transform_coords_double()
650         * app/display.c : the right parameters for new_renderer_libart()
651         * app/export_png.c : ported, removed the blind Display hack
653         * app/makefile.msc lib/makefile.msc 
654           lib/Makefile.am : updated
656         * lib/dia<|gdk|interactive>renderer.c : properly copyrighted
658 2002-10-06  Hans Breuer  <hans@breuer.org>
660         See also: 
661         http://mail.gnome.org/archives/dia-list/2002-October/msg00027.html
663         * lib/dia-enums.h lib/diatransform.[hc]
664           lib/diarenderer.[hc] lib/diainteractiverenderer.c
665           lib/diagdkrenderer.[hc] lib/diasvgrenderer.[hc]
666         : new files 
668         * lib/makefile.msc lib/makefile.am : added new files
670         * lib/plug-ins.c : g_module_error() returns a locale
671         string, convert to utf8 before further usage 
673         * lib/render.h : #error out. Everything including this
674         needs porting
675         * lib/*.[hc] : ported to new renderer api
677         * app/diaepsrenderer.h : unfinished DiaEpsRenderer interface
678         just to make the rest compile
679         * app/render_eps.c : temporary disabled all of this
680         * app/render_eps.h : removed RendererEPS
682         * app/render_gdk.[hc] : a small wrapper around the new
683         DiaGdkRenderer form lib/*
685         * app/render_libart.h : removed RenderLibart definition
686         * app/render_libart.c : not yet ported to new DiaRenderer
687         but having an implementation to untie form FT2 dependency
688         at least on win32. It is using new Pango api form bug #94791
690         * app/render_pixmap.[hc] : a small wrapper around the new
691         DiaGdkRenderer form lib/*
693         * app/display.h : removed render_*.h includes
694         * app/display.c : the only place where specific 
695         renderers need to be known
697         * app/connectionpoint_ops.c app/grid.c app/handle_ops.c
698         use new DiaInteractiveRenderer interface
700         * app/*.c : ported to new renderer api
701         * object/*/*.c : ported to new renderer api
702         s/render.h/diarenderer.h/
703         s/Renderer/DiaRenderer/
704         s/renderer->ops/renderer_ops/
705         add in every draw method:
706         DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
708         * plug-ins/hpgl/hpgl.c : 
709           plug-ins/wmf/wmf.cpp 
710           plug-ins/wpg/wpg.c : ported to be DiaRenderer based
711         * plug-ins/shape/shape-export.c
712           plug-ins/svg/render_svg.c : ported to be DiaSvgRenderer based
713           (nice how small these files became :-)
715 2002-09-28  Hans Breuer  <hans@breuer.org>
717         * */makefile.msc : updated
719         * app/defaults.c : don't gdk_invalidate_rect(NULL)
720         * app/disp_callbacks.c : 
721         can't cast GtkWindow to GdkWindow, use shell->window
722         (ddisplay_unrealize) don't use already unrefed im_context
723         * app/display.c :
724         can't cast from GtkMenu to GtkMenuItem
725         (ddisp_destroy) : mark im_context as unrefed
727         * lib/dia_xml (data_font) : prefer new font format over old one
728         (data_add_font) : write the legacy name to allow file exchange
729         with pre Pango versions of Dia, which would otherwise crash 
730         on missing font 'name' attribute.
731         * lib/font.c (dia_font_get_legacy_name) : improved implementation
732         to get a better match.
734         * lib/libdia.def : updated
736         * lib/messages.c : don't gdk_widget_show(NULL)
738         * lib/prop_text.c : don't gtk_entry_set_text() with NULL string 
740         [make Dia compile, link _and_ work with mingw/gcc3.2]
742         * config.h.win32 : #define LIBXML, this gets defined from libxml
743         header but only for _MSC_VER. The mingw build did access an 
744         unitialized function pointer for xmlFree.
746         * */makefile.mingw : updated (some plug-ins have build issues)
747         
748         * lib/handle.h lib/object.h :   there appears to be no 
749         forward declaration of the form 
750                 typedef enum _HandleId HandleId 
751         (at least not with GCC 3.2 for C++) ../lib/handle.h:22: 
752         use of enum `_HandleId' without previous declaration
754         * app/paginate_gdiprint.cpp : added a hack to avoid g++
755         naming conflict on 'export'
757         * app/paginate_gdiprint.h : forward declare Diagram
759         * objects/SADT/annotaion.c : use g_random_double()
761 2002-09-26  Lars Clausen  <lrclause@cs.uiuc.edu>
763         * app/modify_tool.c: Made motion not happen until sufficiently
764         large or past double-click interval, to avoid accidental moving
765         when doubleclicking.  Got the double-click time right, and fixed
766         some issues with release.  There are some corner cases that may
767         exhibit strange behaviour, will look at those later.  Nah, let's
768         not care about those, they are rare and not dangerous.
770 2002-09-26  Cyrille Chépélov  <cyrille@chepelov.org>
772         * app/layer_dialog.c: 
773         * app/load_save.c: 
774         * plug-ins/dxf/dxf-import.c: 
775         * plug-ins/python/pydia-diagram.c: 
776         * lib/diagramdata.c:
777         * lib/diagramdata.h:
778         Improved the consistency of the obj->parent_layer backlinks (esp.
779         during reloads)
781         * lib/Makefile.am:
782         * lib/dummy_dep.h:
783         * lib/dynamic_obj.[ch] (NEW):
784         * app/Makefile.am:
785         * app/app_procs.c: 
786         * app/dynamic_refresh.[ch] (NEW):
787         * objects/Misc/analog_clock.c: 
788         Added support for dynamic refresh (animated objects).
789                 
790 2002-09-25  Cyrille Chépélov  <cyrille@chepelov.org>
792         Patch from Owen Taylor <otaylor@redhat.com>:    
793         * doc/en/Makefile.am:
794         * doc/en/dia-manual.sgml:
795         * doc/en/usage-objects.sgml:
796         * doc/en/usage-quickstart.sgml:
797         * doc/pl/Makefile.am:
798         * doc/pl/dia-manual.sgml:
799         * doc/pl/usage-objects.sgml:
800         * doc/pl/usage-quickstart.sgml:
802         - Change the DTD declration from an outdated GNOME one to a
803         standard DTD.
804         
805         - Remove close tags for <graphics> which aren't allowed for
806         docbook SGML
807         
808         - A hacky fix for a problem where some versions of db2html don't
809         create *.css files. (If *.css doesn't match anything, then you get
810         the global explicitely.)
812         (Closes: #92061)
813         
814 2002-09-24  Cyrille Chépélov  <cyrille@chepelov.org>
816         * objects/custom/custom_object.c: 
817         * objects/custom/shape_info.[ch]: GE_TEXT display lists elements 
818         were never properly prepared for use when reloading a shape with
819         <svg:text> elements. Thanks to Scott Frazer <frazer@nc.rr.com> for
820         reporting the problem and coming up with a fix! (Closes: #93974)
822         * app/menus.c: patch from Alan Horkan <horkana@tcd.ie>: review
823         the menu shortcuts towards better GNOME HIG compliance (Closes: #87157)
825         * app/menus.c:
826         * app/display.c: updated menu item paths Alan's patch had moved.
827         
828         * app/interface.c: Fixed a crash when gdk-pixbuf doesn't want to
829         load the sheet-provided icon (libpng versions mismatch, grrr.).
830         
831         * configure.in:
832         * objects/Makefile.am:
833         * objects/Misc/Makefile.am (NEW):
834         * objects/Misc/libmisc.c (NEW):
835         * objects/Misc/analog_clock.c (NEW):
836         * objects/Misc/pixmaps/analog_clock.xpm (NEW):
837         * sheets/Misc.sheet.in: just a little experiment...
839 2002-09-23  Cyrille Chepelov  <cyrille@chepelov.org>
841         * plug-ins/xlst/Makefile.am: found a way to silence automake while
842         not forcing everyone to build using libxslt.
844         * lib/font.c: 
845         * lib/message.c:
846         * lib/object_defaults.c:
847         * lib/intl.[ch]:
848         * lib/render.c:
849         * lib/properties.[ch]:
850         * lib/propobject.c:
851         * objects/standard/box.c: 
852         * objects/UML/state_term.c:
853         * objects/FS/box.c:
854         * objects/FS/flow-ortho.c:
855         * app/app_procs.c:
856         * app/autosave.c:       
857         * app/commands.c:
858         * app/diagram_tree.c:
859         * app/display.c:
860         * app/disp_callbacks.c:
861         * app/export_png.c:
862         * app/filedlg.c:
863         * app/lineprops_area.c:
864         * app/menus.c:  
865         * app/preferences.c:
866         * app/render_eps.c:     
867         * app/sheets.c:
868         * app/sheets_dialog_callbacks.c:
869         * plug-ins/xslt/xslt.c:
870         * plug-ins/metapost/render_metapost.c:
871         * plug-ins/xfig/xfig-export.c:
872         * plug-ins/shape/shape-export.c:
873         
874         Killed most gcc-3.2 warnings (const-correctness and derived warnings, 
875         unused variables, mostly)
877         * app/display.c:
878         * app/menus.c: enabled GTK Input Methods (thanks Lars!)
880         * app/Makefile.am: modified run_dia.sh so that we recover the
881         ability to run a debugger despite libtool's hacks.
883         * plug-ins/dxf/Makefile.am: 
884         * app/Makefile.am
885         "make distcheck" fixes.
886         
887 2002-09-19  Lars Clausen  <lrclause@cs.uiuc.edu>
889         * objects/UML/uml.c (uml_get_operation_string): Patch from Mauf
890         <mfranzoni@madd.it>:  Check for the type being NULL.
892 2002-09-16  Lars Clausen  <lrclause@cs.uiuc.edu>
894         * app/render_eps.c (set_font): Re-tweaked font size for printing.
896 2002-09-12  Cyrille Chepelov  <cyrille@chepelov.org>
898         Patch from Angus Ainslie <angusa@deltatee.com>:
899         * plug-ins/dxf/dxf-import.c:
900         * plug-ins/dxf/autocad_pal.h: Import from visio 2002 improvements.
902         (plus a couple extra fixes by me, such as the removal of printf's,
903         adapting for recent changes, and killed a couple warnings) 
905         * app/authors.h: a 60K patch isn't insignificant, is it?
906         
907 2002-09-09  Tor Lillqvist  <tml@iki.fi>
909         * configure.in: Check for both pangoft2 (using PKG_CHECK_MODULES,
910         as before) and -lfreetype (using AC_CHECK_LIB). At least on
911         Solaris with Sun's compiler (Forte C), you need to link also the
912         dia application with -lfreetype, even if it is implicitly linked
913         to by -lpangoft2. Rename FREETYPE_CFLAGS and _LIBS to PANGOFT2_*,
914         which is what they actually mean. Use FREETYPE_LIBS for
915         -lfreetype.
917         Don't look for libsunmath if isinf() is not found in math.h (as on
918         Solaris). The sunmath library is part of Forte C and not present
919         on all machines. Besides, even if isinf was found in libsunmath,
920         we didn't use it in the Makefile.am.
921         
922         Fix a couple of bashisms.
924         AC_SUBST also Z_LIBS, need to link the dia application to -lz,
925         too, on Solaris with Forte C.
927         Don't try to use the gcc flags with other compilers.
928         DIA_CHECK_CFLAG gives a false indication that Forte C understands
929         the gcc -f switches, but in fact they get interpreted meaning
930         something completely different.
932         Define the automake conditional HAVE_CGC.
933         
934         * app/Makefile.am (dia_LDADD): Add Z_LIBS and FREETYPE_LIBS.
936         Use -export-dynamic only with gcc.
938         * */Makefile.am
939         * */*/Makefile.am: Modify according to the FREETYPE_CFLAGS -> 
940         PANGOFT2_CFLAGS rename.
942         * lib/geometry.h: Drop HAVE_SUNMATH_H and <sunmath.h> per above.
943         
944         * lib/dia_xml.c: Include geometry.h for the isinf() stuff on
945         Solaris.
947         * lib/paper.c: Workaround for gccism: Can't use inline this way with
948         Forte C, either.
950 2002-09-08  Cyrille Chepelov  <cyrille@chepelov.org>
952         * lib/text.c(set_string): fixed a memory leak (char* ain't no
953         std::auto_ptr<char> !).
955         * app/display.[ch]:
956         * app/interface.[ch]:
957         * app/ddisp_callbacks.[ch]: Added some basic support for input 
958         methods (GtkIMContext-based)
960         * lib/Makefile.am:
961         * app/Makefile.am: made libdia a shared object (per Tor
962         Lillqvist's suggestion/request), to cope for platforms with a less
963         than par dynamic library loader.
965         * app/display.c: disabled the input method menu (I really don't
966         see where and how to put them. Blame Frozen Bubble )
967         
968 2002-09-06  Lars Clausen  <lrclause@cs.uiuc.edu>
970         * objects/flowchart/box.c (box_update_data): Made resizing
971         possible again (only set width & height when resized too small).
973         Patch from Soeren Sandmann <sandmann@daimi.au.dk>:
975         * app/disp_callbacks.c (ddisplay_canvas_events): Handle
976         GdkScrollEvents.
977         
978 2002-09-05  Cyrille Chepelov  <cyrille@chepelov.org>
980         * app/authors.h: now showing Akira TAGOH's name in the native script.
982 2002-09-01  Lars Clausen  <lrclause@cs.uiuc.edu>
984         * plug-ins/xslt/xslt.c: Removed glib warning for unset
985         DIA_PLUGIN_PATH.
987 2002-09-01  Cyrille Chepelov  <cyrille@chepelov.org>
989         * plug-ins/svg/render_svg.c: Applied (reversed...) patch from
990         Mike Sowka <msowka@rogers.com>. This fixes a problem with the
991         sweep flag in arcs.
993 2002-08-31  Lars Clausen  <lrclause@cs.uiuc.edu>
995         * objects/UML/class.c: Fixed showing of empty stereotypes and got
996         the string placed correctly.
998 2002-08-30  Hans Breuer  <hans@breuer.org>
1000         * lib/font.c (dia_font_get_style) : don't shift already
1001         shifted DIA_FONT values.
1003         * lib/libdia.def : updated externals
1005         * app/disp_callbacks.c : on win32 GdkEventKey::string already
1006         is in UTF-8. (Longterm this probably should be handled on the
1007         gtk api level)
1009         * app/command.[hc] app/display.[hc] app/menus.c : add code to 
1010         switch display renderers again. The libart renderer is very 
1011         useful for win9x with it's limited GDI.
1013         * app/render_gdk.c : use g_warning instead of printf which gets
1014         nowhere on win32 (non console apps)
1016         * app/render_libart.c : make it compile without FREETYPE
1018         * objects/makefile.msc plug-ins/makefile.msc : added clean target
1020 2002-08-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1022         * app/render_eps.c (postscript_draw_contour): Debugging statement
1023         that allowed me to figure out font problems.
1025         * lib/widgets.c (dia_font_selector_set_styles): Use radio menu
1026         items for font styles.
1028         * objects/FS/flow-poly.c: 
1029         * objects/FS/flow-ortho.c: 
1030         * objects/FS/flow.c: Further conversion away from GTK dialogs.
1031         Can't set a default label right now:(
1033         * app/interface.c (fill_sheet_wbox): Added initialization for mask.
1035 2002-08-27  Cyrille Chepelov  <cyrille@chepelov.org>
1036         Patch from Andrew Ferrier  <andrew@new-destiny.co.uk>:
1038         * Makefile.am: rules relating to AUTHORS and THANKS
1039         altered.
1040         * AUTHORS: file content changed to more accurately
1041         reflect guideline requirements.
1042         * TODO: warning added about Gnome BTS.
1043         * KNOWN_BUGS: warning added about Gnome BTS.
1045         ---
1047         * AUTHORS: added full copyright info.
1048         * mkauthors-placeholder: (removed) 
1049         
1050 2002-08-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1052         * app/paginate_psprint.c (print_page): Fixed text printing after
1053         tip from Dov Grobgeld.
1055 2002-08-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1057         * app/paginate_psprint.c (print_page): Fixed color of clip
1058         region.
1060 2002-08-26  Cyrille Chepelov  <cyrille@chepelov.org>
1062         * sheets/Makefile.am: enabled intltool-merge translation cache for
1063         sheets.
1065         * Makefile.am:
1066         * mkauthors-placeholder:
1067         * AUTHORS: revived that file (in a placeholder form) so that
1068         automake stops yelling.
1069         (derived from a patch by Andrew Ferrier <andrew@new-destiny.co.uk>) 
1070         (Closes: #91144)
1072         Heh, by the way, thanks Christophe. I feel better now.
1073         
1074 2002-08-25  Christophe Merlet  <christophe@merlet.net>
1076         * app/command.c: Removed invalid multibyte sequence in Chepelov.
1078 2002-08-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1080         * lib/dia_image.c (dia_image_rgb_data): 
1081         Bugfixes in image data retrieval.
1082         
1083         * app/render_eps.c: Refactoring of new_*_renderer.
1085 2002-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1087         * app/render_eps.c: 
1088         * lib/dia_image.h: 
1089         * lib/dia_image.c: Support for rowstride != width (odd width images)
1091 2002-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
1093         * lib/paper.c (get_paper_info): Fixed NULL prefs problem.
1094         * plug-ins/xfig/xfig-import.c: Removed assertion.
1096 2002-08-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1098         * lib/paper.c: Removed app/preferences.h reference.
1100 2002-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1102         * plug-ins/svg/svg-import.c: 
1103         * plug-ins/xfig/xfig-import.c: 
1104         * lib/Makefile.am (libdia_a_SOURCES): 
1105         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
1106         * lib/create.h:
1107         * objects/standard/create.h:
1108         * objects/standard/polygon.c (polygon_create): 
1109         * objects/standard/polyline.c (polyline_create): 
1110         * objects/standard/beziergon.c (beziergon_create): 
1111         * objects/standard/bezier.c (bezierline_create): 
1112         Moving create.h into lib.
1114 2002-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
1116         * app/render_libart.[ch]: Work on PNG font export.  Something's
1117         still fishy with the scaling, I don't get it.
1119         * app/display.c: 
1120         * app/interface.c: Replaced broken zoom combo with entry+menu.
1121         Now works beautifully.  Removed WITHOUT_ZOOM_COMBO stuff.
1123         * app/render_gdk.c (get_text_width): Checks for validity of text.
1124         Temporary help while debugging input -- should only activate on
1125         invalid input.
1127         * objects/SADT/annotation.c: 
1128         * objects/GRAFCET/transition.c: 
1129         * objects/FS/function.c: Removal of gtk.h include.
1131         * objects/UML/state.c (state_load): Warnings about using State
1132         object for initial/final states.
1134         * plug-ins/cgm/cgm.c (init_fonts): Proper Pango interfacing.
1136 2002-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
1138         * app/render_eps.c: Text rendering that scales correctly.  Too bad
1139         the standard fonts don't get selected right.
1141 2002-08-09  Lars Clausen  <lrclause@cs.uiuc.edu>
1143         * lib/diagramdata.h: 
1144         * lib/paper.c (get_paper_info): 
1145         * lib/paper.h: 
1146         * plug-ins/xfig/xfig-import.c: 
1147         Committed before testing.  I am so embarrased.  This compiles, now
1148         that the includes are in the right order.
1149         
1150         * app/diagram.c (diagram_init): 
1151         * app/app_procs.c (do_convert): 
1152         * app/preferences.h: 
1153         * lib/diagramdata.h: 
1154         * lib/diagramdata.c (new_diagram_data): 
1155         * lib/paper.h: 
1156         * lib/paper.c (get_paper_info): 
1157         Moved new_diagram part of prefs into lib/diagramdata.h.  More
1158         could be done in new_diagram_data() now.
1160 2002-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
1162         * app/render_eps.c: Better scaling of fonts at non-normal zoom.
1164 2002-08-07  Cyrille Chepelov <cyrille@chepelov.org>
1166         * configure.in: removed silly user-visible comment
1168         (actually, this is a dummy entry before I manually run nemo; for
1169         some dist-upgrade related reason, this morning's run aborted before
1170         the snapshots were created)
1171         
1172 2002-08-06  Lars Clausen  <lrclause@cs.uiuc.edu>
1174         * objects/network/wanlink.c: 
1175         * objects/network/bus.c: 
1176         stdprop compliance!
1178         * objects/custom/custom_object.c: 
1179         * objects/network/wanlink.c: 
1180         * objects/flowchart/parallelogram.c: 
1181         * objects/flowchart/ellipse.c: 
1182         * objects/flowchart/diamond.c: 
1183         * objects/flowchart/box.c: 
1184         Removed GTK defaults stuff.
1185         
1186         * objects/UML/fork.c: 
1187         * objects/UML/object.c: 
1188         * objects/UML/lifeline.c: 
1189         * objects/UML/branch.c: 
1190         * objects/GRAFCET/transition.c: 
1191         * objects/FS/function.c: Removed GTK include.
1193         * objects/FS/flow-ortho.c: 
1194         * objects/FS/flow.c: Made the label behave again.
1195         Also removed GTK defaults stuff.
1197 2002-08-06  Hans Breuer  <hans@breuer.org>
1199         * app/autosave.c : ported to GDir which is the improved
1200         cross platform replacement for <dirent.h>
1202         * app/makefile.msc : build autosave.obj
1204         * app/font.c : some (bad?) code calls 
1205         dia_font_scaled_decent() not only with empty string but 
1206         with NULL. Handle it gracefully.
1208         * lib/paper.c : don't depend on ../app. Although IMO
1209         this shouldn't be allowed on any platform it is only
1210         disabled for win32, where it simply doesn't work
1211         this way
1213         * lib/widget.c (strcase_equal) : pass char* to g_strcasecmp()
1215         * objects/fs/flow.c : conditionalize debug spew, disabled
1216         and 'ported' to use g_print. Simple printf won't work with
1217         standard win32 gui apps, may even crash them.
1219         * plug-ins/makefile.msc : DISABLED svg-import cause it
1220         depends on ../objects/custom. This not only break the
1221         build for all non ELF systems but IMO also isn't acceptable
1222         from a design point of view. See dia-list mail on subject.
1224         * plug-ins/python/makefile.msc :
1225           plug-ins/python/python.c : remove all references to dirent    
1227 2002-08-05  Cyrille Chepelov  <cyrille@chepelov.org>
1229         * configure.in: added ro to ALL_LINGUAS
1231         * po-checktrans:
1232         * po-checktrans.py:
1233         * ../translation-graphs/transgraph.py: added support for fuzzy
1234         translations. Enlarged the graphs.
1236 2002-08-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1238         * app/disp_callbacks.c (ddisplay_canvas_events): Now translates
1239         key events according to locale.  No clue if this works for
1240         advanced stuff.
1242 2002-08-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1244         * lib/text.c: Various UTF8 related fixes, in particular in
1245         deleting.  Text_insert_char is fine, far as I can tell.
1247         * app/interface.c (create_display_shell): 
1248         * app/commands.c: Now uses gtk_clipboard functions, for they are
1249         much simpler.  Also handles Win32 clipboard.  Non-ascii chars
1250         don't seem to get handled correctly by text_insert_char in
1251         lib/text.c.
1252         
1253         * app/commands.c (received_selection_handler): Got utf8 handling
1254         on paste, and individual char handling out of commands.c.  Pasting
1255         non-ASCII is still broken, somehow.  It's all lib/text.c's fault.
1257         * lib/message.c (gtk_message_internal): Message dialog re-shown
1258         when new message appears.  Maybe it should even move to top?
1260         * lib/font.c: 
1261         * lib/widgets.c: 
1262         * app/render_eps.c (create_eps_renderer): Fonts now lowercase
1263         (again) and case-insensitive.
1265         * objects/GRAFCET/condition.c (CONDITION_FONT): Changed to
1266         BASIC_SANS_FONT. 
1268 2002-08-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1270         * app/commands.c (edit_cut_text_callback): 
1271         * lib/text.c (text_delete_all): Now functioning undo for text cut.
1272         
1273         * app/commands.c (edit_cut_text_callback): Now removes text.
1274         Undo is broken, though.
1276 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1278         * app/diagram.c (diagram_update_menu_sensitivity): 
1279         Making cut_text active.
1280         
1281         * app/commands.h: 
1282         * app/commands.c: Using PROP_TYPE_TEXT to find text to copy to
1283         clipboard.  Also removed AA callback.   
1285 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1287         * objects/chronogram/chronoref.c: 
1288         * objects/chronogram/chronoline.c: 
1289         * objects/SADT/annotation.c: 
1290         * objects/SADT/arrow.c: 
1291         * objects/SADT/box.c: 
1292         * objects/GRAFCET/vergent.c: 
1293         * objects/GRAFCET/vector.c: 
1294         * objects/GRAFCET/step.c: 
1295         * objects/GRAFCET/condition.c: 
1296         * objects/GRAFCET/action.c: 
1297         * objects/ER/participation.c: 
1298         * objects/ER/relationship.c: 
1299         * objects/ER/entity.c: 
1300         * objects/ER/attribute.c: 
1301         Removing unnecessary GTK references.
1303 2002-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1305         * objects/standard/image.c: 
1306         * objects/standard/textobj.c: 
1307         * objects/standard/ellipse.c: 
1308         * objects/standard/polygon.c: 
1309         * objects/standard/beziergon.c:
1310         * objects/standard/box.c: 
1311         Making default default properties.
1312         
1313         * objects/standard/image.c: 
1314         * objects/standard/arc.c: 
1315         * objects/standard/box.c: 
1316         * objects/standard/zigzagline.c: 
1317         * objects/standard/polyline.c: 
1318         * objects/standard/line.c: 
1319         * objects/standard/ellipse.c: 
1320         * objects/standard/polygon.c: 
1321         * objects/standard/beziergon.c: Removing vestigal GTK stuff.
1323         * lib/object_defaults.c (dia_object_default_create): 
1324         * lib/proplist.c: 
1325         * lib/properties.h: 
1326         * lib/object.c (object_copy_using_properties): 
1327         * lib/propdialogs.c: 
1328         * lib/propinternals.h: 
1329         * lib/propobject.c (object_create_props_dialog)
1330         (object_copy_props): 
1331         Removing the standard (toolbox) properties from defaults dialogs.
1333 2002-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1335         * lib/font.c (dia_font_scaled_string_width) 
1336         (dia_font_scaled_ascent, dia_font_scaled_descent): Account for
1337         zoom factor.
1338         * lib/text.c (text_calc_boundingbox): Take descent into account.
1340         * objects/standard/bezier.c (bezierline_draw): 
1341         * lib/render.c (draw_bezier_with_arrows): 
1342         Better arrow drawing for beziers.  Doesn't change the mouse-click
1343         area either.
1345         * lib/arrows.h: Some const-ness.
1347         * lib/arrows.c (calculate_arrow_point): Initialize zero-length moves.
1349         * lib/render.c (draw_arc_with_arrows): 
1350         * objects/standard/arc.c (arc_draw): Better arrow drawing for
1351         arcs.  Doesn't change the mouse-click area yet.
1353         * app/menus.c: Forgotten fix:  Redraw menu item for non-Gnome.
1355         * lib/render.h: 
1356         * lib/render.c: 
1357         Arc arrow prework.
1359 2002-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1361         * app/group.c (group_draw): Forgotten commit: Groups to draw as
1362         objects (using default routines).
1364         * app/object_ops.h: 
1365         * app/diagram.h: 
1366         * lib/diagramdata.h: 
1367         * lib/diagramdata.c (layer_find_closest_connectionpoint): 
1368         * objects/standard/zigzagline.c (zigzagline_move_handle): 
1369         * app/diagram.c (diagram_find_closest_connectionpoint): 
1370         * plug-ins/python/pydia-diagram.c
1371         (PyDiaDiagram_FindClosestConnectionPoint):
1372         * app/object_ops.c (object_connect_display) 
1373         (object_find_connectpoint_display) 
1374         * app/create_object.c (create_object_button_press) 
1375         (create_object_motion): 
1376         * app/modify_tool.c (modify_motion): 
1377         Adding object param to allow connectionpoint and handle coinciding.
1379         * objects/standard/zigzagline.c (zigzagline_check_orientation): 
1380         Fixing minor problems.
1382         * objects/standard/ellipse.c (ellipse_update_data): 
1383         Added direction hints.
1385         * lib/diagramdata.c: 
1386         * lib/object.c: 
1387         * lib/object.h: 
1388         * lib/diagramdata.h: 
1389         * objects/standard/zigzagline.c: 
1390         First working example of zigzagline hints, currently only between
1391         Box and Zigzagline.
1393 2002-07-27  Steffen Macke <sdteffen@web.de>
1395         * plug-ins/svg/render_svg.c: added support for rounded
1396         rectangles (fixes #69053 if compile with
1397         -DNEW_RENDER_OPS)
1398         * object/custom/shape_info.[c|h]: made parse_style and
1399         parse_path accessible for svg plug-in
1400         * plug-ins/svg/Makefile.am:
1401         * plug-ins/svg/svg.c:
1402         * plug-ins/svg/svg-import.c(new): added SVG import filter
1404 2002-07-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1406         * objects/standard/box.c: 
1407         * objects/standard/zigzagline.c (zigzagline_move): 
1408         More work on zigzagline hints.
1410 2002-07-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1411         * lib/connectionpoint.h: 
1412         Hints for zigzaglines.
1414         * app/properties.c (properties_show): 
1415         * app/defaults.c (defaults_show): 
1416         * lib/properties.h: 
1417         * lib/propobject.c (object_create_props_dialog): 
1418         * lib/object.h: 
1419         * objects/FS/flow-poly.c: 
1420         * objects/network/wanlink.c: 
1421         * objects/network/bus.c: 
1422         * objects/UML/class.h: 
1423         * objects/UML/class_dialog.c: 
1424         * objects/UML/association.c: 
1425         Start of removing toolbox props from props dialogs.
1426         
1427         * lib/widgets.c: 
1428         * lib/arrows.h: 
1429         * app/lineprops_area.c (dia_arrow_chooser_new): 
1430         * lib/arrows.c: Two new arrows: Concave, filled and blanked.
1432         * app/create_object.c: 
1433         * app/modify_tool.c: 
1434         * app/cursor.h: 
1435         * app/cursor.c: 
1436         More cursor change.
1438 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1440         * app/preferences.c: 
1441         * lib/paper.c: 
1442         * app/diapagelayout.c: 
1443         New prefs selector kind PREF_CHOICE chooses between a list of
1444         strings.  Used for picking default paper.
1445         
1446         * app/preferences.c (prefs_data): 
1447         * lib/paper.c (get_paper_info): Added prefs setting for
1448         is_portrait.
1450         * lib/render.c (draw_polyline_with_arrows): Handles degenerate
1451         line segments at the ends (bug #86603).
1453 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1455         * objects/standard/zigzagline.c (zigzagline_copy): Fix for bug
1456         #60324: Now calls update_data after copy.
1458         * app/interface.c (fill_sheet_wbox): Better fix for bug #88601:
1459         Now doesn't steal selection from non-object tools.
1461 2002-07-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1463         * app/commands.c (help_manual_callback): Uses BROWSER environment
1464         variable when available.
1466 2002-07-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1468         * app/interface.c (fill_sheet_wbox): Fix for bug #88601: Select an
1469         object from the new sheet when changing.
1471         * app/app_procs.c (app_init): Uses more standard size icon, from
1472         patch #56433.  Keeping old icon as dia_gnome_icon_large.png.
1474 2002-07-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1476         * objects/UML/implements.c (implements_update_data): 
1477         * objects/UML/realizes.c (realizes_update_data): 
1478         * objects/UML/dependency.c (dependency_update_data): 
1479         Test for null strings before calling on ascent.
1481         * objects/UML/realizes.c (realizes_draw): 
1482         * objects/UML/message.c (message_draw): 
1483         * objects/UML/generalization.c (generalization_draw): 
1484         * objects/UML/dependency.c (dependency_draw) 
1485         * objects/UML/constraint.c (constraint_draw): 
1486         * objects/GRAFCET/condition.c (condition_draw): 
1487         * objects/UML/association.c (association_draw): 
1488         * objects/FS/flow-ortho.c (orthflow_draw): 
1489         * objects/FS/flow.c (flow_draw): Change to use
1490         draw_foo_with_arrows.  Pretty pretty arrows.  Yay me!
1492         * lib/render.h: 
1493         * lib/arrows.c (calculate_arrow_point): 
1494         * lib/arrows.h: 
1495         * lib/render.c: 
1496         * objects/standard/zigzagline.c:
1497         * objects/standard/polyline.c:
1498         * objects/standard/line.c: Work towards better arrow drawing.
1500 2002-07-21  Lars Clausen  <lrclause@cs.uiuc.edu>
1502         * objects/UML/state.c: Starting phase-out of State object as
1503         initial/final state (which never worked right).
1505         * app/app_procs.c (app_init): --version command line option for
1506         non-Gnome.
1508         * configure.in: Slight improvement in GETTEXT_PACKAGE handling.
1510 2002-07-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1512         * app/render_eps.c: Removed debugging info.
1514         * lib/font.c (dia_font_scaled_ascent, dia_font_scaled_descent):
1515         Kludge to make ascent and descent work for empty strings.  Won't
1516         work when using non-ASCII fonts.  Better would be to get a
1517         PangoFont and ask directly.
1519         * configure.in: Simple define of GETTEXT_PACKAGE, and some updates
1520         of the init stuff.
1522         * app/render_gdk.c (get_text_width): Fixed use of wrong string.
1523         Cursor now better.
1525 2002-07-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1527         * plug-ins/xfig/xfig-export.c: First use of draw_object render
1528         function: All shapes are now groups in XFig export.
1530         * lib/diagramdata.c (normal_render): 
1531         * lib/render.c: 
1532         * lib/render.h: 
1533         * app/display.c (ddisplay_obj_render): 
1534         New render function for drawing objects, allows renderers to group
1535         or otherwise specially handle objects.  We may want to reconsider
1536         calling it in app/display.c, as we 'know' the object draw function
1537         is the default one there.
1539         * lib/Makefile.am: Removed extra \ that broke stuff.
1541         * plug-ins/xfig/xfig-import.c: 
1542         Spline import for xfig.  Not perfect.
1544         * objects/standard/create.h: 
1545         * objects/standard/bezier.c (bezierline_create): 
1546         * lib/bezier_conn.c: 
1547         * lib/beziershape.c (beziershape_set_points): 
1548         * lib/bezier_conn.h: 
1549         * lib/beziershape.h: 
1550         Support for creating beziers non-interactively.
1552 2002-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1554         * plug-ins/xfig/xfig-import.c: Support for polygons and
1555         polylines.  Special warning handling system removed.
1557         * lib/message.c (gtk_message_internal): Fixed bug involving
1558         closing message window and then getting repeated message.
1560         * Makefile.am: 
1561         * autogen.sh: 
1562         * configure.in (GETTEXT_PACKAGE): 
1563         Update based on bug #88199.  Hopefully this doesn't break too much
1564         intl stuff.
1566         * dia.desktop.in (_Comment): Changed after suggestion from
1567         calum.benson@ireland.sun.com (bug 88345)
1569         * app/sheets_dialog_callbacks.c: Fix from Dolores Alia de Saravia
1570         <loli@unsa.edu.ar> that makes user/system distinction better.
1572 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1574         * app/render_libart.c: Got the context right, removed crashes.
1576         * app/commands.c: 
1577         * app/commands.h: 
1578         Redraw menu item.
1580         * app/display.c: 
1581         * app/display.h: 
1582         * app/interface.c: 
1583         * app/menus.c: 
1584         Remove libart #defines from most places (still around for png export).
1586         * app/render_libart.h: 
1587         * app/render_libart.c: 
1588         * configure.in (HAVE_LIBART): 
1589         Starting on update of libart stuff for png export (without X).
1591         * app/autosave.h (autosave_check_autosave): 
1592         * app/load_save.h: 
1593         * app/diagram.h: 
1594         * app/Makefile.am (dia_core_files): 
1595         * app/load_save.c: 
1596         * app/diagram.c (diagram_set_modified): 
1597         * app/autosave.c: 
1598         * app/app_procs.c (app_init): 
1599         Autosave support.  No automatic restore yet.
1601 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
1603         * app/render_eps.c (create_eps_renderer): #ifdef'd a scale
1604         assignment. 
1605         
1606 2002-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
1608         * app/interface.c (fill_sheet_menu): Tear-off for sheets menu.
1610 2002-07-15  Andrew Ferrier  <andrew@new-destiny.co.uk>
1612         * Fix for 'make dist' etc. --- problem caused by
1613         previous AUTHORS patch.
1615 2002-07-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1617         * plug-ins/cgm/cgm.c (init_fonts): Changed pango_font_map to
1618         pango_context. 
1619         (set_font): NULL check.
1620         
1621 2002-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
1623         * app/disp_callbacks.c: 
1624         * lib/diamenu.h: 
1625         Addition to the object menus allows check menu items.
1627 2002-07-11  Andrew Ferrier  <andrew@new-destiny.co.uk>
1629         * HACKING: completely changed to bring up-to-date.
1630         * AUTHORS: file needs REMOVING from CVS as now
1631           dynamically generated.
1632         * app/authors.h: split into subcategories for original
1633           authors, maintainers, etc.
1634         * app/app_procs.c: --credits rewritten to support new
1635           app/authors.h
1636         * app/commands.c: no changes to about box code, comment
1637           added though.
1638         * Makefile.am: added rule for AUTHORS. I'm still
1639           inexperienced with automake, it seems to work, but
1640           for AUTHORS-related bugs, look at this change first.
1642 2002-07-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1644         * plug-ins/Makefile.am (SUBDIRS): Just realized why my hack didn't
1645         work.  Back to including xslt dir always.
1647         * objects/UML/uml.c: 
1648         * objects/UML/class.h: 
1649         * objects/UML/class_dialog.c: 
1650         * objects/UML/class.c: Patch from
1651         <mattam@netcourrier.com>:  Adds comment visibility switch, also
1652         fixes various bugs.
1654         Big patch from Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
1655         for state/fork/activity stuff.
1656         * objects/UML/state.c: Removed old draw_rounded_rectangle code.
1657         * objects/UML/Makefile.am:
1658         * objects/UML/uml.c:
1659         * sheets/UML.sheet.in: Added new objects activity, fork,
1660           state_term.
1661         * objects/UML/pixmaps/state_term.xpm:
1662         * objects/UML/state_term.c: New, only initial/final states.
1663         * objects/UML/pixmaps/activity.xpm:
1664         * objects/UML/activity.c: New, activity state.
1665         * objects/UML/pixmaps/fork.xpm:
1666         * objects/UML/fork.c: New, fork/join bar.
1667         * objects/UML/pixmaps/state.xpm: state icon.
1669         
1670         * doc/diagram.dtd: 
1671         * doc/shape.dtd: Patch from "Dolores Alia de Saravia"
1672         <loli@unsa.edu.ar> to add dia: to diagram.dtd elements and add
1673         svg:text to shape.
1675 2002-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
1677         * plug-ins/Makefile.am (SUBDIRS): Made the XSLT dir depend on
1678         detecting XSLT
1680         * app/Makefile.am: Commented out the diaconv parts while it's not
1681         used anyway.  To come back later.
1683         * configure.in (HAVE_FREETYPE): 
1684         * app/app_procs.c: 
1685         * app/render_eps.h: 
1686         * app/render_eps.c: Support for printing with freetype, better
1687         encapsulated now.  Renders the text nicely, but ignores font
1688         setting.  Requires pangoft2 to get the font outline, but non-text
1689         objects can still be rendered without it.
1691         * app/commands.h: 
1692         * app/commands.c (objects_place_up_callback) 
1693         (objects_place_down_callback): 
1694         * app/diagram.h: 
1695         * app/diagram.c (diagram_place_down_selected) 
1696         (diagram_place_up_selected): Starting support for moving objects
1697         one level up/down.
1699         * app/menus.c: Removed character/numeral shortcuts.
1701 2002-07-06  Hans Breuer  <hans@breuer.org>
1703         * makefile.am app/makefile.am lib/makefile.am
1704           objects/makefile.am plug-ins/makefile.am 
1705           plug-ins/python/makefile.am :
1706         added required files for win32 build to EXTRA_DIST
1708         * app/paginate_psprint.c app/render_eps.c 
1709           app/app_procs.c :
1710         wrap (E)PS Renderer into HAVE_FREETYPE, no FreeType
1711         on Pango as currently is on win32 => no PostScript 
1712         anymore.
1714         * lib/widgets.c : undef GTK_DISABLE_DEPRECATED;
1715         use '/* noop */;' for empty case labels; replace
1716         debug spew printf with g_print which is guaranteed 
1717         to work on win32, too.
1719         * lib/font.c (dia_pfd_set_weight) : set 'intermediate' values 
1720         for DIA_FONT_MEDIUM and DIA_FONT_DEMIBOLD as explicit allowed 
1721         in the pango_font_description_set_weight() api documentation
1722         Take care for them in dia_font_get_style() too.
1724         * lib/font.[hc] lib/widget.c objects/custom/shape_info.c
1725           plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c :
1726         rename Obliquity to Slant which appears to be the usual name,
1727         also rename dia_font_get_style_string -> dia_font_get_slant_string
1729         * plug-ins/wmf/wmf.cpp : finally ported to new font api
1731         * lib/prop_attr.c app/render_gdk.c : dont *_unref if NULL
1733         * objects/uml/association.c class.c large_package.c message.c
1734         if g_free() is used g_strdup needs to be used.
1735         * objects/custom/shape_info.c
1736           objects/ER/attribute.c entity.c
1737           objects/standard/image.c 
1738           app/sheets_dialog_callbacks.c : more strdup cleaning
1740 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1742         * app/render_eps.c: Non-crashing printing (made the right
1743         context).  Font output still fscked up.
1745 2002-07-05  Andrew Ferrier  <andrew@new-destiny.co.uk>
1747         * app/authors.h: Added file --- now master
1748         location for contributors data.
1749         * app/app_procs.c: Added --credits option.
1750         * app/commands.c: Modified about box to use
1751         app/authors.h.
1753 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
1755         * app/render_eps.c: First stab at EPS rendering using the contour
1756         code from PAPS.  Crashes.
1758 2002-06-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1760         * app/recent_files.c (recent_file_history_remove): 
1761         Fixed call to g_list_delete_link discarding return value.
1762         
1763         * lib/widgets.c (dia_font_selector_set_styles): 
1764         * lib/font.h (DiaFontWeight): 
1765         * lib/font.c (dia_font_get_style): Revert to DIA_FONT_NORMAL==0
1767 2002-06-30  Cyrille Chepelov  <cyrille@chepelov.org>
1769         Contribution from Alan Horkan <horkana@tcd.ie>: 
1770         
1771         * shapes/Assorted/*
1772         * sheets/Assorted.sheet:
1773         A set of 40 assorted geometric shapes.
1775         * sheets/Assorted.sheet.in:
1776         * sheets/Makefile.am
1777         * shapes/Assorted/Makefile.am:
1778         * shapes/Makefile.am:
1779         * po/POTFILES.in:
1780         * configure.in:
1781         Done the integration job of Alan's shapes. (Translators: have fun!)
1783         * po/dia.pot: refreshed the main potfile.
1784         
1785 2002-06-28  Cyrille Chepelov  <cyrille@chepelov.org>
1787         Patch from Tim Ellis <Tim.Ellis@gamet.com>:
1788         
1789         * objects/UML/class.[ch]:
1790         * objects/UML/class_dialog.c:
1791         changed the number of connection points from a hardcoded value of
1792         8 to a #defined constant
1794         (I changed the constant back from 20 to 8, until we better know
1795         how we'll handle more connection points on the UML class in the
1796         future -- but Tim's patch is a welcome clean-up).
1798 2002-06-26  Cyrille Chepelov  <cyrille@chepelov.org>
1800         * shapes/MSE/demultiplexer.xpm:
1801         * shapes/MSE/node_center.xpm:
1802         * shapes/MSE/multiplexer.xpm:
1803         * shapes/MSE/tacsat.xpm: updated MSE icons (transparency) by Alan
1804         Horkan <horkana@tcd.ie>
1806 2002-06-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1808         * lib/widgets.c: Total rehash of font selector, with font dialog
1809         option, expanding list (not LRU yet), and stuff.
1811 2002-06-25  Cyrille Chépélov  <cyrille@chepelov.org>
1813         * lib/font.h:
1814         * lib/font.c: 
1815         Added a set of new setter/getters, some of them more specially for
1816         the SVG-ish I/O.
1817         
1818         * plug-ins/shape/shape-export.c: (new_shape_renderer),
1819         (destroy_shape_renderer), (set_font), (draw_string):
1820         * plug-ins/svg/render_svg.c: (new_svg_renderer),
1821         (destroy_svg_renderer), (set_font), (draw_string):
1823         Actually exported the font face, style, weight and size (sodipodi
1824         agrees with dia on how a small sample should look like (a sample
1825         0.90 would not even display anyways). Yay !)
1827         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
1829         * plug-ins/xslt/Makefile.am: repaired the mess Cyrille put there.
1831         (end of ChangeLog-less patch)
1833         * objects/custom/shape_info.c (parse_style): now understands the
1834         font-style and font-weight attributes as well. Does not use
1835         anymore dia_font_new_from_legacy_name().
1836         
1837 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1839         * objects/standard/textobj.c: Now uses stdprops for defaults.
1841         * lib/font.h: Changed order of DiaFontWeight entries.  Sorry.
1842         * lib/font.c (dia_font_get_style): Style now linear and conversion
1843         simple. 
1845         * lib/widgets.c (dia_font_selector_set_styles): Fixed the style
1846         selector. 
1848 2002-06-24  Cyrille Chepelov  <cyrille@chepelov.org>
1850         * plug-ins/dxf/dxf-import.c:
1851         using dia_font_new_from_style()
1853         Patch from Matthieu Sozeau  <mattam@netcourrier.com>:
1855         * objects/UML/class.[ch]: Added a comment field to class
1856         * objects/UML/uml.[ch]: Added a comment field to attributes,
1857         operations and parameters.
1858         * objects/UML/class_dialog.c: Added code for the new comment
1859         fields.
1860         * plug-ins/xslt/*.xsl: Added some code to handle comments.
1861         * plug-ins/xslt/xslt*.c: Clean up based on Cyrille comments.
1862         Added a $directory parameter for stylesheets so the output is 
1863         in the good place (not in the $PWD).
1865         (end of Patch)
1867         * AUTHORS: added contributors, updated maintainers. Removed the
1868         specific areas of action.
1870         * Patch from Andrew Ferrier <andrew@new-destiny.co.uk>, derived
1871         from a patch by Xing Wang <quixon@gnuchina.org>:
1873         * app/commands.c: help_about_callback now supports
1874         new-style GNOME about box as well as old GTK style. 
1875         code also tidied (Closes: #85726)
1877         (end of Patch)
1879         * app/commands.c: fixed the copyright (it's not all FSF), and
1880         maintainers. Synced contributors list with AUTHORS.
1881                 
1882 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
1884         * lib/message.c: More work on repeating messages, now with
1885         togglable view.
1887 2002-06-24  Hans Breuer  <hans@breuer.org>
1889         * lib/widget.c : some more bits in place, at least
1890         it does something useful instead of crashing. Much
1891         better - but not all ok :-)
1893 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1895         * lib/message.c (gtk_message_internal): First stab at repeating
1896         message dialog.
1898 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
1900         * objects/FS/*.c:
1901         * objects/GRAFCET/*.c:
1902         * objects/SADT/*.c:
1903         * objects/UML/association.c: (one instance forgotten)
1904         * objects/UML/large_package.c: 
1905         * objects/standard/textobj.c:
1906         * lib/attributes.c:
1907         * lib/text.c:
1908         using dia_font_new_from_style()
1910 2002-06-23  Hans Breuer  <hans@breuer.org>
1912         * lib/font.c : giving some love to
1913         dia_font_new_from_legacy_name() that is making
1914         import of old files as painless as possible and
1915         provide an almost exact match where possible.
1916         It does not yet fully work because it interfers
1917         with the Style to DiaStyle conversion which comes
1918         next ...
1920         [Changing these files is only allowed with Dia-0.90]
1921         * broken-files/fonts-0.90.dia : including the
1922         common hard-coded fonts from Dia-0.90. It also
1923         has drawn bounding-boxes for win32 as they were calculated
1924         from the former version (they were all too big).
1925         * broken-files/fonts-0.90-full.dia : all hardcoded
1926         fonts including the asian versions. On my machine
1927         this gives _a lot_ complaining about missing fonts
1928         and a finally a broken file display. Anyone having
1929         all these fonts ?
1930         
1931 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
1933         * objects/chronogram/*.c: 
1934         * objects/custom/custom_object.c:
1935         * objects/ER/*.c:
1936         using dia_font_new_from_style()
1938 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1940         * lib/widgets.c (dia_font_selector_set_styles): Improvements to
1941         font selector (stability, insensitivity).
1943         * lib/font.c (dia_font_scaled_build_layout): Removed unworkable
1944         stretching scheme for tweaking, and made scaling scheme faster
1945         (but less precise).
1946         (dia_font_dia_style_to_pango): Oops, % != /.
1948 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
1950         
1951         * patch from Matthieu Sozeau  <mattam@netcourrier.com>:
1953         * plug-ins/xslt : Added an XSLT plugin to export dia files using
1954         XML Stylesheets. The plug-in requires DIA_PLUGIN_PATH to be set.
1955         It includes a small config file to tell it what stylesheets to use.
1957         (end of patch)
1958         
1959         * plug-ins/xslt/xsltdialog.c: modified the dialog to be more 
1960         GTK2.0/HIG compliant (the labels could be slightly more verbose,
1961         perhaps). Added back a couple forgotten _(). Removed //-style
1962         comments.
1963         
1964 2002-06-23  Hans Breuer  <hans@breuer.org>
1966         * lib/plug-ins.c
1967         (dia_plugin_get_name) : don't crash plugin_manager
1968         on name being NULL 
1969         (dia_plugin_load) : reuse the description field to
1970         store the error string if loading fails.
1972         * lib/font.[hc] : starting to beautify the new
1973         font api: proper namespacing, adding convenience
1974         functions like dia_font_new_from_style(), ...
1976         * objects/uml/*.c : use the new convenience functions.
1978         [Next thing I plan to do is changing the other font
1979          functions to take DiaStyle and make Style and 
1980          BASIC_*_FONT vanish. As well as giving some love to
1981          dia_font_new_from_legacy_name().
1982          If anyone want's to help on converting the other
1983          objects to the new api during that, I would highly 
1984          appreciate it.]
1986 2002-06-23  Hans Breuer  <hans@breuer.org>
1988         * lib/font.c : made it compile and small indent fixes.
1989         Is there a code-has-no-effect-so-needs-not-be-valid
1990         with GCC?       
1992         * lib/widgets.c : use g_strcasecmp
1994 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1996         * lib/font.c: 
1997         * lib/font.h: 
1998         * lib/widgets.c: Font names sorted, style selector widget
1999         reappeared.  Doesn't select the old style yet.
2001 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
2003         * lib/font.c: one who expects a text's font to be changed shall 
2004         actually request the attributes to apply to the whole range of the
2005         said text... D'oh! 
2007         * lib/font.c: extents computation was wrong.
2009         * lib/font.c: dia_font_get_legacy_name(); g_strconcat works better
2010         if a last NULL parameter is added...
2012         * lib/font.c: extents computation was completely wrong. This looks
2013         much better this time.
2015         * objects/UML/class.c: fixed the various strings positions.
2017         * lib/font.h, and **/*.[ch] (all callers of dia_font_new): used
2018         macros to get the hardcoded base fonts.
2020         * objects/ER/relationship.c: wasn't converted to DiaFont*
2021         
2022 2002-06-22  Hans Breuer  <hans@breuer.org>
2024         * lib/widget.c : dont use backend specific functions
2025         to get on the font_families. Including it would mean
2026         including <windows.h> which breaks due to namespace
2027         pollutions ...
2029         * lib/libdia.def : updated externals
2031         * app/makefile.msc : temporary disabled: -DHAVE_LIBART
2033         * lib/font.c : added empty dia_font_init_instance function,
2034         reformatting of dia_fon_unref to allow to set breakpoint,
2035         dia_fon_build_layout() : dont crash on string==NULL
2037         * lib/text.c (text_set_attributes) : don't unref the wrong font
2039         * lib/widgets.c (dia_fon_selector_set_font) : our hashtable
2040         stores lowercased font names, but dia_font_get_family()
2041         returns mixed case      
2043 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
2045         * lib/widgets.c: 
2046         * app/render_gdk.c: Patch from Hans Breuer.
2048         * app/Makefile.am (dia_core_files): diaconv commented out for now.
2049         
2050 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
2052         * lib/all files touched yesterday: took into account some of Hans
2053         Breuer's remarks in
2054         http://mail.gnome.org/archives/dia-list/2002-June/msg00257.html
2056         * objects/chronogram/*: 
2057         * objects/custom/*:
2058         * objects/ER/*:
2059         * objects/flowchart/*:
2060         * objects/FS/*:
2061         * objects/GRAFCET/*:
2062         * objects/SADT/*:
2063         * objects/standard/textobj.?:
2064         * objects/UML/*:
2065         converted to the new DiaFonts.
2067         * plug-ins/cgm/*:
2068         * plug-ins/pstricks/*:
2069         * plug-ins/wpg/*:
2070         * plug-ins/dxf/*:
2071         * plug-ins/xfig/*:
2072         Made minimalistic conversions so that they'd at least compile.
2074         * app/render_gdk.c:
2075         * app/render_pixmap.c:
2076         Converted to the new DiaFonts.
2078         * app/app_procs.c
2079         * app/diaconv.c:
2080         * app/render_eps.c:
2081         made the minimal changes so that it would at least build.       
2083         *** At this point, the thing builds on my machine, but segfaults
2084         right away. ***
2085         
2086 2002-06-21  Cyrille Chepelov  <cyrille@chepelov.org>
2088         * configure.in: removed the backend-specific pango pkg_modules
2089         (trivial to add back if needed, when actually needed)
2091         * app/Makefile.am:
2092         * app/*gnomeprint.[ch]: (removed): removed the GNOME-print
2093         renderer. The APIs will have completely changed when we get around
2094         to redo a renderer for it, anyways.
2096         * font.[ch]: rewrote everything from scratch, with a Pango
2097         implementation. Normally, only backend-neutral things should go in
2098         there.
2100         **WARNING**: new rules for managing DiaFont* pointers: these are
2101         reference-counted GObjects. One >must< diafont_ref() and
2102         diafont_unref() as appropriate. I wish I could overload operator=()...
2104         lib/plug-ins.h: bumped up the plug-in API.
2105         
2106         lib/attributes.c: 
2107         lib/dia_xml.c: 
2108         lib/dummy_dep.h
2109         lib/object_defaults:
2110         lib/prop_attr.c: Adapted to the new DiaFont API. This'll change
2111         again tomorrow with GObject.
2112         
2113         lib/widgets.c: Adapted to the new DiaFont API and to Pango.
2115         **** The rest of the tree should be updated as well ****
2116         
2117 2002-06-21  Lars Clausen  <lrclause@cs.uiuc.edu>
2119         * app/render_gdk.h: 
2120         * app/render_gdk.c: 
2121         * app/render_pixmap.c: 
2122         * app/render_pixmap.h: 
2123         * app/render_libart.h: 
2124         * app/render_libart.c: 
2125         * lib/font.h: 
2126         * lib/font.c: Removed freetype stuff (still around in
2127         lib/widgets.c 'cause we might want the font selector widget).
2129 2002-06-20  Cyrille Chepelov  <cyrille@chepelov.org>
2131         * shapes/network/laptop.(xml|shape):
2132         * sheets/network.sheet.in: added Laptop (notebook) PC shape,
2133         contributed by Alan Horkan <horkana@tcd.ie>. (Closes: #82643)
2135 2002-06-17  Hans Breuer  <hans@breuer.org>
2137         * lib/object_defaults.c : #include <libxml/tree.h> not
2138         <tree.h> pointed out by Xing Wang
2140 2002-06-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2142         * lib/color.h (GDK_COLOR_TO_DIA, DIA_COLOR_TO_GDK): 
2143         * lib/widgets.c: 
2144         * app/color_area.c: Update to
2145         gtk_color_selection_*_current_color() fixed bad crash issues, plus
2146         updated color conversions.
2148         * sheets/ER/weakentity.xpm: Accepted patch from
2149         quixon@gnuchina.org to make icon match actual appearance.
2151         * app/recent_files.c: Fixed GNOME recent file problem, thanks to
2152         quixon@gnuchina.org.
2154 2002-06-16  Hans Breuer  <hans@breuer.org>
2156         * lib/plug-in.[hc] : make PlugInInfo opaque again in the 
2157         good tradition of information hiding. Add new function
2158         dia_plugin_get_symbol()
2159         * app/sheets.c app/sheets_dialog_callbacks.c : use it
2161         * app/sheets.c : stop complaining about object_get_type() 
2162         returning NULL. This is a consequence of e.g. disabling 
2163         plug-ins at runtime _and_ it was and is gracefully handled. 
2164         Spitting out g_warning for it isn't appropriate. 
2166         * lib/object.[ch] : removed dead code
2168         * app/plugin-mangager.c : almost complete rewrite for gtk2
2169         using GtkListStore/GtkTreeView
2171         * lib/libdia.def : updated externals
2173         * todo.gtk2 : updated, that is removed already done steps
2175 2002-06-15  Hans Breuer  <hans@breuer.org>
2177         * objects/uml/class_dialog.c : clean some left-over
2178         utf8-mess, return 0 from "focus_out_event" handlers
2179         to avoid asserting in gtk (#78305). Reconstruct 
2180         stereotype/NULL behaviour to avoid rendering empty
2181         stereotypes on classes and member functions
2183         [#56109 - Provide object defaults for StdProp objects,
2184          some remaining issues are discussed in bugzilla]
2186         * lib/object_defaults.c : (new file) manage default properties 
2187         of dia objects. The serialization is done with standard
2188         object methods in a diagram compatible format.
2190         * lib/object.c : add object_registry_foreach() which allows
2191         to iterate over all registered object types
2193         * lib/object.h : added prototypes object_default*() and
2194         object_registry_foreach()
2196         * lib/makefile.am lib/makefile.msc : add new file to build
2198         * lib/libdia.def : export new functions
2200         * app/defaults.c : provide StdProp based defaults if the
2201         ObjectType doesn't implement it's own default functions
2203         * app/create_object.c : through dia_object_default_create()
2204         * app/disp_callbacks.c : same here
2206 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2208         * objects/FS/flow-ortho.c (orthflow_get_object_menu): Menu
2209         sensitivity for deleting segments.
2211 2002-06-12  Cyrille Chépélov  <cyrille@chepelov.org>
2213         * app/color_area.c: (color_area_events):
2214         * app/diagram.c: (diagram_destroy):
2215         * app/interface.c: (zoom_activate_callback), (fill_sheet_wbox),
2216         (fill_sheet_menu):
2217         * app/load_save.c: (diagram_data_load):
2218         * app/menus.c: (menus_get_item_from_path):
2219         * app/preferences.c: (prefs_load):
2220         * app/render_gdk.c: (get_text_width):
2221         * lib/arrows.h:
2222         * lib/color.c: (color_convert):
2223         * lib/dia_dirs.c: (dia_config_filename):
2224         * lib/dia_xml.c: (xmlDiaParseFile), (data_type):
2225         * lib/intl.c: (intl_get_language_list):
2226         * lib/message.c: (message):
2227         * lib/message.h:
2228         * lib/paper.c: (get_default_paper):
2229         * lib/plug-ins.c: (this_is_a_plugin), (dia_register_plugins):
2230         * lib/widgets.c: (dia_file_selector_get_file):
2231         * lib/widgets.h:
2232         * objects/standard/image.c: (get_directory):
2234         warningectomy.
2235         
2236 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2238         * ChangeLog: Fixed bad UTF-8 mess.  Apologies.
2240 2002-06-11  Lars Clausen  <lrclause@cs.uiuc.edu>
2242         * app/interface.c: sscanf now returns EOF on empty string, so
2243         handle no match for zoom factor better => correct zoom at start.
2245         * app/sheets.c (create_object_pixmap): Tried to display empty error.
2246         (sheets_optionmenu_create): Died when not finding specified
2247         sheet.  Don't think it should.
2249         * objects/UML/association.c: Added patch from osamyn@ulb.ac.be
2250         (bug #84367) to place the text better.
2252 2002-06-11  Cyrille Chepelov  <cyrille@chepelov.org>
2254         * configure.in: Added forgotten libgnomeui-2.0 when --enable-gnome
2255                         
2256         * app/commands.c: Removed unnecessary gnome include. Removed
2257         GNOME-Print support.
2259         * app/menus.h: Removed now unnecessary gnome include.
2260         
2261         * app/sheets_dialog.c: Used Gtk 2.0 stock buttons instead of
2262         GNOME-specific stock buttons
2263         
2264 2002-06-09  Hans Breuer  <hans@breuer.org>
2266         * app/app_procs.c : convert 'Modified diagrams exits'
2267         dialog to use GtkMessageDialog. That gives us:
2268         - icons without Gnome dependency
2269         - much less code, also cross platform
2270         - improved useability ?
2272         * app/color_area.c : the Color Selection Widget looked
2273         quite wrong (alpha problems). Fix it by merging in required
2274         changes stolen from The Gimp cvs
2275         * app/color_area.h : to get the right appearance the maskes
2276         needed to be taken into account
2277         * app/interface.c : adapt to color_area_create changes.
2278         Also remove some dead code and finally remove cvs autexpansion, 
2279         I was bothered enough by irrelevant differences :-)
2281         * app/defaults.c app/properties.c app/dia-props.c : use improved GtkDialog
2282         api, i.e stocks and response to make the GnomeDialog usage
2283         obsolete. Also fixed the issue with closing the 'parent'
2284         before closing the dialog
2286         * app/display.[ch] : removed some dead code and conversion
2287         to new GtkDialog api. Also trying to conform to new HIG
2288         standard http://developer.gnome.org/projects/gup/hig/
2290 2002-06-09  Hans Breuer  <hans@breuer.org>
2292         * lib/makefile.msc : define GTK_DISABLE_DEPRECATED,
2293         build ps-utf8.c
2295         * lib/dia_image.c : gtk_widget_set_default_visual()
2296         remove. It does nothing with Gtk2.
2298         * lib/libdia.def : added ps_unicoder exports
2300         * lib/message.c : remove #GNOME use GtkMessageDialog.
2301         Yeah, Dia gets dialogs wit icons cross-platform.
2303         * lib/prop_geomtypes.c : gtk_spin_button_get_value_as_float()
2304         to gtk_spin_button_get_value()
2306         * lib/prop_inttypes.c : gtk_label_set() -> gtk_label_set_text()
2308         add #undef GTK_DISABLE_DEPRECATED to still use ...
2309         * lib/prop_text.c :  ... GtkText
2310         * lib/prop_widgets.c : ... GtkList
2311         * lib/prop_dialogs.c : ... gtk_signal_connect and more
2312         * lib/widgets.c : ... (too much to list here)
2314         * lib/ps-utf8.c : #include <string.h>
2316 2002-06-08  Cyrille Chepelov  <cyrille@chepelov.org>
2318         * configure.in:
2319         * Makefile.am:  Adapted for gtk2.
2320         Removed dependencies on libunicode, on iconv(), on langinfo().
2322         * acconfig.h: removed (now obsolete)
2324         * lib/charconv.[ch]: removed (superceded by glib)
2325         * lib/ps-utf8.[ch]: removed dependency on charconv.[ch]
2327         * **/*.[ch]: removed (utfchar *), (unichar) and other charconv or
2328         libunicode types for their glib counterparts. Fixed the include
2329         paths for libxml2. Removed all traces of libxml1 or non-UTF8
2330         support (there were remains in objects/uml).
2332         
2333 2002-06-08  Hans Breuer  <hans@breuer.org>
2335         */*.c */*/*.c : remove all the #ifdef *_UTF8_* hell,
2336         only keep the utf-8 clean code cause Dia+Gtk2 now talk it.
2337         Also use g_strdup()'s handling of NULL by returning NULL
2338         again at all places I found (remove unnecessary if's)
2340         * todo.gtk2 : new file to keep notes about gtk2 porting,
2341         further issues and thoughts and some status information.
2342         Also sent to dia-list ('Dia goes Gtk2 ...').
2343         
2344         [make it compile with GTK+ 2.0]
2346         * config.h.win32 : #undef GTK_TALKS_UTF8_WE_DONT,
2347         removed definition of S_ISDIR, S_ISREG and getlogin
2349         * */makefile.msc : Use GTK2 and libxml2
2350         BEWARE: makefile.am, configure.in not yet ported !
2352         * app/app_procs.c app/diagram.c : remove 
2353         gtk_item_factory_dump_rc code, (it wasn't read in again anyway) 
2354         but set use gtk_menu_set_accel_path() on menu creation
2356         * app/color_area.c lib/widgets.c : 
2357         make use of gtk_color_selection_set_has_palette ()
2359         * app/commands.c : gdk_pixbuf_new_from_file wants an 
2360         extra argument. Convert from DIR to GDir usage.
2362         * app/diagram_tree.c(button_press_callback) : need to return 
2363         FALSE in the signal handler to let gtk process it further.
2364         (get_object_name) : don't leak 'prop'
2365         
2366         * app/diapagelayout.c : adapt to GtkTypeInfo changes and handle 
2367         dia_page_layout_destroy() getting called more than once
2369         * app/diaunitspinner.c : GtkEditable -> GtkEntry, 
2370         GtkTypeInfo changes
2372         * app/disp_callbacks.c : gtk_menu_append() -> gtk_menu_shell_append()
2374         * app/display.h : wrap input contexts declarations into #ifdef USE_XIM.
2375         IIRC this code will not compile unchanged when USE_XIM is defined ...
2377         * app/gtk[hv]wrapbox.[hc] : use already ported version from The GIMP 1.3.x
2379         * app/interface.c : there is no widget->klass anymore in Gtk, 
2380         use GTK_WIDGET_GET_CLASS instead. gdk_pixbuf_new_from_file() extra
2381         parameter. Some tweaking of GtkWrapBox usage to get four tools in
2382         a row again.
2383         switch off GTK's double buffering on Dia's canvas. Otherwise we would 
2384         get triple buffering and flicker.
2385         Replace call to GTK private function _gtk_accel_group_attach()
2386         with public gtk_window_add_accel_group()
2388         * app/layer_dialog.c : adapt to GtkTypeInfo changes
2390         * app/load_save.c lib/plug-ins.c lib/sheet.c 
2391           objects/custom/custom.c : 
2392         simplified by using g_file_test()
2394         * app/menus.c : convert from gtk_item_factory_<dump|parse>_rc 
2395         to gtk_accel_map_<save|load>. Also added common stock-icons
2396         to the menu.
2397         
2398         * app/preferences.c : use gtk_button_set_label() instead
2399         of button->child which is gone. Also removed GLIB_CHECK_VERSION.
2401         * app/preferences.c lib/dia_xml.c lib/plug-ins.c :
2402         #ifdef G_OS_WIN32 #include <io.h>, this was formerly done
2403         in config.h.win32
2405         * app/recent_files.c : removed GLIB_CHECK_VERSION
2407         * app/render_eps.c 
2408           plug-ins/metapost/render_metapost.c
2409           plug-ins/pstricks/render_pstricks.c
2410           plug-ins/svg/render_svg.c :
2411         replace getlogin() with g_get_user_name() which always
2412         returns non NULL
2414         * app/render_gdk.c : gdk_region_union_with_rect() modifies
2415         inplace now and returns nothing, also less #hell
2417         * app/render_libart.c : some initial #hell cleaning, SuckFont
2418         still needs to vanish
2420         * app/splash.c : gdk_pixbuf_new_from_file() second arg and
2421         GTK_WINDOW_DIALOG -> GTK_WINDOW_TOPLEVEL
2423         * app/render_pixbuf.c app/sheets.c : plain #hell cleaning
2424         * app/sheets_dialog_callbacks.c : some #hell and adaptions
2425         needed to GtkWrapBox api changes
2428         * lib/charconv.[hc] : removed from build
2429         [changed appropriate]
2430         * lib/prop_inttypes.c lib/prop_text.c : 
2431         all utf-8 cleaning 
2432         * lib/text.c : ported from HEAD but keep original indent
2433         intact. Original was done by Akira TAGOH.
2435         * lib/color.c : GdkColorContext is gone, use GdkColormap instead.
2437         * lib/dia_image.c : gdk_pixbuf_new_from_file() second arg
2439         * lib/dia_xml.c : remove #ifdef GLIB_CHECK_VERSION, it's the
2440         same on all platforms now!
2442         * lib/font.c : still using SuckFont which was an IMPERATIVE FIXME!
2444         * lib/message.c : remove "charconv.h"
2446         * lib/prop_text.c : #define GTK_ENABLE_BROKEN to use GtkText
2448         * lib/plug-in.c :
2449         * lib/sheet.c : convert from DIR to GDir usage
2451         * lib/widgets.c : gtk_menu_(shell_)append and GtkTypeInfo
2453         * lib/widgets.h : include gtk<label|colorseldialog>.h
2456         * objects/fs/flow.c :
2457         * objects/fs/flow-ortho.c : GTK_ENABLE_BROKEN to use GtkText
2459         * objects/custom/custom.c : convert from DIR to GDir usage
2462         * plug-ins/python/makefile.msc : updated for GTK2/Python2.2
2465 2002-05-03  Hans Breuer  <hans@breuer.org>
2467         * lib/dia_xml.c : make the well formed utf8 check
2468         actually work for &#251; (non 7-bit ascii encoding)
2469         and fixed the file re-writing if the check fails.
2470         Thanks to Vitaly Lipatov for noticing the misbehaviour.
2472         * lib/font.c : synchronize #ifdef G_OS_WIN32 with
2473         comment on last ressort font. Thanks to Maxim Sobolev.
2475 2002-06-03  Cyrille Chepelov  <cyrille@chepelov.org>
2477         * sheets/network.sheet.in: corrected a typo in plotter invocation.
2479 2002-06-03  Steffen Macke  <sdteffen@web.de>
2481         * shapes/network/digitizing_board.png:
2482         * shapes/network/digitizing_board.shape:
2483         * shapes/network/plotter.png:
2484         * shapes/network/plotter.shape:
2485         * shapes/network/Makefile.am
2486         * sheets/network.sheet.in: added new plotter and digitizing
2487         board shapes
2488         
2489 2002-06-02  Cyrille Chepelov  <cyrille@chepelov.org>
2491         * lib/font.c: made a symptomatic fix to a segfault reported by 
2492         Jan Keirse <jan.keirse@pandora.be> on a SuSE 7.3 system. This
2493         won't prevent dia from terminating, but should give more
2494         user-friendly information about why did it terminate.
2496         Two patches from <robert.young@dsto.defence.gov.au>:
2497         
2498         * app/display.c: fix the size of the canvas area which gets
2499         redrawn. There was an off-by one error (Closes #83659)
2501         * app/display.c: make sure we redraw all screen only when we
2502         really have to (some update_areas were mistakenly ignored) (Closes
2503         #83496). 
2505         * NEWS: added a new entry for the future. Put there a reminder to
2506         update the dependencies.
2508         * configure.in: put in notes about what will change shortly.
2509         upped the version to 0.90+cvs (did also in config.h.win32)
2510         upped the minimum version for intltools (now 0.21)
2511         
2512 2002-06-01  Cyrille Chepelov  <cyrille@chepelov.org>
2514         * dia.spec:
2515         * configure.in:
2516         * NEWS:
2517         * config.h.win32:
2518         bumped up version number to 0.90. Yay!
2520 2002-05-30  Cyrille Chepelov  <cyrille@chepelov.org>
2522         * doc/pl/Makefile.am:
2523         * doc/en/Makefile.am: fixed a "make install" problem when db2html
2524         is not present (Reported by Andrew Ferrier
2525         <andrew.junk@new-destiny.co.uk>). Fixed another "make distclean"
2526         problem which prevented me from ever seeing the problem in doc/en...
2527         
2528         * Makefile.am: added autogen.sh to the EXTRA_DIST clause.
2529         
2530         * lib/font.c: patch from <robert.young@dsto.defence.gov.au>; add a
2531         way to read the font path from the XFS configuration files in
2532         order to enable FreeType (fixes #83098).
2534         * POTFILES.(in,skip): now skips objects/sybase/sybase.c, which is not
2535         shipped nowadays.
2536                 
2537         * dia.spec:
2538         * configure.in:
2539         * NEWS:
2540         * config.h.win32:
2541         bumped up version number to 0.90.RC3
2543 2002-05-29  Zbigniew Chyla  <cyba@gnome.pl>
2545         * configure.in, doc/Makefile.am, doc/pl/Makefile.am,
2546         doc/pl/authors.sgml, doc/pl/dia-manual.sgml, doc/pl/dia-pl.omf,
2547         doc/pl/intro.sgml, doc/pl/license.sgml, doc/pl/topic.dat
2548         doc/pl/usage-canvas.sgml, doc/pl/usage-customization.sgml,
2549         doc/pl/usage-layers.sgml, doc/pl/usage-loadsave.sgml
2550         doc/pl/usage-objects-selecting.sgml, doc/pl/usage-objects-special.sgml,
2551         doc/pl/usage-objects.sgml, doc/pl/usage-quickstart.sgml:
2552         Added Polish documentation.
2554 2002-05-27  Cyrille Cheeplov  <cyrille@chepelov.org>
2556         * objects/UML/state.c: there was a (gratuitous?) change of on-XML
2557         format for the UML State object. Now there's a hack to reload
2558         older files, and get them converted on the fly. 
2559         Justyna BiaÃ…?a <nell@poczta.gazeta.pl> reported this. Thanks!
2561         * lib/properties.h:
2562         * lib/propobject.c:
2563         * lib/proplist.c: Added a new property flag, PROP_FLAG_LOAD_ONLY,
2564         and adapter the proplist predicates. A LOAD_ONLY property is for
2565         when you have legacy to support but can't resist moving your
2566         fields around... (was needed to support the above state.c fix).
2568         If the in-core of your object changes and you need a LOAD_ONLY
2569         property for the old format, you must keep some spare room in your
2570         object's struct to accomodate for the potential old-style
2571         attributes. Then in foo_load(), after having called
2572         object_load_using_properties(), you must inspect the old-style
2573         fields and act accordingly. Don't ever change the on-disk formats...
2575         * objects/UML/object.c:
2576         * objects/UML/small_package.c: added a check against empty
2577         stereotypes still consuming space. Reported by Dolores Alia de
2578         Saravia <loli@unsa.edu.ar>. Thanks!     
2579         
2580 2002-05-26  Cyrille Chepelov  <cyrille@chepelov.org>
2582         * INSTALL: added platform notes from MÃ¥rten Svantesson, for when
2583         using libtool on an AFS partition.
2585         * po/update_potfiles_in.sh: now simply calls the recent intltools 
2586         features; they work better than hand-crafted half-ignorant
2587         scripts. Thanks to Kenneth Rohde Christiansen <kenneth@gnu.org>
2588         for the tip.
2590         * po/POTFILES.in: added back two files update_potfiles_in.sh
2591         didn't take into account. Now this file is not automatically
2592         generated anymore!      
2593         * po/POTFILES.skip: told `intltool-update -m` what files to ignore
2594         (the usual suspects, in fact).
2596         * configure.in: improved the isinf() / isfinite() detection on
2597         Solaris (MÃ¥rten Svantesson)
2598         
2599 2002-05-25  Cyrille Chepelov  <cyrille@chepelov.org>
2601         * configure.in: one expression was replacing $CFLAGS, removing
2602         whatever was previously in.
2603         Added more checks for isinf() and finite() on Solaris.
2605         * lib/geometry.h: added a macro defintion for isinf() if not
2606         HAVE_ISINF. (Hans, you may want to #define HAVE_ISINF if relevant
2607         on Win32)
2609         * app/commands.c: "cut" did not set the 'modified' bit (paste has
2610         been for a little while). Fixes #82994.
2612         * Makefile.am: added more stuff to distclean-local. This should make
2613         "make distcheck" pass! Thanks to the author of
2614         http://mail.gnome.org/archives/gnome-2-0-list/2001-August/msg00212.html
2615         ... I wonder who this Henstridge guy is ... ;-)
2616         Darn. Still doesn't pass. I give up for tonight.
2617         
2618         * po/update_potfiles_in.sh: updated to take care of sheet files,
2619         and to filter out the EML plug-in.
2620         * po/POTFILES.in: updated with all .c and all .sheet.in files 
2622         * po/dia.pot, po/*.po: again updated all .po files with all
2623         strings (with the updated POTFILES). Now with the up-to-date
2624         POTFILES, just all languages have some fuzzy or untranslated
2625         strings (not that the 100% team was that large beforehand...)
2627         * po-checktrans: removed the comment about .po files not holding
2628         all translatable stuff, since now they do.
2629         
2630 2002-05-24  Cyrille Chepelov  <cyrille@chepelov.org>
2632         * dia.spec:
2633         * configure.in:
2634         * NEWS:
2635         * config.h.win32:
2636         bumped up version number to 0.90.RC2
2638 2002-05-20  Hans Breuer  <hans@breuer.org>
2640         * app/load_save.c : starting to increase
2641         Dias tolerance on incomplete/broken files. The 
2642         corresponding bug is #56233. But the patch there does
2643         neither apply anymore nor does it really fix the problem
2644         but only delays it, e.g. even if it would be allowed
2645         to read a file without any layers, the later code can't
2646         handle it.
2647         * lib/dia_xml.c : attribute_<num|first>_data(), data_type()
2648         handle passing in NULL for the node gracefully.
2650         * shapes/network/printer.shape : added two more connection
2651         points - one at each side - to fix bug #60359
2653         * app/commands.c (edit_copy_callback) : 
2654         add ddisplay_do_update_menu_sensitivity() to make 
2655         sequence select-copy-paste work.
2657 2002-05-20  Hans Breuer  <hans@breuer.org>
2659         * app/create_object.c (create_object_button_press) :
2660         added a call to ddisplay_do_update_menu_sensitivity()
2661         to make Ctrl^D etc work after object creation. 
2662         Fixes #80983.
2664 2002-05-18  Lars Clausen  <lrclause@cs.uiuc.edu>
2666         * objects/ER/entity.c: 
2667         * objects/ER/attribute.c: 
2668         * objects/ER/relationship.c: Patch to allow text size change from
2669         Celso Tetsuo Nagase Suzuki.
2671 2002-05-18  Steffen Macke <sdteffen@web.de>
2673         * app/app_procs.c: #ifdef'd xmlerror.h (comes with 
2674         libxml2)
2675         * doc/en/graphics/greendots.png:
2676         * doc/en/home_network.png:
2677         * doc/en/line_props.png: 
2678         * dia-diagram.png:
2679         * dia_gnome_icon.png:
2680         * dia_gnome_menu_icon.png:
2681         * dia_logo.png:
2682         * shapes/network/telephone.png:
2683         * shapes/Logic/and.png:
2684         * shapes/Logic/buffer.png:
2685         * shapes/Logic/connector.png:
2686         * shapes/Logic/inverter.png:
2687         * shapes/Logic/nand.png:
2688         * shapes/Logic/nor.png:
2689         * shapes/Logic/not.png:
2690         * shapes/Logic/or.png:
2691         * shapes/logic/xor.png:
2692         * samples/ER-demo.dia:
2693         * samples/SADT.dia:
2694         * samples/UML-demo.dia:
2695         * samples/chronograms.dia:
2696         * samples/grafcet.dia: re-added as binary files
2698 2002-05-17  Hans Breuer  <hans@breuer.org>
2700         * lib/libdia.def : reflect removing of render_store.[ch]
2702         * */makefile.mingw : remove VERSION definition it's
2703         done in config.h.win32. Dia still doesn't work if
2704         build with mingw ...
2706         * RELEASE-PROCESS : removed */makefile.mingw
2708         * app/sheets_dialog_callbacks.c : if we use those
2709         ugly charconv_gtk_* functions lib/charconv.h needs to
2710         be #included ...
2711         * lib/charconv.h : ... and needs to contain the 
2712         necesseray prototypes _and_ #defines
2714         * plug-ins/shape/shape-export.c : with libxml2 xmlNewGlobalNs
2715         is deprecated and does nothing but spit a warning. This broke
2716         the shape format writing. Fixed.
2717         Also with libxml2 pretty formatted xml isn't the default
2718         anymore, but needs to be enabled explicit: It is done now 
2719         for shape files, which almost always needed to be edited by
2720         hand ... 
2722         * app/app_procs.c : #if G_OS_WIN32 redirect xmlErrorReporting
2723         from stderr - which is invalid on Dia/win32 - to g_print -
2724         which opens up a console window if necessary. This way
2725         a xml-deprecation-error shouldn't stay unnoticed next time
2727 2002-05-17  Steffen Macke <sdteffen@web.de>
2729         * shapes/Misc/folder.png:
2730         * shapes/Misc/file.png: re-added as binary files
2731         
2732 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2734         * lib/font.c: Fixed segfault for fonts without family_name.
2736 2002-05-17  Cyrille Chepelov  <cyrille@chepelov.org>
2738         * po/POTFILES.in: added app/sheets_dialog_callbacks.c
2740         * app/sheets_dialog_callbacks.c: While reviewing UTF-8isation upon
2741         Lars' request, minor cosmetic stuff (mostly _() of human-readable
2742         XML comments in .sheet files; one translator booby-trap disarmed).
2744         * lib/charconv.c: moved #hell inside the body of the new
2745         charconv_*gtk* functions (otherwise the Win32 or gtk2.0 linker
2746         will yell)
2747         
2748 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
2750         * plug-ins/wpg/Makefile.am (INCLUDES): 
2751         * plug-ins/shape/Makefile.am (INCLUDES): 
2752         * plug-ins/svg/Makefile.am (INCLUDES): 
2753         * plug-ins/pstricks/Makefile.am (INCLUDES): 
2754         * plug-ins/metapost/Makefile.am (INCLUDES): Added UNICODE_CFLAGS
2755         and DEBUG_CFLAGS in some missing places.
2757         * MAINTAINERS: New file containing list of known package
2758         maintainers. 
2760         * lib/charconv.h: 
2761         * lib/charconv.c: Charconv versions of some common gtk calls.
2763         * app/sheets_dialog_callbacks.c
2764         (on_sheets_new_dialog_button_ok_clicked),
2765         (on_sheets_dialog_button_edit_clicked),
2766         (on_sheets_dialog_button_remove_clicked),
2767         (on_sheets_edit_dialog_button_ok_clicked):
2768         * app/sheets.c (sheets_optionmenu_create),
2769         (sheets_optionmenu_create): Added utf8 translations.
2771         * app/sheets_dialog.c: 
2772         * app/sheets.c: 
2773         * app/sheets_dialog_callbacks.c: Added some missing _()'s.
2775 2002-05-16  Cyrille Chepelov  <cyrille@chepelov.org>
2777         * po/POTFILES.in: added app/sheets_dialog.c
2779 2002-05-15  Cyrille Chépélov  <cyrille@chepelov.org>
2781         * lib/charconv.c: (charconv_local8_to_utf8),
2782         (charconv_utf8_to_local8): tweaked the warnings to get more 
2783         informations
2784         * lib/font.c: (font_get_suckfont): handled a potential case of
2785         uninitialised data being used (just paranoid)
2786         
2787         * objects/GRAFCET/boolequation.c: (opstring),
2788         (opblock_get_boundingbox), (opblock_draw),
2789         (boolequation_calc_boundingbox): some extra hoops needed now dia
2790         talks UTF8 (but gtk doesn't). More #hell. Beeek. Basically, the
2791         symbols can't yet be used with their proper Unicode cells, since
2792         gtk will demand them in the Symbol font, expressed in the local
2793         8-bit encoding.
2794         
2795         * samples/grafcet.dia: re-saved, now with a fixed bounding box (by
2796         the fix just above).
2798 2002-05-14  Lars Clausen  <lrclause@cs.uiuc.edu>
2800         * app/diagram_tree.c (get_object_name): Check that name property
2801         doesn't have null string.
2803 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2805         * autogen.sh (DIE): Added conditional --force to gettextize.
2807         * app/pagesetup.c (pagesetup_ok): Commented out missing Gnome
2808         function call.
2810 2002-05-13  Cyrille Chepelov  <cyrille@chepelov.org>
2812         * RELEASE-PROCESS: added James' notes on how to properly make the
2813         tarball.
2815         * configure.in: removed macro nesting related to libpng.h, which
2816         was causing some problems on some systems (like mine, which made
2817         the snapshots bad).
2819         Made --enable-unicode, previously an option, the mandatory case.
2821         * app/Makefile.am: updated EXTRA_DIST
2822         
2823         * NEWS:
2824         * app/makefile.mingw:
2825         * dia.spec:
2826         * doc/en/dia-manual.sgml:
2827         * plug-ins/makefile.mingw:
2828         * configure.in: bumped up the version number to 0.90.RC1
2830         * lib/render_objects.[ch]:
2831         * po/POTFILES.in: removed render_objects from the build.
2833         * plug-ins/Makefile.am:
2834         * plug-ins/wmf/Makefile.am (new): EXTRA_DIST'ed the WMF plug-in,
2835         so we keep its source in the tarball.
2837         * objects/network/*.c, Makefile.am:
2838         * objects/sybase/*.c, Makefile.am:
2839         * po/POTFILES.in: cleaned up the non-existent files from the po
2840         build process.
2842         * plug-ins/Makefile.am: re-enabled metapost plug-in.
2843         
2844 2002-05-13  Steffen Macke <sdteffen@web.de>
2846         * AUTHORS:
2847         * app/command.c: added M. C. Nelson to the Authors
2848         * sheets/Circuit/Makefile.am: added firewall shape to build
2849         * sheets/network/Makefile.am: added telephone and microphone
2850           shapes to build
2852 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2854         * RELEASE-PROCESS: Added list of files that contain the release
2855         number or should otherwise be changed at each release.
2857 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2859         * objects/UML/uml.c (uml_operation_read): Forgot to commit this
2860         (reported fixed) bug: POLYMORPHIC -> LEAF for default.
2862 2002-05-12  Hans Breuer  <hans@breuer.org>
2864         * config.h.win32 : changed VERSION to 0.90.RC1
2866         * app/makefile.msc lib/makefile.msc : use renamed
2867         gdk-pixbuf version (same content but renamed because
2868         all the other gtk+ dlls are renamed) to avoid trouble
2869         mixing gtk versions (of which one would not 
2870         be initialized ...
2872         * app/app_procs.c : removed recently unneeded
2873         inclusion of "sheets.h"
2875         * app/render_gdk.c : removed my own debug spew
2876         which should never made it to cvs
2878         * lib/render_object.[hc] : added
2879         #error "File not used anymore."
2881         * lib/libdia.def : updated externals
2883         * app/interface.c : dropped filenames need to be
2884         converted from uri with Gtk+2.0
2886 2002-05-12  Cyrille Chepelov  <cyrille@chepelov.org>
2888         * RELEASE-PROCESS (new): a draft document about how to release. To
2889         be discussed. (already with some input from Hans Breuer)
2891 2002-05-12  Steffen Macke <sdteffen@web.de>
2893         * sheets/Makefile.am: re-added Misc sheet to make process
2894         
2895 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2897         * objects/FS/function.c: Added comments to humungous list of menu
2898         items, to aid translators.
2900 2002-05-11  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
2902         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
2904         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
2906         * app/interface.c (create_toolbox): Disallow shrinking beyond
2907         requested size.  Fixes bug #59439, and confirms to GTK guidelines
2908         (see gtk_window_set_policy).
2909         (create_sheets): Removed now unnecessary set_usize call.
2911 2002-05-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
2913         * lib/beziershape.c (remove_handles): Fixing removal of last
2914         segment.  Undo of removal still hokey.
2916 2002-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
2918         * lib/bezier_conn.c (remove_handles): Proper offset for fixing
2919         handles. 
2920         * lib/beziershape.c (beziershape_init): Removed early call to
2921         beziershape_update_data where points aren't set yet.
2922         (beziershape_add_segment): Use segment 0 instead of overflowing
2923         points array with segment+1.
2924         (beziershape_remove_segment): Proper offset for fixing
2925         connectionpoints. 
2926         (remove_handles): Proper offset.
2928 2002-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
2930         * objects/GRAFCET/action.c (action_update_data): Init x value of
2931         click point for call to connpointlist_adjust_count.
2933         * app/modify_tool.c (create_modify_tool): Init tool->auto_scrolled
2935         * app/render_pixmap.c (new_pixmap_renderer): Moved first linestyle
2936         setting to where values are inited.
2938         * lib/polyshape.c (polyshape_init): Removed call to
2939         polyshape_update_data that tried to use uninitialized data.
2941 2002-05-06  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
2943         * app/sheets_dialog.c: Mass removal of //-style comments.  The
2944         Irix compiler doesn't like them:(  I do...
2946 2002-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
2948         * app/render_libart.c (draw_string): Bail out when no GDK font is
2949         found.
2950         (set_font): Give error when font not found.
2951         (set_fillstyle): Intlized error msg.
2953         * app/pagesetup.c (pagesetup_ok, pagesetup_apply): Sets diagram
2954         modified when applied (and ok only does apply if apply is set
2955         sensitive).  Fixes bug #75623.
2957 2002-05-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
2959         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
2961 2002-05-05  Steffen Macke <sdteffen@web.de>
2963         * app/Makefile.am: added $(UNICODE_CFLAGS)
2964         
2965 2002-05-02  Lars Clausen  <lrclause@cs.uiuc.edu>
2967         * app/commands.c (help_manual_callback): Check return value of
2968         opendir.
2970         * plug-ins/xfig/Makefile.am (INCLUDES): Added DEBUG_FLAGS
2972         * plug-ins/xfig/xfig-import.c: Fixed misspelled Poly_L_ine, added
2973         checks for errors.
2975 2002-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
2977         * app/render_gdk.c (draw_string): Extra free killed.  Thanks valgrind!
2979         * objects/UML/uml.c (uml_operation_read): Fix of UML default
2980         inheritance. 
2982 2002-04-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
2984         * app/filedlg.c (file_save_as_callback, file_save_as_ok_callback):
2985         Added button to toggle diagram compression.
2987 2002-04-29  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
2989         * lib/font.c: Support for loading extra kerning files, plus got
2990         rid of rounding errors.  Bounding box mostly perfect for freetype
2991         fonts.
2992         (font_string_width): Fudge factor to get around nonlinearity of
2993         font scaling.
2995 2002-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
2997         * lib/font.c (font_string_width): YA font calculation scheme, with
2998         comments.
3000         * objects/UML/class.c (umlclass_calculate_data): Uses the same
3001         font for drawing and calculating now.
3003         * configure.in: Added utime.h check.
3005         * app/render_gdk.c (draw_string): Uses gdk_draw_text_wc when in
3006         GTK_DOESNT_TALK_UTF8_WE_DO.  Thus it matches the string width calc.
3008 2002-04-26  Hans Breuer  <hans@breuer.org>
3010         [ Instead of fixing about 70 occurances in 20 files
3011           where GTK_TALKS_UTF8_WE_DONT needed to be handled
3012           Dia on win32 from now on uses glib-2.0 and not 
3013           only talks utf-8 with gtk-1.3 but also internally.
3014           GTK_TALKS_UTF8_WE_DONT isn't supported/needed
3015           anymore. ]
3017         * config.h.win32 : #define UNICODE_WORK_IN_PROGRESS
3018         #undef GTK_TALKS_UTF8_WE_DONT
3020         * */makefile.msc : changes to use glib-2.0 (still
3021         using gtk+1.3(win32-production)
3023         * app/disp_callbacks.c : remove GTK_TALKS_UTF8_WE_DONT,
3024         adapt kevent->string handling, add <string.h>
3025         * app/render_gdk.c (get_text_width) : the length given
3026         is in chars, gdk_text_width() needs bytes
3028         * app/render_libart.c : 
3029         * app/render_pixmap.c : remove GTK_TALKS_UTF8_WE_DONT
3030         (could simplify the same way as done in render_gdk.c)
3032         * app/diagram_tree.c app/paginate_gdiprint.cpp
3033           app/sheets.c :
3034         * lib/prop_basic.c lib/prop_geomtypes.c 
3035           lib/propdialgs.c lib/propobject.c :
3036         added <string.h> which is now removed from charconv.h
3038         * lib/charconv.h : optional use infrastructure from
3039         glib-2.0 -> only five direct function mapping left
3041         * lib/charconv.c : avoid to build this with glib-2.0
3043         * lib/font.c : no string conversion needed anymore      
3044         when Dia and Gtk talk utf-8, also code adaptions
3045         for GLIB_CHECK_VERSION(2,0,0)
3047         * lib/libdia.def : removed charconv functions
3049         * lib/prop_inttypes.c : removed GTK_TALKS_UTF8_WE_DONT,
3050         replace charconv_unichar_to_utf8() with g_unichar_to_utf8()
3052         * lib/prop_text.c lib/prop_widgets.c lib/font.c : 
3053         removed GTK_TALKS_UTF8_WE_DONT
3055         * lib/text.c : finally(?) fixed cursor <place|move>ment 
3056         for Umlauts. Also fixed char insertion, still wondering
3057         how this could ever work. Does realloc on Linux 
3058         initialize the memory with zeros ?
3060         * objects/chronogram/chronoline_event.c
3061           objects/grafcet/boolequation.c :
3062         there is no uni_get_utf8 when building for glib-2.0.
3063         Replace with g_utf8_get_char() and g_utf8_next_char().
3065         * objects/uml/stereotype.c (bracketted_to_string) : 
3066         simplify while adding code for glib-2.0 build
3068 2002-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
3070         * app/diagram.h: Autosave field
3071         * app/diagram.c (diagram_set_modified): Sets autosave field.
3072         
3073         * objects/UML/usecase.c (usecase_update_data): 
3074         * objects/flowchart/ellipse.c (ellipse_update_data): 
3075         * objects/flowchart/parallelogram.c (pgram_update_data): 
3076         * objects/flowchart/diamond.c (diamond_update_data): 
3077         * objects/custom/custom_object.c (custom_update_data): 
3078         * objects/UML/state.c (state_update_data): 
3079         * objects/UML/small_package.c (smallpackage_update_data): 
3080         * objects/UML/object.c (objet_update_data): 
3081         * objects/UML/note.c (note_update_data): 
3082         * objects/UML/node.c (node_update_data): 
3083         * objects/UML/component.c (component_update_data): 
3084         * objects/UML/classicon.c (classicon_update_data): 
3085         * objects/UML/actor.c (actor_update_data): 
3086         * objects/SADT/box.c (sadtbox_update_data): 
3087         * objects/FS/function.c (function_update_data): 
3088         All now update text boundaries from update_data.
3089         
3090         * lib/widgets.c (dia_font_selector_set_styles): Made the style set
3091         correctly. 
3093 2002-04-26  Hans Breuer  <hans@breuer.org>
3095         * config.h.win32 : added VERSION definition here
3096         (and removed from makefile.msc's)
3098         * app/makefile.msc : added new files
3100         * app/app_procs.c (app_init): remove sheets_dialog_create()
3101         from start-up and ... 
3103         * app/sheet.c (sheets_dialog_show_callback) : ... lazy create
3104         sheet_dialog here when it is really needed.
3105         #include "../lib/message.h", make sheets_dialog_create() 
3106         return it's success or failing on (!custom_type_symbol). 
3107         Although editing shapes is nice IMHO it isn't crucial enough 
3108         to abort() Dia if       it isn't possible.
3110         * app/sheet.h : adapt create_sheet_dialog() prototype
3112         * app/sheets_dialog.c : add #ifdef HAVE_UNISTD_H
3114         * app/sheets_dialog_callbacks.c : #ifdef HAVE_UNISTD_H and
3115         #ifdef HAVE_UTIME_H. Otherwise #include <sys/utime.h> and
3116         name space corrections for utime() and utim_buf #ifdef
3117         G_OS_WIN32
3119         * lib/libdia.def : export new sheet functions
3121         * lib/makefile.msc : added new files
3123         * lib/render.c : don't put draw_bezier_with_arrows() in
3124         the DrawLineWithArrowsFunc slot
3126         * objects/custom/custom_object.c : #include <gmodule.h>
3127         and export 'custom_type' via G_MODULE_EXPORT
3129         * objects/uml/class_dialog.c : removed 'incompatible 
3130         types' warnings. Some refactoring while making it fit
3131         on screen with 800x600 again.
3133         * plug-ins/python/pydia-cpoint.h : add PyDiaConnectionPoint_Check
3135         * plug-ins/python/pydia-handle.h : extra parameter to
3136         PyDiaHandle_New to store the owner of the handle
3137         * plug-ins/python/pydia-handle.c : store handle owner
3138         on construction and use it in new method .connect()
3139         * plug-ins/python/pydia-object.c plug-ins/python/pydia-diagram.c : 
3140         adapt to changed prototype
3142 2002-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3144         * lib/text.c (text_calc_boundingbox): Will now return early if box
3145         passed is NULL.
3147         * objects/flowchart/box.c (box_update_data): Now updates text
3148         width info from update_data.
3150 2002-04-23  Steffen Macke <sdteffen@web.de>
3152         * plug-ins/xfig/xfig-import.c: fixed text import
3153         
3154 2002-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3156         * app/export_png.c: Moved dialog functions to their own file.
3157         * app/dialogs.[ch]: New files with standard functions for creating
3158         small, transient dialogs (e.g. export options).
3159         * app/Makefile.am: Added dialogs.[ch]
3161 2002-04-19  Steffen Macke <sdteffen@web.de>
3163         * shapes/Misc/folder.*:
3164         * shapes/Misc/file.*:
3165         * shapes/Misc/Makefile.am:
3166         * shapes/Makefile.am:
3167         * sheets/Misc.sheet.in:
3168         * sheets/Makefile.am:
3169         * configure.in: added new Misc sheet containing filesystem shapes
3170         
3171 2002-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
3173         * app/lineprops_area.c: Arrow selector in toolbox changed to use
3174         standard arrowdraw code.  Line is thinner to make some arrowheads
3175         distinguishable. 
3177 2002-04-18  Steffen Macke <sdteffen@web.de>
3179         * sheets/network.sheet.in:
3180         * shapes/network/telephone.shape:
3181         * shapes/network/Makefile.am: added telephone shape
3182         
3183 2002-04-16  Steffen Macke <sdteffen@web.de>
3185         * sheets/EML.sheet.in: commented out unavailable shapes
3186         
3187 2002-04-15  M.C. Nelson <mcn@kobayashimaru.org>
3189         * app/sheets_dialog_callbacks.c:  Fixed segfault caused by mis-ordered
3190           variable assignment.
3191         
3192 2002-04-15  Steffen Macke <sdteffen@web.de>
3194         * plug-ins/dxf/dxf-import.c: text import works again
3195         * shapes/Pneumatic/Makefile.am: added compush shape
3196         * sheets/Pneumatic.sheet.in: commented out unavailable shapes dist33
3197         and dist53
3198         
3199 2002-04-11  M.C. Nelson <mcn@kobayashimaru.org>
3201         * All these modifications are for the 'Sheets and Objects' dialog
3202           (new feature):
3204         * app/pixmaps/line_break.xpm: new icon representing a line break.
3205         
3206         * app/pixmaps/n_a.xpm: new empty icon representing not available.
3208         * app/Makefile.am: added sheets_*.[ch] files to compile list.
3209         
3210         * app/menus.c: added GNOME and gtk menu items for 'Sheets and Objects'
3211         
3212         * app/sheets_dialog.c: [new file] definition of 'Sheets & Objects' dlgs
3214         * app/sheets_dialog.h: [new file] support for Sheets & Objects dlgs 
3215         
3216         * app/app_procs.c: added call to sheets_dialog_create() in app_init()
3217         
3218         * app/sheets_dialog_callbacks.c: [new file] callbacks for S & O dialogs
3220         * app/sheets_dialog_callbacks.h: [new file] support for " " "
3222         * app/interface.c: added 'interface_current_sheet_name' global to 
3223           fill_sheet_wbox(); made fill_sheet_menu() non-static
3225         * app/interface.h: added extern declaration for aboves.
3227         * app/sheets.c: [new file] instantiation and other funcs for S & O dlgs
3229         * app/sheets.h: [new file] declarations for backing store structures
3231         * lib/sheet.c: modification of new_sheet() parameters; introduction
3232           of USER and SYSTEM scope for sheets; procedure for sorting sheets;
3233           changes to load_register_sheet().
3235         * lib/sheet.h: added 'user_data_type' field to SheetObject structure;
3236           added 'has_icon_on_sheet' flag to SheetObject structure; added 
3237           'filename', 'scope', 'shadowing' fields to Sheet structure.
3239         * lib/plug-ins.c: moved _PluginInfo declaration to header file where
3240           it belongs.
3242         * lib/plug-isn.h: see above.
3244         * lib/object.c: added 'sheet.h' to include list; added several 
3245           functions
3246           to detect objects which are not found on any sheet (for future use)
3247           object_type_detect_nosheet_callback(), object_types_detect_nosheet(),
3248           object_type_get_sheet_name(), object_type_strip_sheet_from_name().
3250         * lib/object.h: added public declarations for above functions where
3251           necessary.
3253         * objects/custom/custom.c: made custom_object_load() non-static so we
3254           can load and interpret .shape files from the Sheets & Objects dialog
3256         * objects/custom/custom_object.c: made 'custom_type' non-static so 
3257           we can differentiate between SVG shapes and other types.a
3259 2002-04-07  Hans Breuer  <hans@breuer.org>
3261         * app/object_ops.c (object_list_align_v): Fix the 'Leak fix'
3262         from 2002-01-22 to not destroy diagram->data->selected. 
3263         Avoids to crash on Objects/Align/Vertical/Top
3265         * app/render_eps.c (draw_string) : un-const buffer
3266         It isn't at all const (g_malloc(), assignment, g_free()).
3267         Doesn't gcc catch such ?
3269         * lib/arrows.h : prototype calculate_arrow_point()
3271         * lib/font.c (font_get_suckfont) : no need to
3272         special case gdk_draw_string() with GTK_TALKS_UTF8,
3273         cause all the parameter differences are handled above
3275         * lib/libdia.def : updated externals
3277         * lib/makefile.msc : removed string_prerenderer, added render
3279         * lib/render.c (draw_rect) : don't pass a Point** if a Point*
3280         is expected. [Sometimes it's good to read compiler warnings.]
3282         * objects/standard/image.c : simplified by use of g_strconcat()
3284         * plug-ins/python/makefile.msc : updated for Python 2.2
3286 2002-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
3288         * objects/standard/zigzagline.c (zigzagline_draw): Fixed
3289         directionality problem for zero-length line segments.
3291 2002-03-28  Lars Clausen  <lrclause@cs.uiuc.edu>
3293         * app/diagram.c (diagram_ungroup_selected) 
3294         (diagram_update_menu_sensitivity): Now allows ungrouping of
3295         several groups at once.
3297 2002-03-15  Lars Clausen  <lrclause@cs.uiuc.edu>
3299         * lib/render.c, all renderers: Binary incompatibility, change to
3300         expandable renderops structure.
3302 2002-03-15  Steffen Macke <sdteffen@yahoo.com>
3304         * objects/standard/Makefile.am:
3305         * objects/network/Makefile.am:
3306         * objects/UML/Makefile.am:
3307         * objects/ER/Makefile.am:
3308         * objects/FS/Makefile.am:
3309         * objects/flowchart/Makefile.am:
3310         * objects/custom/Makefile.am:
3311         * objects/GRAFCET/Makefile.am:
3312         * objects/chronogram/Makefile.am:
3313         * objects/SADT/Makefile.am:
3314         * plug-ins/cgm/Makefile.am:
3315         * plug-ins/pstricks/Makefile.am:
3316         * plug-ins/hpgl/Makefile.am:
3317         * plug-ins/wpg/Makefile.am:
3318         * plug-ins/svg/Makefile.am:
3319         * plug-ins/shape/Makefile.am: added $(UNICODE_CFLAGS)
3320         
3321 2002-03-13  Lars Clausen  <lrclause@cs.uiuc.edu>
3323         * app/render_eps.c: Support for dumping TrueType fonts (taken from
3324         ttfps).
3326 2002-03-12  Lars Clausen  <lrclause@cs.uiuc.edu>
3328         * lib/render.c: New abstract super class for renderers.
3330 2002-03-07  Akira TAGOH  <tagoh@redhat.com>
3332         * objects/ER/attribute.c (attribute_save): save a font property.
3333         (attribute_load): load a font property, and if can't load it, it's
3334         initialized.
3336         * objects/ER/entity.c (entity_save): save a font property.
3337         (entity_load): load a font property, and if can't load it, it's
3338         initialized.
3340         * objects/ER/relationship.c (relationship_save): save a font property.
3341         (relationship_load): load a font property, and if can't load it, it's
3342         initialized.
3344         * objects/UML/class.c (fill_in_fontdata): don't replace if it already
3345         has a vaule.
3346         (umlclass_save): save the font and the font size properties.
3347         (umlclass_load): load the font and the font size properties.
3349 2002-03-05  Cyrille Chepelov  <cyrille@chepelov.org>
3351         * lib/string_prerenderer.[ch] (REMOVED):
3352         * lib/render.h:
3353         * lib/diagramdata.c:
3354         * lib/Makefile.am:
3355         * app/render_eps.c: got rid of the string-specific string
3356         prerenderer, transitioned its functionality towards Lars'
3357         two-phase rendering
3359 2002-03-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3361         * configure.in: Using Freetypes own check for ver >= 1.0.5.  You
3362         may need to rerun aclocal.
3364 2002-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3366         * lib/font.c: First attempt at Unicodeness for Freetype.
3368 2002-03-02  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3370         * lib/font.c (font_string_width): Fixed font_string_width for
3371         freetype.  BB is now almost right.
3373 2002-03-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3375         * app/render_eps.h: 
3376         * app/paginate_psprint.c (paginate_psprint): 
3377         * lib/font.c: 
3378         * app/render_eps.c: Support for dumping postscript fonts into
3379         postscript files with freetype.  Fairly primitive, but works.
3380         Unicode version may have problems.
3382 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
3384         * objects/UML/class_dialog.c (class_read_from_dialog)
3385         (class_fill_in_dialog), (class_create_page): add the font selector and
3386         the font size selector.
3388         * objects/UML/class.c (umlclass_draw): uses each font_height.
3389         (umlclass_calculate_data): ditto.
3390         (fill_in_fontdata): add initial value of new font_height.
3391         (umlclass_copy): add new font_height.
3393 2002-02-27  Cyrille Chepelov  <chepelov@calixo.net>
3395         Patch from Geoff Gerrietts <ggerrietts@yahoo.com>:
3396         
3397         * lib/font.c: calculate font metrics properly and stop guessing at
3398         string widths.
3400 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
3402         * configure.in: changed gtk_advancement value to dia_talks_utf8.
3403         right now Dia is working with UTF-8 internally. it means Dia probably
3404         support most languages also including the languages which heretofore
3405         didn't work correctly.
3407 2002-02-26  Akira TAGOH  <tagoh@redhat.com>
3409         * objects/FS/function.c: add related text properties.
3410         (function_get_props), (function_set_props): add handling attribute.
3412         * objects/FS/flow.c: add related text properties.
3413         (flow_get_props), (flow_set_props): add handling attribute.
3415         * objects/FS/flow-ortho.c: add related text properties.
3416         (orthflow_set_props), (orthflow_get_props): add handling attribute.
3418         * objects/ER/relationship.c: add PROP_STD_TEXT_FONT to property.
3420         * objects/ER/entity.c: ditto.
3422         * objects/ER/attribute.c: ditto.
3424 2002-02-26  Cyrille Chepelov  <cyrille@chepelov.org>
3426         Patch contributed by Geoff Gerrietts <ggerrietts@yahoo.com>:
3427         
3428         * autogen.sh: add a check for missing intltoolize.
3430 2002-02-20  Akira TAGOH  <tagoh@redhat.com>
3432         * lib/ps-utf8.c (unicode_to_ps_name): if this function calls with same
3433         charcode, it was registered the duplicate item to HashTable. fix.
3435         * app/render_gnomeprint.c (get_width_string): add new function.
3436         (draw_string): fix non-multibyte specific code.
3438 2002-02-19  Cyrille Chepelov  <cyrille@chepelov.org>
3440         Patch contributed by Matthieu Sozeau <mattam@netcourrier.com>:
3441         
3442         * lib/font.c: do not try to search paths that do not begin with
3443         '/', like X Font Server addresses.
3444         
3445         * objects/UML/message.c (message_draw): free mname when not 
3446         message->text but CREATE or DESTROY.
3447         
3448         * objects/UML/uml.h:
3449         * objects/UML/uml.c:
3450         * objects/UML/class_dialog.c: added code to handle a stereotype 
3451         attribute for operations.
3453 2002-02-19  Akira TAGOH  <tagoh@redhat.com>
3455         * lib/Makefile.am: add LIBART_CFLAGS.
3457 2002-02-15  Hans Breuer  <hans@breuer.org>
3459         * lib/font.c (font_get_suck_font): the black and white pixel values 
3460         need to be taken from a 1 bit colormap rather than the default colormap.
3461         (fixed again, last time was 2000-05-26)
3463         Also handle the case where GTK_TALKS_UTF8 and expects all strings
3464         passed in to be in this encoding.
3466         * lib/libdia.def : export suck_font_free()
3468         * lib/text.c (text_draw) : avoid circular dependency to ../app
3469         at least for the !USE_XIM case, where it is unnecessary.
3471 2002-02-15  Cyrille Chepelov  <cyrille@chepelov.org>
3473         Changes contributed by Matts Kivik <kivik@firstlinux.net>:
3474         
3475         * shapes/Circuit/microphone_de.(shape|xpm) (NEW):
3476         * sheets/Circuit.sheet.in: added new shape microphone
3477         * shapes/Circuit/speaker_de.shape: Added a connection point.
3478         
3479 2002-02-13  Akira TAGOH  <tagoh@redhat.com>
3481         * app/render_libart.c (draw_string): fixed build issue for Win32.
3483         * lib/font.c (font_get_suckfont): fixed typo. it could't build under
3484         Win32.
3486         * configure.in: fixed testing gtk_advancement.
3488         * app/render_gnomeprint.c (draw_string): uses utfchar instead of char.
3490 2002-02-12  Akira TAGOH  <tagoh@redhat.com>
3492         * lib/text.c (text_draw): fixed XIM position, when menubar is shown for
3493         diagram window.
3495 2002-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
3497         * app/group.c (group_copy): Made new object properly initialized
3498         before copy.
3500 2002-02-11  Steffen Macke <sdteffen@yahoo.com>
3502         * app/Makefile.am: added plug-ins to DIA_LIB_PATH in run_dia.sh
3503         
3504 2002-02-10  Akira TAGOH  <tagoh@redhat.com>
3506         * lib/text.c (text_draw): fixed XIM transaction.
3508         * app/interface.c (create_display_shell): add signal for
3509         size_allocate.
3511         * app/disp_callbacks.c (ddisplay_size_allocate): add new function for
3512         XIM transaction.
3513         (set_input_dialog): remove.
3514         (ddisplay_canvas_events): remove XIM transaction. it can't transact
3515         correctly on this function.
3517 2002-02-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3519         * app/app_procs.c:
3520         * app/export_png.c: Added checks for interactivity (maybe this
3521         should be a hook after all?).
3523         * app/filedlg.c (file_export_callback): Made export dialog add
3524         suffix when reopened.
3526         * app/export_png.c: Added dialog asking for export size.
3528 2002-02-09  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3530         * lib/widgets.c: Fixed font reselection problem and first font
3531         bogus warning.
3533         * objects/UML/actor.c (actor_update_data): Changed to have
3534         connection points below text.
3536 2002-02-08  Akira TAGOH  <tagoh@redhat.com>
3538         * lib/text.c (text_split_line): use g_strndup() instead of g_malloc()
3539         and memcpy().
3541 2002-02-07  Akira TAGOH  <tagoh@redhat.com>
3543         * lib/font.c (font_get_suckfont): rewrited. generating suckfont from
3544         strings which is given.
3545         (suck_font): remove. it's any longer needed.
3547         * app/render_libart.c (set_font): don't get suckfont.
3548         (draw_string): get suckfont only which is needed for now.
3550 2002-02-05  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3552         * lib/text.c: Fixes for misunderstood width functions.
3554 2002-02-05  Hans Breuer  <hans@breuer.org>
3556         * lib/dia_xml.c : use g_strconcat() instead of 
3557         malloc, strcpy, strcat dance
3558         * app/properties.c : same here and plug memory leak
3559         (gtk functions don't eat strings)
3561         * objects/UML/message.c : there is no g_sprintf()
3562         use g_strdup_printf() instead ...
3564 2002-02-05  Akira TAGOH  <tagoh@redhat.com>
3566         * lib/message.c (gtk_message_internal): doesn't need to convert to
3567         UTF-8.
3569         * app/render_libart.c (draw_string): fixed transaction for UTF-8
3570         support.
3571         (get_text_width): ditto.
3573         * app/Makefile.am (EXTRA_DIST):
3574         s/paginate_gdiprint.c/paginate_gdiprint.cpp/
3576         * app/render_gdk.c (gdk_freetype_copy_glyph): fixed build issue.
3577         This function needs ifdef HAVE_FREETYPE because don't use it for
3578         --disable-freetype
3580 2002-02-04  Cyrille Chepelov  <cyrille@chepelov.org>
3582         * NEWS: updated with the new dependencies.
3583         
3584         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
3586         * objects/UML/class.h:
3587         * objects/UML/class.c:  
3588         * objects/UML/class_dialog.c: added code to handle the UMLParameterKind
3589         property using a GtkMenu. Options are Undefined, In, Out, In & Out
3591 2002-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3593         * app/render_libart.c: Slow but working libart freetype renderer,
3594         with color!
3596 2002-02-03  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3598         * app/render_gdk.c (draw_string): Fixed gc_function bug.
3600         * lib/widgets.c (dia_font_selector_init): Sorts the font list.
3602         * lib/font.c (freetype_render_string): 
3603         * lib/font.h:
3604         * app/render_gdk.c:
3605         * app/render_gdk.h: Changed freetype_render_string to use
3606         callback.  Rendering is broken.
3608 2002-02-03  Cyrille Chepelov  <cyrille@chepelov.org>
3610         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
3612         * objects/UML/uml.h:    
3613         * objects/UML/uml.c: added UMLInheritanceType and isQuery
3614         (constant) UML Operation attributes. UMLInheritanceType is either
3615         UML_ABSTRACT or UML_POLYMORPHIC  or UML_LEAF.
3617         * objects/UML/class.h:
3618         * objects/UML/class.c:  
3619         * objetcs/UML/class_dialog.c: added code to handle new
3620         UMLOperation attributes via a GtkMenu and a checkbox.
3622 2002-02-03  Akira TAGOH  <tagoh@redhat.com>
3624         * app/disp_callbacks.c (ddisplay_realize): fixed XIM issue.
3625         several client doesn't work with previous codes.
3627 2002-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3629         * lib/font.c (freetype_render_string): Kerning.  Very few fonts
3630         seem to use it.
3632 2002-02-02  Akira TAGOH  <tagoh@redhat.com>
3634         * app/disp_callbacks.c (ddisplay_canvas_events): fixed crashes,
3635         when doing the operation like invert the objects after active view is
3636         destroyed. when changes focus, it needs to set active_display.
3638         * app/layer_dialog.c (dia_layer_update_from_layer):
3639         (layer_dialog_edit_layer): need to convert to locale encoding
3640         if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3641         (edit_layer_ok_callback):
3642         need to convert to UTF8 if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3644         * lib/diagramdata.c (new_diagram_data): ditto.
3646         * app/layer_dialog.c (layer_dialog_new_callback): ditto.
3648         * lib/diagramdata.c (new_layer): use utfchar instead of char for
3649         argument.
3651         * lib/widgets.c: if HAVE_FREETYPE isn't defined, it can't build. fixed.
3652         (dia_font_selector_set_styles): when HAVE_FREETYPE is defined only,
3653         it's needed for now. also this function needs prototype declaration.
3655 2002-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
3657         * lib/widgets.c: Style now functional on font selector.  Some leak
3658         possible, but doesn't show up under stress test.
3660 2002-01-31  Akira TAGOH  <tagoh@redhat.com>
3662         * app/plugin-manager.c (clist_select_row): name and description needs to
3663         convert to locale encoding, when GTK_DOESNT_TALK_UTF8_WE_DO is defined.
3664         (get_plugin_manager): ditto.
3666         * lib/plug-ins.c (dia_plugin_info_init): name needs to convert to UTF-8.
3668         * app/diagram_tree.c (get_object_name): fixed transaction for UTF-8
3669         support.
3671         * lib/prop_text.c (stringprop_reset_widget): fixed crashes,
3672         when prop->string_data is NULL.
3674 2002-01-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
3676         * lib/widgets.c: 
3677         * lib/widgets.h: New font selector separating font and style.
3678         Style not functional yet.
3680 2002-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3682         * lib/text.c: 
3683         * app/render_gdk.c (draw_string): More freetype support, now
3684         renders text.  Still broken is font selection and exporting.
3686 2002-01-30  Akira TAGOH  <tagoh@redhat.com>
3688         * objects/chronogram/chronoref.c (chronoref_create): missing gettextize
3689         for font.
3691         * objects/chronogram/chronoline.c (chronoline_create): ditto.
3693         * objects/UML/usecase.c (usecase_create): ditto.
3695         * objects/UML/state.c (state_create): ditto.
3697         * objects/UML/object.c (objet_create): ditto.
3699         * objects/UML/node.c (node_create): ditto.
3701         * objects/UML/message.c (message_create): ditto.
3703         * objects/UML/component.c (component_create): ditto.
3705         * objects/UML/classicon.c (classicon_create): ditto.
3707         * objects/UML/actor.c (actor_create): ditto.
3709         * objects/SADT/box.c (sadtbox_create): ditto.
3711         * objects/SADT/annotation.c (annotation_create): ditto.
3713         * objects/GRAFCET/transition.c (TRANSITION_FONT): ditto.
3715         * objects/GRAFCET/step.c (STEP_FONT):
3716         * (step_create): ditto.
3718         * objects/GRAFCET/condition.c (CONDITION_FONT): ditto.
3720         * objects/GRAFCET/action.c (ACTION_FONT):
3721         (action_create): ditto.
3723         * objects/FS/function.c (function_create): ditto.
3725         * objects/FS/flow.c (flow_create):
3726         (flow_load): 
3727         (flow_apply_defaults): ditto.
3729         * objects/FS/flow-poly.c (flow_create):
3730         (flow_load):
3731         (flow_apply_defaults): ditto.
3733         * objects/FS/flow-ortho.c (orthflow_create):
3734         (orthflow_load):
3735         (orthflow_apply_defaults): ditto.
3737         * objects/ER/relationship.c: use utfchar instead of char for structure.
3738         (relationship_create): name needs to convert to UTF-8.
3740         * objects/ER/attribute.c: use utfchar instead of char for structure.
3741         (attribute_create): name needs to convert to UTF-8.
3743         * objects/ER/entity.c: use utfchar instead of char for structure.
3744         (entity_create): name needs to convert to UTF-8.
3746         * app/interface.c (fill_sheet_wbox): needs to convert UTF-8 to locale
3747         encoding for tooltips, if GTK_TALKS_UTF8 isn't defined.
3748         (fill_sheet_menu): needs to convert UTF-8 to locale encoding for menu
3749         items. if GTK_TALKS_UTF8 isn't defined.
3751 2002-01-29  Akira TAGOH  <tagoh@redhat.com>
3753         * objects/UML/class.c (umlclass_calculate_data): fixed malloc size.
3754         it was my careless mistake...
3756         * lib/attributes.c (attributes_set_default_font): temporarily gettextize
3757         a font name, because there are strings which isn't shown by "Courier".
3758         We need to consider a way to feel free to choose a font at runtime.
3760         * lib/render_object.c (render_object_load): ditto.
3762         * lib/text.c (data_text): ditto.
3764         * objects/EML/instantiation.c (instantiation_create): ditto.
3766         * objects/EML/interaction-ortho.c (interaction_ortho_create):
3767         (interaction_ortho_load): ditto.
3769         * objects/EML/interaction.c (interaction_create):
3770         (interaction_load): ditto.
3772         * objects/EML/process.c (fill_in_fontdata): ditto.
3774         * objects/ER/attribute.c (attribute_create): 
3775         (attribute_load): ditto.
3777         * objects/ER/entity.c (entity_create): 
3778         (entity_load): ditto.
3780         * objects/ER/relationship.c (relationship_create): 
3781         (relationship_load): ditto.
3783         * objects/UML/association.c (association_create): 
3784         (association_load): ditto.
3786         * objects/UML/class.c (fill_in_fontdata): ditto.
3788         * objects/UML/constraint.c (constraint_create): ditto.
3790         * objects/UML/dependency.c (dependency_create): ditto.
3792         * objects/UML/generalization.c (generalization_create): ditto.
3794         * objects/UML/implements.c (implements_create): ditto.
3796         * objects/UML/large_package.c (largepackage_create): ditto.
3798         * objects/UML/note.c (note_create): ditto.
3800         * objects/UML/realizes.c (realizes_create): ditto.
3802         * objects/UML/small_package.c (smallpackage_create): ditto.
3804         * objects/custom/shape_info.h (FONT_DEFAULT): ditto.
3806         * objects/custom/custom_object.c (custom_create): ditto.
3808         * objects/network/antenna.c (render_to_store): ditto.
3810         * objects/network/computer.c (render_to_store): ditto.
3812         * objects/network/disc.c (render_to_store): ditto.
3814         * objects/network/flash.c (render_to_store): ditto.
3816         * objects/network/hub.c (render_to_store): ditto.
3818         * objects/network/modem.c (render_to_store): ditto.
3820         * objects/network/modularswitch.c (render_to_store): ditto.
3822         * objects/network/monitor.c (render_to_store): ditto.
3824         * objects/network/printer.c (render_to_store): ditto.
3826         * objects/network/rj45plug.c (render_to_store): ditto.
3828         * objects/network/scead-plug.c (render_to_store): ditto.
3830         * objects/standard/textobj.c (textobj_load): ditto.
3832         * objects/sybase/client.c (render_to_store): ditto.
3834         * objects/sybase/dataserver.c (render_to_store): ditto.
3836         * objects/sybase/ltm.c (render_to_store): ditto.
3838         * objects/sybase/repserver.c (render_to_store): ditto.
3840         * objects/sybase/rsm.c (render_to_store): ditto.
3842         * objects/sybase/stableq.c (render_to_store): ditto.
3844         * plug-ins/dxf/dxf-import.c (read_entity_text_dxf): ditto.
3846         * objects/UML/uml.h (UML_STEREOTYPE_START):
3847         (UML_STEREOTYPE_END): changes default strings.
3849 2002-01-28  Akira TAGOH  <tagoh@redhat.com>
3851         * objects/UML/stereotype.c (string_to_bracketted): fixed transaction
3852         for UTF-8 support. if GTK+ and Dia don't handle UTF-8, all of characters
3853         which is given to arguments isn't UTF-8. so don't need to convert it.
3854         if GTK+ handle UTF-8, also don't need to convert it.
3855         (strend): remove.
3856         (bracketted_to_string): fixed transaction for UTF-8 support.
3857         also start/end bracket is not necessarily 1 character. so that when use
3858         strend(), it doesn't work correctly.
3859         (string_to_stereotype): use utfchar instead of char.
3860         (remove_stereotype_from_string): ditto.
3861         (stereotype_to_string): ditto.
3863         * objects/UML/stereotype.h: ditto.
3865         * objects/UML/message.c: use utfchar instead of char for structure.
3866         (MESSAGE_CREATE_LABEL, MESSAGE_DESTROY_LABEL): remove.
3868         * objects/UML/small_package.c: use utfchar instead of char for structure.
3870         * objects/UML/realizes.c: ditto.
3872         * objects/UML/object.c: ditto.
3874         * objects/UML/large_package.c: ditto.
3876         * objects/UML/implements.c: ditto.
3878         * objects/UML/generalization.c: ditto.
3880         * objects/UML/dependency.c: ditto.
3882         * objects/UML/constraint.c: ditto.
3884         * objects/UML/component.c: ditto.
3886         * objects/UML/class_dialog.c (attributes_get_current_values):
3887         (attributes_list_new_callback, attributes_fill_in_dialog):
3888         (parameters_set_values, parameters_get_values):
3889         (parameters_get_current_values, parameters_list_new_callback):
3890         (operations_set_values, operations_get_values):
3891         (operations_get_current_values, operations_list_new_callback):
3892         (operations_fill_in_dialog, templates_set_values):
3893         (templates_get_values, templates_get_current_values):
3894         (templates_list_new_callback, templates_fill_in_dialog):
3895         fixed transaction for UTF-8 support.
3897 2002-01-27  Akira TAGOH  <tagoh@redhat.com>
3899         * objects/UML/message.c (message_draw): fixed transaction for UTF-8 support.
3901         * objects/UML/class_dialog.c (class_read_from_dialog):
3902         (class_fill_in_dialog):
3903         (attributes_get_values): ditto.
3905         * objects/UML/actor.c (actor_create): ditto.
3907         * objects/UML/class.c (umlclass_calculate_data): ditto.
3909         * objects/UML/association.c (association_apply_properties):
3910         (fill_in_dialog): ditto.
3912         * objects/UML/uml.c (uml_get_attribute_string):
3913         (uml_get_operation_string):
3914         (uml_get_parameter_string):
3915         (uml_get_formalparameter_string): use utfchar instead of char.
3917         * objects/UML/uml.h: gettextize UML_STEREOTYPE_START and
3918         UML_STEREOTYPE_END.
3920         * objects/UML/class.h: use utfchar instead of char.
3922         * lib/dia_xml.c (data_add_string): ditto.
3924         * lib/text.c (text_insert_char): fixed characters# calculation
3925         when includes multibytes character in strings.
3927 2002-01-26  Steffen Macke  <sdteffen@yahoo.com>
3929         Patch from Richard Rowell <rwrowell@bellsouth.net>:
3931         * app/lineprops_area.c:
3932         * lib/arrows.h:
3933         * lib/arrows.c: 
3934         * lib/widgets.c: added crow foot arrow and cross arrow
3935         
3936         Patch from Frank Gevaerts <frank.gevaerts@fks.be>:
3937         
3938         * plug-ins/svg/render_svg.c: fixed arcs, fill and text alignment
3940 2002-01-26  Cyrille Chepelov  <cyrille@chepelov.org>
3942         * po/update.pl (REMOVED):
3943         * po/update.sh (REMOVED):
3944         * xml-i18n-merge.in.kg (REMOVED):
3945         * xml-i18n-update.in.kg (REMOVED):
3946         * sheets/Makefile.am:
3947         * Makefile.am:
3948         * autogen.sh:
3949         * configure.in: converted from xml-i18n-tools to intltools
3951         This looks like it fixes the build bugs of the snapshot tarballs, 
3952         and it supersedes #69611.       
3954 2002-01-25  Akira TAGOH  <tagoh@redhat.com>
3956         * lib/text.c (text_insert_char): fixed characters# calculation.
3957         it's not string length.
3959         * lib/plug-ins.c (dia_plugin_info_init): when GTK_DOESNT_TALK_UTF8_WE_DO
3960         is defined, needs to convert a description to UTF-8.
3962         * app/render_gdk.c (get_text_width): fixed transaction for
3963         UTF-8 support. also should uses gdk_text_width_wc() instead
3964         of gdk_text_width().
3966         * app/render_gdk.c (draw_string): when GTK_DOESNT_TALK_UTF8_WE_DO
3967         is defined, needs to convert to locale encoding for display.
3968         Also use utfchar instead of char for argument.
3970 2002-01-24  Hans Breuer  <hans@breuer.org>
3972         * app/commands.c(edit_paste_callback and more) : 
3973         call diagram_modified(ddisp->diagram) to fix #68083
3974         (help_menu_callback) : plug a DIR leak
3976         * app/disp_callbacks.c(ddisplay_canvas_events) : handle 
3977         GTK_TALKS_UTF8_WE_DONT
3979         * app/render_gdk.c(get_text_with) : it's a bad idea to use
3980         gdk_string_with() when GTK_TALKS_UTF8_WE_DONT instead of
3981         gdk_text_width(). The length value is still questionable ...
3983         * lib/charconv.c : use functions already available in early
3984         GLIB-1.3 days whiches API hasn't changed since, to avoid
3985         version problems with the win32 build
3987         * lib/font.c : finally fix #58045 and #68208
3989         * lib/dia_xml.c (xmlDiaSaveFile) : gzdopen in binary mode
3991 2002-01-24  Akira TAGOH  <tagoh@redhat.com>
3993         * app/disp_callbacks.c (ddisplay_canvas_events): when event returned
3994         no strings, fixed transaction.
3996         * lib/charconv.h: fixed typo.
3998         * app/menus.c: fixed typo.
4000         * lib/charconv.c (charconv_utf8_strchr): remove. use uni_strchr instead.
4002         * objects/UML/object.c: attrib's type uses utfchar instead of char.
4004         * app/disp_callbacks.c (ddisplay_canvas_events): forget g_free()
4006         * lib/text.c (text_create_change): use unichar instead of char.
4008         * lib/text.c (data_add_text, data_text, apply_textstr_properties):
4009         use utfchar instead of char.
4011         * lib/text.c (text_insert_char, text_key_event): fixed transaction for
4012         UTF-8 support.
4014         * lib/charconv.c (charconv_utf8_get_char): add new function.
4016 2002-01-23  Akira TAGOH  <tagoh@redhat.com>
4018         * lib/text.c (text_delete_forward, text_delete_backward,
4019         text_split_line): fixed transaction for UTF-8 support.
4021         * lib/text.c (text_copy): when UNICODE_WORK_IN_PROGRESS is defined,
4022         strlen[] has string length for UTF-8, so has to use alloclen[].
4024         * dia.pot: remove.
4026         * .cvsignore: add dia.pot.
4028 2002-01-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
4030         * configure.in: Added "sk" to ALL_LINGUAS.
4032 2002-01-22  Akira TAGOH  <tagoh@redhat.com>
4034         * lib/text.c (text_set_string, new_text, text_copy,
4035         text_get_string_copy, text_join_lines): use utfchar instead of gchar
4036         for strings.
4038         * lib/text.c (set_string): use charconv_utf8_strchr() instead of
4039         strchr().
4041         * lib/charconv.c (charconv_utf8_strchr): add new function.
4043         * lib/charconv.c (charconv_keyval_to_unicode): ditto.
4045         * lib/charconv.c (charconv_utf8_from_gtk_event_key): ditto.
4047         * app/disp_callbacks.c (ddisplay_canvas_events): needs to convert
4048         strings to the appropriate encoding.
4050 2002-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
4052         * app/object_ops.c (object_list_align_[hv]): Leak fix.
4054         * lib/Makefile.am (INCLUDES): Added debug flags.
4056         * app/object_ops.c: Fixed ordering problem of align equi-distant &
4057         adjacent. 
4059 2002-01-21  Akira TAGOH  <tagoh@redhat.com>
4061         * lib/font.c (font_string_width): use gdk_text_width_wc() instead of
4062         gdk_string_width().
4064         * objects/GRAFCET/boolequation.c: fixed invalid comment.
4066         * objects/UML/stereotype.c (string_to_bracketted): fixed build problem
4067         when defined UNICODE_WORK_IN_PROGRESS.
4069         * lib/dia_xml.c (data_add_string): fixed typo.
4071 2002-01-20  Akira TAGOH  <tagoh@redhat.com>
4073         * configure.in: fixed test gtk_advancement.
4075 2002-01-019  Steffen Macke  <sdteffen@yahoo.com>
4077         * plug-ins/svg/render_svg.c: fix for #69053, alignment of text
4078         exported to SVG
4080         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>: 
4082         * app/recent_files.[ch]: reworked to support GNOME, accelerators,
4083         tool tips, preferences, and arbitrarily long ~/.dia/history
4085         * app/menus.c: made 'Plugins' consistantly spelled and accelerated;
4086         removed 'Open Recent'; added new separators for recent documents on
4087         File menu.
4089         * app/interface.[ch] (interface_get_toolbox_shell): new function
4091         * app/diagram.c: added new parameter to recent_file_history_add() call
4093         * app/preferences.[ch]: added new 'Recent documents list size'
4094         preferences item
4095         
4096 2002-01-18  Akira TAGOH  <tagoh@redhat.com>
4098         * lib/font.c (font_get_gdkfont_helper): use gdk_fontset_load ().
4099         if it failed, should be used gdk_font_load ().
4101         * lib/font.c (font_data): added the font entries for CJK.
4103 2002-01-17  Steffen Macke  <sdteffen@yahoo.com>
4105         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>:
4107         * app/menus.c: replaced GDK_F1 with "F1" to fix segfault on startup
4108         
4109 2002-01-04  Cyrille Chepelov  <cyrille@chepelov.org>
4111         Patch from Martin Cracauer <cracauer@cons.org>:
4112         
4113         * app/menus.c: add missing #include <gdk/gdkkeysyms.h> (useful in the
4114         non-GNOME case ?)
4116 2002-01-01  Hans Breuer  <hans@breuer.org>
4118         * app/command.c : optional use GDI printing on windoze
4120         * app/preferences.[hc] : add option 'prefer_psprint' to 
4121         select the print engine to use (could be used for Dia/Gnome
4122         as well)
4124         * app/paginate_gdiprint.(h|cpp) : new files, which interlink the
4125         wmf plug-in with the common win32 print api. Now printing
4126         should work almost as expected from a windows program :-)
4128         * app/diagram.c app/menus.[hc] : rename _UpdatableMenuItems.delete
4129         to .edit_delete to avoid clashes with C++
4131         * app/makefile.msc : updated for GDI printing
4133         * plug-ins/wmf/wmf.cpp : some small modifications to support
4134         GDI printing. Also swap R and B channel in draw_image()
4136         * app/makefile.am : added windows only files to EXTRA_DIST
4138         * objects/uml/class.c(umlclass_set_props) : force recalculation
4139         when applying properties
4141         * lib/charconv.c lib/dia_xml.c : temporary back-ported to
4142         glib-1.3.2 (for win32) IMHO causes recent cvs introduces too
4143         many incompatible changes (and would force a gtk update)
4145         * objects/makefile.msc : don't build C-Objects which are
4146         already available as 'pure shape'
4148         * plug-ins/makefile.msc : remove diaimport from build. It was
4149         only available via mailing-list and is broken since the
4150         StdProp overhaul.
4153         Patch from Jose A Ortega Ruiz  <jaortega@acm.org>
4155         * app/preferences.[hc] : tweaked preferences.c to make 
4156         PREF_STRING work. Use it for 'diagram_tree_hidden'. Also
4157         added some more DiagramTree prefererences and their own
4158         notebook page.
4160         * app/diagram_tree.[hc] : allow to sort by object type or name
4161         and hide by type ...
4162         * app/diagram_tree_menu.[hc] : ... add respective menu entries ...
4163         * app/diagram_tree_menu_callbacks.[hc] : ... and callbacks.
4165         * app/diagram_tree_window.c : handle hidden types and window
4166         size restoring.
4168 2001-12-20  Hans Breuer  <hans@breuer.org>
4170         * plug-ins/python/Makefile.am : patch from Peter Moulder 
4171         <pmoulder@csse.monash.edu.au> to make the python plug-in
4172         compile on *nix too.
4174 2001-12-03  Cyrille Chepelov  <chepelov@calixo.net>
4176         Patch from Alan <horkana@tcd.ie>:
4178         * app/menus.c: bind the F1 shortcut to the Help/_Manual function.
4180 2001-11-20  Hans Breuer  <hans@breuer.org>
4182         * app/makefile.msc : add new diagram_tree_menu(_callbacks).obj
4184 2001-11-18  Jose A Ortega Ruiz  <jaortega@acm.org>
4186         * app/diagram_tree.[hc] : Added new functions and types for
4187         sorting diagram and objects, and attaching the popup menus.
4189         * app/preferences.h: Added more diagram tree preferences, using a
4190         DiagramTreeConfig struct in DiaPreferences. The new prefs are the
4191         height and width of the diagram tree window and the default sort
4192         orders for diagrams and objects.
4194         * app/preferences.c (prefs_data): Added new entries for the new
4195         diagram tree preferences.
4197         * app/preferences.c (prefs_tabs): New tab for diagram tree
4198         preferences.
4200         * app/diagram_tree_window.[hc] (create_diagram_tree_window): 
4201         * app/diagram_tree_window.c (diagram_tree_window_new): 
4202         * app/interface.c (create_tree_window): The diagram tree window is
4203         initialised using the DiagramTreeConfig part of prefs.
4206 2001-11-14  Jose A Ortega Ruiz  <jaortega@acm.org>
4208         * app/diagram_tree_menu.[hc]: New files. Functions to create the
4209         diagram tree popup menus.
4211         * app/diagram_tree_menu_callbacks.[hc]: New files. Callbacks for
4212         the diagram tree popup menus.
4214         * app/Makefile.am (dia_core_files): diagram_tree_menu* files
4215         added.
4217 2001-11-13  Jose A Ortega Ruiz  <jaortega@acm.org>
4219         * app/diagram_tree.c (double_click_callback, diagram_tree_new):
4220         double-clicking a diagram tree node raises the diagram window
4221         to the foreground (and, if a object node was clicked, selects the
4222         object in the diagram).
4224         * app/diagram_tree.c (select_tree_widget): selecting an object
4225         node with single click simply updates it (no raise).
4227 2001-11-08  Jose A Ortega Ruiz  <jaortega@acm.org>
4228         These changes make the diagram tree lazy: it is not created unless
4229         the diagram tree window is requested.
4230         
4231         * app/diagram_tree_window.[hc] (create_diagram_tree_window): new
4232         function for creating the tree window.
4234         * app/interface.c (create_tree_window): call
4235         create_diagram_tree_window() instead of diagram_window().
4237         * app/diagram_tree.c (diagram_tree_add, diagram_tree_remove) 
4238         (diagram_tree_update, diagram_tree_update_name) 
4239         (diagram_tree_add_object, diagram_tree_add_objects) 
4240         (diagram_tree_remove_object, diagram_tree_remove_objects) 
4241         (diagram_tree_update_object): accept a NULL tree as a nominal
4242         argument (and do nothing in this case!), so that the diagram tree
4243         is not initialised if not used.
4245         * app/diagram_tree_window.c (diagram_tree): do not create the
4246         diagram tree until diagram_window() or diagtree_show_callback()
4247         are invoked.
4249 2001-10-31  Jose A Ortega Ruiz  <jaortega@acm.org>
4250         [slightly modified and applied from Hans Breuer <hans@breuer.org>]
4252         * app/diagram_tree_window.[hc] : (new files) implementation of 
4253         the diagram tree window, a container for a diagram tree. [Removed
4254         the horizontal scroll bar glitch by disableing it]
4256         * app/diagram_tree.[hc] : (new files) implementation of the 
4257         diagram tree widget. [Don't rely on the layers GPtrArray to be
4258         NULL terminated, but use its ->len field] 
4260         * app/Makefile.am (dia_core_files): added new files
4261         diagram_tree.[hc] and diagram_tree_window.[hc]
4263         * app/interface.[hc] : (create_tree_window): this function 
4264         creates the new diagram tree window widget
4266         * app/undo.c (delete_objects_apply) (delete_objects_revert) 
4267         (insert_objects_apply) (insert_objects_revert) (group_objects_apply) 
4268         (ungroup_objects_apply) (ungroup_objects_revert): 
4269         every time that an undoable command modifies a diagram 
4270         adding/removing/(un)grouping objects, a diagram_tree_something() is 
4271         invoked to keep the diagram tree window in sync
4273         * app/properties.c (properties_apply): call to
4274         diagram_object_modified(), which updates the diagram tree window
4275         when the properties of an object are modified
4277         * app/preferences.[hc] : new "show_diagram_tree" configuration option 
4278         (whether the diagram tree window should be shown on dia startup)
4280         * app/menus.c : added '<Toolbox>/File/Diagram Tree' entry
4282         * app/diagram.h (diagram_object_modified): callback notifying of a
4283         diagram object modification
4285         * app/diagram.c (diagram_load_into): added call to
4286         diagram_tree_add() to add newly loaded diagrams to the diagram
4287         tree window
4288         (diagram_destroy): call to diagram_tree_remove() to remove a
4289         destroyed diagram from the diagram tree window
4290         (diagram_add_object): call to diagram_tree_add_object() to add an
4291         object to the diagram tree window
4292         (diagram_add_object_list): as above, but with an object list
4293         (diagram_selected_break_external): deletion of objects from the
4294         diagram is detected here, and diagram_tree_remove_object() is
4295         invoked to remove the object from the diagram tree window (it
4296         would be nice to have a diagram_remove_object() in the Diagram
4297         interface)
4298         (diagram_set_filename): update the diagram tree window when a
4299         diagram's filename changes
4301         * app/commands.c (file_new_callback): added call to
4302         diagram_tree_add() to add newly created diagrams to the diagram
4303         tree window
4305         * app/app_procs.c (app_init): added call to create_tree_window()
4307         * app/makefile.msc : updated
4309 2001-10-28  Hans Breuer  <hans@breuer.org>
4311         * app/preferences.h (DiaPreferences): 
4312         * app/preferences.c (prefs_data): new "show_diagram_tree"
4313         configuration option (whether the diagram tree window should be
4314         shown on dia startup)
4316         * app/menus.c: added the new "<Toolbox>/View/Diagram tree" menu
4317         entry (both for GNOME and gtk)
4319         * app/diagram.h (diagram_object_modified): callback notifying of a
4320         diagram object modification
4322         * app/diagram.c (diagram_load_into): added call to
4323         diagram_tree_add() to add newly loaded diagrams to the diagram
4324         tree window
4325         (diagram_destroy): call to diagram_tree_remove() to remove a
4326         destroyed diagram from the diagram tree window
4327         (diagram_add_object): call to diagram_tree_add_object() to add an
4328         object to the diagram tree window
4329         (diagram_add_object_list): as above, but with an object list
4330         (diagram_selected_break_external): deletion of objects from the
4331         diagram is detected here, and diagram_tree_remove_object() is
4332         invoked to remove the object from the diagram tree window (it
4333         would be nice to have a diagram_remove_object() in the Diagram
4334         interface)
4335         (diagram_set_filename): update the diagram tree window when a
4336         diagram's filename changes
4338         * app/commands.c (file_new_callback): added call to
4339         diagram_tree_add() to add newly created diagrams to the diagram
4340         tree window
4342         * app/app_procs.c (app_init): added call to create_tree_window()
4344 2001-10-28  Hans Breuer  <hans@breuer.org>
4346         * plug-ins/python/pydia-property.c : apparently I missed
4347         to commit this last time. Now it has some more SetAttr
4348         support (apply from property)
4350         * plug-ins/python/pydia-properties.h : added PyDiaProperty_Check
4352         * plug-ins/python/pydia-text.[ch] : new files
4354 2001-10-14  Hans Breuer  <hans@breuer.org>
4356         * lib/charconv.c : g_locale_to_utf8() does not handle NULL
4357         strings. Use g_strdup() for these.
4359         libxml2 does not produce 'any extra indentation when saving a tree'
4360         [libxml2-2.4.2/doc/upgrade.html] anymore, which was the default with
4361         libxml(1). To get human readable XML some extra tweaking is required.
4362         It is enabled by setting 'pretty_formated_xml' to 'true' in 'diarc'.
4363         * lib/dia_xml.[hc] : provide and use 'DIAVAR pretty_formated_xml'
4364         * app/preferences.[ch] : initialize 'pretty_formated_xml'
4366         * lib/libdia.def : updated externals
4368         * lib/properties.h : add prototype for prop_list_from_single ()
4370         * plug-ins/makefile.msc : build metapost plug-in
4372         * plug-ins/metapost/render_metapost.c : msvc does not like
4373         switch labels without operation 'default: }'. Added a noop.
4375         * plug-ins/python/pydia-text.[hc] : (new files) wrap DiaText
4376         * plug-ins/python/diamodule.c : added PyDiaText 
4377         * plug-ins/python/makefile.msc : dito. Also added LIBXML_CFLAGS.
4378         Although the python plug-in does not use libxml at all, the
4379         headers are required to use the lib/prop*.h headers
4381         * plug-ins/python/pydia-diagramdata.c : added wrappers for
4382         update_extents and get_sorted_selected (should I duplicate
4383         more functions from PyDiaDiagram or should they be moved?)
4385         * plug-ins/python/pydia-properties.c : allow to set (some) properties
4386         through the dictionary api
4387         * plug-ins/python/pydia-property.h : declare PyDiaProperty_ApplyToObject
4388         * plug-ins/python/pydia-property.c : implement it (currently only
4389         string properties can be set)
4391         Reimplement PyDiaProperty_GetAttr by means of the new StdProp api.
4392         Quoting myself: 'Still not convinced that this is better than an 
4393          integral property->type and some casting ...
4394          It is trading a straightforward 40 lines switch statement to
4395          this nice 'type safe' function mapping (about 125 lines)'
4396         (But now it works again, better than changing the News file :)
4397         
4398 2001-10-14  Cyrille Chepelov  <chepelov@calixo.net>
4400         patch from <robert.young@dsto.defence.gov.au>: 
4401         * objects/UML/component.c: remember to set font in UML component
4402         object (fixes #62132)   
4404 2001-10-02  Lars Clausen  <lrclause@cs.uiuc.edu>
4406         * plug-ins/metapost/metapost.c: 
4407         * plug-ins/metapost/Makefile.am:
4408         * plug-ins/metapost/render_metapost.c:
4409         * plug-ins/metapost/render_metapost.h:
4410         Metapost renderer from Chris Sperandio
4412 2001-09-14  Hans Breuer  <hans@breuer.org>
4414         * app/render_gdk.c : reflect the fact, that GTK already talks
4415         UTF8 on win32, fixes #59982, #56100, (#55992 ?) ...
4417         * lib/font.c : 
4418         * app/render_libart.c : trying to fix #58045 but it appears
4419         to be an Gdk/win32, too. 
4421         * lib/charconv.c : handle utf8 conversion with the help of
4422         glib-1.3 even in the !HAVE_UNICODE case.
4424         * lib/dia_xml.c : reduce complaing about missing encoding, by
4425         detecting if the default (utf8) would break the file.
4427 2001-09-13  Cyrille Chepelov  <chepelov@calixo.net>
4429         * lib/charconv.c: (get_local_charset): at least please try to not 
4430         silently change the logic, while avoiding crashes. 
4432         * lib/font.c: (suck_font): put a #error, we have a nasty something
4433         to fix there before we switch to Gtk 2.0.
4434         
4435 2001-09-09  Hans Breuer  <hans@breuer.org>
4437         * **/makefile.mingw : Approach to compile Dia with mingw.
4438         Compiling mostly works but running does not (yet) ... 
4440         * lib/geometry.h : 
4441         - use G_OS_WIN32 instead of _MSC_VER to drag in isinf, etc. definitions. 
4442           Apparently mingw needs it too.
4443         - enable 'normalization' of a null verctor. Otherwise the beziergon
4444           bounding box calculation would be broken at least with msvc. What's
4445           the mathematical correct result of 0.0/0.0 ?
4447         * lib/dia_xml.c : isinf() for mingw too.
4449         * lib/dia_dirs.c : use MAX_PATH instead of _MAX_PATH (works for mingw 
4450         and msvc)
4452         * lib/charconv.c : still crashes if strcmp(NULL, "UTF-8"). 
4453         Please don't do it.
4455         * lib/font.c : Trying to reflect that GTK_TALKS_UTF8_WE_DONT
4457         * lib/libdia.def : updated externals. Apparently mingw needs
4458         them to produce the right mangling.
4460         * plug-ins/shape/shape-exports.c : get prototypes for xmlStrdup
4461         and xmlDiaSaveFile
4463 2001-09-08  Wang Jian  <lark@linux.net.cn>
4465         * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN
4467 2001-09-07  Cyrille Chepelov  <chepelov@calixo.net>
4469         * lib/dia_xml_libxml.h:
4470         * lib/dia_xml.c: (data_add_string), (xmlDiaSaveFile): Duplicated
4471         libxml1's code, to rework the output file before it gets committed
4472         to disk. This is rubbish, and will be removed when libxml2
4473         switches from discouraged to mandatory. 
4474         All in all, this fixes #60152. 
4475         
4476         * lib/charconv.h: 
4477         * lib/charconv.c: (charconv_unichar_to_utf8):
4478         made the type of the input parameter explicitly an unsigned long.
4480         * configure.in: Added a check for libz (we must now include it
4481         explicitly, for xmlDiaSaveFile).
4482         
4483         * app/load_save.c: (diagram_data_save):
4484         * lib/plug-ins.c: (ensure_pluginrc), (info_fill_from_pluginrc),
4485         (dia_pluginrc_write):
4486         * plug-ins/shape/shape-export.c: (new_shape_renderer),
4487         (end_render), (draw_string):
4488         * plug-ins/svg/render_svg.c: (new_svg_renderer), (end_render),
4489         (draw_string):
4491         Made sure we always write UTF-8 XML files, and through
4492         xmlDiaSaveFile().
4494         * NEWS: documented that fact.
4495         
4496 2001-09-07  James Henstridge  <james@daa.com.au>
4498         * configure.in (found_libxml): refactor the check for libxml a
4499         little so that it handles finding both libxml1 and 2 better.
4501 2001-09-03  Cyrille Chepelov  <chepelov@calixo.net>
4503         * app/app_procs.c: removed a spurious } which caused a compilation
4504         error in the (!HAVE_GNOME && HAVE_POPT_H) case
4506         * lib/charconv.c: (get_local_charset): some versions of iconv(1)
4507         don't know what ANSI X3.4-1968 is. I didn't know until this day,
4508         but it's just plain old ASCII. Added a check to shield the poor
4509         XML library.
4511         Patches from <robert.young@dsto.defence.gov.au>:
4513         * lib/text.c: (text_calc_boundingbox) Bounding box now calculates the
4514         width and height of text before calculating bounds. Fixes #59928
4516         * app/preferences.c: Moved grid related items into Grid Tab.
4517         
4518 2001-09-02  Cyrille Chepelov  <chepelov@calixo.net>
4520         * app/interface.c: (create_zoom_widget): connected one more signal
4521         to the Zoom selector combo's list. Fixes #59879.
4523         * app/app_procs.[ch]: (app_init) (do_convert)
4524         (build_output_file_name): brought back into the main executable
4525         the rare useful bits of the ill-fated diaconv. This means we have
4526         one new feature : --export-to-format (-t), which should make
4527         writing conversion scripts easier, and a crude implementation of
4528         -t and -e for the poptless argument parsing, which means the Win32
4529         port should be able to take advantage of it (that should make
4530         resolving #58197 possible).
4532         * app/diaconv.c: kept the poor duck compiling (but that's about
4533         it).
4535         * plug-ins/svg/render_svg.c: updated the SVG DTD header (I hope
4536         I've got it right).
4538         * NEWS: updated about the new feature above, and documented the 
4539         "missing encoding specification" complaint. 
4540         
4541 2001-09-01  Abel Cheung  <maddog@linux.org.hk>
4543         * configure.in: Rename zh_TW.Big5 -> zh_TW in ALL_LINGUAS.
4545 2001-09-01  Cyrille Chepelov  <chepelov@calixo.net>
4547         * objects/standard/bezier.c: used g_new0 instead of g_new, to take
4548         care of #59837.
4550 2001-09-01  James Henstridge  <james@daa.com.au>
4552         * */Makefile.am: various changes to include missing files, and fix
4553         sheets dir to handle building with builddir != srcdir.
4555         * autogen.sh: unconditionally pass the --enable-maintainer-mode
4556         and --enable-db2html flags so that builds from CVS work correctly.
4558         * configure.in: increment version number.  Also add an
4559         --enable-db2html flag.  Without the flag, db2html won't be run (if
4560         the flag is passed and db2html is not present, do nothing).
4562 2001-08-30  Cyrille Chepelov  <chepelov@calixo.net>
4564         * lib/poly_conn.c: (polyconn_copy): it's a wonder this routine
4565         even compiled. It's really too bad there is no lint tool easily
4566         available (or a more cautious, pedandic, paranoid and verbose
4567         compiler). Anyway, this fixes #59662. (this didn't affect 0.88.x)
4569 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
4571         * app/load_save.c:
4572         * dia/lib/plug-ins.c: use g_strdup() instead of strdup(). Patch
4573         from <robert.young@dsto.defence.gov.au>. Fixes #59591.
4575         * app/menu.c: added ellipsis(...) to diagram properties menu item.
4576         * app/dia-props.c: diagram properties dialog contents did not
4577         represent current diagram settings.
4578         * app/dia-props.[ch]:
4579         * app/display.c: diagram properties contents now follows currently
4580         selected diagram.
4581         Patch also from <robert.young@dsto.defence.gov.au>, fixes #59409.
4583         * AUTHORS: added Robert Young.
4584         
4585 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
4587         * app/modify_tool.c: (modify_button_release): Patch from
4588         <robert.young@dsto.defence.gov.au>. Fixes the remaining bit from
4589         #59090: if selection dragging was released outside of the window, 
4590         artifacts of the selection box remained.
4592 2001-08-25  Cyrille Chepelov  <chepelov@calixo.net>
4594         * Objects/custom/shape_info.c: added missing #include <xmlmemory.h>
4596 2001-08-19  Cyrille Chepelov  <chepelov@calixo.net>
4598         * configure.in:
4599         * sheets/Makefile.am: prepared the terrain for the Version of
4600         xml-i18n-tools Which Comes After 0.9 (and which will feature at
4601         last a sane behaviour with XML files). Some reasonible delay
4602         before enforcing that version *will* be given.
4604         * xml-i18n-merge.in.kg: included the current CVS xml-i18n-merge.in
4605         
4606         * lib/plug-ins.c: <xmlmemory.h> defines xmlFree(), otherwise it
4607         becomes a nonexistent symbol.
4608         
4609 2001-08-18  Hans Breuer  <hans@breuer.org>
4611         * app/app_procs.c : made it compile without ENABLE_NLS
4613         * app/diap_callbacks.c : strcmp isn't guaranteed to work
4614         with NULL pointers
4616         * app/load_save.c :
4617         * lib/plug-ins.c : 
4618         * objects/custom/shape_info.c : avoid mixing allocators and dealocators. 
4619         It has to be :
4620                 xmlGetProp, ... -> xmlFree
4621                 malloc, strdup -> free
4622                 g_new, g_malloc, g_strdup - > g_free
4624         * app/win32print.c : some more error checking, still not
4625         working on Win9x
4627         * lib/charconv.c : get_local_charset is used even with !HAVE_UNICODE
4629         * lib/dia_xml.c : msvc still has no unistd.h
4631         * lib/dia_xml.c :
4632         * lib/sheets.c : temporary resolved libxml include brokeness
4634         * plug-ins/python/pydia-*.c : reflect Font and StdProp api
4635         changes. Compiles again, but doesn't do anything useful anymore.
4636         (see THE_PROP_TYPE_IS_INTEGRAL)
4638         * **/makefile.msc : updated to use LIBXML2
4640         * lib/libdia.def : reflect api changes
4642 2001-08-17  Cyrille Chepelov  <chepelov@calixo.net>
4644         * config.h.win32: added defines telling that gtk speaks UTF8.
4645         Hans, I believe this reflects what GTK on Win32 does.
4647         * app/app_procs.c: if GTK talks UTF8, we'll feed it UTF8 localised
4648         strings.        
4649         * lib/prop_inttypes.c: 
4650         * lib/prop_text.c:
4651         * lib/prop_widgets.c: fixed typos in the GTK_TALKS_UTF8_WE_DONT
4652         code path.
4653         
4654         * lib/plug-ins.c: (dia_register_plugins_in_dir): If there is a
4655         trailing // (or whatever (G_DIR_SEPARATOR * 2) is), a recursive
4656         search for plug-ins is done.
4657         * app/Makefile.am: made app/run_dia.sh use the // capability. No
4658         need to update this anymore if we get a new plug-in library (or
4659         remove one).
4661         * lib/dia_xml.c: #include <unistd.h> was missing.
4662         
4663         * lib/properties.h: 
4664         * lib/proplist.c: (pdtpp_defaults): Added a new flag,
4665         PROP_FLAG_NO_DEFAULTS. Will be used in the "automatic defaults"
4666         support.        
4668 2001-08-16  Cyrille Chepelov  <chepelov@calixo.net>
4670         * sheets/civil.sheet: removed duplicate "Danish" entries.
4672         * autogen.sh:
4673         * configure.in: 
4674         * .cvsignore:
4675         * sheets/Makefile.am: 
4676         * po/POTFILES.in:
4677         * Makefile.am: applied the xml-i18n-tools README's instructions.
4679         * po/(da de fr hu nl nn no sl).po: merged the translations from
4680         the sheet files into the .po files. I hope I haven't mixed
4681         languages...
4682         * sheets/*.sheet (REMOVED):
4683         * sheets/*.sheet.in (NEW): moved the sheet files sans
4684         translations into .sheet.in files. 
4685         
4686         * sheets/xml-i18n-unicodify: (NEW) included from xml-i18n-tools,
4687         because we don't yet want to force all translators to work using
4688         UTF-8 editors. We'll want to do that sometime (sooner rather than
4689         later). Okay, I sing a slightly different tune in po/ChangeLog...
4691         * dia.desktop (REMOVED):
4692         * dia.desktop.in (NEW): used also the x18t infrastructure for
4693         this too.
4695         * xml-i18n-update.in.kg (NEW): This one will stay in CVS until an
4696         "official" version of x18t with support for .sheet files is available.
4697         * xml-i18n-merge.in.kg (NEW): This one will stay in CVS until an
4698         "official" version of x18t which doesn't corrupt UTF-8 data in XML
4699         is available.
4700         
4701         ** yes, we are now using xml-i18n-tools to manage the sheet
4702         translations. For the Win32 build, Nemo stores snapshots of
4703         translated strings next to the CVS snapshots. **
4705         * sheets/checktrans.py: suddenly, some sheets have lots of
4706         translations (objects which existed before sheets, mostly).
4707         Adapted the formatting.
4709         * po/README (REMOVED): this is obsolete ! It was ignored, anyway.
4711         * app/display.[ch]: (ddisplay_autoscroll), (ddisplay_scroll):
4712         * app/modify_tool.[ch]: (modify_motion): A (modified) patch from
4713         <robert.young@dsto.defence.gov.au>, to fix #59090.
4715         * app/display.c: (ddisplay_scroll): While at it, added some
4716         margin, so that autoscrolling can happen within a margin outside
4717         the diagram's extents.
4719         * app/tool.[ch]: 
4720         * app/interface.c:
4721         * app/disp_callbacks.c: Robert "forced" me to go when I usually
4722         don't, namely the app/ directory. So while I was there, I
4723         scratched a long-time itch. If no object has focus, pressing the
4724         space bar will select back the tool which was selected before the 
4725         current one (I find this especially useful with "reset after create" !)
4726         
4727         * lib/proplist.c: (prop_list_from_single): Renamed
4728         prop_list_singleton() to avoid confusion with the Singleton
4729         pattern (which it definitely is not).
4730         
4731         * lib/propobject.c: (object_prop_by_name_type),
4732         (object_prop_by_name): The "flags" parameter was not necessary.
4733         These don't return synthetic properties, but properties built from
4734         a real property description list; therefore, we don't call
4735         make_new_prop() but use the existing property descriptor, which
4736         has perfectly valid (and meaningful) flags.
4738         * lib/proplist.c: (pdtpp_synthetic), (pdtpp_from_object): These
4739         new predicates better reflect the reason why properties exist when
4740         they're created by make_new_prop() or object_prop_by_name().    
4742         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
4743         * lib/prop_basic.c: (make_new_prop): used the new reasons instead
4744         of pdtpp_true().
4746         * lib/properties.h: reflects all the above changes.
4748         * objects/SADT/arrow.c:
4749         * objects/SADT/annotation.c:
4750         * sheets/SADT.sheet: minor renamings to better match FIPS 183's
4751         IDEF0 terminology.
4752         
4753 2001-08-15  Cyrille Chepelov  <chepelov@calixo.net>
4755         * lib/properties.h:
4756         * lib/proplist.c: (prop_list_singleton):
4757         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
4758         Added these, to simplify interactions of plug-ins with the StdProp
4759         core.
4761         * lib/Makefile.am:
4762         * lib/dia_xml.h:
4763         * lib/dia_xml_libxml.h (NEW): 
4764         * app/load_save.c:
4765         * lib/dia_xml.c:
4766         * lib/plug-ins.c:
4767         * lib/sheet.c:
4768         * objects/custom/shape_info.c: A few prototypes were causing
4769         #include hell, because we generally attempt to not pull the whole
4770         libxml header set when we include dia_xml.h. Moved those
4771         prototypes away for the rare cases they're necessary.
4772         
4773 2001-08-15  Hans Breuer  <hans@breuer.org>
4775         * lib/font.c : made LARS_TRACE_MESSAGES Standard C conform
4777         * lib/libdia.def : 
4778         * lib/makefile.msc : updated
4780         * lib/prop_basic.c : __FUNCTION__ is a gcc extension. Please
4781         use G_GNUC_FUNCTION instead.
4783         * lib/prop_inttypes.c : include <stdlib.h> for strtol()
4785         * objects/sadt/annotation.c : disable TEMPORARY_EVENT_TEST for
4786         msvc instead of cleaning missing includes
4788         * plug-ins/wmf/wmf.cpp :
4789         * plug-ins/wmf/wmf_gdi.h : fixed for Font to DiaFont renaming
4791 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
4793         * app/app_procs.c:
4794         * app/load_save.c:
4795         * lib/dia_xml.c:
4796         * lib/plug-ins.c:
4797         * lib/sheet.c:
4798         * objects/custom/shape_info.c:
4799         * plug-ins/shape/shape-export.c:
4800         * plug-ins/svg/render_svg.c: used the libxml1/libxml2
4801         compatibility macros as taught by http://xmlsoft.org/upgrade.html;
4802         removed xmlKeepBlanksDefault(0) in favour for proper
4803         xmlIsBlankNode() testing. Lots of other fixups to use the
4804         "libxml1.5" (libxml2 parser embedded in recent libxml1), and to
4805         make libxml1 output correct files.
4807         * configure.in: use libxml2 (>= 2.3.9) if it's found, or
4808         libxml1 (>= 1.8.14). Exactly one of these must be installed (devel
4809         packages). If both devel packages are found, the build will stop 
4810         (Fredrik: please add a Build-Conflicts: on libxml2-dev for the moment) 
4812         * lib/bezier_conn.c: (bezierconn_init): Lars, you forgot to
4813         allocate the first handle :-)
4814         
4815         * lib/object.c: (object_init): <gratuitous>g_new() used instead of
4816         a cast and a sizeof.</gratuitous>
4818         * objects/custom/custom_object.c: (custom_copy): don't call
4819         text_get_attrbutes if the shape has no text...
4820         (custom_update_data): The info->resize_with_text code was a bit
4821         directive; basically, the shape's bounding box was forced to be 
4822         proportional to the text's bounding box.... This fixes #57187.
4823         
4824         * objects/custom/shape_info.c: (load_shape_info): Set an obvious
4825         default for info->aspect_ratio; unobfuscated a line about
4826         info->resize_with_text;
4827         
4828 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
4830         * lib/properties.h: added comments next to the PROP_TYPEs to tell
4831         which C Property subclass to use.
4832         
4833         * plug-ins/dxf/dxf-import.c: (read_entity_line_dxf): Removed the
4834         cast-ridden form of setting properties in a list, in favour for
4835         the "local pointers" form. I'll take any better offer...
4837 2001-08-14  Cyrille Chepelov <chepelov@calixo.net>
4838         
4839         * lib/font.c: fprintf(...) --> fprintf(format...)
4841         * configure.in: added a disabled versioned test for glib.
4842         * lib/prop_geomtypes.c: (bezpointprop_load), (bezpointprop_save),
4843         (bezpointarrayprop_load), (bezpointarrayprop_save): replaced
4844         g_critical() with a simple g_error(). Proper fix is to implement
4845         that stuff. 
4847         * lib/properties.h: PROP_STD_TEXT is a PROP_TYPE_TEXT, not a
4848         PROP_TYPE_STRING.
4849         
4850         * lib/properties.h:     
4851         * lib/propdesc.c: (prop_desc_list_calculate_quarks):
4852         * lib/proplist.c: (find_prop_by_name_and_type):
4853         * lib/prop_basic.c: (make_new_prop), (initialize_property):
4854         * lib/propoffsets.c: (do_set_props_from_offsets),
4855         (do_get_props_from_offsets), (prop_offset_list_calculate_quarks):
4856         Added a type_quark member to PropDescription, Property and
4857         PropOffset. Used it to implement a safety in
4858         do_[sg]et_props_from_offsets().
4859                 
4860         * objects/flowchart/diamond.c: the diamond's text was not saved,
4861         and thus not even copied (c&p).
4862         * objects/standard/textobj.c: ditto.
4864         Most of the above changes thanks to Robert Young's testing. Thanks !
4865         
4866 2001-08-14  Kjartan Maraas  <kmaraas@gnome.org>
4868         * sheets/*.sheet: Added some Norwegian translations (both nynorsk
4869         and bokmÃ¥l).
4870         
4871 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
4873         * lib/proplist.c (prop_list_from_descs): added a call to
4874         prop_desc_list_calculate_quarks(). (find_prop_by_name_and_type):
4875         too embarrassing to tell.
4876         
4877         * lib/propdesc.c (prop_desc_list_calculate_quarks): converted the
4878         while loop to a for loop, for symmetry with
4879         prop_offset_list_calculate_quarks().
4881         * lib/geometry.h: new inline function, rectangle_equals.
4883         * lib/diagramdata.[ch]: refactored a bit the diagram extents
4884         computation logic, and changed it to always be the union of the
4885         visible layers' extents. This should close #58882 (Debian
4886         #107167), and fixes #55498.
4888         * app/display.c: made the initial visible box more coherent with
4889         the diagram being loaded's extents.
4891         * app/prop_attr.c: don't set the font (from offset) if font_data
4892         is NULL. Two brainos in colorprop_load() and fontprop_load().
4893         
4894 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
4896         * lib/properties.[ch]: split in a lot of pieces: 
4898         * lib/prop_*.[ch] (NEW): all property types are now first-class
4899         objects, inheriting from the original abstract Property type.
4900         * lib/propdesc.c (NEW): property description handling routines
4901         * lib/propoffsets.c (NEW): property offset handling routines
4902         * lib/proplist.c (NEW): property list handling routines
4903         * lib/propobject.c (NEW): property list <-> object routines
4904         * lib/propregistry.c (NEW): holds the PropertyType-->PropertyOps
4905         relations.
4906         * lib/propinternals.h: prototypes for stuff not usually needed by 
4907         the outside of StdProps.
4908         * lib/Makefile.am: a lot of new files have been added...
4910         THE ABOVE CHANGES ARE MAJOR CHANGES AND AFFECT THE WHOLE TREE, IN
4911         BOTH INTERFACES AND RUN-TIME STABILITY.
4913         * lib/plug-ins.h: bumped up DIA_PLUGIN_API_VERSION
4914         
4915         * lib/object.h: removed the incestuous relationship with
4916         properties.h' contents. Now a Property list is a GPtrArray -->
4917         object interface change !
4919         * app/app_procs.c/app_init(): removed a disabled call to a
4920         non-existent routine. Added a call to stdprops_init().
4921         
4922         * objects/Makefile.am: disabled the construction of EML. I'm not
4923         touching these until a certain issue is solved (or this module
4924         removed).
4925         * app/group.c:  
4926         * objects/**/*.c except objects/EML/*: adapted all stdprop-using 
4927         objects to the interface changes.
4928         
4929         * app/disp_callbacks.c: killed a warning.
4930         * lib/dia_xml.[ch]: sprinkled "const" modifiers. 
4932         * app/commands.c: 
4933         The macros PROP_VALUE_* have disappeared. Adapted to using the new 
4934         interface.
4936         * plug-ins/dxf/dxf-import.c: 
4937         * plug-ins/xfig/xfig-import.c: 
4938         PROP_VALUE_* macros have been removed. Converted to the new API.
4940         * plug-ins/python/**/*: I gave up converting this; I can't
4941         compile --with-python (problems with object.h defined both by us
4942         and by Python). I'll gladly help whomever cares to fix it !
4943         (or, fix it myself if someone tells me how to compile it).
4944         
4945         * configure.in: added the UNICODE-related progress defines.
4946                 
4947         * configure.in:
4948         * lib/geometry.h: On Solaris and perhaps other systems, finite()
4949         is defined in ieeefp.h rather than in math.h. Patch from Andrew
4950         Halper <ashalper@acm.org> with further modifications, isinf() is
4951         provided by -lsunmath (sunmath.h).
4952         
4953         * lib/font.c: conditionally disabled Lars' debugging messages.
4954         Bracketed the definition of DiaFontFamily with #ifdef HAVE_FREETYPE.
4955         
4956 2001-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
4958         * lib/bezier_conn.h: 
4959         * objects/standard/bezier.c (bezierline_create): 
4960         * lib/bezier_conn.c (bezierconn_init): 
4961         Preparations for use of userdata for bezier lines.
4962         
4963         * objects/standard/polygon.c: 
4964         * objects/standard/create.h:
4965         * lib/polyshape.c:
4966         * lib/polyshape.h:
4967         * plug-ins/xfig/xfig-import.c:
4968         Use of user_data for polygon as well, including adding
4969         polyshape_set_points.  Include file for non-interactive 
4970         creation of standard objects, objects/standard/create.h
4972 2001-08-10  Lars Clausen  <lrclause@cs.uiuc.edu>
4974         * app/render_gdk.c: 
4975         * app/render_gdk.h: 
4976         * lib/font.c:
4977         * lib/font.h:
4978         * lib/widgets.c:
4979         More preliminary freetype support.  Not at all functional, crashes
4980         when rendering.
4982         * lib/poly_conn.h: 
4983         * lib/poly_conn.c: 
4984         * objects/standard/polyline.c: 
4985         Support for creating polyline objects with more than two points.
4986         This includes an extra function and a prototype change in the
4987         poly_conn lib object.
4989         * lib/object.c (object_copy): Fixed memory leak of handles and
4990         connections.
4992 2001-08-08  Abel Cheung  <maddog@linux.org.hk>
4994         * dia.desktop: added traditional Chinese strings
4996 2001-08-04  Cyrille Chepelov  <chepelov@calixo.net>
4998         * NEWS: updated to reflect build-time dependencies.
5000         * lib/properties.[ch]: wrote get_prop_descriptions() as a wrapper
5001         around obj->ops->describe_props(obj). Quarks are none of an
5002         object's business in the general case... 
5003         * lib/text.c: Added an apply_textattr_properties() function to
5004         factor out some common code related to applying a dialog's text
5005         attribute properties to a (Text *) which wasn't edited there. 
5006         Ditto for textstr, for the string part of an objet.
5008         * objects/GRAFCET/action.c:
5009         * objects/SADT/annotation.c:
5010         * objects/SADT/box.c: used apply_textattr_properties().
5011         
5012         * objects/UML/actor.c: 
5013         * objects/UML/branch.c:
5014         * objects/UML/component.c:
5015         * objects/UML/constraint.c:
5016         * objects/UML/small_package.c:
5017         * objects/UML/state.c:
5018         * objects/UML/usecase.c:
5019         * objects/UML/large_package.c:
5020         * objects/UML/note.c:
5021         * objects/UML/node.c:
5022         * objects/UML/message.c:
5023         * objects/UML/classicon.c:
5024         * objects/UML/object.c:
5025         * objects/UML/realizes.c:
5026         * objects/UML/dependency.c:
5027         * objects/UML/implements.c:
5028         slim-fast(tm) cure using more StdProps, and UTF-8 audit.
5029         (most objects were already using StdProps to some extent ; this
5030         systematises usage and removes some dead wood). 
5031         
5032         * objects/UML/stereotype.[ch]: use UTF-8 internally. const police work.
5033         * objects/UML/uml.[ch]: audited for UTF-8.
5035         * objects/UML/class.c: the UML_STEREOTYPE_* strings defined by
5036         uml.h can be in UTF-8... this code isn't yet ready. Duplicating a
5037         private (ISO-8859-1) definition.
5038         
5039         * lib/charconv.c: Added a warning if we didn't run
5040         nl_langinfo(CODESET) but rely instead on a hardcoded default.
5041         
5042 2001-08-02  Cyrille Chepelov  <chepelov@calixo.net>
5044         * lib/diamenu.h:
5045         * app/disp_callbacks.c: added a way for an object to cause an
5046         already realised menu to be destroyed (for instance if it changes
5047         too much).
5049         * objects/custom/custom_object.c: used the above to fix #55073.
5051 2001-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
5053         * configure.in: Remove 2.50 prereq.
5055 2001-07-30  Cyrille Chepelov  <chepelov@calixo.net>
5057         * po-checktrans.py: under some circumstances, there was one column 
5058         more than what was supposed to be, thus breaking the formatting.
5059         
5060 2001-07-29  Cyrille Chepelov  <chepelov@calixo.net>
5061         
5062         * objects/SADT/annotation.c: forgot to add a #include <stdlib.h>
5064         * NEWS: updated with new stuff since 0.88
5066         * shapes/network/antenna.shape: the text was misplaced ; fixed.
5068         * shapes/network/firewall.(shape|xpm) (NEW): a brick-wall looking
5069         firewall router (upon request from Cyril Lacoux
5070         <clacoux@easter-eggs.com>)
5072         * configure.in (didn't rename to configure.ac): autoconf 2.50
5073         constructs were used ; added an AC_PREREQ call to guard against
5074         older autoconfs.
5075         
5076 2001-07-27  Cyrille Chepelov  <chepelov@calixo.net>
5078         * lib/properties.c: minor clean-ups with the event delivery code.
5080         * EML/instantiation.c: brought this object back from stone and ice
5081         age.    
5083         * app/diaconv.c(NEW): added a command-line conversion tool. Still
5084         lacks a man page and correctness. In fact, it doesn't work. Please
5085         see #58196 if you want to finish it.
5086         
5087         * lib/message.[ch]: redefined things a little so that a different
5088         message_internal routine could be passed.
5089         applications can use that to fit themselves to the display model.
5091 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
5093         * objects/SADT/box.c: 
5094         * objects/GRAFCET/action.c: spelling in property descriptors (name
5095         field...)
5096         * objects/SADT/annotation.c: ditto, plus a temporary test of the
5097         event delivery code (try to click on the "click me !" button !).
5099         * app/group.c: 
5100         * lib/properties.[ch]: improved (fixed) support for group event 
5101         handlers. Fixed various things from yesterday's code to make it
5102         not too obviously crash.
5104 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
5106         * app/group.c: added delivery of events to the first member of the
5107         group which is able to process it.
5109         * lib/properties.c(prop_desc_lists_intersection): properties
5110         don't match if they don't have identical event handler.
5111         * lib/properties.h: simplified the PropEventHandler signature.
5113         Event delivery code is still untested so far, but should be
5114         lurking harmless.
5115         
5116 2001-07-25  Cyrille Chepelov  <chepelov@calixo.net>
5118         * lib/properties.[ch]: Added (untested !) property event handler
5119         capability. Added a new PROP_TYPE_BUTTON, for the purpose of
5120         generating such events. This stuff compiles, and should lurk
5121         around silently as long as you don't declare property descriptors
5122         with events (AFAICT).
5123         In object_create_props_dialog() and friends:
5124         attached a single structure with lots of data instead of lots of
5125         little attachments of data to the dialog widget.
5126         
5127         * lib/object.h: fixed mild typedef breakage introduced by the above.
5129 2001-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
5131         * lots of files: Changed Font to DiaFont
5132         * */Makefile.am: Added FREETYPE_LIBS
5133         * plug-ins/xfig/xfig-export.c: Improved (working:) color handling
5135 2001-07-13  Kjartan Maraas  <kmaraas@gnome.org>
5137         * configure.in: Added "nn" to ALL_LINGUAS.
5138         
5139 2001-07-09  Alex Larsson  <alexl@redhat.com>
5141         * app/disp_callbacks.c:
5142         Add gdk_im_ready() calls to XIM code.
5144 2001-07-04  Cyrille Chepelov  <chepelov@calixo.net>
5146         * lib/properties.[ch]: splitted prop_get_widget() into
5147         prop_get_widget() (gives a widget but doesn't fill it) and 
5148         prop_reset_widget() (fills an existing widget with a property's value).
5150         * lib/widgets.[ch]: const enforcement police work.
5152         * shapes/network/antenna.shape: added a connection point at top,
5153         upon request from <Emmanuel.Quemener@cri.ens-cachan.fr>.
5154         
5155 2001-06-25  Cyrille Chepelov  <chepelov@calixo.net>
5157         * intl/*: tested with gettext-0.10.38
5158         * configure.in: moved a macro call around (AM_PROG_CC) to keep
5159         some of autogen.sh from complaining.
5160         * INSTALL: added a warning against gettext older than at least 0.10.36
5161         
5162 2001-06-19  Cyrille Chepelov  <chepelov@calixo.net>
5164         * configure.in: added explicit calls to AM_LANGINFO_CODESET and
5165         AM_ICONV (both provided by gettext)
5167 2001-06-14  Cyrille Chepelov  <chepelov@calixo.net>
5169         * lib/charconv.c: corrected the degraded mode for when
5170         !HAVE_UNICODE. Thanks to Ben A. Hetland for reporting this.     
5172         * objects/chronoline/chronoline_events.c: UTF8 compliance.
5173         
5174 2001-06-13  Cyrille Chepelov  <chepelov@calixo.net>
5176         * lib/properties.[ch]: convenience macros around PROP_NOTEBOOKS ;
5177         new "eye candy" properties: PROP_MULTICOL_(BEGIN|PAGE|END) to lay 
5178         widgets on several columns, PROP_FRAME_(BEGIN|END) to put widgets
5179         into a frame box.
5181         * objects/chronogram/chronoline.c:
5182         * objects/chronogram/chronoref.c: took advantage of the above to
5183         make nicer looking dialogs.
5185         * lib/charconv.[ch]: added charconv_unichar_to_utf8 ("inspired"
5186         from libunicode's internals).
5187         * lib/message.c: convert strings to local encoding prior to
5188         display (UNICODE_WORK_IN_PROGRESS)
5189         * lib/properties.[ch]: convert strings to local encoding prior to
5190         display, and back to UTF8 (UNICODE_WORK_IN_PROGRESS).
5191         * lib/render.h: tagged strings as (utfchar *) instead of (char *)
5192         * lib/stringprerenderer.[ch]: ditto
5194         (lib/text.c has been audited for UTF8, but the size of the changes
5195         make them inappropriate for commit before 0.89)
5196         
5197 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
5199         * objects/boolequation.h (<save|load>_boolequation): made the 
5200         prototypes for match the .c file.
5201         
5202         * samples/grafcet.dia: minor non-conformance with IEC-848
5203         fixed (in the transition from step 100 to step 101).
5205         * lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to
5206         disallow editing of properties if the object is part of a group.
5208         * objects/chronogram/chronoline.c: 
5209         * objects/SADT/annotation.c:
5210         * objects/SADT/box.c:
5211         * objects/GRAFCET/step.c:
5212         * objects/GRAFCET/transition.c:
5213         * objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE.
5214         
5215 2001-06-12  Hans Breuer  <hans@breuer.org>
5217         * lib/libdia.def : removed lazyprop exports
5218         * lib/makefile.msc : removed lazyprop.obj
5220         * objects/custom/custom_objects.c : use HAVE_UNISTD_H
5221         and avoid crashes by always creating a custom->text,
5222         when (custom->info->has_text) 
5224         * objects/makefile.msc : removed sybase from build
5226         * objects/GRAFCET/boolequation.c (<save|load>_boolequation) :
5227         ObjectNode is a pointer already, which is what we want
5228         instead of a pointer pointer.
5230         * plug-ins/wmf/wmf.cpp : fixed problem with arc scaling
5231         and implemented working export for images
5233         * shapes/network/zip-disk.shape : added connection points 
5235 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
5237         * objects/SADT/box.c: removed lazyprops for standard props.
5238         * objects/chronograms/chronoline.c: removed lazyprops (phew !)
5239         * objects/chronograms/chronoref.c: ditto 
5241         * lib/Makefile.am:
5242         * lib/dummy_dep.h:
5243         * lib/connpoint_line.c:
5244         * lib/lazyprops.[ch] (DELETED): good riddance (closes #55895)
5245         * lib/properties.[ch]: new property types:
5246             - PROP_TYPE_STATIC: static text to be displayed in the dialog.
5247             - PROP_TYPE_MULTISTRING: same as string, but renders as a
5248             multi-line entry box.
5249             - PROP_TYPE_NOTEBOOK_BEGIN,_PAGE,_END: stuff to make dialogs
5250             in a tabbed-notebook style (this is a bit complicated to use; 
5251             see objects/chronograms/chronoline.c for an example).
5252                
5253 2001-06-11  Cyrille Chepelov  <chepelov@calixo.net>
5255         * objects/GRAFCET/boolequation.[ch]: zap lazyprops. Add standard props.
5256         * objects/GRAFCET/step.c: ditto.
5257         * objects/GRAFCET/vector.c: ditto.
5258         * objects/SADT/annotation.c: ditto.
5259         * objects/SADT/arrow.c: ditto (plus bounding box fixes).
5260         
5261         * lib/properties.[ch]: two more non-visible types
5262         (PROP_TYPE_ENUMARRAY and PROP_TYPE_INTARRAY).
5264         * lib/neworthconn.[ch]:
5265         * lib/orthconn.[ch]: added support for manipulation through
5266         standard properties.
5268         * configure.in: removed -fomit-frame-pointer, this seems to
5269         confuse recent gcc/gdb's, maybe we'll get better stack dumps in 
5270         bugzilla.
5272         * charconv.[ch]: more functions from unicode.h.
5273         get_local_charset() wasn't working properly, fixed now.
5274         A subtle crashbug in charconv_utf8_to_local8() nailed (thanks to 
5275         ElectricFence !)
5276         
5277         * objects/EML/process.h: pulled the bits of lazyprops.h it uses.
5278         * lib/lazyprops.[ch]: put a big fat warning in.
5280         * app/render_eps.c: one line mysteriously went away, causing a
5281         variable to be used uninitialised....
5283 2001-06-10  Cyrille Chepelov  <chepelov@calixo.net>
5285         * app/app_procs.c: commented out the call to
5286         bind_textdomain_codeset(): it's premature.
5287         
5288         * lib/connpoint_line.c: a NULL point can be given to
5289         connpointline_adjust_count(), in case there's not really a clicked
5290         point.
5292         * lib/textattr.h(NEW): moved the definition of TextAttributes to sort
5293         #include order troubles. #included by lib/text.h, so there is no 
5294         impact outside lib/.
5295         * lib/properties.[ch]: added support for CONNPOINT_LINE and
5296         (nonvisible) TEXT properties.
5298         * objects/GRAFCET/action.c:
5299         * objects/GRAFCET/vergent.c: dropped lazyprops for standard
5300         properties.
5301         
5302         * objects/UML/lifeline.c: pruned some legacy stuff (now pure
5303         standard properties code). Grafted a dynamic number of connection
5304         points (heavily inspired from what Vergent does). This is the real
5305         fix for #55863.
5307         * objects/GRAFCET/boolequation.[ch]: audited for UTF-8
5309         * lib/fonts.c: some hardening (mostly g_assert())
5310 2001-06-09  Cyrille Chepelov  <chepelov@calixo.net>
5312         * app/app_procs.c (app_init): added a call to
5313         bind_textdomain_codeset() so that gettext gives us UTF-8 strings
5314         (UNICODE_WORK_IN_PROGRESS).
5315         
5316 2001-06-08  Cyrille Chepelov  <chepelov@calixo.net>
5318         * plug-ins/xfig/xfig-import.c: corrected a typo (fixes #55910)
5320         * objects/UML/lifeline.c: patch from Marc <mrw@siemens.ch> 
5321         (fixes #55863) : some clean-ups in the handling of connection
5322         points. Now the total number of connection points is just a
5323         #define (the proper solution is to retrofit the GRAFCET Vergent's
5324         dynamic behaviour wrt connection points).
5325         
5326 2001-06-07  Cyrille Chepelov  <chepelov@calixo.net>
5328         * app/app_procs.c (app_init): added a call to unicode_init() (only
5329         if HAVE_UNICODE, of course).
5331         * lib/charconv.c: simplified the code which detects the local
5332         charset. No need to use <langinfo.h>, libunicode already takes the
5333         burden of figuring that out. Also, if local charset is utf8, no
5334         conversion will take place.
5335         Exposed a way to get the current charset (similar to
5336         unicode_get_charset() but actually working, hopefully).
5338         * lib/charconv.h: Added a partial non-UTF8 implementation of
5339         unicode.h if !HAVE_UNICODE (actually, all the time for the
5340         moment). The UTF8 implementation is just macros on libunicode (use
5341         the functions prefixed by uni_, as defined by charconv.h, not
5342         unicode_, unless that code is to be compiled only if HAVE_UNICODE).
5343         From now on, all strings which don't *need* to be ASCII should be
5344         utfchar *, not gchar *. Just include charconv.h, let it sort out
5345         the details (such as: "is libunicode available and enabled?") 
5347         * lib/ps-utf8.c: fixed a few name clashes. Used the charconv.h
5348         "API" instead of directly libunicode. Removed the now unnecessary
5349         speculative clustering of characters in encoding pages.
5351         * app/render_eps.c: made the local8->utf8 conversions dependent of
5352         !UNICODE_WORK_IN_PROGRESS (this is not where the local8/utf8
5353         boundary will be when this WIP is done).
5355         * lib/dia_xml.c (data_point): fixed a format string typo.
5357         * po/POTFILES.in: added all C files from lib/ 
5358         
5359 2001-06-06  Cyrille Chepelov  <chepelov@calixo.net>
5361         * app/disp_callbacks.c: make sure the objects' connected objects
5362         are updated when the objects' size changes after a keypress event
5363         (fixes #51222)
5365         * configure.in: added a big warning about the possible future
5366         non-optionality of --enable-unicode. 
5368         * TODO: removed entries which look like done ; added a few ones
5369         (Bugzilla "enhancement" bugs may be a better way to keep track of
5370         this)
5371         
5372 2001-06-05  Cyrille Chepelov  <chepelov@calixo.net>
5374         * objects/UML/message.c: got rid of #55564 and of message_copy()
5375         by using more standard properties (are the message_state_*()
5376         functions still necessary ?)
5378 2001-06-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
5380         * lib/plug-ins.c: 
5381         * objecs/custom/shape_info.c:
5382         * plug-ins/shape/shape-export.c:
5383         * plug-ins/svg/render_svg.c: patch from obecian <obecian@openbsd.org>
5384         use xmlChar instead of obsolete CHAR.
5386 2001-06-03  Hans Breuer  <hans@breuer.org>
5388         * app/diagram.h : added prototype for diagram_update_menu_sensitivity()
5389         * app/commands.c : give the right number of parameters
5390         to diagram_update_menu_sensitivity ()
5392         * app/preferences.c : do proper initialization for DiaPrefsData:
5393         render_bounding_boxes. It would be a real surprise if 'hidden'
5394         properties would have ever worked before.
5395         Don't try to access the widgets of hidden property, it does not
5396         have one.
5398         * lib/diagramdata.h : make render_bounding_boxes a DIAVAR, cause
5399         it is defined in libdia, but initialized from dia app, which 
5400         otherwise gave nice start-up crashes.
5402         * lib/diagramdata.c : initialize the color for rendering bounding 
5403         boxes in the Dia range (0 .. 1.0)
5405         * lib/libdia.def : added *_bbox functions for export
5407         * lib/makefile.msc : added new sources
5409         * objects/custom/custom_object.c : use HAVE_UNISTD_H
5411 2001-05-30  Cyrille Chepelov  <chepelov@calixo.net>
5413         * app/interface.c:
5414         * app/menus.c: patch from Hubert Figuiere <hfiguiere@teaser.fr> ;
5415         removes a translation of menus (in a place where there shouldn't
5416         have been), which gets rid of a waterfall of warnings if LANG!=C,
5417         and a fix to #55047.
5419 2001-05-29  Steffen Macke     <sdteffen@yahoo.com>
5421         * lib/charconv.c : added #include <errno.h>
5423         * app/dia_embedd.c : updated menus_get_item_from_path usage
5424         
5425 2001-05-27  Cyrille Chepelov  <chepelov@calixo.net>
5427         * lib/ps-utf8.c: Strings in Symbol fonts were incorrectly rendered.
5428         Added a special case for Symbol strings, so that they're not
5429         re-encoded using the LN encoding (we use the bare Adobe encoding
5430         instead).
5432         * objects/custom/custom_object.c: Now that #52912 is fixed,
5433         I could remove the ugly hack I wrote to squash the shape bounding box
5434         problem shown by Ben A. Hetland a few months ago, and fix it
5435         properly this time.
5436         
5437         * lib/text.c: enlarged a little the bounding box to account for
5438         the cursor in rightmost position.
5439         
5440         * lib/diagramdata.c: draw bounding boxes only if the relevant
5441         variable is set (as before), but also only if the rendere is
5442         interactive (ie, don't bother rendering bounding boxes on 
5443         Postscript...)
5444         Made the bounding box's line width a fixed value, 0.01
5445         
5446         * lib/boundingbox.c: fixed the "pointy corners" code for polylines
5447         and assymmetric control beziers. Implemented ellipse_bbox().
5448         
5449         * Makefile.am: incantations to get po/dia.pot build, as suggested
5450         by Hubert in #55075.
5451         
5452         * shapes/network/computer.shape: typo fixed.
5453         * shapes/network/antenna.shape: fixed #55074 (antenna is now
5454         properly translucent, except for its base where it makes sense. It
5455         doesn't look that ugly anymore if transparent mode is on).
5457         * configure.in: --enable-unicode is now the default. This
5458         still currently affects only printing.
5459         
5460 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
5462         * lib/boundingbox.c: fixed a minor logic error wrt closed shapes. 
5463         The overshoot code is buggy, and the bounding boxes for polyshapes
5464         looks a bit cheezy. To be done ASAP.
5466 2001-05-26  James Henstridge  <james@daa.com.au>
5468         * configure.in: call AM_PATH_PYTHON rather than AM_PATH_PYTHON_JH.
5469         This should clear up some of the build problems people have been
5470         having.
5472         * acinclude.m4: call AM_PATH_PYTHON_JH AM_PATH_PYTHON
5474 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
5476         * lib/Makefile.am:
5477         * lib/boundingbox.[ch] (NEW): (some) refactoring of the bounding
5478         box code (beginning with lines, polylines and polybeziers), into a
5479         more generic facility. While at it, a better shot at correctly
5480         computing the bounding box of a Bezieroid (should take care of
5481         #53424, #51233 and of course is part 1 of #52912).
5483         * lib/diagramdata.c: turned the RENDER_BOUNDING_BOXES conditional
5484         into a hidden preference (set render_bounding_boxes in diarc).
5485         * app/preferences.[ch]: Added support for hidden preferences.
5487         * lib/geometry.[ch]: sprinkled with "const" modifiers.
5488         
5489         * lib/bezier_conn.[ch]:
5490         * lib/beziershape.[ch]:
5491         * lib/connection.[ch]:
5492         * lib/element.[ch]:
5493         * lib/poly_conn.[ch]:
5494         * lib/orth_conn.[ch]:
5495         * lib/neworth_conn.[ch]:
5496         * lib/polyshape.[ch]: adapted to take advantage of
5497         boundingbox.[ch] instead of relying on private (duplicate) code.
5499         * object/FS/flow.c:
5500         * object/GRAFCET/action.c:
5501         * objects/GRAFCET/condition.c:
5502         * objects/GRAFCET/vergent.c:
5503         * objects/GRAFCET/vector.c:
5504         * objects/SADT/annotation.c:
5505         * objects/SADT/arrow.c:
5506         * objects/ER/participation.c:
5507         * objects/UML/constraint.c:
5508         * objects/UML/implements.c:
5509         * objects/UML/lifeline.c:
5510         * objects/UML/message.c:
5511         * objects/UML/realizes.c:
5512         * objects/UML/generalization.c:
5513         * objects/UML/association.c:
5514         * objects/UML/dependency.c:
5515         * objects/FS/flow-ortho.c:
5516         * objects/network/bus.c:
5517         * objects/standard/arc.c:
5518         * objects/standard/bezier.c:
5519         * objects/standard/beziergon.c:
5520         * objects/standard/line.c:
5521         * objects/standard/polygon.c:
5522         * objects/standard/zigzagline.c:
5523         
5524         * objects/standard/polyline.c: Some *BBExtras structures changed
5525         names while moving to boundingbox.[ch]. A trivial mass-renaming.
5526         
5527 2001-05-20  Cyrille Chepelov  <chepelov@calixo.net>
5529         * app/disp_callbacks.c (ddisplay_canvas_events): Take into account
5530         wheel mouses for scrolling (from Patrick Sung <phsung@ualberta.ca>)
5532         * app/display.c (ddisplay_update_scrollbars): from Patrick's
5533         suggestion, remove the extra scrollable area (it was only visible
5534         to the scrollbars). This is experimental.
5535         
5536         * objects/custom/custom_object.c: If a shape's icon file doesn't 
5537         exist, warn and substitute a default icon, instead of crashing.
5538         (fixes #52913)
5539         
5540         * objects/network/network.c:
5541         * shapes/network/modularswitch.(shape|xpm) (NEW):
5542         * shapes/network/printer.(shape|xpm) (NEW):
5543         * shapes/network/genmonitor.(shape|xpm) (NEW):
5544         * shapes/network/computer.(shape|xpm) (NEW):
5545         * shapes/network/Makefile.am: four less objects, four more shapes.
5546         These were the last known RenderObjects. (phew !)
5548         * lib/Makefile.am:
5549         * lib/dummy_dep.h:
5550         * objects/sybase/Makefile.am: 
5551         * objects/network/Makefile.am: Removed the older Renderobjects
5552         from the build, and their infrastructure (not yet deleted,
5553         though).
5555         * shapes/network/sceadplug.shape:
5556         * shapes/network/antenna.shape:
5557         * shapes/network/modem.shape:
5558         * shapes/network/hub.shape:
5559         * shapes/network/rj45plug.shape:
5560         * shapes/sybase/client.shape:
5561         * shapes/sybase/dataserver.shape:
5562         * shapes/sybase/ltm.shape:
5563         * shapes/sybase/repserver.shape:
5564         * shapes/sybase/rsm.shape:
5565         * shapes/sybase/stableq.shape: Minor corrections (line widths were
5566         ten times too narrow).
5567         
5568 2001-05-19  Cyrille Chepelov  <chepelov@calixo.net>
5570         * objects/network/network.c:
5571         * shapes/network/sceadplug.(shape|xpm) (NEW):
5572         * shapes/network/antenna.(shape|xpm) (NEW):
5573         * shapes/network/modem.(shape|xpm) (NEW):
5574         * shapes/network/Makefile.am: four less objects, four more shapes.
5575         
5576         * lib/Makefile.am:
5577         * lib/diagramdata.c:
5578         * lib/render.h:
5579         * lib/string_prerenderer.[ch] (NEW):
5580         Add a new renderer primitive, predraw_string() (does nothing, to be
5581         used as a hook to optimise the character encodings if needed). 
5582         Added a string pre-renderer, which can be viewed as a filter
5583         renderer (to route draw_string() to predraw_string() and ignore
5584         the rest, in a first rendering pass)
5585         
5586         * app/render_eps.c: Took advantage of the above to make wholly
5587         optimised Postscript encoding page(s), even (especially) with 
5588         non-latin1 code (HAVE_UNICODE must be true).
5590         (#53512 in fact is wholly resolved).
5591         
5592 2001-05-18  Cyrille Chepelov  <chepelov@calixo.net>
5594         * lib/charconv.c: steps towards resolution of #53512 (inspired by
5595         Alexey Novodvorsky <aen@logic.ru>'s patch).
5597         * app/menus.c (dia_menu_signal_proxy): checked that the signal
5598         handler is not NULL before transferring control to it... (fixes #52836)
5600         * app/app_procs.c (app_init): removed non-constant initialiser
5601         (fixes #52950)
5603         * objects/custom/custom_object.c:
5604         * objects/custom/shape_info.[ch]:
5605         * objects/custom/test.xml: merged patch #53476 from Steven Hawkins 
5606         <skh@mathstar.com>. This add support for a <svg:text> shape
5607         element, and some related style properties (font, font height, 
5608         alignment)
5610         * doc/custom_shapes: a precision about the meaning of case in a
5611         SVG path (closes #52364)
5613         * lib/dummy_dep.h: fix for SGI IRIX 6.2 (#53053, reported and
5614         fixed by <drk@sgi.com>)
5615         
5616 2001-05-17  Cyrille Chepelov  <chepelov@calixo.net>
5618         * objects/network/network.c:
5619         * shapes/network/Makefile.am:
5620         * shapes/network/hub.(shape|xpm) (NEW):
5621         * shapes/network/flash.(shape|xpm) (NEW):
5622         * shapes/network/rj45plug.(shape|xpm) (NEW):
5623         More shapes, less renderobjects.
5625 2001-05-16  Cyrille Chepelov  <chepelov@calixo.net>
5626         
5627         * plug-ins/svg/render_svg.c: typo made exported ellipses
5628         corrupted (zero Y pseudo-radius).
5630         * objects/network/network.c:
5631         * objects/network/disc.c:
5632         * shapes/network/disc.(shape|xpm): Converted the first
5633         Renderobject into a shape. Normally, old diagrams should reload
5634         without problems (please check this against your diagrams). More
5635         flexibility should be gained that way. I intend to hunt and
5636         eradicate all renderobjects as I can commit cycles to that. 
5638         * objects/Makefile.am:
5639         * configure.in:
5640         * app/Makefile.am:
5641         * objects/sybase/sybase.c:
5642         * shapes/sybase/Makefile.am(NEW):
5643         * shapes/sybase/client.(xpm|shape) (NEW):
5644         * shapes/sybase/dataserver.(xpm|shape) (NEW):
5645         * shapes/sybase/ltm.(xpm|shape) (NEW):
5646         * shapes/sybase/repserver.(xpm|shape) (NEW):
5647         * shapes/sybase/rsm.(xpm|shape) (NEW):
5648         * shapes/sybase/stableq.(xpm|shape) (NEW): converted Sybase
5649         renderobjects into shapes. The Sybase objects are now not compiled
5650         anymore, and ready to be nuked if nobody objects in the next few weeks.
5651         
5652         * app/commands.c:
5653         * app/diagram.[ch]:
5654         * app/disp_callbacks.c:
5655         * app/display.[ch]:
5656         * app/interface.[ch]:
5657         * app/menus.[ch]:
5658         * app/modify_tool.c:
5659         * app/preferences.[ch]:
5660         * app/recent_files.c:
5661         * app/select.c: Added patch #52364 from Hubert Figuiere. This adds
5662         a menu bar reflecting the popup menu, to each display window. This
5663         is optional (changing the preference currently doesn't affect
5664         already opened windows; a few other rough edges to cut).
5666         * plug-ins/wpg/wpg.c:
5667         * plug-ins/xfig/xfig-import.c:
5668         * plug-ins/python/pydia-property.c:
5669         * plug-ins/python/pydia-properties.c:
5670         * plug-ins/python/pydia-geometry.c:
5671         * plug-ins/pstricks/render_pstricks.c:
5672         * lib/arrows.c:
5673         * objects/EML/dbox.c:
5674         * lib/ps-utf8.c: paleolithic C compilers choke on //. Should fix 
5675         #53054.
5677         * lib/ps-utf8.c: improved the clustering of alphabetic character
5678         definitions in custom encodings pages.
5679         
5680 2001-05-02  Hans Breuer  <hans@breuer.org>
5682         * lib/object.h : OBJECT_COMMON_PROPERTIES_OFFSETS correct type 
5683         of 'obj_bb' to PROP_TYPE_RECT
5685         * objects/custom/custom_object.c : take all quarks into account, 
5686         not only 4 as copy&paste suggests
5688         * objects/uml/objects.c : completed the implementation of the
5689         property api to avoid reading of totally bogus data. Removed
5690         the PROBABLY_DEAD_CODE. It actually was dead code, but not because
5691         there was too much but too less ...
5692   
5693         The above changes removed all known crashes (mentioned below) 
5694         from the Property API. Property access is still incomplete though.
5696         * objects/flowchart/box.c :
5697         * objects/flowchart/diamond.c :
5698         * objects/flowchart/ellipse.c :
5699         * objects/flowchart/parallelogram.c :
5700         * objects/uml/classicon.c :
5701         * objects/uml/state.c : calculate number of quarks from quark array 
5702         size instead of using hardcoded values for consistence and to avoid 
5703         future bugs like the above
5704         
5705         * objects/eml/nlist.c : include <string.h> for strcmp()
5707         * lib/dia_xml.c : relax g_warning for values, which
5708         appear to be too small. There is nothing which prevents
5709         them while saving
5711         * plug-ins/python/pydia-geometry.c : changed stringifying of
5712         geometry objects accept BezPoint back to %f, which does not
5713         crash anymore, because all the data is intialized now and it
5714         simply is more readable than %e ...
5716         * plug-ins/python/python-startup.py : removed dependency
5717         to PyGtk, because it isn't required here and probably won't
5718         in i.e.: export filters.
5720         * plug-ins/python/gtkcons.py : create the gtkoutfile even
5721         if sys.stderr.fileno() isn't supported
5723         * app/makefile.msc : make version 0.88
5724         * plug-ins/makefile.msc : make version 0.88 an added new
5725         xfig files to build
5727 2001-05-11  James Henstridge  <james@daa.com.au>
5729         * NEWS: remember to add news items this time.
5731         * dia.spec: update spec file for 0.88 release.
5733         * configure.in: up version number to 0.88
5735         * plug-ins/python/Makefile.am (EXTRA_DIST): fix up typo that was
5736         preventing any of the useful python scripts from being
5737         distributed.
5739         * sheets/Makefile.am (sheet-translation-report): fix bustage I
5740         introduced in my fixups for the 0.87 release :(
5742 2001-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
5744         * plug-ins/xfig/xfig-import.c: Finally got groups working.
5746 2001-05-09  Lars Clausen  <lrclause@cs.uiuc.edu>
5748         * plug-ins/xfig/xfig-import.c: Improvements to error handling and
5749         group manipulation.
5751 2001-05-09  Cyrille Chepelov  <chepelov@calixo.net>
5753         * lib/ps-utf8.[ch]:
5754         * lib/Makefile.am: fix makefile breakage which led to not
5755         including ps-utf8.[ch] in the released tarballs. 
5757 2001-05-09  James Henstridge  <james@daa.com.au>
5759         * Makefile.am (core-translation-report): dist scripts needed for
5760         this target, and change to $(srcdir) before running.
5762         * sheets/Makefile.am (EXTRA_DIST): actually dist the sheets.  DATA
5763         files aren't automatically included in the tarball by automake
5764         because they could be generated files.
5766         * objects/EML/Makefile.am (EXTRA_DIST): fix directory names.
5768         * doc/en/Makefile.am (install-data-hook): fix up where graphics
5769         are installed.
5771         * configure.in: up version number to 0.87
5773         * plug-ins/python/*.py: no longer necessary to explicitly set
5774         sys.argv, as python.c does it for us now (like it should).
5776         * plug-ins/python/gtkcons.py: fix up so it plays nicely as a dia
5777         python plugin.
5779         * plug-ins/python/python-startup.py: startup script that imports
5780         all modules in $(datadir)/dia/python and ~/.dia/python.
5782         * plug-ins/python/python.c (dia_plugin_init): change so that it
5783         only runs the $(datadir)/dia/python-startup.py script.  Make sure
5784         that sys.argv and __main__.__file__ are set when calling the
5785         startup script.
5787         * plug-ins/python/Makefile.am: update makefile.  Make it install
5788         gtkcons.py plugin.  I haven't set any other plugins to install, as
5789         they look like they are mainly for debugging purposes.
5791         * configure.in: add tests to detect if python is available, so we
5792         can build the python plugin.  Only run if --with-python passed to
5793         configure.
5795 2001-05-08  James Henstridge  <james@daa.com.au>
5797         * acinclude.m4: add macros for detecting python.
5799         * app/menus.c (dia_gnome_menu_get_widget): handle paths that point
5800         at GNOME_APP_UI_SUBTREE entries.
5801         (menus_add_path): function to add a menu item to the menubars.
5802         Uses a hash table to keep track of extra menu items it adds.  Also
5803         notifies the item factory about the entries so that accels can be
5804         saved for them.
5805         (menus_add_path): implement gtk only version.
5806         (menus_init): use menus_add_path() to add the menu.
5807         (plugin_callback): simplify.
5809 2001-05-08  Steffen Macke <sdteffen@yahoo.com>
5811         * app/menu.c: removed #ifndef GNOME; GNOME build was broken
5812         
5813 2001-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
5815         * plug-ins/xfig/xfig-export.c: 
5816         * plug-ins/xfig/xfig-common.c: 
5817         * plug-ins/xfig/xfig-import.c: 
5818         * plug-ins/xfig/xfig.c: 
5819         * plug-ins/xfig/xfig.h: 
5820         * app/Makefile.am: Added support for exporting to Fig format
5821         (except splits, which are less powerful in Fig).  Some refactoring
5822         along the way.
5824 2001-05-02  Hans Breuer  <hans@breuer.org>
5826         * plug-ins/python/debug_objects.py : added another
5827         test to get massive crashes from the Property API due
5828         to unintialized data.
5830         * app/menu.c : the callback_action wasn't incremented
5831         (should have checked my last optimization). Now more
5832         than one plug-in callback is supported again.
5834         * plug-ins/python/pydia-geometry.c : avoid crashes from
5835         glib, when trying to g_strdup_printf unintialized floats.
5837         * plug-ins/python/pydia-property.c : avoid crashes from
5838         because of string_data == NULL (PROP_TYPE_FILE, PROP_TYPE_STRING)
5840 2001-05-01  Hans Breuer  <hans@breuer.org>
5842         * objects/makefile.msc : added eml
5843         * objects/eml/instantiation.c : initialize 'inst' pointer
5844         before using, zero initialization for objects
5845         * objects/eml/interaction-ortho.c :
5846         * objects/eml/interaction.c : zero initialization for objects
5848         * app/menus.c : removed Gimp mru stuff which slipped in at
5849         2000-08-15, was never activated and will never be needed, 
5850         because of Steffens recent file list patch added at 2001-01-05.
5852         * objects/eml/*.c : some more zero initialization of objects
5853         to avoid infinite (uninitialized) bounding boxes
5855         Implemented a callback api which allows plug-ins to register
5856         menu call backs. Dia for Gnome should compile, but will need 
5857         some extra tweaking to make it work because I can't test it.
5859         * plug-ins/python/pydia-error.h :
5860         * plug-ins/python/pydia-render.c : moved Pxthon function return 
5861         value handling from pydia-render.c to pydia-error.h, to make it
5862         usable for
5863         * plug-ins/python/diamodule.c : implement callback function
5864         registration from and relaying to Python code
5866         * app/menus.c : register and use plug-in menu callbacks
5868         * lib/filter.[hc] : implement filter_register_callback() and
5869         filter_get_callbacks() for the above
5870         * lib/libdia.def : export them
5872         * plug-ins/python/debug_objects.py (new file): 
5873         sample using the above
5875 2001-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
5877         * plug-ins/shape/shape-export.c (new_shape_renderer): 
5878         The name of a shape is now taken from the dir, to conform with
5879         standard naming.
5881 2001-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
5883         * app/properties.c (properties_show): Added title containing
5884         object type, plus (hopefully) fix of the ghost properties dialog.
5886 2001-04-16  Cyrille Chepelov  <chepelov@calixo.net>
5888         * app/display.c: remove the display idle handler in case we
5889         destroy the ddisplay (caused crashes in ddd, probably random
5890         crashes elsewhere).
5892         * autogen.sh: 
5893         * configure.in:
5894         * Makefile.am: hack around gettext-0.10.36's new "features".
5895         
5896         * lib/properties.[ch]: added new function object_copy_props().
5897         Added new property type PROP_TYPE_ENDPOINTS
5899         * lib/connection.h: added support for load/saving through the
5900         properties interface.
5902         * lib/object.[ch]: object_load/save/copy_using_properties()
5903         support functions (code factorisations).
5904         
5905         * objects/GRAFCET/boolequation.c: check against null values in
5906         boolequation_set_value() and boolequation_destroy().
5908         * objects/GRAFCET/transition.c: Converted from lazyprops to
5909         standard properties. 31% less (x86) code !
5911         * objects/GRAFCET/condition.c: also converted from lazyprops to
5912         standard properties. Also killed lots of code.
5913         
5914 2001-04-13  Hans Breuer  <hans@breuer.org>
5916         * plug-ins/wmf/wmf.cpp : changed text conversion from
5917         g_utf8_utf16 to g_convert usage. The latter function is already
5918         available in tml's last "official" Gtk+ version (2000-12-26).
5919         This change allows to use recent Dia with either the official
5920         version or the latest cvs "gtk-1-3-win32-production"-branch.
5922 2001-04-14  Lars Clausen  <lrclause@cs.uiuc.edu>
5924         * Patch from David S. Thompson <dcthomp@mail.utexas.edu>:
5925         * app/disp_callbacks.c:
5926         - Allow submenus in DiaMenus.
5927         - Don't require DiaMenu.title to be non-null (so that
5928           submenus aren't required to have titles)
5930         * objects/FS/function.c:
5931         - object menu now has submenus, an almost complete list of
5932           standard-basis verbs, and a start on nouns.
5933         - box padding, dash length, and other visual attributes are
5934           scaled by the font size... eventually font height will be
5935           a function property.
5936         - draw functions with smaller font to make initial view hold
5937           a reasonable number of functions.
5938         
5939 2001-04-13  Cyrille Chepelov  <chepelov@calixo.net>
5941         * sheets/ER.sheet:
5942         * sheets/chronogram.sheet:
5943         * sheets/jigsaw.sheet:
5944         * sheets/sybase.sheet: Updated Dutch sheet translations from Dag
5945         Wieers <dag@wieers.com>
5947 2001-04-13  Hans Breuer  <hans@breuer.org>
5949         * app/app_procs.c (app_exit) : added g_return_if_fail (!app_exit_once)
5950         to ensure that all the deinitialization is only done once. Fixes
5951         recent app exit crash on win32
5953         * lib/dia_xml.c : provide isinf() replacement for msc which does only
5954         have _finite()
5956         * lib/libdia.def : updated
5958         * objects/makefile.msc : added wanlink.c 
5960         * objects/network/wanlink.c : added M_PI_2 definition for poor
5961         platforms which don't have one
5963         * objects/standard/arc.c :
5964         * objects/standard/zigzagline. c: part of ConectionBBExtras wasn't
5965         initialized which led to rather huge bounding boxes (try Ctrl^A on
5966         diagrams with Arcs or ZigZagLines).
5967         * objects/*/*.c : to avoid further bugs like the above changed all
5968         object initializations to g_malloc0 or g_new0
5971 2001-04-09  Cyrille Chepelov  <chepelov@calixo.net>
5973         * lib/paper.[ch]: get rid of "no previous prototype fo `foo'" by
5974         doing a s/T foo()/T foo(void)/ for all possible values of T and foo.
5976         * objects/UML/class.c: 
5977         * objects/UML/usecase.c:
5978         * objects/UML/large_package.c:
5979         * objects/UML/message.c:
5980         * objects/UML/object.c:
5981         * objects/UML/lifeline.c:
5982         * objects/FS/flow.c:
5983         * objects/FS/flow-ortho.c:
5984         * objects/FS/function.c:
5985         * objects/custom/custom_object.c:
5986         * objects/GRAFCET/vergent.c:
5987         * objects/chronogram/chronoref.c:
5988         * objects/SADT/box.c:
5989         * objects/SADT/annotation.c:
5990         * plug-ins/dxf/dxf-import.c:
5991         * plug-ins/xfig/xfig-import.c:
5992         * plug-ins/wpg/wpg.c:
5993         * app/command.c:
5994         * app/app_procs.c:
5995         * app/display.c: /* certainly more WIP than dead code there */
5996         Unused variables, unused static function definitions, forgotten or
5997         incomplete prototypes added or fixed, lack of const or unwanted const,
5998         etc. (mostly clean-ups of leftovers of the pre-properties era).
5999         Non-obvious cases bracketed by #define THIS_IS_PROBABLY_DEAD_CODE,
6000         please check these.
6002         * app/lineprops_area.c: More of the same. Missing prototypes
6003         added, and functions unused outside made static.
6005         * app/recent_files.c:
6006         * app/properties.c:
6007         * app/defaults.c: some variables are used only when doing a GNOME
6008         build.
6009         
6010         * app/magnify.c: missing #include <stdlib.h>.
6012         * app/paginate_gnomeprint.c: Unused variable; missing "message.h".
6014         These are a lot of clean-ups (by the way, this compiles and runs
6015         cleanly with "gcc-3.0 -O2 -Wall --std=gnu99" too !); please grep
6016         for DEAD_CODE, and if it's yours, judge it.
6017         
6018 2001-04-07  Cyrille Chepelov  <chepelov@calixo.net>
6020         * plug-ins/dxf-import.c: some progress with the arcs; still some
6021         clean-ups to do and line width scaling issues to figure out.
6023         * objects/standard/arc.c: start_point and end_point properties
6024         (duplicated from standard/line.c)
6026         * plug-ins/xfig/xfig-import.c: zip ! zap ! no more dead DXF import
6027         code there.
6028         
6029 2001-04-06  Cyrille Chepelov  <chepelov@calixo.net>
6031         * plug-ins/dxf-import.c: setlocale-related clean-ups and fixes ;
6032         preliminary support for arcs (doesn't work). Circles and ellipses are
6033         now transparent. Coordinate and width scaling are now a common 
6034         static constant (probably before morphing into a preference).
6035         
6036         * sheet/checktrans.py: improved error reporting. Made checktrans
6037         count lack of <name xml:lang="code"> as a lack of translation for
6038         language "code" (no, it's not a plot to bring down other
6039         language's scores !)
6040         
6041         * sheet/*.sheet: Ensured all sheets have an encoding="iso-8859-1"
6042         in the header, and have <name xml:lang="fr"> components.
6043         
6044 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
6046         * objects/custom/custom_object.c: temporary hack to fix the shape
6047         bounding box reported by Ben A. Hetland. Proper fix isn't .87
6048         material, see bugzilla #52912.
6050 2001-04-05  Lars Clausen  <lrclause@cs.uiuc.edu>
6052         * objects/standard/image.c (get_directory): Now uses
6053         G_SEPARATOR_CHAR_S instead of "/"
6055         * sheets/network.sheet: 
6056         * sheets/Logic.sheet:
6057         * sheets/Flowchart.sheet:
6058         * sheets/Electric.sheet:
6059         * sheets/Circuit.sheet:
6060         * sheets/ER.sheet:
6061         * sheets/Pneumatic.sheet:
6062         * sheets/SDL.sheet:
6063         * sheets/UML.sheet:
6064         * sheets/GRAFCET.sheet:
6065         * sheets/MSE.sheet:
6066         * sheets/chronogram.sheet:
6067         * sheets/civil.sheet:
6068         * sheets/network.sheet:
6069         Danish translations.
6070         
6071         * objects/standard/image.c (get_directory): Changed get_directory
6072         to use g_dirname to find the directory part.
6074 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
6076         * sheets/ER.sheet:
6077         * sheets/Electric.sheet:
6078         * sheets/Flowchart.sheet:
6079         * sheets/Logic.sheet:
6080         * sheets/network.sheet: More Dutch translations from Dag Wieers.
6082 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6084         * sheets/checktrans.py: now emits a warning when two descriptions
6085         for a single language code are found.
6087         * Makefile.am:
6088         * sheets/Makefile.am: -translation-reports now also depend on their
6089         checktrans.py
6090         
6091 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6093         * sheets/Circuit.sheet:
6094         * sheets/Contact.sheet:
6095         * sheets/Logic.sheet:
6096         * sheets/chronogram.sheet:
6097         * sheets/sybase.sheet: 
6098         Dutch translations from Dag Wieers <dag@wieers.com>
6100 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
6102         * po-checktrans.py: Now shows the detailed counts alongside the
6103         percentage of translations.
6104         
6105 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
6107         * Makefile.am:
6108         * po-checktrans (NEW):
6109         * po-checktrans.py (NEW): builds core-translation-report:
6110         percentages of core (gettext) translations done [Not placed into
6111         po/ where that should belong, because of integration fear^Wissues
6112         with gettextize]. 
6114         TO THE KIND ATTENTION OF PACKAGERS: core-translation-report and 
6115         sheets/sheet-translation-report probably ought to be copied on the 
6116         user's /usr/share/doc/dia (or equivalent) directory.
6118         * sheets/Makefile.am: sheet-translation-report now a simple
6119         EXTRA_DIST; make install won't install it by default. 
6120         
6121 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
6123         * app/preferences.c: changed the default grid colour to something
6124         less intrusive. 
6126         * shapes/SDL/*.shape:
6127         * sheets/SDL.sheet: renamed all SDL shapes to conform to the
6128         "$LIBRARY - $NAME" convention. THIS REQUIRES FIXING THE EXISTING
6129         DIA FILES (well, for files using SDL), see the mailing list
6130         archive "SDL (ab)using the global shape namespace" for a script to
6131         do this conversion.
6133         * sheets/SDL.sheet: translated into French
6134         * sheets/network.sheet: fixed XML typos. Yay ! 100% :-)
6135         
6136 2001-04-02  Cyrille Chepelov  <chepelov@calixo.net>
6138         * lib/dia_xml.c: made data_point() more paranoid
6140         * sheets/Makefile.am:
6141         * sheets/checktrans (NEW):
6142         * sheets/checktrans.py: Made checktrans handle more gracefully the
6143         absence of python and python-xml packages, and made the error
6144         message more helpful.
6145         
6146 2001-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
6148         * lib/render_object.c (new_render_object): Made initial handles
6149         behave like on most other objects.
6151         * app/load_save.c (read_objects): Fixed premature free'ing ofr
6152         typestr causing garbage.
6154 2001-04-01  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6156         * objects/FS/flow-ortho.c: Fixed a crashbug causes by not
6157         accouting for handle ordering through copy and save. (#51479)
6159 2001-03-31  Cyrille Chepelov  <chepelov@calixo.net>
6161         * sheets/Circuit.sheet: Norwegian translation mistagged to German.
6163 2001-03-31  Steffen Macke  <sdteffen@yahoo.com>
6165         * sheets/Circuit.sheet
6166         * sheets/UML.sheet
6167         * sheets/network.sheet: Updated German translations
6168         
6169 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6170         * lib/arrows.[ch]:
6171         * lib/widgets.c:
6172         * app/lineprops_area.c: The return of the revenge of the arrow
6173         heads. Now all types covered by ISO 10303-201 should be covered.
6174         
6175 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6177         * sheets/Flowchart.sheet: translations in probably Hungarian were
6178         a victim of cut-n-paste from the German one. Fixed (hopefully).
6179         * sheet/UML.sheet: translation in probably Norwegian was a victim
6180         of cut-n-paste from the French one. Fixed (hopefully).
6181         * sheets/Logic.sheet: French translation not tagged with
6182         xml:lang="fr".
6183         
6184         * sheets/checktrans.py:
6185         * sheets/Makefile.am: new file, sheet-translation-report, to be
6186         installed along the sheets, show how much of them has been
6187         translated into which language (I wish the result was prettier...)
6189         * po/README: most translators don't read this file, but anyway...
6191         * sheets/.cvsignore:
6192         * objects/network/.cvsignore: the usual negotiation with CVS.
6194 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
6196         * sheets/*.sheet: French translations
6198 2001-03-28  Cyrille Chepelov  <chepelov@calixo.net>
6200         Added patch #52363 from Hubert Figuiere <hfiguiere@teaser.fr>:
6202         ** objects/network/network.c:
6203         ** objects/network/wanlink.c:
6204         ** objects/network/pixmaps/wanlink.c:
6205         ** sheets/network.sheet:
6206         ** objects/network/Makefile.am: a better object to use instead of
6207         the older WAN Connection.
6208         
6209         ** lib/geometry.[ch]: rotation matrix functions in geometry.c (derived from gimp)
6211         ** objects/GRAFCET/vector.c: renamed Vector to GRAFCETVector to avoid a
6212         name clash 
6214         * objects/GRAFCET/vector.c: Re-renamed GRAFCETVector into
6215         Arc; kept the C file name (because CVS wouldn't like it), and
6216         still registering the older object name (but advertising the newer
6217         one in sheets/GRAFCET.sheet).   
6219 2001-03-24  Hans Breuer  <hans@breuer.org>
6221         * app/dia.def : some plug-ins (currently only python, xfig) are using 
6222         functions from the dia executable. To get them working these functions 
6223         need to be explicit exported on win32. IMO the much cleaner way would
6224         be to move these functions to libdia, but that would require some
6225         long term restructuring ...
6227         * lib/libdia.def : updated
6229         * plug-ins/makefile.msc : build xfig plug-in
6231 2001-03-24  Hans Breuer  <hans@breuer.org>
6233         * app/diagram.c : g_strdup (dia->filename) because it will be
6234         g_free ()d
6236         * app/display.c : set ddisp->renderer to NULL after destruction.
6237         This may solve or help to identify erroneous access to it after
6238         destruction.
6240         * plug-ins/wmf/wmf.cpp : convert string from utf8 to wchar to
6241         get 'umlauts' working
6243 2001-03-22  Cyrille Chepelov  <chepelov@calixo.net>
6245         * object/chronogram/chronoline_event.c: stupid bug ; rises and falls
6246         were reversed... (look for the patch, and drink a beer to my
6247         stupidity)      
6248         
6249 2001-03-23  Hans Breuer  <hans@breuer.org>
6251         * app/app_procs.c : don't g_error () if the config directory
6252         can't be created (at least not on windoze) because it's quite
6253         common that the user don't read or understand the FAQ ...
6255         * app/cursor.c : use ddisplay_active () instead of active_display
6256         from app/display.c
6258         * app/display.[hc] : made active_display var static and provide
6259         an accessor funtion ddisplay_active_diagram ()
6261         * app/dia-props.c : don't store the active_diagram, but ask
6262         for it everytime it needed.
6264         * lib/properties.h : #include "intl.h"
6266         * lib/makefile.msc : need to take care of inclusion order to
6267         avoid clashes with gtk+2.0's gdk-pixbuf
6269         * objects/makefile.msc : added uml/stereotype.c to build
6271 2001-03-23  Lars Clausen  <lrclause@cs.uiuc.edu>
6273         * **/*.c: Added config.h to the remaining .c files, and changed
6274         all to be <config.h>.
6276 2001-03-22  Steffen Macke <sdteffen@yahoo.com>
6278         * lib/arrows.c
6279         * lib/arrows.h
6280         * lib/widgets.c
6281         * app/lineprops_area.c: added new arrow types with double
6282         heads
6283         
6284 2001-03-20  Steffen Macke <sdteffen@yahoo.com>
6286         * shapes/Civil/civil_gas_bottle.xpm
6287         * shapes/Civil/civil_gas_bottle.shape
6288         * sheets/civil.sheet
6289         * shapes/Civil/Makefile.am: Added gas bottle shape by Arne
6290         Battermann
6291         
6292 2001-03-20  Lars Clausen  <lrclause@cs.uiuc.edu>
6294         * objects/custom/shape_info.c (load_shape_info): 
6295         * objects/custom/shape_info.h: 
6296         * objects/custom/custom_object.c (custom_update_data): 
6297         Better support for text outside the box -- new attributes 'resize'
6298         and 'align' for text entity.  Align not fully supported yet.
6300         * lib/text.c (text_calc_boundingbox): Adding BB for cursor width.
6302 2001-03-20  James Henstridge  <james@daa.com.au>
6304         * app/interface.c (display_data_received_callback): comment out
6305         status message.
6307 2001-03-19  James Henstridge  <james@daa.com.au>
6309         * app/GNOME_Dia.oaf: rename from GNOME_Dia.oafinfo.
6311         * objects/UML/realizes.c: similar here.
6313         * objects/UML/implements.c: similar here.
6315         * objects/UML/component.c: similar here.
6317         * objects/UML/generalization.c: same here.
6319         * objects/UML/dependency.c: allow NULL for ->name and
6320         ->stereotype.  This fixes a number of problems in loading saved
6321         files.
6323         * lib/properties.c: various changes so that NULL string properties
6324         should work.
6326         * objects/standard/line.c (line_update_data):
6327         line->extra.start_long and line->extra.end_long were not being
6328         initialised.  This fixes potential problems with the bounding box
6329         of "Standard - Line" objects.
6331 2001-03-19  Hans Breuer  <hans@breuer.org>
6333         * app/commands.c : added win32 specific code to display a html
6334         file. #include "text.h" for text_delete_all prototype.
6336         * app/dia.ico :
6337         * app/dia.rc : (new) to give Dia win32 an icon
6339         * app/win32print.[ch] : new files to support direct postscript
6340         file printing on win32. Beware: it *requires* a ps-printer!
6342         * app/paginate_psprint.c : disable the signal code for win32 build
6343         and added small specific changes to support win32print.
6345         * app/makefile.msc : added win32print and linking shell32.lib
6347         * lib/libdia.def : updated
6349 2001-03-18  Kevin Breit <battery841@mediaone.net>
6351         * doc/en/dia-C.omf: Added file.  Dia should now list in the Nautilus
6352           Help tabs.
6354 2001-03-17  James Henstridge  <james@daa.com.au>
6356         * app/paginate_psprint.c (diagram_print_ps): add code that traps
6357         SIGPIPEs during printing.  This gets rid of a number of crashes
6358         caused by printing (eg. typing an incorrect print command).
6360         * dia.spec (%install): gzip the manpage.
6362         * lib/beziershape.c (beziershape_save): fix off by one error in
6363         beziershape save code, which was adding an extra segment to the
6364         object on save.
6366         * app/menus.c: add a separator in the gnome version of the help
6367         menu.
6369         * app/app_procs.c (app_init): add a --nosplash argument which
6370         disables the splash screen.
6372         * app/dia_embedd.c (main): don't leave the splash screen open for
6373         embeddable component.
6375         * app/splash.c (app_splash_init): the gtk_widget_show_now() call
6376         didn't seem to be showing the splash screen like expected, so I
6377         have replaced it with some code that calls gtk_main() until the
6378         first exposure of the window.
6380 2001-03-16  James Henstridge  <james@daa.com.au>
6382         * app/Makefile.am (EXTRA_DIST): add extra pixmaps.
6384         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): add
6385         stereotype.h
6387         * lib/Makefile.am (libdia_a_SOURCES): add diavar.h here.
6389         * app/Makefile.am (dia_core_files): remove splash.h from file
6390         list, as it doesn't exist.
6392         * doc/en/Makefile.am (uninstall-local): remove the docdir on
6393         uninstall.
6395         * doc/Makefile.am (uninstall-local): target to remove the C
6396         symlink.
6398         * dia.spec (%files): include the documentation in the package.
6400         * app/menus.c (toolbox_menu_items): add menu item for manual,
6401         which calls help_manual_callback.
6403         * app/commands.c (help_manual_callback): find help file and load
6404         netscape to view it.
6406         * app/commands.h: add prototype for help_manual_callback()
6408         * doc/Makefile.am (helpdir): similar here.
6410         * doc/en/Makefile.am (helpdir): make the helpdir
6411         $(pkgdatadir)/help/en in the non gnome case.
6413         * configure.in (HAVE_GNOME): add conditional.
6415         * doc/en/Makefile.am: handle the graphics in a more general way,
6416         so it is easier for Kevin to add them to the build (just add them
6417         to the GRAPHICS var).
6419         * app/Makefile.am (embed_extra_print_files): make the case of
6420         building without gnome-print support but with bonobo support work.
6421         dia-embedd needs to be include the gnome-print
6423 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
6425         * samples/Makefile.am: included all samples in the distribution....
6426         
6427 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
6429         * configure.in: removed premature test for DPS. Added -*- m4 -*-
6430         at the beginning. Made HAVE_UNICODE non-default. po/es_ES.po has
6431         vanished, removed it from ALL_LINGUAS.
6433         * lib/charconv.[ch] (NEW): a very small wrapper around
6434         unicode_iconv to convert strings between utf8 and local charset
6435         (actually, ISO-8859-1, though one can do
6436         CFLAGS="-DEFAULT_8BIT_CHARSET=\"ISO-8859-2\"" and the like).
6438         * lib/ps-utf8.[ch] (NEW): A PostScript Unicoder ; a smallish
6439         library to help build Postscript streams which use as many custom
6440         font encodings as necessary to correctly represent all characters
6441         used (testing from users with non-latin1 and/or more than 256
6442         characters in routine use *very* welcome).
6444         * app/Makefile.am, lib/Makefile.am: integrated these into the
6445         build process.
6447         * shapes/Logic/.cvsignore (NEW): .cvsignore
6448         
6449         * app/render_eps.h: forwarded some changes Lars forgot to include.
6450         * app/render_eps.c: turned off ASCII85 and FILTERS, as this
6451         doesn't yet build.
6453 2001-03-08  Kevin Breit <battery841@mediaone.net>
6455         * doc/en/home_network.png: Added file.
6456         * doc/en/line_props.png: Added file.
6457         * doc/en/usage-objects.sgml: Added two graphics to file.
6458         * doc/en/usage-quickstart.sgml: Added one graphic to file.
6460 2001-03-06  Kjartan Maraas  <kmaraas@gnome.org>
6462         * app/grid.h: Place comment around text after #endif.
6463         * lib/bezier_conn.c: #include <string.h>.
6464         * lib/beziershape.c: #include <string.h>.
6465         * lib/connpoint_line.h: Comment after #endif.
6466         * lib/dia_dirs.c: #include <string.h>.
6467         * lib/element.c: Same.
6468         * lib/lazyprops.c: #include <config.h> and "intl.h".
6469         * lib/lazyprops.h: Comment out text after #endif.
6470         * lib/neworth_conn.c: #include <string.h>
6471         * lib/orth_conn.c: Same here.
6472         * lib/poly_conn.c: Here too.
6473         * lib/polyshape.c: And here.
6474         * lib/properties.c: Remove #include "intl.h" from here and add
6475         an array of static strings to work around bug in gettext that
6476         makes it miss strings in a #define body.
6477         * objects/GRAFCET/action_text_draw.h: Comment out text after #endif.
6478         * objects/GRAFCET/boolequation.h: Same here.
6479         * objects/chronogram/chronoline_event.h: Add prototype for
6480         destroy_cle().
6481         
6482 2001-03-05  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6484         * objects/FS/function.c: 
6485         * objects/FS/flow.c: 
6486         * objects/FS/flow-ortho.c: 
6487         Updated to use properties.
6489 2001-03-03  James Henstridge  <james@daa.com.au>
6491         * lib/lazyprops.c (__propdlg_build_enum): translate the radio
6492         button labels when creating them.
6494 2001-02-28  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6496         * objects/UML/actor.c
6497         * objects/UML/realizes.c 
6498         * objects/UML/implements.c 
6499         * objects/UML/generalization.c 
6500         * objects/UML/dependency.c 
6501         * objects/UML/constraint.c
6502         Updated to use properties.
6503         
6504         * objects/UML/stereotype.c 
6505         * objects/UML/stereotype.h
6506         Generalized to any kind of bracketting.
6507         
6508 2001-02-28  James Henstridge  <james@daa.com.au>
6510         * app/menus.c: add help entry to the help menu.  Need to get this
6511         working for the non GNOME case as well (maybe put help under
6512         $(datadir)/dia/help for non GNOME?)
6514         * doc/en/topic.dat: add a topic.dat file for GNOME menus.
6516         * doc/en/dia-manual.sgml (legalnotice): add an id attribute to
6517         this element so that we get a meaningful filename in the html
6518         translation.
6520         * doc/Makefile.am, doc/en/Makefile.am: new makefiles to handle the
6521         documentation.
6523         * configure.in (DB2HTML): add a check for the db2html program, and
6524         set an automake conditional if it is found.
6526         * Makefile.am: remove EXTRA_DIST rules that cover doc/ directory,
6527         and descend into doc/ directory while building.
6529         * configure.in (AC_OUTPUT): add doc/ makefiles to output list, now
6530         we need more complex rules for building the docs.
6532 2001-02-25  Hans Breuer  <hans@breuer.org>
6534         * config.h.win32 : some cleanup
6536         * app/prefererences.c : g_scanner_(freeze|thaw)_symbol_table
6537         are deprecated since glib-1.3.2. Sorry needing to use them
6538         contionally, but there is no glib-1.2 for win32
6540         * app/recent_files.c : use g_strescape (params) conditionally
6542         * lib/connection.c : include string.h for memcpy
6544         * lib/geometry.h : added some stuff for compatibility with
6545         msvc, which previously came from included config.h
6547         * lib/libdia.def : updated
6549         * objects/makefile.msc : updated
6551         * objects/GRAFCET/action.c(490) : fixed warning C4700: local variable 
6552         'extra' used without having been initialized
6554         * objects/network/bus.c(658) : initialize 'extra'
6556         * plug-ins/makefile.msc : updated
6558         * plug-ins/cgm/cgm.c :
6559         * plug-ins/pstricks/render_pstricks.c : 
6560         g_free() memory allocated by dia_image_rgb_data(). Plugs possibly 
6561         huge memory leaks.
6563         * plug-ins/python/python.c : use HAVE_DIRENT_H
6565 2001-02-23  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6567         * lib/connection.c (connection_update_boundingbox): 
6568         Made the BB shrink on right and lower sides, too.
6570 2001-02-23  Kjartan Maraas  <kmaraas@gnome.org>
6572         * */*.c: #incude <config.h> at the top.
6573         * */*.h: Remove include of "config.h" since it should only
6574         be included in .c files and at the very top for things to
6575         work.
6576         * sheets/*.sheet: Updated Norwegian translations.
6577         
6578 2001-02-22  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6580         * objects/UML/small_package.c: 
6581         * objects/UML/class.c: 
6582         * objects/UML/node.c: 
6583         * objects/UML/usecase.c:
6584         * objects/UML/lifeline.c: 
6585         * objects/UML/message.c:
6586         Various cleanup of properties in particular.  Now much more use of
6587         standard properties.
6589         * lib/diagramdata.c (layer_render): Visualization of bounding
6590         boxes, for debugging purpoises.
6592 2001-02-22  Cyrille Chepelov  <chepelov@calixo.net>
6594         * lib/geometry.h:
6595         * lib/connection.[ch]:
6596         * lib/poly_conn.[ch]:
6597         * lib/polyshape.[ch]:
6598         * lib/bezier_conn.[ch]:
6599         * lib/beziershape.[ch]:
6600         * lib/orth_conn.[ch]:
6601         * lib/neworth_conn.[ch]:
6602         * lib/element.[ch]: Changed a bit the _update_boundingbox()
6603         interface. Now the parent elements have an extra_spacing
6604         structure, which child objects just need to fill, to take care of
6605         most arrow & line width extra space needs.
6607         * objects/**/*.c: updated all objects to the new interface.
6608         While at it, killed all instances of (Object *) downcasts (phew !)
6610         * objects/GRAFCET/condition.c: removed the arrowhead, which IEC848
6611         doesn't speak about.
6612         
6613 2001-02-21  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
6615         * sheets/Logic.sheet: New sheet for Logic symbols.
6617 2001-02-21  James Henstridge  <james@daa.com.au>
6619         * app/menus.c (dia_gnome_menu_get_widget): new function to find a
6620         widget by its path name.  Walks the GnomeUIInfo heirachy rather
6621         than widget tree, compares untranslated label names and ignores
6622         underscores in the labels.
6623         (menus_get_item_from_path): use dia_gnome_menu_get_widget so that
6624         lookups are not dependent on the current locale, as with
6625         gnome_app_find_menu_pos.
6627         * acconfig.h: guard against multiple inclusion of config.h.
6629         * app/select.c (select_style_callback): simply set the selection
6630         style to the value of action.
6632         * app/menus.c (menus_init): simplify the item factory based menu
6633         code a bit.  It looks like it was using some code cut and pasted
6634         from the gimp, which looked a bit unnecessary.  Things work fine
6635         without it.
6636         (selectmenu): set the action to the type of selection mode
6637         requested.
6638         (display_menu_items): use the symbolic enumeration values for the
6639         action field.
6641         * app/plugin-manager.c: 
6642         * app/plugin-manager.h: 
6643         * app/filedlg.c:
6644         * app/filedlg.h: 
6645         * app/select.c:
6646         * app/select.h: change prototypes.
6648         * app/commands.c: update all callback prototypes, and get rid of
6649         some #ifdef GNOME's.
6651         * app/commands.h: change function prototypes.
6653         * app/dia_embedd.c (save_fn):
6654         s/ex_Bonobo_IOError/ex_BonoboStorage_IOError/
6656         * app/menus.c (menus_init): for gnome menus, use
6657         gnome_app_fill_menu_custom and pass in a GnomeUIBuilderData
6658         structure that proxies the callbacks to have the same signature as
6659         GtkItemFactory type 1 callbacks.
6660         (menus_init): for GTK menus, change from callback type 2 to type
6661         1.
6662         (display_menu_items): add back tearoffs.  I don't know who removed
6663         these for the gtk menu case.
6665 2001-02-20  Kevin Breit <battery841@mediaone.net>
6667         * doc/en/usage-objects-special.sgml: Fixed a few of the special
6668         object descriptions.  More to come in the next few days.
6670 2001-02-20  Lars Clausen  <lrclause@cs.uiuc.edu>
6672         * app/render_eps.c: Fixed for internationalized floating point
6673         output. 
6675         * objects/UML/note.c: Fixed properties -- was missing
6676         Get/ApplyPropertiesFunc.  Also improved update to recalculate text
6677         position. 
6679 2001-02-19  Lars Clausen  <lrclause@cs.uiuc.edu>
6681         * plug-ins/xfig/xfig-import.c: 
6682         File added importing xfig files.  Still very rough, but good
6683         enough to let others hack on it.
6685 2001-02-07  Cyrille Chepelov  <chepelov@calixo.net>
6687         * app/interface.c:
6688         * app/linewidth_area.c:
6689         * lib/lazyprops.c:
6690         * lib/properties.c:
6691         * lib/widgets.c:
6692         * objects/ER/attribute.c:
6693         * objects/ER/entity.c:
6694         * objects/ER/relationship.c:
6695         * objects/custom/custom_object.c:
6696         * objects/flowchart/box.c:
6697         * objects/flowchart/diamond.c:
6698         * objects/flowchart/ellipse.c:
6699         * objects/flowchart/parallelogram.c:
6700         * objects/standard/box.c:
6701         * objects/standard/textobj.c: per Vlad Harchev's request, made
6702         page sizes of gtk_adjustments different than their step sizes.
6703         When sensible values of page size weren't found (overwhelming
6704         majority of cases), page sizes were set to 10.0 * respective step
6705         size.   
6707 2001-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
6709         * objects/network/hub.c: 
6710         Patch from Hubert Figuiere applied, adding connection points.
6712 2001-02-02  James Henstridge  <james@daa.com.au>
6714         * app/display.c (new_display): set update id to 0 here.
6715         (ddisplay_update_handler): rename from ddisplay_flush, and set
6716         update_id to 0 at end of processing.
6717         (ddisplay_flush): new implementation that simply sets an idle
6718         handler to perform the actual drawing.
6720         * app/display.h: add structure member to hold the redraw idle
6721         handler id.
6723 2001-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
6725         * objects/standard/ellipse.c (ellipse_copy): 
6726         * objects/standard/zigzagline.c (zigzagline_copy): 
6727         Fix of copying provided by Martin Hawlisch.
6729 2001-01-23  Kevin Breit <battery841@mediaone.net>
6731         * doc/en/graphics/: added directory
6733         * doc/en/graphics/greendots.png: added file
6735         * doc/en/*sgml: made minor and some major changes to prepare for 1.4
6736         release.
6738 2001-01-23  Kevin Breit <battery841@mediaone.net>
6740         * doc/en/*sgml: made some grammar changes and fixed a few markup bugs.
6741                         thanks to John Fleck!
6743 2001-01-21  Kevin Breit <battery841@mediaone.net>
6745         * doc/en/*sgml: made just minor changes to a few lines; nothing major.
6747 2001-01-12  Michael Meeks  <michael@helixcode.com>
6749         * app/dia_embedd.c (init_server_factory): do a bonobo_activate
6750         so our POA gets setup properly.
6752         * app/paginate_gnomeprint.c (paginate_gnomeprint): g_free
6753         things we g_malloc.
6755         * configure.in: Use bonobox_print.
6757         * app/dia_embedd.c (embeddable_factory): add print interface.
6758         (object_print): impl.
6760 2001-01-11  Michael Meeks  <michael@helixcode.com>
6762         * app/dia_embedd.c (embeddable_factory): aggregate PersistFile.
6763         (load_fn, save_fn): impl.
6764         (view_factory): hide modified status bar, & use activate fn.
6765         (refresh_view): force redraws of the views.
6766         (view_show_hide): split from
6767         (dia_view_activate): here.
6769         * app/diagram.c (diagram_load_into): split from diagram_load.
6770         (new_diagram): simplify bu splittin stuff into
6771         (diagram_init): here.
6773 2001-01-10  Steffen Macke <sdteffen@yahoo.com>
6775         * shapes/jigsaw/*.shape: replaced #000000 with foreground
6776         and #ffffff with background
6777         
6778 2001-01-08  Steffen Macke <sdteffen@yahoo.com>
6780         *configure.in: GTK+-build was broken due to missing
6781         have_bonobo=no
6782         
6783 2001-01-06  Michael Meeks  <michael@helixcode.com>
6785         * app/dia_embedd.c (main): add running context support.
6786         (dia_embeddable_destroy): remove old running object counting.
6787         (embeddable_factory): ditto.
6788         (view_factory): comment out menu path hiding.
6790         * lib/sheet.c (load_register_sheet): use free to free
6791         stuff from libxml not g_free.
6793         * acconfig.h: kill cover for USE_BONOBOX and USE_OAF
6795         * configure.in: remove USE_OAF checks, check for a precice
6796         Bonobo version >= 0.31, revamp bits.
6798         * app/dia_embedd.c (init_server_factory): upd.
6799         (init_dia_factory): remove OAF conditionals, everything uses
6800         oaf now.
6802         * app/GNOME_Dia.oafinfo: rename OAFIIDs
6804         * app/Makefile.am: remove ancient gnorba code.
6805         rename dia.oafinfo to GNOME_Dia.oafinfo
6807 2001-01-07  Hans Breuer <Hans@Breuer.Org>
6809         * config.h.win32
6810         * install.win32
6811         * readme.win32 : some more files required or useful to build 
6812         Dia on win32
6814         * plug-ins/wmf/wmf.cpp : fixed open issues like fill_arc and
6815         fill_bezier implementation, boundary drawing in fill mode, etc.
6816         Next one complaining gets the source, uncommented ...
6818         * shapes/network/router-symbol.xpm 
6819         * shapes/network/switch-atm-symbol.xpm 
6820         * shapes/network/switch-symbol.xpm : removed "-*- picture -*- "
6821         from /* XPM */ header, cause it stopped Dia/gdk_pixbuf to detect 
6822         the files as XPMs. Maybe the X versions of these functions are more
6823         tolerant ...
6825 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
6827         * plug-ins/python/Makefile.am: added libart path
6829         * plug-ins/python/python.c: added dirent.h
6831         * configure.in: added es_ES and pt_BR to ALL_LINGUAS
6832         
6833 2001-01-06  Hans Breuer <Hans@Breuer.Org>
6835         * objects/uml/actor.c
6836         * objects/uml/branch.c
6837         * objects/uml/class.c
6838         * objects/uml/classicon.c
6839         * objects/uml/component.c
6840         * objects/uml/large_package.c
6841         * objects/uml/node.c
6842         * objects/uml/note.c
6843         * objects/uml/object.c
6844         * objects/uml/small_package.c
6845         * objects/uml/state.c
6846         * objects/uml/usecase.c : started to implement the generic property
6847         interface for the uml objects. Would appreciate some help on how
6848         to implement properties which are list of properties themselves,
6849         e.g. member functions and their parameters of UMLClass.
6851 2001-01-06  Hans Breuer <Hans@Breuer.Org>
6853         * plug-ins/python/diamodule.c : finally ported to win32.
6854         Added new objects and implemented register_export function.
6856         * plug-ins/python/pydia-object.h
6857         * plug-ins/python/pydia-display.c
6858         * plug-ins/python/pydia-handle.c
6859         PyObject_HEAD_INIT needs some tweakink on win32. Done in
6860         pydia-object.h; others files simply using it.
6862         * plug-ins/python/pydia-layer.c : reflect 
6863         layer_find_closest_connection(_)point renaming
6865         * plug-ins/python/pydia-object.c : add property properties.
6866         Also change bounding_box to DiaRectangle.
6868         * plug-ins/python/python.c : extended error reporting; use
6869         all *.py files from Dia's plug-in dir instead of hardcoded
6870         test.py. This sollution should be fine with Win32, but on
6871         Unix it may need some tweaking (dunno) ...
6873         * plug-ins/python/export-object.py
6874         * plug-ins/python/export-render.py : test and documentation 
6875         implementations for export filter implementations in Python
6877         * plug-ins/python/pydia-color.[hc]
6878         * plug-ins/python/pydia-diagramdata.[hc]
6879         * plug-ins/python/pydia-error.[hc]
6880         * plug-ins/python/pydia-export.[hc]
6881         * plug-ins/python/pydia-font.[hc]
6882         * plug-ins/python/pydia-geometry.[hc]
6883         * plug-ins/python/pydia-image.[hc]
6884         * plug-ins/python/pydia-properties.[hc]
6885         * plug-ins/python/pydia-property.c
6886         * plug-ins/python/pydia-render.c : new objects in new files 
6888         * plug-ins/python/makefile.am : added new files but can't test it
6890         * plug-ins/python/pydia.def
6891         * plug-ins/python/makefile.msc : for win32 build
6893         * plug-ins/cgm/cgm.c
6894         * plug-ins/dxf/dxf-import.c
6895         * plug-ins/dxf/dxf-export.c
6896         * plug-ins/hpgl/hpgl.c : reflect export API change
6898         * plug-ins/shape/shape-export.c : reflect export API change
6899         and check for libart (better the availibility of a png exporter) 
6900         at run-time instead of compile-time. 
6902 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
6904         * app/recent_files.h was missing from Hans's commit
6906         * plug-ins/shape/shape_export.c: shape export was broken
6907         due to interface changes
6908         
6909 2001-01-05  Hans Breuer <Hans@Breuer.Org>
6911         Applied Steffen's recent file list patch :
6912         * app/Makefile.am : added recent_files.[hc]
6913         * app/diagram.c : add files to recent file list
6914         * app/menus.c : add recent file menu
6915         * app/app_procs.c : changed initialization order to
6916         make recent file list work with command line processing.
6918         The Filter export()/import() functions have got an additional 
6919         parameter to allow multiple filters via one C callback (required
6920         for Python bindings)
6922         * app/commands.[hc] : corrected the signature for gtk menu callback
6923         functions, which actually use the second or third parameter. This
6924         is the absolute minimum change to make these functions/menu entries
6925         work again. Using the other possible gtk menu callback signature
6926         would have required one more function to change. (see mailing list
6927         thread "Objects/Align/Equal Distance" for more information.
6929         * app/disp_callbacks.c : applied Gustavo J.A.M. Carneiro's
6930         zoom-combo focus patch
6932         * app/display.c
6933         * app/interface.c : wrapped the Zoom Combo code into 
6934         #ifndef WITHOUT_ZOOM_COMBO because IHMO it isn't an useabilty
6935         improvement but cluttering the user interface. Also it wasn't
6936         compiling on Win32 anyway. The win32 version does define 
6937         WITHOUT_ZOOM_COMBO to keep the old look. 
6938         There are plans to use the statusbar to display size and placement
6939         of selected objects, whereas the Zoom Combo would need to get out
6940         of the way as well.
6942         Added "Save Changes?" to diagram close dialog. Hopefuly the
6943         Yes/No/Cancel option isn't too much windoze like. IHMO this is
6944         an useability improvement.
6946         * app/export_png.c
6947         * app/filedlg.c
6948         * app/load_save.c
6949         * app/layer_dialog.c
6950         * app/paginate_psprint.c
6951         * app/render_eps.c
6952         - reflect signature changing of filter->export function
6953         - replaced '/' with G_DIR_SEPARARTOR where appropriate
6955         * app/diaunitspinner.c
6956         * app/render_libart.c
6957         added misssing headers like <string.h>
6959         * app/object_ops.c : fixed copy&paste bug in dialog string
6961         * app/splash.c : gdk_widget_show_now () does not ensure actual
6962         drawing of the splash screen, at least not on win32. Reuse the
6963         previous implementation with gtk_main_iteration() again.
6965         * */makefile.msc : make use of the build module (available in
6966         gnome-cvs/build. Updated for other source changes
6968         * lib/filter.h : added an user_data pointer to <ex/im>port()
6969         function signature and Dia<Im/Ex>portFilter to allow different
6970         filters to reuse the same callback function
6972         * lib/font.c : #include <string.h>
6974         * lib/orth_conn.c 
6975         * lib/poly_conn.c 
6976         * lib/poly_shape.c 
6977         * lib/neworth_conn.c
6978         * lib/text.c : don't mix allocator functions (g_)realloc, free, ...
6980         * */*.def : export function definition files required by win32 build
6982         * objects/custom/custom.c : #include <string.h>
6984         * plug-ins/pstricks/render_pstricks.c
6985         * plug-ins/shape/shape_export.c
6986         * plug-ins/svg/render_svg.c
6987         reflect changes to filter export function signature
6989         * plug-ins/wmf/wmf.cpp : fixed indent and scaling. It now should
6990         mostly work as expected
6991         * plug-ins/wmf/wmf_gdi.[hc] : Updated comment. Still not used
6992         to build the wmf plug-in because on the one hand the GDI emulation 
6993         isn't finished and on the other hand it isn't required when building
6994         for win32. Is there anybody out there, who wants to save WMF on non
6995         windoze platforms ?
6997         * plug-ins/wpg/wpg.cpp : fixed scaling to take axis dependent
6998         offset into account.
7000 2001-01-02  Steffen Macke <sdteffen@yahoo.com>
7002         * app/Makefile.am: added missing plug-ins to run_dia.sh
7004         * lib/paper.c: added paper sizes A0, A1, A2
7006         * objects/UML/class.c
7007         objects/UML/class.h
7008         objects/UML/class_dialog.c: added support for colored UML
7009         classes
7010         
7011 2000-12-30  Kevin Breit <battery841@mediaone.net>
7013         * doc/en/usage-customization.sgml: added more content
7015 2000-12-24  Kevin Breit <battery841@mediaone.net>
7017         * doc/en/usage-layers.sgml: added file, contributed by Remypsb
7018         <remy.viard@laposte.net>
7020 2000-12-24  Steffen Macke <sdteffen@yahoo.com>
7022         * added limiting lines to Civil Engineering sheet,
7023         fixed vertical pump icon
7024         
7025 2000-12-20  Steffen Macke <sdteffen@yahoo.com>
7027         * updated/additional Civil Engineering shapes: better icons,
7028         shapes use foreground/background colors now and are filled
7029         
7030 2000-12-03  Kevin Breit  <battery841@mediaone.net>
7032         * doc/en/dia-manual.sgml Integrated a few diffs.  New section should be
7033         the selection <sect1>
7035 2000-11-29  Fredrik Hallenberg  <hallon@lysator.liu.se>
7037         * app/load_save.c (diagram_data_save): avoid using obsoleted
7038         libxml calls (only matters when compiling with libxml2)
7040 2000-11-25  James Henstridge  <james@daa.com.au>
7042         * app/disp_callbacks.c (ddisplay_drop_object): add a function to
7043         handle the tool drops on the canvas.
7045         * app/interface.c (display_data_received_callback): do the check
7046         to make sure that the drag is from a local toolbox here as well.
7048         * app/interface.c (create_tools): unref the pixmap/mask after
7049         creating the GtkPixmap.
7050         (tool_setup_drag_source): function to set up a drag source for
7051         create object tool buttons.
7052         (create_tools): setup drag source for CREATE_OBJECT_TOOL's.
7053         (fill_sheet_wbox): same here.
7054         (create_display_shell): set up the display canvas as a drag
7055         destination.
7056         (display_drop_callback, display_data_received_callback): functions
7057         to handle drops of tool buttons.
7059         * app/menus.c (menus_init): don't use gnome_popup_menu_new().  It
7060         does weird shit to the user_data pointer for a menu item.  Object
7061         alignment should work again now.
7063         * app/splash.c (get_logo_pixmap): don't unref the bitmap if it is
7064         NULL, and mark this function static.
7065         (app_splash_init): use gtk_widget_show_now() instead of the
7066         gtk_main_iteration loop.
7067         (app_splash_init): connecting gtk_widget_destroy to the destroy
7068         signal of a widget seems pretty useless.
7070 2000-11-23  Kevin Breit <battery841@users.sourceforge.net>
7072         * doc/en/dia-manual.sgml:
7073                 Added sect1 for advanced object types.  Starting development
7074                 on that part.
7076 2000-11-18  Kevin Breit <battery841@mediaone.net>
7078         * doc/en/dia-manual.sgml:
7079                 Stupid spelling fixes.
7081 2000-11-18  Kevin Breit <battery841@mediaone.net>
7083         * doc/en/dia-manual.sgml:
7084                 Just some small changes I made.  Props to Greg LeBlanc on the
7085                 recommendations.
7087 2000-11-17  Alexander Larsson  <alla@lysator.liu.se>
7089         * app/display.c:
7090         (ddisplay_add_display_area): Clip input rectangle to
7091         the visible part of the display.
7092         (ddisplay_scroll): Optimization, don't scroll and
7093         redraw if moving to the same position as before.
7095         * app/render_libart.c (renderer_libart_copy_to_window):
7096         Removed sanity check. Now moved to ddisplay_add_display_area().
7098         * lib/diavar.h:
7099         Added return at end of file.
7100         
7101 2000-11-13 Kevin Breit <battery841@mypad.com>
7102         * doc/en/dia-manual.sgml
7103                 Commited manual changes from Henry House <hajhouse@houseag.com>
7105 2000-10-21 Hans Breuer <Hans@Breuer.Org>
7106         * lib/beziershape.c :
7107                 The previous code was accessing unowned memory due to IHMO
7108                 wrong index calculation. Now it appears to be fixed.
7109                 *Please Review!*
7111         * lib/makefile.msc
7112         * plug-ins/makefile.msc
7113         * objects/makefile.msc
7114         * app/makefile.msc: (new files)
7115                 Makefiles for Dia on Win32, Micro$oft VC only.
7117         * plug-ins/pstricks/render_pstricks.c
7118         * plug-ins/dxf/dxf-import.c
7119         * plug-ins/shape/shape-export.c
7120         * plug-ins/svg/render_svg.c
7121         * app/commands.c
7122         * app/filedlg.c
7123         * app/preferences.c
7124         * app/render_eps.c
7125         * lib/sheet.c
7126         * lib/plug-ins.c
7127         * objects/custom/custom.c
7128         * objects/standard/image.c
7129                 portability (not only win32): use HAVE_UNISTD_H, HAVE_DIRENT_H 
7130                 where   appropriate, add missing prototypes like <string.h>
7132         * plug-ins/wmf/wmf_gdi.cpp
7133         * plug-ins/wmf/wmf_gdi.h:
7134                 start of wmf write functions for non Win32 platform. Not 
7135                 finished yet. The other way to get it working maybe to
7136                 link the plug-in against wine libs.
7137                 
7138         * plug-ins/wpg/wpg.c : add missing brace
7140         * app/load_save.c :
7141                 Handling for unknown objects at load time. Previously Dia
7142                 was crashing, if you try to load a file referencing objects
7143                 whiches plug-ins aren't installed/available. Now it spits out 
7144                 a warning and ignores the unknown objects.
7146         * app/interface.c
7147                 toolbox DND support for files like The Gimp does it.
7149         * app/main.c
7150         * app/app_procs.h
7151                 Simple splash screen support and usage.
7153         * app/app_procs.c
7154                 Splash screen, portability fixes, dont' g_error if there is
7155                 g_get_homedir return NULL. This may remove the one and only
7156                 FAQ for Win32.
7158         * app/menus.c :
7159                 Make it compile without ENABLE_NLS
7161         * app/render_libart.c :
7162                 Sanity check to avoid calling libart with wrong window coordinates.
7163                 They come from the update handler. Direct Gdk is dealing nicely
7164                 with coordinates out of range, libart does access un-owned memory
7165                 in this case, mostly causing crashes.
7167         * app/winmain.c: (new file) Export the Win32 Gui version of the
7168                 main function. This file is only required for Windoze.
7170         * app/splash.c: (new file) splash screen implementation
7172         * lib/color.h
7173         * lib/font.h
7174         * lib/diavar.h: (new file)
7175                 moved special variable export code to diavar.h, because it is
7176                 needed in color.h and font.h
7178         * lib/paper.c :
7179                 M$VC cann't export inlined functions. Quick hack to let it
7180                 link again. Probably the glib mechanics should be used here?
7182         * objects/UML/lifeline.c : initialize var before usage
7184         * objects/GRAFCET/step.c : removed unused var
7186 2000-10-14  James Henstridge  <james@daa.com.au>
7188         * app/render_gnomeprint.c (draw_image): change code so images
7189         don't get flipped when printing.
7191         * app/paginate_gnomeprint.c (diagram_print_gnome): check to make
7192         sure that the return value of
7193         gnome_print_context_new_with_paper_size is not NULL.
7195         * app/render_gnomeprint.c (draw_arc): add code to convert arcs
7196         into a series of bezier segments.
7197         (fill_arc): similar code to handle filled arc segments.
7199 2000-10-12  Fredrik Hallenberg  <hallon@lysator.liu.se>
7201         * app/app_procs.c
7202         * app/commands.c
7203         * app/dia-props.c
7204         * app/diagram.c
7205         * app/diagram.h
7206         * app/disp_callbacks.c
7207         * app/display.c
7208         * app/linewidth_area.c
7209         * app/paginate_psprint.c
7210         * app/preferences.c
7211         * app/undo.c
7212         * app/font.c
7213         * app/message.c
7214         * app/neworth_conn.c
7215         * app/orth_conn.c
7216         * objects/standard/box.c: various small changes to get rid of 
7217         annoying warnings (eg faulty prototypes and unused variables)
7219         * app/disp_callbacks.c
7220         * app/cursor.h
7221         * app/magnify.c
7222         * app/magnify.h: update magnify tool icon when pressing/releasing
7223         shift. I will try to make something more general so that similar
7224         things can be used by other tools.
7226         * shapes/SDL/inout.shape
7227         * shapes/SDL/return.shape: fixed some typos
7229 2000-10-09  James Henstridge  <james@daa.com.au>
7231         * objects/custom/shape_info.c (parse_path): apply patch from
7232         Robert Young <robertdotyoung@dsto.defence.gov.au> to fix bug
7233         #25221
7235 2000-10-08  James Henstridge  <james@daa.com.au>
7237         * objects/standard/image.c (image_set_props): if the file could not
7238         be loaded, show the broken image icon.
7240         * plug-ins/Makefile.am (SUBDIRS): add shape to the subdirs list.
7242         * plug-ins/shape/*: the shape export plugin by Steffen Macke.
7244         * app/interface.c (fill_sheet_wbox): use gdk-pixbuf to load the
7245         object icon when loading from a file.  This allows you to have PNG
7246         icon files for shapes.
7248 2000-10-07  James Henstridge  <james@daa.com.au>
7250         * app/Makefile.am (dia_LDADD): remove GDK_IMLIB_LIBS reference.
7252         * lib/Makefile.am, app/Makefile.am (INCLUDES): remove
7253         GDK_IMLIB_CFLAGS reference.
7255         * app/commands.c (help_about_callback): remove imlib code.
7257         * lib/dia_image.c: only include the pixbuf version of the image
7258         routines.
7260         * acconfig.h: remove the HAVE_GDK_PIXBUF flag from here.
7262         * configure.in (CPPFLAGS): remove the check for imlib, as we now
7263         require gdk-pixbuf.
7265         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer):
7266         conditionally define \setfont as well.
7268 2000-10-05  James Henstridge  <james@daa.com.au>
7270         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer): fix
7271         preamble so that we define \setlinejoinmode and \setlinecaps
7272         commands conditionally on them being undefined.  This way, the
7273         pstricks output files should work without modification, and will
7274         support the commands when they are implemented in pstricks.
7276 2000-10-05  Szabolcs Ban  <shooby@gnome.hu>
7278         * dia.desktop: added hungarian translations to dia.desktop
7280 2000-10-04  James Henstridge  <james@daa.com.au>
7282         * sheets/UML.sheet: fix typo.
7284         * objects/custom/shape_info.c: use strtod instead of g_strtod.
7285         (parse_path): actually call setlocale around strtod calls.
7287         * lib/dia_xml.c: use strtod rather than g_strtod.  We wrap each
7288         call in setlocale(LC_NUMERIC, "C"), so there is no reason to call
7289         the g_strtod wrapper.
7291         * shapes/SDL/: add SDL shapes from Rubens Ramos
7292         <rubens_ramos@yahoo.com>
7294         * acinclude.m4 (DIA_CHECK_CFLAG): fix up macro.
7296         * sheets/Makefile.am (SHEETS): add SDL.sheet to list.
7298         * shapes/MSE/: add Mobile Subscriber Equipment shapes from
7299         W. Michael Petullo <mike@flyn.org>.
7301         * sheets/Makefile.am (SHEETS): add civil.sheet (which got missed
7302         from the 0.86 tarball) and jigsaw.sheet.
7304         * configure.in: add shapes/jigsaw/Makefile to list of generated files.
7306         * shapes/jigsaw/: jigsaw shapes from Martin Hawlisch.
7308         * shapes/network/: add network-additional shapes here.
7310         * sheets/network.sheet: add the network-additional shapes from
7311         Martin Hawlisch <Martin.Hawlisch@bflow.com> to the main network
7312         sheet.
7314 2000-09-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
7316         * configure.in: Updated ALL_LINGUAS
7318         * po/nl.po: Removed newline from translation
7320 2000-09-17  Asbjorn Pettersen  <asbjornP@dualog.no>
7322         * app/commands.c (help_about_callback): Use G_DIR_SEPARATOR_S in 
7323         logo filename generation. 
7325         * lib/dia_dirs.c (dia_get_data_directory): Handle empty subdir better.
7326         Avoiding "//dia_logo.png".
7328 2000-09-16  Asbjorn Pettersen  <asbjornP@dualog.no>
7330         * app/filedlg.c: add include <sys/types.h> to
7331         remove warning. (OS/2)
7333 2000-09-13  Cyrille Chepelov <chepelov@calixo.net>
7335         * objects/chronogram/chronoline_event.c (reparse_clevent):
7336         the __checksum routine was simply bogus. Redone it in a slightly
7337         saner way (reported by Michael Farr <mfarr@cs.latrobe.edu.au>).
7339 2000-09-10  Asbjorn Pettersen  <asbjornP@dualog.no>
7341         * app/create_object.c (create_object_button_press): 
7342         * app/modify_tool.c (click_select_object): 
7343         * lib/object.h: select renamed to selectf to prevent
7344         compiler problems with function select().  OS/2 version.
7346 2000-09-08  Karsten Weiss  <knweiss@gmx.de>
7348         * po/de.po: Updated.
7350 2000-09-07  Karsten Weiss  <knweiss@gmx.de>
7352         * dia.desktop: Added German translation
7353         * app/menus.c: "Diagram Propeties..." -> "Diagram Properties..."
7355 2000-08-29  Manuel de Vega Barreiro <barreiro@arrakis.es>
7357         * configure.in (ALL_LINGUAS): added "es"
7359 2000-08-28  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
7361         * app/magnify.c:
7362         * app/cursor.h:
7363         * app/cursor.c:
7364         * app/scroll_tool.c:
7365         Standardized cursor function get_cursor().  Magnify now has
7366         looking-glass cursor with + and -.
7368         * app/create_object.c (create_object_button_press): 
7369         Newly created connections now snap to connection points even when
7370         off the grid. 
7372 2000-08-17  Daniel Egger  <egger@suse.de>
7374         * app/menus.c: #ifdef'ed some code for the none GNOME
7375         case.
7376         * app/dia_embedd.c: Changed obvious hackery. Can anyone
7377         please have a look at the GNOME UI menu creation? The
7378         gnome-app-helper code is ages old and plainly broken!
7380 2000-08-15  Daniel Egger  <egger@suse.de>
7382         * app/commands.c:
7383         * app/commands.h:
7384         * app/diagram.c:
7385         * app/display.c:
7386         * app/menus.c:
7387         * app/select.c: First big patch to get the menus
7388         working again in the international version. Copied
7389         some code written by Sven and me from GIMP and
7390         thus implemented automatic tearoffmenu creation and
7391         proper translation. I also removed that pseudo
7392         radiomenu hack and cleaned up several translation
7393         hacks which have never really worked. All in all
7394         this is part I of the big menu patch. Enjoy and tell
7395         me if you detect any problems.
7397 2000-08-14  Daniel Egger  <egger@suse.de>
7399         * sheets/UML.sheet: Changed one German translation as
7400         suggested by Heribert Schuetz <hs@heribert-schuetz.de>.
7402 2000-08-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
7404         * app/diapagelayout.c:
7405         * lib/diagramdata.c:
7406         * lib/diagramdata.h:
7407         * lib/Makefile.am:
7408         * lib/paper.c:
7409         * lib/paper.h: honour PAPERCONF env variable and /etc/papersize when
7410         selecting paper size for a new diagram. TODO: Use libpaper if 
7411         available and use gnome_paper-stuff if using GNOME.
7413         * sheets/Electric.sheet: fixed typo.
7414         
7415 2000-08-08  James Henstridge  <james@daa.com.au>
7417         * po/README: added a readme file to tell translators to translate
7418         the .sheet files as well.
7420         * app/commands.c (help_about_callback): fix small bug where we tried
7421         to gdk_bitmap_unref() the mask for the about box image, even though
7422         it was NULL.  Now check for a NULL mask.
7424 2000-08-07  Daniel Egger  <egger@suse.de>
7426         * sheets/*.sheet: Added translations for the name
7427         in the toolbar tab. Brushed up some descriptions 
7428         and some translations a bit.
7430 2000-08-06  James Henstridge  <james@daa.com.au>
7432         * plug-ins/svg/render_svg.c (new_svg_renderer): update public
7433         identifier and dtd url for SVG output.
7434         (new_svg_renderer): fix the output of the viewBox output.  The
7435         second two numbers are the width and height -- not the right
7436         and bottom sides of the box.
7438         * shapes/*/*.shape: update svg namespace URI.
7440         * objects/custom/shape_info.c (load_shape_info): change the
7441         namespace URI for custom shapes yet again to match the Candidate
7442         Recommedation.  It looks like this one will probably be the final
7443         one.
7445         * app/display.c (new_display): remove the code that sets ic and
7446         ic_attr members to NULL, as one of the previous function calls
7447         causes the display to be realised.  This means that the ic gets
7448         lost.  Thanks to Yukihiro Nakai <ynakai@redhat.com> for finding
7449         this one.
7451 2000-08-06  James Henstridge  <james@daa.com.au>
7453         * shapes/Makefile.am (SUBDIRS): add Civil back to list.
7455         * NEWS: fixed date in NEWS file, as I will release today.
7457         * README: updated the README a little.  Added note that Dia is now
7458         a GNU program.
7460         * dia.spec: fix up spec file.
7462         * plug-ins/wpg/wpg.c: changed DIAG_NOTE stuff here as well.
7464         * plug-ins/hpgl/hpgl.c: change Hans's DIAG_NOTE stuff so that we don't
7465         get heaps of warnings when you turn off debugging.
7466         Also made a few other warning fixes.
7468 2000-08-02  James Henstridge  <james@daa.com.au>
7470         * plug-ins/svg/Makefile.am (INCLUDES): add XML_CFLAGS to INCLUDES.
7472         * configure.in: update version number.
7474 2000-08-01  James Henstridge  <james@daa.com.au>
7476         * app/commands.c (help_about_callback): add Hans to about dialog.
7478         * doc/shape.dtd: dtd for shape file format.
7480         * doc/custom-shapes: update doc file about creating custom shapes.
7482         * shapes/*/*.shape: change namespace URI for the SVG portion to the
7483         one for the latest draft.
7485         * shapes/*/*.shape: fix up rect definitions.
7487         * objects/custom/shape_info.c (load_shape_info): recognise newer
7488         namespace tag for SVG.
7489         (parse_svg_node): the rect element should take attributes x, y, width
7490         and height -- not x1,y1,x2,y2.
7492         * plug-ins/svg/render_svg.c (new_svg_renderer): updated doctype
7493         output to use the newest draft DTD.
7495         * plug-ins/svg/svg.c: initialisation code for plugin.
7497         * plug-ins/svg/render_svg.c: move svg export code to a plugin.
7499         * plug-ins/svg/Makefile.am: makefile for svg plugin.
7501         * app/app_procs.c (internal_plugin_init): don't register the svg
7502         export filter here.
7504         * app/Makefile.am (dia_core_files): don't compile in render_svg.[ch]
7506 2000-07-31  James Henstridge  <james@daa.com.au>
7508         * objects/standard/textobj.c (textobj_get_defaults): 
7509         * objects/standard/polygon.c (polygon_get_defaults): 
7510         * objects/standard/image.c (image_get_defaults): 
7511         * objects/standard/ellipse.c (ellipse_get_defaults): 
7512         * objects/standard/box.c (box_get_defaults): 
7513         * objects/standard/beziergon.c (beziergon_get_defaults): 
7514         * objects/flowchart/parallelogram.c (pgram_get_defaults): 
7515         * objects/flowchart/ellipse.c (ellipse_get_defaults): 
7516         * objects/flowchart/diamond.c (diamond_get_defaults): 
7517         * objects/flowchart/box.c (box_get_defaults): 
7518         * objects/custom/custom_object.c (custom_get_defaults): 
7519         * objects/FS/flow.c (flow_get_defaults): 
7520         * objects/FS/flow-poly.c (flow_get_defaults): 
7521         * objects/FS/flow-ortho.c (orthflow_get_defaults): ref and sink the
7522         defaults widget.
7524         * app/defaults.c (defaults_show): don't keep on ref'ing the defaults
7525         widgets for various object types.
7526         (create_dialog): ref and sink the no_defaults_dialog.
7528         * app/preferences.c (prefs_create_dialog): change
7529         gtk_container_border_width call to gtk_container_set_border_width.
7531 2000-07-29  James Henstridge  <james@daa.com.au>
7533         * app/commands.c (view_aa_callback): show a warning dialog if
7534         you start AA mode.
7536         * app/interface.c (fill_sheet_menu): don't add a menu item for
7537         empty sheets.
7539 2000-07-26  James Henstridge  <james@daa.com.au>
7541         * plug-ins/dxf/dxf-export.c: updates from Steffen to fix bug #18677
7543         * app/menus.c: remove edit grid menu item.
7545         * app/commands.[ch] (view_edit_grid_callback): removed.
7547         * app/display.c (new_display): don't initialise removed Grid members.
7549         * app/grid.c: remove unused functions.
7551         * app/grid.h: remove dialog related stuff from Grid structure.
7552         Remove prototypes for dialog functions.
7554         * app/menus.c: add to menus
7555         
7556         * app/commands.[ch] (view_diagram_properties_callback): new command
7557         for showing the diagram properties dialog.
7559         * app/dia-props.[ch]: a new diagram properties dialog.  To replace
7560         the edit grid dialog.
7562 2000-07-25  James Henstridge  <james@daa.com.au>
7564         * app/grid.c (grid_x_update): 
7565         (grid_y_update): as the grid setting is stored with the diagram,
7566         update all displays when a change is made.
7568         * app/modify_tool.c (modify_motion): use new snap_to_grid sig.
7570         * app/create_object.c (create_object_button_press): 
7571         (create_object_motion): use new snap_to_grid signature.
7573         * app/grid.c (grid_draw): use the grid settings in the DiagramData,
7574         and handle invisible grid lines.
7575         (snap_to_grid): use new grid settings.  Also changed signature to
7576         take a DDisplay rather than Grid pointer.
7577         (grid_show_dialog): get the defaults from the correct place.
7579         * app/display.c (new_display): do not set ddisp->grid.width_[xy].
7581         * app/diagram.c (new_diagram): set the grid size defaults from the
7582         user preferences.
7584         * app/load_save.c (diagram_data_save): save grid and guide info to
7585         diagram file.
7586         (diagram_data_load): add guide and grid load support.
7588         * lib/diagramdata.c (new_diagram_data): set the new DiagramData
7589         members.
7591         * lib/diagramdata.h: add members to DiagramData for grid and guide
7592         settings.
7594         * configure.in (BONOBO_LIBS): update configure scripts
7596         * app/dia.oafinfo: oafinfo file for dia embeddables.
7598         * app/dia_embedd.c: add OAF support.
7600 2000-07-24  James Henstridge  <james@daa.com.au>
7602         * plug-ins/wpg/Makefile.am: 
7603         * plug-ins/pstricks/Makefile.am: 
7604         * plug-ins/hpgl/Makefile.am: 
7605         * plug-ins/dxf/Makefile.am: same here.
7607         * plug-ins/cgm/Makefile.am: remove LIBADD.  Dia already links with
7608         the required libraries, and the link line was causing libtool not
7609         to build a shared library on some systems :(
7611         * plug-ins/cgm/cgm.c (write_real): the initial if statement should
7612         be checking x, not n.
7614 2000-07-23  James Henstridge  <james@daa.com.au>
7616         * app/preferences.c (prefs_data): set the "reset tools after
7617         create" preference to true by default.  That seems to be what most
7618         people expect.
7620         * app/interface.c (create_sheets): instead of a notebook, use an
7621         option menu that updates the sheet tools.  The notebook tabs were
7622         getting a bit unwieldly, so the option menu should fix that.  This
7623         also reduces the number of widgets in the tools radio button
7624         group, which should make the UI a little more responsive.
7626 2000-07-19  Fatih Demir <kabalak@gmx.net>
7627         
7628         * configure.in: Added tr to ALL_LINGUAS.
7629                 [ Yeah, we're now having a Turkish translation,
7630                    too. ]
7631         
7632         * dia.desktop: Added the Turkish entries.
7634 2000-07-02  Fredrik Hallenberg  <hallon@lysator.liu.se>
7636         * doc/diagram.dtd: changed string-element so it conforms to the
7637         output from dia.
7639 2000-06-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
7641         * configure.in: added chinese. 
7642         Use AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL.
7644         * app/app_procs.c:
7645           app/load_save.c:
7646           app/render_svg.c:
7647           lib/dia_xml.c:
7648           lib/plug-ins.c:
7649           lib/sheet.c:
7650           objects/custom/shape_info.c: 
7651           shapes/Circuit/npn.shape:
7652           shapes/Circuit/pnp.shape:
7653           sheets/*.sheet: dia now works with libxml2.
7654         Libxml2 is a bit more picky when parsing xml and reported errors on all 
7655         sheet files because they use non ascii characters (added 
7656         encoding="iso-8859-1"). Also "xml:lang=en@layman" is not proper xml so 
7657         I commented out these.
7659 2000-06-30  Christopher R. Gabriel  <cgabriel@linux.it>
7661         * configure.in (ALL_LINGUAS): added Italian
7663 2000-06-27  Sung-Hyun Nam  <namsh@lgic.co.kr>
7665         * configure.in (ALL_LINGUAS): added Korean
7667 2000-06-25  James Henstridge  <james@daa.com.au>
7669         * objects/flowchart/parallelogram.c (pgram_create): use default font
7670         and add properties interface support.
7672         * objects/flowchart/ellipse.c (ellipse_create): use default font and
7673         add properties interface support.
7675         * objects/flowchart/diamond.c (diamond_create): use default font and
7676         add properties interface code.
7678         * objects/flowchart/box.c (box_create): use default font.
7680         * objects/custom/custom_object.c (custom_create): use default font
7681         here too.
7683         * objects/standard/textobj.c (textobj_create): update to use default
7684         font.
7686         * lib/attributes.c: add implementations.
7688         * lib/attributes.h (attributes_[gs]et_default_font): add function
7689         prototypes for setting/getting a default font.
7691 2000-06-24  James Henstridge  <james@daa.com.au>
7693         * app/paginate_gnomeprint.h: updated prototype.
7695         * app/paginate_gnomeprint.c (paginate_gnomeprint): update to use
7696         diagram page settings.
7698         * objects/standard/beziergon.c (beziergon_copy): same here.
7700         * objects/standard/polygon.c (polygon_copy): copy the fill colour
7701         as well.
7703         * app/undo.h: 
7704         * app/tool.h (tool_options_dialog_show): 
7705         * app/scroll_tool.h (free_scroll_tool): 
7706         * app/render_svg.h: 
7707         * app/render_libart.h (renderer_libart_copy_to_window): 
7708         * app/render_gdk.h (renderer_gdk_copy_to_window): 
7709         * app/properties.h (properties_hide_if_shown): 
7710         * app/preferences.h (prefs_load): 
7711         * app/object_ops.h: 
7712         * app/modify_tool.h (free_modify_tool): 
7713         * app/magnify.h (free_magnify_tool): 
7714         * app/linewidth_area.h (linewidth_area_create): 
7715         * app/layer_dialog.h: 
7716         * app/handle_ops.h (handle_is_clicked): 
7717         * app/group.h: 
7718         * app/grid.h (grid_destroy_dialog): 
7719         * app/defaults.h (defaults_show): 
7720         * app/cut_n_paste.h (cnp_exist_stored_objects): 
7721         * app/create_object.h (free_create_object_tool): 
7722         * app/connectionpoint_ops.h (diagram_unconnect_selected): 
7723         * app/commands.h: 
7724         * app/color_area.h (color_area_create): 
7725         * app/app_procs.h (app_is_embedded): remove extern keyword from
7726         function prototypes.
7728         * lib/text.h: 
7729         * lib/sheet.h (load_all_sheets): 
7730         * lib/render_store.h: 
7731         * lib/render_object.h (render_object_load): 
7732         * lib/polyshape.h (polyshape_closest_segment): 
7733         * lib/poly_conn.h (polyconn_closest_segment): 
7734         * lib/orth_conn.h: 
7735         * lib/object.h: 
7736         * lib/objchange.h (new_object_state_change): 
7737         * lib/neworth_conn.h (neworthconn_add_segment): 
7738         * lib/message.h (message_error): 
7739         * lib/lazyprops.h: 
7740         * lib/geometry.h: 
7741         * lib/font.h (font_descent): 
7742         * lib/focus.h (remove_focus): 
7743         * lib/element.h: 
7744         * lib/diagramdata.h: 
7745         * lib/dia_xml.h (data_add_composite): 
7746         * lib/dia_image.h: 
7747         * lib/connpoint_line.h: 
7748         * lib/connection.h (connection_move_handle): 
7749         * lib/color.h: 
7750         * lib/attributes.h (attributes_set_default_line_style): 
7751         * lib/arrows.h (arrow_draw): remove extern keyword from function
7752         definitions.  It is not required for functions.
7754         * plug-ins/dxf/Makefile.am (INCLUDES): 
7755         * plug-ins/pstricks/Makefile.am (INCLUDES): 
7756         * plug-ins/cgm/Makefile.am (INCLUDES): 
7757         * objects/SADT/Makefile.am (INCLUDES): 
7758         * objects/chronogram/Makefile.am (INCLUDES): 
7759         * objects/GRAFCET/Makefile.am (INCLUDES): 
7760         * objects/flowchart/Makefile.am (INCLUDES): 
7761         * objects/sybase/Makefile.am (INCLUDES): 
7762         * objects/FS/Makefile.am (INCLUDES): 
7763         * objects/standard/Makefile.am (INCLUDES): 
7764         * objects/network/Makefile.am (INCLUDES):
7765         * objects/UML/Makefile.am (INCLUDES): same here.
7767         * objects/ER/Makefile.am: changed inclusion of some macros to
7768         variables.
7770         * lib/plug-ins.c (dia_register_plugins_in_dir): use a few defines to
7771         handle the plug in extension, rather than have all the #ifdef's in
7772         the code.
7774         * plug-ins/Makefile.am: add renderer.inc to dist.
7776         * plug-ins/dxf/dxf-import.c: Updates from Steffen Macke.
7778 2000-06-11  Asbjorn Pettersen  <asbjornP@dualog.no>
7780         * lib/plug-ins.c: Handle OS/2 dll's too.
7782 2000-06-07  James Henstridge  <james@daa.com.au>
7784         * app/plugin-manager.c (get_plugin_manager): set some table
7785         packing options to make it look a little nicer.
7787         * plug-ins/hpgl/Makefile.am, plug-ins/wpg/Makefile.am: added
7788         makefiles for these plug-ins.
7790         * plug-ins/{hpgl,wmf,wpg}/*: removed dos style cariage returns.
7792         * configure.in: added hpgl and wpg directories to build.  Added
7793         note about whether gnome-print support was enabled, and noted that
7794         it is not recommended.
7796 2000-06-06  James Henstridge  <james@daa.com.au>
7798         * plug-ins/{hpgl,wmf,wpg}/*: Hans Breuer's plug-ins.  They still need
7799         a little work, but I am checking them in so I don't lose them.
7801 2000-06-01  James Henstridge  <james@daa.com.au>
7803         * objects/standard/arc.c: added extra properties.
7805         * lib/beziershape.c (beziershape_closest_handle): fix a bug where I
7806         was using the wrong index into the handles array.  This gets corner
7807         type changing working correctly.
7809         * lib/properties.[ch]: add support for BezPoint's and BezPoint arrays
7810         to properties code (no editing or loading yet though).  Also added
7811         support for point array manipulation through the offsets interfaces.
7813         * lib/Makefile.am (INCLUDES): added include of gdk-pixbuf 
7815         * app/interface.c (origin_button_press): changes so the origin
7816         button doesn't grab the pointer when we pop up the menu.
7818         * app/commands.c (help_about_callback): fix small memory leak in
7819         about box code.
7821         * app/menus.c (menus_init): fixed breakage I introduced in the non
7822         gnome menus when I was doing the menu changes.  The tearoffs work
7823         really nicely in plain gtk mode as well.
7825         * objects/standard/beziergon.c (beziergon_create): changed the
7826         returned handles to match the handle numbering changes.  Now
7827         segment addition and removal works correctly with undo!
7829         * lib/beziershape.c: various changes to the code.  Changed the
7830         numbering of handles, and fixed the segment removal code.
7832 2000-05-31  James Henstridge  <james@daa.com.au>
7834         * objects/standard/beziergon.c: remove connection point handling.
7835         There is still a bit of work to be done to get adding and removing
7836         of segments working correctly.
7838         * lib/beziershape.c: add connection point handling to beziershape.
7839         I set it for two connection points per segment.
7841 2000-05-30  James Henstridge  <james@daa.com.au>
7843         * objects/standard/polygon.c: don't do connectionpoint handling.
7845         * lib/polyshape.c: changed to handle connection points internally.
7846         Also, don't worry about connections to handles on polyshape, as
7847         all handles are non connectable.
7849 2000-05-30 Ville Hautamaki <villeh@cs.joensuu.fi>
7851         * configure.in: Added finnish
7852         
7853 2000-05-30  James Henstridge  <james@daa.com.au>
7855         * sheets/*.sheet: translation updates to the .sheet files.
7857         * po/fr.po: updated po file from Christophe Merlet.
7859         * menus.h: removed prototypes for functions which have been removed.
7861 2000-05-29  James Henstridge  <james@daa.com.au>
7863         * app/layer_dialog.c (layer_dialog_set_diagram): set the selected
7864         item in the option menu when changing selected diagram.
7866         * app/dia_embedd.c (view_factory): fix up function to work with new
7867         menus API.
7869         * app/disp_callbacks.c (ddisplay_realize): remove call to
7870         display_set_active from here.
7871         (ddisplay_canvas_events): move call here.  This gets rid of all the
7872         warnings, as the renderer has been fully set up correctly at this
7873         point.
7875         * app/menus.c (menus_init): add the tearoff item to the start of the
7876         right click menu.
7878         * app/app_procs.c (create_user_dirs): we don't need to create the
7879         menus directory anymore.
7881         * app/disp_callbacks.c (ddisplay_popup_menu): it should not be
7882         necessary to update the menu state here, as it was done when the
7883         active display was set.
7885         * app/display.c (display_set_active): update the menu state when
7886         changing active displays.
7888         * app/interface.c (origin_button_press): set the display as active
7889         when a click is made on the menu button.
7891         * app/menus.c (menus_init): set up a quit function to save the accels
7892         at exit.
7893         Add tearoff items for the non GNOME menus, add accelerators for
7894         several GNOME menus.
7896         * app/disp_callbacks.c (ddisplay_popup_menu): get the menu with
7897         menus_get_image_menu().
7899         * app/menus.c (menus_get_item_from_path): use display_menus here
7900         rather than ddisp->popup.
7902         * app/display.h: remove the popup member in the DDisplay structure.
7904         * app/interface.c: remove option of not using wrap box.
7905         (create_toolbox): change to always use menus_get_toolbox_menubar
7906         even when using gnome menus.
7907         (create_display_shell): use menus_get_image_menu to load accelerators
7908         only -- not the actual popup menu.
7910         * app/menus.c (menus_init): new function to create the menus.
7911         (menus_get_toolbox_menubar): use this function whether gnome is
7912         in use or not.  Changed to use menus_init.
7913         (menus_get_image_menu): same here.  Also, now this function always
7914         returns the same menu, rather than a new one each time.
7915         (menus_init): read a menurc file to load accelerators here.
7917 2000-05-28  James Henstridge  <james@daa.com.au>
7919         * app/display.c (ddisplay_really_destroy): unset active display if
7920         active display is destroyed.
7921         (ddisplay_active): simplify function to return active_display as set
7922         by display_set_active.  This allows using a pinned menu with any
7923         display -- not just the one it was popped up from.
7924         (display_set_active): notify the layer dialog of change of diagrams
7925         when active diagram changes.
7927         * app/disp_callbacks.c (ddisplay_canvas_events): set active display
7928         on button and key presses.
7929         (ddisplay_realize): set active display on realize.
7931         * app/display.c (display_set_active): simple implementation of this
7932         function.
7934         * app/display.h (display_set_active): add prototype for setting
7935         the active display.
7937         * app/interface.c (create_display_shell): don't give focus to the
7938         menu button.
7940         * app/menus.c: fix up menus for Beziergon.
7942         * app/interface.c (create_display_shell): make the widget in the
7943         top left corner a button that can be used to pop up the right click
7944         menu, like in gimp and sketch.
7946         * app/disp_callbacks.c (ddisplay_popup_menu): new function to popup
7947         the display menu.
7949         * objects/standard/beziergon.c (beziergon_set_corner_type_callback):
7950         add code to set corner types for beziergon.
7952         * lib/beziershape.c (beziershape_set_corner_type): fix up corner type
7953         setting code.
7954         (beziershape_move_handle): use the previous corner type for right
7955         controls.
7957         * app/interface.c (tool_data): add beziergon to toolbox.
7959         * objects/standard/standard.c (dia_plugin_init): initialise the new
7960         Beziergon object type.
7962         * objects/standard/beziergon.c: an object based on BezierShape.
7964         * lib/dummy_dep.h (dummy_dep): added to dummy_dep.
7966         * lib/beziershape.[ch]: new files implementing a bezier shape.
7968 2000-05-26  James Henstridge  <james@daa.com.au>
7970         * lib/text.c (text_key_event): handle multibyte inserts.
7971         (text_key_event): also add home and end keybindings.
7973         * app/interface.c (create_display_shell): connect handlers for
7974         focus_in_event, focus_out_event, realize and unrealize signals.
7976         * app/display.[ch] (new_display): initialise input context members.
7978         * app/disp_callbacks.[ch]: added XIM support here.
7980         * lib/font.c (suck_font): the black and white pixel values should be
7981         taken from a 1 bit colormap rather than the default colormap.
7983         Hans Breuer's Windows patches ...
7985         * lib/font.c: use Courier New for fixed width font on windows
7986         machines.
7988         * lib/dia_image.h: change to "struct _DiaImage".
7990         * lib/dia_image.c: change "struct DiaImage" to "struct _DiaImage"
7992         * app/disp_callbacks.c (ddisplay_canvas_events): allow ctrl+right
7993         mouse button for object menu.  This will make two button mouse owners
7994         happier.
7996 2000-05-25  James Henstridge  <james@daa.com.au>
7998         * app/filedlg.c (file_open_ok_callback): use diagram_load here.
8000         * app/app_procs.c (app_init): add extra NULL argument to call of
8001         diagram_load.
8003         * app/load_save.h: remove prototype.
8005         * app/load_save.c: remove diagram_data function here.
8007         * app/diagram.h: added prototype.
8009         * app/diagram.c (diagram_load): new function here, which uses import
8010         filters.
8012         * plug-ins/dxf/dxf.c: register the import filter as well.
8014         * plug-ins/dxf/dxf-import.c: added (unfinished) DXF import filter from
8015         Steffen Macke <macke@heini.fbbwu.fh-lueneburg.de>
8017         * objects/standard/line.c: add start_point and end_point properties
8018         to standard line object.
8020 2000-05-21  James Henstridge  <james@daa.com.au>
8022         * app/paginate_psprint.c: added missing include of locale.h.
8024         * objects/custom/custom_object.c (custom_draw): use fabs rather than
8025         abs for scaling factors.
8026         (custom_distance_from): same here.
8028         * dia.spec: make sure rpm doesn't bomb out when LINGUAS isn't set.
8030 2000-05-18  James Henstridge  <james@daa.com.au>
8032         * po/POTFILES.in: updated POTFILES.in.
8034         * dia.spec: incremented version number in spec file.
8036         * NEWS: added (lots of) news items for the 0.85 release.
8038         * app/preferences.c (prefs_save): set LC_NUMERIC to C while writing
8039         the config file.
8041         * configure.in: updated version number here.
8043         * app/Makefile.am (run_dia.sh): include plug-ins in the lib path.
8045 2000-05-17  James Henstridge  <james@daa.com.au>
8047         * app/app_procs.c (internal_plugin_init): register the native import
8048         filter.
8050         * app/load_save.c (diagram_data_load, diagram_load): split this
8051         function into two -- one that does all the work on the DiagramData
8052         structure, and the other that provides compatibility with the old
8053         function.
8054         (dia_import_filter): use diagram_data_load to define an import
8055         filter.
8057         * app/diagram.h (new_diagram): added const to prototype.
8059         * app/filedlg.c (file_open_callback): change to use new import filter
8060         code.
8062         * lib/filter.c: added import filter management functions.
8064         * lib/filter.h: added prototypes for import filter interface.
8066         * app/commands.c (help_about_callback): updated about dialog to
8067         contain a few more names.
8069 2000-05-16  James Henstridge  <james@daa.com.au>
8071         * configure.in (Configuration): added a status message to the end of
8072         the configure script to give the user some idea of what was
8073         configured.
8075         * plug-ins/dxf/Makefile.am: Makefile for new plugin.
8077         * plug-ins/dxf/dxf.c (dia_plugin_init): added file to initialise the
8078         plugin.
8080         * plug-ins/dxf/dxf-export.c: new file -- Steffen Macke's DXF export
8081         filter for dia.
8083         * configure.in (AM_PATH_LIBART): use the check function provided
8084         with libart rather than our own code.  It is more reliable, and
8085         it only requires that people who build out of CVS have libart.m4
8086         installed (not necessarily all of libart).
8087         (AM_PATH_GDK_PIXBUF): same here for gdk-pixbuf.
8089 2000-05-12  Andreas Hyden  <a.hyden@cyberpoint.se>
8091         * dia.desktop: Added Swedish translation.
8093 2000-05-09  James Henstridge  <james@daa.com.au>
8095         * lib/dia_xml.c: you can't free a const pointer, so remove const
8096         from variable definitions.
8098         Explicitely set LC_NUMERIC where needed, as sometimes it isn't
8099         initialised correctly.
8101         * app/render_svg.c (export_svg): set locale to C.
8103         * app/paginate_psprint.c (paginate_psprint): set locale to C.
8105         * app/render_eps.c (export_eps): set locale to C for EPS export.
8107         * lib/dia_xml.c (data_add_real): change to C locale for snprintf call.
8108         (data_add_point): same here.
8109         (data_add_rectangle): same here.
8110         (data_real): use g_strtod to convert strings to real numbers, so that
8111         locales are taken into account.
8112         (data_point): same here.
8113         (data_rectangle): same here.
8115         * AUTHORS: added Henk and Jacek to authors file.
8117         Daniel Egger's code cleanups.
8119         * app/select.c (select_invert_callback): remove unused variable.
8121         * app/plugin-manager.c (get_plugin_manager): fix typo.
8123         * app/load_save.c (read_connections, write_objects): 
8124         (write_connections): made some functions static.
8126         * app/interface.c (toolbox_delete, toolbox_destroy): made some
8127         functions static.
8129         * app/filedlg.c (file_export_callback): remove unused variable.
8131         * app/app_procs.c: various warning fixes.
8133         Integrating Jacek Pliszka's pstricks export filter.
8135         * plug-ins/pstricks/pstricks.c: code to initialise the plugin.
8137         * plug-ins/pstricks/render_pstricks.[ch]: Jacek Pliszka's pstricks
8138         renderer (with a few small modifications by me).
8140         * plug-ins/pstricks/Makefile.am: new makefile for pstricks plug-in.
8142         * plug-ins/Makefile.am (SUBDIRS): add pstricks subdirectory.
8144 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
8146         * configure.in:
8147         * sheets/Makefile.am:
8148         * shapes/Makefile.am:
8149         * shapes/Civil/Makefile.am:
8150         * sheets/civil.sheet:
8151         * shapes/Civil/*:
8152         Added civil/hydraulic/structural engineering objects from
8153         sdteffen <macke@heini.fbbwu.fh-lueneburg.de>.
8154         
8155 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
8157         * objects/FS/flow-poly.c:
8158         * objects/FS/flow.c:
8159         Fix division by zero in point_normalize().
8160         Patch by David Thompson <dcthomp@mail.utexas.edu>
8162 2000-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
8164         * lib/arrows.c:
8165         * lib/bezier_conn.c:
8166         * lib/connpoint_line.c:
8167         Added checks for zero-length lines before calls to point_normalize.
8169 2000-04-24  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8171         * app/preferences.c (prefs_data): Changed
8172         reversed_dragging_intersects to not make the dialog ridiculously
8173         wide.
8174         
8175 2000-04-22  James Henstridge  <james@daa.com.au>
8177         Hans's win32 patches:
8179         * app/export_png.c: include message.h
8180         * app/interface.c: include dia_dirs.h
8181         * app/linewidth_area.c: check for rint
8182         * app/main.c: include interface.h
8183         * app/paginate_psprint.c: remove unused variable.
8184         * app/preferences.c: include message.h
8185         * app/render_svg.c: include stdlib.h
8186         * app/select.c: include object_ops.h
8187         * lib/dia_dirs.c: miscelaneous fixes for win32.
8188         * lib/dia_image.c: include string.h
8189         * lib/plug-ins.c: look for .dll files rather than .la files on win32.
8190         * lib/properties.c: include stdlib.h
8191         * lib/properties.h: define extra data for standard properties as
8192         static variables on win32 (to get around dynamic linker problems).
8193         * objects/standard/polygon.c: polygon_create_change missing return
8194         statement.
8196 2000-04-18  Pablo Saratxaga <pablo@mandrakesoft.com>
8198         * configure.in (ALL_LINGUAS): added Catalan
8200 2000-04-18  James Henstridge  <james@daa.com.au>
8202         * objects/standard/bezier.c (bezierline_get_object_menu): add a
8203         separator to the object menu between the add/remove segment items
8204         and the corner type items.
8205         (bezierline_get_object_menu): add code to disable the menu item for
8206         the current corner type.  Really just a cosmetic change.
8208         * app/disp_callbacks.c (create_object_menu): handle DiaMenuItems with
8209         a NULL for the label or with no associated callback.
8211         * objects/standard/bezier.c (bezierline_menu_items): use the
8212         enumeration values rather than numeric values for the corner types.
8214         * lib/bezier_conn.[ch]: added a corner_types member to the BezierConn
8215         structure, and add code to handle it.  Also, don't save the corner
8216         types inline in the bez_points node.  The way it is conditionally
8217         including the element just feels like it will break.
8219         * lib/geometry.h (BezPoint): removed the corner_type stuff from
8220         BezPoint.  The corner type stuff is a user interface level idea rather
8221         than something required by the renderer, so should be taken care of
8222         at the object level.
8224 2000-04-17  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8226         * configure.in: Fixed some problems with the gdk-pixbuf/imlib
8227         checks.  Weren't able to reproduce original bug, tough.
8229 2000-04-16  Cyrille Chepelov  <chepelov@calixo.net>
8231         * sheets/Electric.sheet:
8232         * sheets/Contact.sheet:
8233         * sheets/Pneumatic.sheet:
8234         * sheets/Circuit.sheet: sprayed some <br/>'s around.
8235         (added a few French translations in the last file)
8236         
8237 2000-04-16  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8239         * lib/geometry.h: 
8240         * lib/bezier_conn.h: 
8241         * objects/standard/bezier.c: 
8242         * lib/bezier_conn.c: Support for cuspy, smooth and symmetric
8243         bezier points.  Only one minor problem known:  Menus are active
8244         for endpoints minor handles.
8245         11:28: Save and load now works, too.
8246         (bezierconn_closest_major_handle): 12:03: New function to get the
8247         non-control point handle associated with the nearest control
8248         point.  
8249         Also fixed the menu activation problem, and made remove_segment
8250         not remove the endpoint.
8252 2000-04-15  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8254         * configure.in: Added check for gdk-pixbuf being >= 0.7.0 since
8255         new API is in use.
8257 2000-04-15  Asbjorn Pettersen  <asbjornP@dualog.no>
8259         * lib/plug-ins.c: Added <sys/types.h> and moved <fcntl.h> below
8260         <sys/stat.h>.   OS/2 patch.
8262 2000-04-15  James Henstridge  <james@daa.com.au>
8264         * objects/FS/flow-ortho.c, objects/FS/function.c: Applied David
8265         Thompson's patch that adds undo support to the function structure
8266         diagram objects.
8268 2000-04-14  James Henstridge  <james@daa.com.au>
8270         * objects/custom/custom_object.c (custom_distance_from): new
8271         implementation of distance algorithm that actually takes the
8272         display list into account when calculating the distance.  Much nicer
8273         than a simple bounding box.
8275 2000-04-13  Lars Clausen  <lrclause@cs.uiuc.edu>>
8277         * lib/geometry.c (line_crosses_ray): Fixed division by zero bug
8279 2000-04-12  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8281         * objects/standard/polygon.c: Start of polygons own changes (for
8282         connectionpoints).  Need to do seperate changes in polyshape, too,
8283         rather than reuse the bezier changes.
8285 2000-04-13  James Henstridge  <james@daa.com.au>
8287         * lib/dia_image.c (dia_image_draw): use the new enumeration values
8288         from after the gdk-pixbuf cleanup.
8290         * lib/geometry.c (bez_point_distance_and_ray_crosses): fix up limit
8291         on for loop.  Last set of coefficients were not beeing calculated,
8292         which caused a bit of breakage.
8294         * lib/bezier_conn.c (bezierconn_closest_segment): use the new
8295         functions in geometry.c for calculating the closest segment.
8296         (bezierconn_distance_from): use distance_bez_line_point to calculate
8297         the distance.
8299         * lib/geometry.c (distance_bez_line_point): new function to calculate
8300         the distance from an open bezier line to a point.
8301         (distance_bez_shape_point): new function to calculate the distance
8302         from a closed bezier shape.
8303         (distance_ellipse_point): new function to calculate the distance from
8304         a filled ellipse to a point.
8306         * lib/geometry.h (BezPoint): moved this structure here from render.h
8308 2000-04-12  James Henstridge  <james@daa.com.au>
8310         * lib/geometry.c (distance_bez_seg_point): new function to calculate
8311         the distance from a bezier segment.
8313         * lib/polyshape.c (polyshape_distance_from): use distance_polygon_point
8314         to calculate the distance from the object.
8316         * lib/geometry.c (distance_polygon_point): function for calculating
8317         the distance from a polygon to a point.
8319 2000-04-12  Cyrille Chepelov  <chepelov@calixo.net>
8321         * app/interface.c:
8322         * lib/sheet.[ch]: added a <br/> tag in sheet files, so that line 
8323         breaks can be inserted in the tool box. 
8325         * doc/sheet.dtd: updated the DTD
8326         * sheets/GRAFCET.sheet: tried <br/> on that sheet (more to come).
8327         
8328 2000-04-12  James Henstridge  <james@daa.com.au>
8330         * app/plugin-manager.c (get_plugin_manager): use the GTK_DIALOG
8331         macro if the dialog is a GtkDialog :(
8333 2000-04-11  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8335         * objects/standard/polygon.c: Connectionpoints now properly
8336         managed in a GList.  As far as I can tell, this will not dieturb
8337         the order (but I have the nagging doubt...)
8339         * lib/polyshape.c: No longer knows about connectionpoints.
8341 2000-04-11  James Henstridge  <james@daa.com.au>
8343         * app/Makefile.am: fix makefile for bonobo build.
8345         * configure.in: fix checks for bonobo.
8347         * app/menus.c: added entries for the plugin manager.
8349         * app/Makefile.am (dia_core_files): added plugin manager to files
8350         list.
8352         * app/plugin-manager.[ch]: the plugin manager dialog.
8354         * app/display.c (display_update_menu_state): set the antialiased
8355         menu entry to the correct value.
8357 2000-04-11  Cyrille Chepelov  <chepelov@calixo.net>
8359         * objects/custom/custom_object.c: not all renderers like ellipses with
8360         negative dimensions. This could cause ellipses to disappear when using
8361         the flip_h and flip_v functions.
8363         * samples/grafcet.dia: fixed speling and correctness.
8364         
8365 2000-04-11  James Henstridge  <james@daa.com.au>
8367         * lib/plug-ins.[ch]: added more accessors for use by a plugins dialog.
8368         exposed the dia_plugin_load and dia_plugin_unload functions.
8370         * lib/plug-ins.c (plugin_load): change plugin_load to work on an
8371         already created PluginInfo structure.
8373         * app/app_procs.c (app_exit): call dia_pluginrc_write() to write
8374         the pluginrc file.
8376         * lib/sheet.c: fix up call to dia_config_filename.
8378         * lib/plug-ins.[ch]: started writing code for handling a pluginrc
8379         file.  This would save information such as which plugins not to
8380         load during startup.
8382 2000-04-09  James Henstridge  <james@daa.com.au>
8384         * lib/sheet.c: use dia_config_filename to resolve file in ~/.dia.
8386 2000-04-10  Alexander Larsson  <alla@lysator.liu.se>
8388         * lib/plug-ins.c (dia_register_plugins):
8389         Don't free the value returned from g_getenv.
8391 2000-04-09  Anders Carlsson  <andersca@gnu.org>
8393         * app/preferences.h: Add reverse_rubberbanding_intersects preference variable.
8395         * app/preferences.c (prefs_data): Add reverse_rubberbanding_intersects preference data.
8397         * app/modify_tool.c (modify_button_release): If rubberbanding is done from 
8398         right to left, select objects that intersect the rubberbanding rectangle
8399         instead of selecting objects that are in the rectangle.
8401         * lib/diagramdata.c (layer_find_objects_intersecting_rectangle): Add function.
8403         * lib/diagramdata.h: Likewise.
8406 2000-04-09  James Henstridge  <james@daa.com.au>
8408         * lib/plug-ins.[ch]: add copyright messages to files.
8410         * plug-ins/cgm/cgm.c (dia_plugin_init): convert plugin over to new
8411         plugin interface.
8413         * objects/sybase/sybase.c (dia_plugin_init): 
8414         * objects/network/network.c (dia_plugin_init): 
8415         * objects/flowchart/flowchart.c (dia_plugin_init): 
8416         * objects/custom/custom.c (dia_plugin_init): 
8417         * objects/chronogram/chronogram.c (dia_plugin_init): 
8418         * objects/UML/uml.c (dia_plugin_init): 
8419         * objects/SADT/sadt.c (dia_plugin_init): 
8420         * objects/GRAFCET/grafcet.c (dia_plugin_init): 
8421         * objects/FS/fs.c (dia_plugin_init): 
8422         * objects/ER/er.c (dia_plugin_init): updated plugin load code for
8423         object libraries.
8425         * objects/standard/standard.c (dia_plugin_init): change over to new
8426         plugin interface.
8428         * lib/plug-ins.h (DIA_PLUGIN_CHECK_INIT): added a macro to define
8429         the version checker for plugins.
8431         * app/app_procs.c: remove plugin loading code from here, and use
8432         code from plug-ins.[ch].  Also move registration of internal
8433         objects/filters to a `builtin' plugin.
8435         * lib/Makefile.am (libdia_a_SOURCES): added plug-ins.[ch] to library.
8437         * configure.in: use AC_PROG_LIBTOOL rather than AM_PROG_LIBTOOL.
8439         * app/Makefile.am (EXTRA_DIST): you can't include a conditionally
8440         defined variable in EXTRA_DIST.
8442         * app/preferences.h: removed dia_config_filename from header.
8444         * app/preferences.c: removed dia_config_filename function.
8446         * lib/dia_dirs.c (dia_config_filename): moved function over to this
8447         file.  Also changed implementation slightly so that it should work
8448         on the win32 port correctly (and use NT home directories).
8450         * lib/dia_dirs.h (dia_config_filename): move dia_config_filename where
8451         it should have been.
8453         * lib/plug-ins.[ch]: new plugin loading code.
8455 2000-04-08  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8457         * objects/standard/polygon.c: Fixed startup crash bug (do'h!).
8459         * lib/polyshape.c: Fix closest segment finding, exposes deeper
8460         bugs in adding corners to 'wraparound' segment.
8462         * objects/standard/polygon.c: Added connection points (fixed so
8463         far), set menu sensitivity.
8465         * lib/polyshape.c: Changed to box-style handles, fixed for start
8466         and ends not being special, added initial connections,
8468         * lib/dummy_dep.h: Added polyshape (gotcha!)
8470         * objects/standard/pixmaps/ellipse.xpm: 
8471         * objects/standard/pixmaps/box.xpm: 
8472         Filled element pixmaps with white.
8474         * lib/polyshape.c: 
8475         * objects/standard/polygon.c: 
8476         * lib/polyshape.h: 
8477         * objects/standard/standard.c: 
8478         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
8479         * lib/Makefile.am (libdia_a_SOURCES): 
8480         * app/menus.c: 
8481         * app/interface.c (tool_data): 
8482         Added Standard/Polygon object and PolyShape lib object.  Still
8483         needs inside grab and connection points.
8485         * app/commands.c (help_about_callback): Now uses gdk-pixbuf if
8486         available. 
8488         * configure.in: Made imlib a fallback if gdk-pixbuf is absent or
8489         not wanted.
8491         * app/app_procs.c (app_init): Moved gtk_init outside #ifdef, moved
8492         if (argv) outside ifdefs.
8494 2000-04-04  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8496         * objects/standard/image.c (image_set_props): 
8497         Aspect ratio is back in town.
8499         * app/Makefile.am (dia_LDADD): 
8500         * acconfig.h: 
8501         * configure.in: 
8502         Check for gdk_pixbuf (by default disabled, for now)
8504         * app/render_eps.c (draw_image): 
8505         * app/render_libart.c (draw_image): 
8506         * app/render_gnomeprint.c (draw_image): 
8507         Support for alpha mask in rendering.  Color postscript, too.
8509         * lib/dia_image.c: 
8510         * lib/dia_image.h: 
8511         Support for gdk_pixbuf and proper masking for exports.
8513 2000-04-01  Kjartan Maraas  <kmaraas@online.no>
8515         * sheets/*.sheets: Updated Norwegian translations.
8516         
8517 2000-03-30  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
8519         * lib/text.c (text_insert_char): 
8520         * lib/render_store.c (add_data): 
8521         Made realloc double the alloced space rather than add
8522         a fixed amount, to reduce memory stress.
8524         * app/select.c: Added new select method 'Transitive'
8525         that select every reachable (by connections) object.
8527 2000-03-27  Kjartan Maraas  <kmaraas@online.no>
8529         * dia.desktop: Added Norwegian translation.
8530         
8531 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
8533         * app/render_eps.c:
8534         * app/render_svg.c:
8535         Don't dereference NULL pointer if the renderer
8536         couldn't open the file. Fix by Lars Clausen.
8537         Bug reported by Martin Chisholm <b1mt@unb.ca>
8538         
8539 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
8541         * dia.desktop:
8542         * po/pt.po:
8543         Updated pt translation from Pedro Morais <pmmm@rnl.ist.utl.pt>
8545 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
8547         * app/dia.gnorba (location_info):
8548         Changed to correct executable name.
8550 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
8552         * app/app_procs.c:
8553         Don't do any argument parsing or initialization
8554         if argv==NULL.
8556         * app/dia_embedd.c:
8557         Call init_server_factroy before app_init.
8558         Call app_init with argv==NULL
8559         Now we don't get any critical error on startup.
8561         * configure.in:
8562         Add Electric and Pneumatic to makefile list.
8563         
8564 2000-03-24  Cyrille Chepelov <chepelov@calixo.net>
8566         * shapes/Electric/*:
8567         * sheets/Electric.sheet:
8568         Add some Electric circuit shapes.
8570         * shapes/Pneumatic/*:
8571         * sheets/Pneumatic.sheet:
8572         Add some Pneumatic & Hydraulic circuit shapes
8573         (both sheets are still incomplete, though feature enough 
8574         things for basic circuits).
8576         * shapes/Contact/l_*.(xpm|shape):
8577         * sheets/Contact.sheet
8578         * shapes/Contact/Makefile.am
8579         made the older electric circuit shapes in Contact obsolete (disabled
8580         them in the sheet, made that sheet Ladder only). Fixed the makefile
8581         for forgotten items.
8582         
8583 2000-03-24  Alexander Larsson  <alla@lysator.liu.se>
8585         * app/Makefile.am:
8586         Add support for Dia bonobo component.
8587         Currently a bit raw, so it's commented out.
8588         
8589         * app/dia_embedd.c:
8590         * app/dia.gnorba:
8591         New files for embedding dia.
8592         The menu disabling hack is a bit gross. Esp. for GNOME.
8594         * app/app_procs.h:
8595         Add new function app_is_embedded();
8597         * app/diagram.c:
8598         Don't destroy diagram when last display is destroyed if embedded.
8599         
8600         * app/display.c:
8601         Change initialization of display so it works with embedding.
8603         * app/display.h:
8604         Clarify comment about display destruction.
8606         * app/interface.[ch]:
8607         Added top_level_window argument to create_display_shell.
8608         Don't open a top-level window if embedding.
8609         Don't quit app if trying to close toolbox window when embedding.
8610         Add toolbox_show() and toolbox_hide().
8612         * app/main.c:
8613         Added app_is_embedded() function (just returns false).
8614         Added toolbox_show() call in main().
8616         * app/menus.c:
8617         Added code for getting toolbox menus. This is used to
8618         hide some menu items when running embedded.
8619         
8620         * app/app_procs.c:
8621         Include sheet.h to remove warning.
8623         * objects/UML/association.c:
8624         Clarify association direction text.
8625         
8626 2000-03-16  Fredrik Hallenberg  <hallon@lysator.liu.se>
8628         * dia.1
8629         Fixed man page so whatis parsing works.
8631 2000-03-12  Alexander Larsson  <alla@lysator.liu.se>
8633         * app/render_libart.c (new_libart_renderer):
8634         Fix from segg <segg@infonet.ca> to compile without libart.
8635         I forgot to change the stub for new_libart_renderer when doing
8636         the interactive renderer stuff for libart.
8638 2000-03-11  Alastair McKinstry  <mckinstry@computer.org>
8640         * dia.desktop: Added Irish translation.
8641         
8642         * configure.in (ALL_LINGUAS): Added Irish (ga) translation.
8644 2000-03-07  Asbjorn Pettersen  <asbjornP@dualog.no>
8646         * app/load_save.c (fchmod): OS/2 defines only.
8648 2000-03-07  James Henstridge  <james@daa.com.au>
8650         * lib/properties.c (prop_get_widget): set the position in the option
8651         menu correctly.
8653 2000-03-06  Alexander Larsson  <alla@lysator.liu.se>
8655         * app/display.c:
8656         * app/export_png.c:
8657         * app/render_libart.[ch]:
8658         Don't export png:s with an interactive libart renderer.
8660 2000-03-03  Asbjorn Pettersen  <asbjornP@dualog.no>
8662         * lib/arrows.c (finite): define finite(d) isfinite(d)  for OS/2
8664 2000-03-02  James Henstridge  <james@daa.com.au>
8666         * dia.spec (%build): unset LINGUAS before running configure.  This
8667         ensures that all translations get included in the RPM.
8669         * lib/properties.c (object_create_props_dialog): put in a check for
8670         a NULL return from the describe_props() object method.
8671         (prop_desc_lists_union): make sure that the returned array is not
8672         NULL.
8673         (prop_desc_lists_intersection): same here.
8675 2000-02-29  Alexander Larsson  <alla@lysator.liu.se>
8677         * objects/ER/Makefile.am:
8678         * objects/FS/Makefile.am:
8679         * objects/UML/Makefile.am:
8680         Don't link object libs with gtk.
8682 2000-02-29  James Henstridge  <james@daa.com.au>
8684         * app/preferences.c (prefs_save): check to see if the file could
8685         be opened before writing the prefs.
8687         * app/disp_callbacks.c (popup_object_menu): pass the button event
8688         to gtk_menu_popup.  This allows you to click and release to open
8689         the object menu.
8690         (ddisplay_canvas_events): same here.
8691         (create_object_menu): set the object type menu item in the object
8692         menu to be insensitive.
8694         * app/render_svg.c (draw_string): call xmlEncodeEntitiesReentrant,
8695         as we are now requiring a new version of libxml.
8697         * dia.spec: updated version number.  Added requirement for
8698         libxml >= 1.8.5
8700         * configure.in: incremented version number to 0.84.
8701         Added check for libxml >= 1.8.5.  This will prevent some of the
8702         problems people have had with broken libxml versions.
8704         * NEWS: added news items.
8706         * app/interface.c (create_color_area): removed call to realize parent
8707         widget.  Segg <segg@infonet.ca> reported that it caused a warning,
8708         but I haven't seen it on my copy of dia.
8710 2000-02-28  James Henstridge  <james@daa.com.au>
8712         * app/export_png.c: added copyright notice, and made the band height
8713         a constant.
8715 2000-02-27  Alexander Larsson  <alla@lysator.liu.se>
8717         * lib/font.c (suck_font):
8718         Fixed off-by one bug in font pixmap height.
8719         Fixes the problem with garbage at the bottom of some text in aa mode
8720         and in png exported files.
8722 2000-02-27  James Henstridge  <james@daa.com.au>
8724         * app/app_procs.c: add the png export filter if it was compiled in.
8726         * app/export_png.c (export_png): new PNG export filter.  This requires
8727         the libart renderer to work as it needs a renderer that renders to a
8728         pixel buffer.
8730         * configure.in: add check for libpng.
8732         * lib/message.c (message_internal): use a GNOME dialog here as well.
8734         * app/display.c (ddisplay_close): use a GNOME dialog here.
8736         * app/render_eps.c (create_eps_renderer): use diagram scaling factor
8737         when exporting to EPS.  This is because some people said the EPS
8738         output was too large
8740 2000-02-26  James Henstridge  <james@daa.com.au>
8742         * app/defaults.c (create_dialog): use a GNOME dialog for the defaults
8743         window.
8745         * app/app_procs.c (app_exit): use a GNOME dialog here.
8747         * app/preferences.c (prefs_create_dialog): if GNOME support is
8748         enabled, show a GNOME dialog.
8750         * app/grid.c (grid_draw): use preferences when drawing page break
8751         lines.
8753         * app/preferences.c: add page break preferences to dialog.
8755         * app/preferences.h: added page break preferences.
8757 2000-02-25  James Henstridge  <james@daa.com.au>
8759         * sheets/UML.sheet: added new objects.
8761         * objects/UML/uml.c: link in the two new objects.
8763         * objects/UML/node.c: 
8764         * objects/UML/branch.c: new UML objects from Stfan Seefeld
8765         <seefelds@magellan.umontreal.ca>.
8767 2000-02-24  James Henstridge  <james@daa.com.au>
8769         * objects/custom/custom_object.c: converted to use the properties
8770         interface.  In the future, it would be nice to add support for
8771         defining custom properties for custom objects, but that can wait.
8773 2000-02-22  James Henstridge  <james@daa.com.au>
8775         * sheets/Circuit.sheet: added new circuit shapes to sheet.
8777         * plug-ins/cgm/cgm.c: cgm plugin updates from Henk Jan Priester
8778         <hj@justcroft.com>.  Fixes number encoding, colour encoding, fonts
8779         and adds a few new features.
8781 2000-02-21  Daniel Egger  <egger@suse.de>
8783         * sheets/*.sheets: Added German translations and made some
8784         corrections to the others.
8785         
8786 2000-02-21  James Henstridge  <james@daa.com.au>
8788         * shapes/Circuit/Makefile.am (SHAPES): added new shapes to list.
8790         * shapes/Circuit/...: added new shapes from Erik Janssens.
8792 2000-02-20  James Henstridge  <james@daa.com.au>
8794         * app/interface.c (create_color_area): realize the parent window
8795         first.
8797         * objects/standard/image.c: properties patch for standard image
8798         object, from Lars Clausen.
8800         * lib/properties.c: support for PROP_TYPE_FILE from Lars Clausen.
8802         * lib/properties.h (PropType): added file property type.
8804         * shapes/Circuit/speaker_de.xpm: changed size of pixmap to match
8805         other shapes.
8807         * app/interface.c: use wrap box for toolbox.
8809         * app/Makefile.am: added new files.
8811         * app/gtk*wrapbox.[ch]: added wrap box widget.
8813 2000-02-19  James Henstridge  <james@daa.com.au>
8815         * sheets/network.sheet: added extra shapes to networks sheet.
8817         * configure.in (AC_OUTPUT): added shapes/network/Makefile
8819         * shapes/network/*: added shapes that were posted to the list a while
8820         back.
8821         
8822         * shapes/Makefile.am (SUBDIRS): added network subdirectory
8824         * app/menus.c (toolbox_menu_items): don't right justify help menu for
8825         gtk+ version of menus.
8827         * app/properties.c (create_dialog): use a GnomeDialog if we happen
8828         to be using gnome.
8830 2000-02-18  James Henstridge  <james@daa.com.au>
8832         * objects/flowchart/box.c: set extra data for corner radius and text
8833         padding properties.
8835         * objects/standard/box.c: set extra data for corner radius property.
8837         * lib/properties.h: set extra data in some standard properties.
8839         * lib/properties.c (prop_get_widget): look at the extra data for
8840         int, real and enum property types.  They now use GtkSpinButton and
8841         GtkOptionMenu respectively.
8843         * lib/properties.h: extra data members for creating property setting
8844         widgets.
8846 2000-02-17  James Henstridge  <james@daa.com.au>
8848         * objects/flowchart/box.c: reverted load/save functions back to
8849         previous implementations.  Made box use standard property names.
8851         * plug-ins/cgm/cgm.c (set_linestyle): was missing a */
8853         * app/grid.c: add more digits to the grid edit dialog.  This patch
8854         was also from Lars Clausen.
8856         * objects/standard/zigzagline.c: 
8857         * objects/standard/textobj.c:
8858         * objects/standard/polyline.c:
8859         * objects/standard/line.c:
8860         * objects/standard/ellipse.c:
8861         * objects/standard/box.c: 
8862         * objects/standard/bezier.c: 
8863         * objects/standard/arc.c: patches to add properties code to standard
8864         objects.  Based on patches from Lars Clausen.  I have also removed
8865         some dead code from the files.
8867         * lib/properties.h (PROP_STD_*): define a number of standard
8868         properties.  Where appropriate, objects should include these
8869         properties in their PropDescription list.  This way, the intersection
8870         of properties of two different shapes will be greater.
8872 2000-02-14  James Henstridge  <james@daa.com.au>
8874         * objects/flowchart/box.c (box_load, box_save): use property save
8875         routines.  Make sure that any props not handled by object_load_props
8876         are loaded before calling object_load_props, or we get errors because
8877         update_data is called.
8879         * lib/properties.c (object_get_props_from_offsets): fixed an indexing
8880         error that could cause properties to be loaded incorrectly.
8881         (object_set_props_from_offsets): similar here.
8883         * lib/properties.[ch] (prop_{load,save}): functions for loading
8884         or saving a property in Dia's XML file format.
8885         (object_{load,save}_props): load or save some properties of an
8886         object.  These functions should help simplify the load/save methods
8887         of objects that implement the properties interface.
8889 2000-02-13  James Henstridge  <james@daa.com.au>
8891         * objects/flowchart/box.c: use offset code to simplify property
8892         get/set routines.
8894         * lib/element.h (ELEMENT_COMMON_PROPERTIES): standard element
8895         properties.
8896         (ELEMENT_COMMON_PROPERTIES_OFFSETS): offsets.
8898         * lib/object.h (OBJECT_COMMON_PROPERTIES): list of standard object
8899         properties.
8900         (OBJECT_COMMON_PROPERTIES_OFFSETS): the offsets of the properties.
8902         * lib/properties.[ch] (object_{get,set}_props_from_offsets): new
8903         functions 
8905 2000-02-12  Alexander Larsson  <alla@lysator.liu.se>
8907         * app/Makefile.am:
8908         Add the custom object to DIA_LIB_PATH in run_dia.sh
8910 2000-02-10  Cyrille Chepelov  <chepelov@calixo.net>
8912         * sheets/Circuit.sheet:
8913         * shapes/l_sout* (NEW):
8914         * shapes/l_outj.* (NEW): added new outputs : jump, and the power-saved
8915         variants of simple, inverted, set and reset outputs.
8916         Still to do: all Schneider/Telemecanique TSX *7 function blocks ; 
8917         probably a split of Contact and Ladder sheets. And then a major 
8918         revamping of the Contact sheet.
8920 2000-02-10  James Henstridge  <james@daa.com.au>
8922         * app/Makefile.am (dia_LDADD): don't link with libcustom_objects.
8924         * app/app_procs.c (register_all_objects): don't explicitely
8925         register the custom objects library -- let it be loaded by the
8926         normal plugin loading methods.
8928         * lib/Makefile.am (libdia_a_SOURCES): don't include custom.h here.
8930         * objects/custom/Makefile.am: build libcustom_objects as a shared
8931         library again.
8933         * objects/custom/shape_info.[ch]: don't read the description field
8934         of custom shapes.  It makes more sense to have these in the sheet
8935         file to localise the parts of dia that translators have to deal
8936         with.
8938         * objects/custom/custom_object.c (custom_object_new): do not
8939         create the sheet object for the new custom shape -- this is
8940         handled by the custom sheet code.
8942         * objects/custom/custom.c: change over to being a normal plug-in
8943         rather than being linked with the main dia executable.
8945 2000-02-09  James Henstridge  <james@daa.com.au>
8947         * sheets/Circuit.sheet: 
8948         * sheets/Flowchart.sheet: 
8949         * sheets/Contact.sheet: fixed up sheets.
8951         * objects/custom/custom_object.c (custom_object_new): set the
8952         extra ObjectType fields.
8954         * lib/sheet.c: use extra ObjectType fields when creating sheet
8955         objects.  Give a warning if <shape> tags are found in a sheet
8956         file.  Now the custom sheet code does not know about custom
8957         shapes -- they look like any other object type.
8959         * lib/object.h (ObjectType): added extra members
8961 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
8963         * app/linewidth_area.c:
8964         Added code to set arbitrary line width.
8965         Patch by Lars Clausen <lrclause@cs.uiuc.edu>
8967 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
8969         * app/linewidth_area.c: 
8970         * lib/font.[ch]:
8971         Add support for font-sucking.
8972         Implementation borrowed from gnome-canvas.
8973         
8974         * app/render_libart.[ch]:
8975         Implement text rendering.
8977 2000-02-07  Alexander Larsson  <alla@lysator.liu.se>
8979         * app/properties.c (create_dialog):
8980         ref and sink no_properties_dialog.
8982 2000-02-07  James Henstridge  <james@daa.com.au>
8984         * app/group.c (group_describe_props): new function.  Return the
8985         intersection of the properties of the contained objects that
8986         implement the describe_props interface.
8987         (group_get_props): implement by iterating through contained objects
8988         and calling their get_props method until all properties have been
8989         set.  Maybe this should go through all objects all the time??
8990         (group_set_props): implement by calling set_props method on all
8991         contained objects.
8992         (group_ops): use standard props dialog creation routines.
8994         * lib/properties.c (prop_desc_lists_intersection): fix implementation
8995         of intersection -- I was using i++ instead of i-- in a for loop :(
8997         * objects/custom/custom.c (custom_register_objects): fix usage
8998         of dia_get_data_directory again.
9000         * lib/sheet.c: fix up use of dia_get_data_directory, so that we
9001         actually read the sheets.
9003 2000-02-06  Alexander Larsson  <alla@lysator.liu.se>
9005         Win32 port by Hans Breuer <Hans@Breuer.org>
9007         * app/Makefile.am:
9008         Remove DATADIR and LIBDIR defines.
9010         * lib/Makefile.am:
9011         Add dia_dirs.c and dia_dirs.h
9012         Added DATADIR and LIBDIR defines.
9014         * lib/dia_dirs.[ch]:
9015         New files for handling special directories.
9017         * app/app_procs.c:
9018         * app/commands.c:
9019         * lib/sheet.c:
9020         * objects/custom/custom.c:
9021         Fix warnings.  Use directory functions.
9023         * app/diagram.h:
9024         Add prototype for diagram_redraw_all.
9026         * app/diaunitspinner.c:
9027         * app/filedlg.c:
9028         * app/interface.c:
9029         * app/preferences.c:
9030         Fix warning.
9032         * app/load_save.c:
9033         Win32 doesn't have mkstemp and fchmod.
9035         * app/paginate_psprint.c:
9036         Win32 calls popen _popen and pclose _pclose.
9037         
9038         * app/arrow.c:
9039         Win32 calls finite _finite.
9041         * lib/color.h:
9042         Win32 needs to dllexport the color vars.
9044         * objects/GRAFCET/step.c:
9045         * objects/chronogram/chronoref.c:
9046         snprintf -> g_snprintf
9048 2000-02-05  James Henstridge  <james@daa.com.au>
9050         * lib/properties.c: more fixes so that it doesn't crash when using
9051         properties.  The undo/redo stuff also works!!
9053         * objects/flowchart/box.c (box_{describe, get, set}_props): test
9054         object where I have implemented the new properties interface
9055         complete with automatic properties dialog generation.
9057         * lib/properties.c (object_apply_props): fixed stupid error when
9058         creating the old_props array.  Also, it no longer frees the props
9059         array -- you will have to do that yourself.
9061 2000-02-04  James Henstridge  <james@daa.com.au>
9063         * app/properties.c (properties_apply): pass object_part to
9064         apply_properties.
9066         * lib/object.h (ApplyPropertiesFunc): added widget argument.
9068         * lib/lazyprops.h (PROPDLG_CREATE): ref and sink properties dialogs
9069         created this way as well.
9071         * objects/*/*.c: ref and sink the properties dialog window for each
9072         widget.  It can't rely on ref count being incremented by
9073         properties_show anymore.
9075         * app/properties.c (properties_show): don't ref the widget before
9076         removing it, or its ref count will increase each time you open the
9077         properties dialog.  Don't unparent the widget, as container_remove
9078         does that for us.
9080         * lib/object.h: fixed up prototypes for new object methods.
9082         * lib/properties.[ch]: added functions for automatically creating
9083         a properties dialog from the output of describe_props, get_props and
9084         set_props.
9085         (object_apply_props): apply properties and return an ObjectChange
9086         structure that can be used for undo.
9088 2000-02-03  Cyrille Chepelov  <chepelov@calixo.net>
9090         * objects/GRAFCET/transition.c: minor leak plugged.
9092         * sheets/GRAFCET.sheet:
9093         * objects/GRAFCET/pixmaps/condition.xpm: (NEW)
9094         * objects/GRAFCET/condition.c: (NEW) added a new object type, action 
9095         conditions.
9096         * objects/GRAFCET/Makefile.am: fixed incorrect dependencies, added
9097         new ones (for condition.c).
9098         * objects/GRAFCET/action.c: added connection points for the conditions.
9099         * samples/grafcet.dia: updated the sample to improve conformance to
9100         IEC 848 and take advantage of dia's new features.
9101         
9102         * lib/geometry.h: (point_get_normed) fixed a typo.
9104 2000-02-02  James Henstridge  <james@daa.com.au>
9106         * lib/object.h: added object functions describe_props, get_props and
9107         set_props.  Do type definitions so that object.h doesn't need to
9108         include properties.h, since properties.h includes object.h.
9110         * lib/properties.[ch]: more hacking.
9112         * po/de.po: updated po file.
9114 2000-01-30  James Henstridge  <james@daa.com.au>
9116         * configure.in: don't add flags to CFLAGS unconditionally.  Instead,
9117         check to see if the C compiler accepts the flag beforehand.
9119         * lib/properties.[ch]: start of properties code.
9121         * shapes/Contact/Makefile.am (SHAPES): fix up makefile.
9123 2000-01-30  Cyrille Chepelov  <chepelov@calixo.net>
9124         
9125         * sheets/GRAFCET.sheet:
9126         * sheets/GRAFCET/etapemc.xpm: (NEW)
9127         * sheets/GRAFCET/etapesp.xpm: (NEW)
9128         * objects/GRAFCET/step.c: Added the macro and
9129         sub-program call step types.
9131         * objects/GRAFCET/receptivity.[ch]: renamed to 
9132         objects/GRAFCET/boolequation.[ch]. 
9133         * objects/GRAFCET/transition.c: changed (Receptivity *) to 
9134         (BoolEquation *)
9136         * lib/connpoint_line.[ch]: 
9137         * objects/chronogram/chronoline.c:
9138         * objects/chronogram/chronoref.c:
9139         * objects/GRAFCET/vergent.c:
9140         * objects/standard/line.c:
9141         * objects/SADT/box.c: Minor CPL interface changes, factored out the
9142         point count adjustment code into the CPL object.
9143         
9144 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
9146         * app/render_libart.c:
9147         Added support for images and bezier curves.
9148         Only text/fonts missing now.
9150         * app/render_gdk.c:
9151         Removed old erronous comment.
9153 2000-01-29  Cyrille Chepelov <chepelov@calixo.net>
9155         * objects/chronogram/chronoline_event.c: removed references to
9156         lround(). Please don't insist, I'm already red of shame.
9157         
9158 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
9160         * app/render_libart.[ch]:
9161         * app/Makefile.am:
9162         Non-finished libart renderer.
9164         * acconfig.h:
9165         Added HAVE_LIBART flag
9167         * configure.in:
9168         Added libart probe
9170         * app/app_procs.c:
9171         Call gdk_rbg_init().
9173         * app/connectionpoint_ops.c:
9174         * app/disp_callbacks.c:
9175         * app/grid.c:
9176         * app/handle_ops.c:
9177         * app/magnify.c:
9178         * app/modify_tool.c:
9179         Change ddisp->renderer type from RendererGdk * to Renderer *
9180         Draw zoom and select rects in ddisp->canvas->window instead
9181         of ddisp->renderer->renderer->pixmap.
9183         * app/display.[ch]:
9184         Add aa_renderer to DDisplay, and  support for it.
9185         New function ddisplay_set_renderer() for changing renderer.
9186         Add ddisplay_transform_coords_double() function, used by aa renderer.
9187         Change ddisp->renderer type from RendererGdk * to Renderer *
9189         * app/menus.c:
9190         Add antialias to menu.
9191         
9192         * app/commands.[ch]:
9193         add view_aa_callback function
9194         Change ddisp->renderer type from RendererGdk * to Renderer *
9196         * lib/geometry.[ch]:
9197         Added IntRectangle and int_rectangle_union.
9199 2000-01-28  James Henstridge  <james@daa.com.au>
9201         * app/commands.h: removed prototypes.
9203         * app/commands.c: removed the functions that have been moved to
9204         filedlg.c.
9206         * app/filedlg.h: added new prototypes.
9208         * app/filedlg.c (file_open_callback): move open dialog to this
9209         file.  This implementation should remember the current directory
9210         between file loads.
9211         (file_save_as_callback): moved this dialog as well.
9212         (file_save_callback): moved this function here.
9214         * app/paginate_psprint.c (paginate_psprint): if not in fit to mode,
9215         align page boundaries to the origin.
9217         * app/diagram.c (diagram_update_extents): redraw the diagram if the
9218         scaling factor changes while updating the extents.  This is so the
9219         page breaks get redrawn correctly.
9221         * app/pagesetup.c (pagesetup_apply): added diagram_flush call when
9222         applying changes.
9224         * app/grid.c (grid_draw): draw page breaks as well as grid lines.
9225         For normal mode, use (0,0) as the origin.  For `fit to' mode, use
9226         the corner of the bounding box.
9228         * app/pagesetup.c (create_page_setup_dlg): load new paper attributes
9229         into page setup dialog.
9230         (pagesetup_apply): apply new `fit to' attributes to the diagram.
9232         * app/load_save.c (diagram_load): load new paper `fit to' attributes.
9233         (diagram_data_save): save `fit to' data.
9235         * lib/diagramdata.c (new_diagram_data): initialise `fit to' members.
9236         (data_update_extents): when in `fit to' mode, update scale factor
9237         when we update the extents.
9239         * lib/diagramdata.h (PaperInfo): added `fit to' members to PaperInfo
9240         structure.
9242         * .../.cvsignore: added some cvsignore files to quieten cvs.
9243         
9244         * app/pagesetup.c (pagesetup_changed): added code to change the
9245         scaling/fit to values as you change the options in the page setup
9246         dialog.  I haven't added code so that the fit to options are saved
9247         though.
9249         * app/diapagelayout.[ch]: changed the scaling portion of the widget
9250         to make it easier to set a `fit to' style scaling factor.
9252 2000-01-27 Cyrille Chepelov <chepelov@calixo.net>
9253         * lib/neworth_conn.[ch]: (NEW) Temporary (hopefully) fork of orth_conn,
9254         but connpoint_line-based, so that there's a connection point at the 
9255         middle of each segment. Currently only the SADT arrow uses this.
9257         * objects/SADT/* (NEW): SADT (both idf0 and idf1) support.
9258         
9259 2000-01-26 Cyrille Chepelov <chepelov@calixo.net>
9260         * lib/lazyprops.[ch]:(NEW) Added a bunch of macros for loading, 
9261         saving and editing of properties (and default properties). 
9262         See the new objects (GRAFCET, SADT, chonograms) for examples.
9263         For already too hairy stuff, see objects/chronogram/chronoline.c.
9265         * lib/connpoint_line.[ch] (NEW): This subobject manages a line of 
9266         evenly spaced connection points, which the user can add or remove at
9267         will. An object can own several connection point lines. See the SADT
9268         Box, or the GRAFCET vergents for examples.
9270         * lib/dummy_dep.h: added dependencies to new files. Told gcc to keep 
9271         quiet about unused stuff.
9273         * objects/GRAFCET (NEW):
9274         * samples/grafcet.dia (NEW):
9275         Added support for GRAFCET charts. 
9277         * objects/chronogram (NEW):
9278         * samples/chronograms.dia (NEW):
9279         Added support for chronograms (feature requested by Ronald L. Chichest;
9280         I found I'd use it often, too).
9282         * objects/standard/line.c: Replace the middle connectionpoint by 
9283         a whole connection point line, which defaults to one point (hint, 
9284         hint). New Line object menu to take advantage of this. 
9285         "Bothwards" compatibility is preserved (although you may loose 
9286         connections if you load a newer file in a older dia).
9288         * app/lineprops_area.c:
9289         * lib/arrows.[ch]:
9290         * lib/widgets.c: Added hollow and filled ellipse arrow head type. 
9291         (feature requested by Benjamin Kahn).
9292         Merged in Steffen Macke's slashed arrow head type.
9294         * app/Makefile.am (app/run_dia.sh actually):
9295         Added $DEBUGGER in front of dia's invocation, so that
9296         you can call "DEBUGGER=ddd app/run_dia.sh" (maybe naive, but useful).
9297         Added $(EFENCE) to app/dia's LDFLAGS, so that you can do 
9298         "EFENCE=-lefence" to link with Electric Fence.
9300         * configure.in: Made gcc do more aggressive optimisations on i386, and
9301         enabled warnings.
9302         
9303 2000-01-24  James Henstridge  <james@daa.com.au>
9305         * lib/geometry.[ch]: added inline versions of functions.  Used
9306         glib's G_INLINE_FUNC stuff, so it should still work on systems
9307         without inline funcs.
9309         * plug-ins/cgm/cgm.c (draw_ellipse, fill_ellipse): fixed up so that
9310         it outputs the correct element id for the ellipse objects.
9312 2000-01-24 Cyrille Chepelov <chepelov@calixo.net>
9314         * lib/object.[ch]: added object_add_connectionpoint_at, similar to
9315         object_add_handle_at. Message typo fixed.
9316         
9317         * lib/sheet.c (load_register_sheet):
9318         potential bug fixed (warning hunt).
9320         * objects/custom/custom.c (custom_object_load): disabled an assertion
9321         which made dia abort upon failure to load a shape file. Fixed a
9322         subsequent crash. 
9324         * objects/custom/shape_info.c (load_shape_info): Made the custom 
9325         shape load code ignore XML comments between <?xml ...?> and the 
9326         root object (mostly useful to put the emacs magic comments).
9327         
9328         * app/load_save.c: Made dia do backup copies of files when saving,
9329         and complain in case of failure.
9331 2000-01-24  Cyrille Chepelov  <chepelov@calixo.net>
9333         * AUTHORS: fixed my address (ISP thought it was a great idea to change
9334         the domain name)
9335         
9336         * configure.in:
9337         * shapes/Contact:
9338         * shapes/Contact/*:
9339         * sheets/Contact.sheet:
9340         * sheets/Makefile.am:
9341         Added support for Contact and LADDER charts.
9343         * dia.desktop: Added a French translation.
9344         
9345 2000-01-23  James Henstridge  <james@daa.com.au>
9347         * app/commands.c (help_about_callback): don't die if can't load
9348         logo image.
9350         * app/render_gdk.c (bezier_add_lines): sanity check to try to weed
9351         out NaN's when performing bezier curve subdivision.
9353         * objects/custom/custom_object.c: initialise memory of Custom structs
9354         to zero.
9356         * app/render_svg.c (draw_image): added image support to the XML
9357         output filter.  The image is just referenced, rather than being
9358         included inline, so if you copy the SVG file somewhere else, you
9359         may need to move the images or fix up the links.
9361         * plug-ins/cgm/cgm.c (draw_string): output a text colour element,
9362         so the text is not just displayed in black all the time.
9364 2000-01-15  Fredrik Hallenberg  <hallon@lysator.liu.se>
9366         * configure.in: fixed libpopt test so we wont try to build with
9367         too old libpopt.
9369 1999-12-18  Yuri Syrota  <rasta@renome.rovno.ua>
9371         * configure.in: Added "uk" to ALL_LINGUAS.
9373 1999-12-24  James Henstridge  <james@daa.com.au>
9375         * po/ru.po: updated russian translation from Valek Filippov.
9376         
9377         * app/render_svg.c (new_svg_renderer): make output use 19991203
9378         version of SVG DTD.  Use viewBox to set the extents of the view.
9380         * INSTALL (FONTS): updated locations of gnome-xml and imlib.  List
9381         ftp.gnome.org as the download.
9383         * TODO (TODO): weeded out completed todo items and added a few extra.
9385         * Makefile.am (EXTRA_DIST): added documentation to EXTRA_DIST.
9387         * doc/sheet.dtd: first stab at a DTD for the sheet files.  It would
9388         be good to get rid of the object/shape distinction and separate
9389         the custom shape code out from the main application.
9391         * objects/custom/README, diagram.dtd: moved to new doc directory.
9392         Renamed the custom shapes README to custom-shapes.  Also updated
9393         custom shape docs a bit and removed the section on sheet files, as
9394         that has changed a bit.
9396         * plug-ins/cgm/cgm.c (draw_image): give an error if the row length
9397         of the image data is larger than the maximum cell array.  I should
9398         add code to break scan lines down further in this case, but for now
9399         an error message is better than an infinite loop.
9401         * app/filedlg.c (file_export_ok_callback): show a dialog if we
9402         couldn't determine the export filter to use.
9404         * app/commands.c (help_about_callback): fixed up about box logo
9405         expose bug.  Now just use a GtkPixmap widget rather than a
9406         GtkDrawingArea and calling gdk_imlib_paste_image.
9408         * app/Makefile.am (EXTRA_DIST): added print stuff to extra dist,
9409         because automake does not always get things right.
9411         * configure.in: updated version number to 0.83.
9413         * app/preferences.c (prefs_save): 
9414         * app/render_svg.c (new_svg_renderer): "wt" is not a valid flag string
9415         for fopen.  Text is the default file mode anyway.
9417         * app/commands.c (file_save_as_dialog_ok_callback, file_new_callback): 
9418         * app/grid.c (grid_x_update, grid_y_update, grid_show_dialog): 
9419         * app/load_save.c (write_objects, write_connections): 
9420         * app/filedlg.c (file_export_ok_callback): 
9421         * lib/dia_xml.c (data_add_int, data_add_enum, data_add_real): 
9422         * lib/dia_xml.c (data_add_point, data_add_rectangle): 
9423         * lib/font.c (init_x11_font, font_get_gdkfont): changed calls to
9424         snprintf to calls to g_snprintf.
9426         * plug-ins/cgm/cgm.c (export_cgm): write the original dia file name
9427         as the picture name.
9429 1999-12-23  James Henstridge  <james@daa.com.au>
9431         * plug-ins/cgm/cgm.c (write_int32, write_int16): fixed up output of
9432         negative numbers.  This fixes the upside down text problem I was
9433         having previously.
9434         (draw_image): implemented the image code.  It will try to split the
9435         image data up into bands if it is too big to fit into a single
9436         cgm cell array element.  It will have problems if you try to insert
9437         an image wider than about 10,000 pixels though.
9439         * Makefile.am: use gnomedatadir for the files that need to be
9440         installed in gnome's datadir.  This is mainly to help people doing
9441         packages for weird setups.
9443 1999-12-22  James Henstridge  <james@daa.com.au>
9445         * plug-ins/cgm/cgm.c: added support for text.  Now only images and
9446         beziers are left to do.  The text seems to be the wrong way up
9447         still.  This is probably a problem with character orientation
9448         element, but I have used what the settings given in the standard.
9449         Other than this, the CGMs dia produces are readable (and displayable)
9450         by ralcgm and corel draw.
9451         (draw_string): subtract from the X coord rather than the Y coord for
9452         center and right aligned text.
9454         * plug-ins/cgm/cgm.c: a few fixups for the output.  Use REALSIZE as
9455         the size of a real number, and changed name of write_double to
9456         write_real.  Consider changing to fixed real encoding.  Also, now
9457         all element headers are correct.  Once the real number encoding is
9458         fixed, only text, beziers and images are left to do.
9460 1999-12-21  James Henstridge  <james@daa.com.au>
9462         * Makefile.am (SUBDIRS): recurse into plug-ins.
9464         * configure.in: add plug-ins directory makefiles to list.
9466         * plug-ins/cgm/cgm.c: start of cgm export filter.  Beziers and text
9467         not done yet.  Also, the output files are not quite correct.
9469         * app/render_eps.c (print_reencode_font): don't reencode the Symbol
9470         font.  It doesn't work if you do.
9472 1999-12-20  James Henstridge  <james@daa.com.au>
9474         * app/app_procs.c (app_init): don't use diagram_export_to_eps to
9475         export the files.  Instead, use filter_guess_export_filter to
9476         guess the correct format to save in and use the appropriate filter.
9477         It defaults to postscript for compatibility.
9479         * app/diagram.[ch] (diagram_export_to_eps): removed export to eps
9480         function.
9482         * app/commands.[ch]: removed export to eps functions.
9484         * app/menus.c: removed export to eps menu items.
9486         * app/app_procs.c: register new export filters.
9488         * app/load_save.[ch]: define dia native export filter.
9490         * app/render_eps.[ch]: define eps export filter.
9492         * lib/filter.h: added diafilename argument to the DiaExportFunc
9493         prototype.  This is useful for putting the source of the diagram
9494         into the output file for instance.
9496         * app/app_procs.c (app_init): register the SVG export filter.  Have
9497         to get EPS code converted to this API, and maybe also allow saving in
9498         DIA's native format from the export dialog.  In fact, it is now
9499         possible to load an export filter from a shared library and it will
9500         integrate into the interface correctly.
9502         * app/menus.c: removed references to the SVG renderer.
9504         * app/commands.[ch]: removed svg stuff.
9506         * app/diagram.[ch]: removed diagram_export_to_svg function.
9508         * app/render_svg.[ch]: added a DiaExportFilter structure for this
9509         renderer.
9511         * app/filedlg.[ch]: code for the new export diagram dialog.  Will
9512         probably move the open/save dialogs to this file as well.
9514 1999-12-19  James Henstridge  <james@daa.com.au>
9516         * lib/filter.[ch]: start of interface for generalised handling of
9517         filters.  I have only done code for export filters so far.  I still
9518         need to do the gui for this, and convert the current SVG and EPS
9519         filters to the new API.
9521         * lib/bezier_conn.c (bezierconn_copy): fix up copy operation.  We
9522         weren't setting the last handle correctly.  It was actually assigning
9523         to the wrong position in the handles array, so the last handle was
9524         left as NULL, which caused the segfault.
9526         * objects/standard/image.c (image_copy): modified routine so that
9527         it just adds a reference to the DiaImage structure in the new image
9528         object.  This seems to have cleared up the problems with copying
9529         image objects.
9531         * dia.spec: spec file additions from John Gotts.
9533 1999-12-12  James Henstridge  <james@daa.com.au>
9535         * configure.in (GNOME_LIBS): updated version number to 0.82.  0.82
9536         has not been released yet though.
9538         * Makefile.am (EXTRA_DIST): distribute diagram.dtd.
9540         
9541         The following based on a patch from Lars Clausen:
9542         
9543         * objects/standard/bezier.c (bezierline_move_handle): when performing
9544         the initial drag of the bezierline, move the control points to keep
9545         the line straight.
9547         * lib/bezier_conn.c (bezierconn_add_segment): when adding a segment,
9548         make the new control points a bit closer to the major point.
9550         * app/create_object.c (create_object_motion): use HANDLE_MOVE_CREATE
9551         as the reason for the move.
9552         (create_object_button_release): use HANDLE_MOVE_CREATE_FINAL as the
9553         move reason.
9555         * lib/handle.h: new handle move reasons.
9557 1999-12-09  James Henstridge  <james@daa.com.au>
9559         * dia.spec: include the new files in RPMs.
9561         * Makefile.am: install these new files.
9563         * dia.keys.in: file describing actions and icon for dia diagrams for
9564         use in the gnome file manager.
9565         
9566         * dia.mime: a file defining the application/x-dia-diagram mime type.
9567         
9568         * dia-diagram.png: an icon for dia diagrams.
9570 1999-12-08  James Henstridge  <james@daa.com.au>
9572         * plug-ins/python/pydia-diagram.c: added heaps of new methods.
9574         * plug-ins/python/pydia-display.[ch]: wrapper for display.
9576         * objects/standard/ellipse.c: applied Lars's patch to optionally not
9577         draw the background of the ellipse.
9579         * app/load_save.c (read_connections): do some sanity checking on the
9580         handle and connection point numbers before performing the object
9581         connection.
9583         * lib/bezier_conn.c (bezierconn_load): give the correct number of
9584         handles when loading a BezierConn.
9586 1999-12-07  Kjartan Maraas  <kmaraas@online.no>
9588         * sheets/*.sheet: Finished Norwegian translations.
9589         
9590 1999-12-07  James Henstridge  <james@daa.com.au>
9592         * plug-ins/python/diamodule.c (PyDia_Load): load diagram function.
9593         (PyDia_GetObjectType): find object type function.
9595         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_Save): added a save
9596         method for diagrams.
9598         * plug-ins/python/pydia-object.c: added methods for DiaObject and
9599         DiaObjectType.
9601         * AUTHORS: added Lars and Cyrille to the authors file.
9603         * objects/standard/bezier.c (bezierline_add_segment_callback): place
9604         new point correctly.
9606         * lib/bezier_conn.h (bezierconn_closest_segment): fixed prototype.
9608         * lib/bezier_conn.c: applied Lars's patch for placement of the new
9609         point when adding a segment to a BezierConn.
9611 1999-12-06  James Henstridge  <james@daa.com.au>
9613         * plug-ins/python/test.py: test script for the python plug-in.
9615         * plug-ins/python/python.c: this file contains the plug-in startup
9616         code for the python plugin.  Right now, it just initialises the
9617         dia module and executes a script.
9619         * objects/standard/polyline.c (polyline_draw): fix start arrow size.
9621         * objects/standard/bezier.c (bezierline_draw): draw control lines for
9622         bezier curve if we are using an interactive renderer (ie. only if
9623         displaying to the screen).
9625         * lib/bezier_conn.[ch] (bezierconn_draw_control_lines): function
9626         to draw control lines on to a bezier curve.  Based on implementation
9627         from Lars.
9629         * objects/standard/bezier.c (bezierline_delete_segment_callback):
9630         calculate segment number using closest_segment rather than
9631         closest_handle.  Sometimes the closest handle is part of a different
9632         segment.
9633         (bezierline_draw): use correct size for start arrow.
9635         The next few entries are from Peter Moulder <reiter@netspace.net.au>:
9636         * lib/geometry.c (distance_line_point): added notes to documentation
9637         in comment.
9638         * app/object_ops.c (object_list_align_v): 
9639         (object_list_align_h): fix of by one error when calculating free space
9640         for equal distance alignment.
9641         * app/menus.c (objects_align_h, objects_align_v): include align
9642         adjacent menu items in the gnome version of the menus.
9643         * app/diagram.c (diagram_update_menu_sensitivity): set sensitivity on
9644         align adjacent menu items correctly.
9647         * lib/dummy_dep.h (dummy_dep): added bezierconn to dummy dependency
9648         table.
9650         * objects/standard/bezier.c: converted bezierline to use BezierConn.
9651         Still a few bugs.  It crashes on deleting line segments.
9653         * lib/Makefile.am (libdia_a_SOURCES): added BezierConn to libdia.
9655 1999-12-05  James Henstridge  <james@daa.com.au>
9657         * lib/bezier_conn.[ch]: start of BezierConn object
9659         * app/interface.c: add bezierline to toolbox.
9661         * objects/standard/standard.c: initialise bezierline.
9663         * objects/standard/bezier.c: new object from Lars R. Clausen.  I have
9664         made a few modifications to get it working nicely.  It still needs
9665         a bit of work though.  Maybe create a BezierConn object in lib.
9667 1999-12-02  James Henstridge  <james@daa.com.au>
9669         * plug-ins/python/pydia-*.c: fixed compile errors in these files.
9670         
9671         * plug-ins/python/Makefile.am: tried building everything.  It is
9672         building as a library at the moment.  I will have to convert it
9673         to a libtool library and add some initialisation code.
9674         
9675         * plug-ins/python/diamodule.c: start of the dia module, using the
9676         other object wrappers.  Not complete.
9678 1999-12-01  James Henstridge  <james@daa.com.au>
9680         * plug-ins/python/pydia-object.c (PyDiaObject_GetAttr): implement
9681         the handles and connections attributes.
9683         * plug-ins/python/pydia-layer.c: added functions that use
9684         ConnectionPoint's.
9686         * plug-ins/python/pydia-handle.[ch]: wrapper for Handle's.
9688         * plug-ins/python/pydia-cpoint.[ch]: wrapper for ConnectionPoint's.
9690         * plug-ins/python/pydia-*.[ch]: starts of python scripting plug-in.
9691         I am currently wrapping the basic elements in the diagram in python
9692         objects -- nothing to see or play with yet.
9694 1999-11-30  Alexander Larsson  <alla@lysator.liu.se>
9696         * AUTHORS:
9697         * HACKING:
9698         James Henstridge <james@daa.com.au> is now the maintainer of Dia.
9700 1999-11-29  Alexander Larsson  <alla@lysator.liu.se>
9702         * configure.in:
9703         * po/ru.po:
9704         Added russian translation from Valek Filippov <frob@df.ru>
9706 1999-11-24  James Henstridge  <james@daa.com.au>
9708         * sheets/UML/*: 
9709         * sheet/ER/*: moved extra sheet pixmaps back to separate dirs as
9710         discussed with Alex.  Also added extra makefiles so that make install
9711         works correctly.
9713 1999-11-23  Alexander Larsson  <alla@lysator.liu.se>
9715         * app/preferences.[ch]:
9716         * app/display.c:
9717         Added snap to grid preference.
9718         Patch from Michael Leslie <mles@springboardwireless.com>
9720 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9722         * app/load_save.c:
9723         * lib/dia_xml.c:
9724         * lib/sheet.c:
9725         * lib/text.c:
9726         * objects/custom/shape_info.c:
9727         All strings returned by libxml must be freed with free, not
9728         g_free, or there will be problems if you use memory debugging
9729         in glib.
9730         
9731 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9733         * app/create_object.[ch]:
9734         * app/menus.c:
9735         * app/tool.[ch]:
9736         * app/commands.[ch]:
9737         * app/pixmaps.h:
9738         * app/interface.[ch]:
9739         Reverted the tool menu patch. It has some 'issues'.
9740         I liked it though, so it'll probably return.
9742 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
9744         Fixed a lot of memory leaks. Thanks to Bruce Mitchener
9745         <bruce@cybersight.com> for some purify runs and analysis.
9746         Also a great thank you to Owen Taylor for creating MemProf, a
9747         free memory leak detector that was used to find and verify a
9748         lot of these fixes.
9749         
9750         * app/diagram.c:
9751         * app/paginate_psprint.c:
9752         * app/render_eps.[ch]:
9753         * app/render_svg.[ch]:
9754         Free renderers.
9756         * app/interface.c:
9757         Don't add a reference to ddisp->shell. Why was this done in
9758         the first place?
9760         * app/load_save.c:
9761         * lib/dia_xml.c:
9762         * lib/sheet.c:
9763         * lib/text.c:
9764         Free all strings returned from xmlGetProp
9766         * app/modify_tool.c:
9767         Plug leak.
9769         * objects/custom/custom.c:
9770         Use closedir() after opendir().
9772         * objects/custom/shape_info.c:
9773         User g_free() instead of "if (tmp) free(tmp)".
9775         * sheets/ER.sheet:
9776         Add newline at end of file.
9777         
9779 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
9781         Based on patch from Patrick Reynolds <reynolds@cs.duke.edu>
9782         Adds tool menu and keyboard shortcuts.
9784         * app/create_object.[ch]:
9785         Use tool_set() instead of tool_reset().
9786         create_create_object_tool() takes extra type argument
9788         * menus.c:
9789         Add tools menu.
9790         
9791         * tool.[ch]:
9792         Moved tool_data here, export it.
9793         Add separate tool type for all create objects tools.
9794         new functions tool_set().
9796         * commands.[ch]:
9797         New callback tool_set_callback.
9799         * pixmaps.h:
9800         Moved some pixmaps to interface.c.
9801         
9802         * interface.[ch]:
9803         Remove tool_data array (moved to tool.c).
9804         Use the tool_data from tool.c.
9805         Remove modify_tool_button global var.
9806         
9807 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
9809         Patch from Patrick Reynolds <reynolds@cs.duke.edu>
9810         
9811         * app/app_procs.c:
9812         Interprets command-line arguments as files to open even when
9813         HAVE_POPT is not defined.
9815         * app/magnify.c:        
9816         Shift-clicking when zooming zooms out, like the Gimp.
9818         * app/menus.c:
9819         Has hotkeys for zoom-100% and snap-to-grid.
9821 1999-11-17  James Henstridge  <james@daa.com.au>
9823         * app/scroll_tool.c (scroll_motion): fixed shift style scrolling so
9824         that it is not jumpy.
9826         * app/Makefile.am (EXTRA_DIST): added extra files to extra dist list.
9828         * app/scroll_tool.c (scroll_motion): added `grabbing hand' type
9829         scrolling by pressing the shift key when using the scroll tool.
9831         * sheets/Makefile.am: fixed makefile so that install actually works
9832         if the directories $(pkgdatadir)/sheets/UML and $(pkgdatadir)/sheets/ER
9833         don't exist.
9834         (SHEETS): install Circuit.sheet
9836 1999-11-15  Alexander Larsson  <alla@lysator.liu.se>
9837         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
9839         * sheets/Circuit.sheet:
9840         * sheets/ER.sheet:
9841         * sheets/FS.sheet:
9842         * sheets/Flowchart.sheet:
9843         * sheets/UML.sheet:
9844         * sheets/network.sheet:
9845         * sheets/sybase.sheet:
9846         Changed name space
9848         * sheets/Circuit.sheet:
9849         added some missing French translations
9851         * lib/sheet.c:
9852         killed the temporary sheet namespace
9854         * objects/custom/custom.c:
9855         obsolete comment cleaned up
9857 1999-11-12  Alexander Larsson  <alla@lysator.liu.se>
9859         * configure.in:
9860         * po/pt.po:
9861         Added portugese translation from Pedro Morais
9862         <pmmm@rnl.ist.utl.pt>
9864 1999-11-11  Alexander Larsson  <alla@lysator.liu.se>
9866         Changed all sheets to be specified in xml.
9867         All sheet objects removed from the C code.
9868         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
9869         
9870         * Makefile.am:
9871         * configure.in:
9872         Adding shapes dir.
9873         Updated version to 0.81cvs.
9874         
9875         * app/Makefile.am:
9876         Update run_dia.sh with sheet-dir.
9877         
9878         * app/app_procs.c:
9879         Load all sheets on startup.
9880         Create sheet directory first time.
9881         Don't call custom_register_sheets().
9883         * lib/Makefile.am:
9884         Add sheetdir define
9886         * lib/custom.h:
9887         Remove custom_register_sheets().
9889         * lib/sheet.[ch]:
9890         Add sheet loading code.
9892         * sheet/Circuit.sheet:
9893         * sheet/ER.sheet:
9894         * sheet/FS.sheet:
9895         * sheet/Flowchart.sheet:
9896         * sheet/UML.sheet:
9897         * sheet/network.sheet:
9898         * sheet/sybase.sheet:
9899         Added sheet files.
9901         * sheet/ER/weakentity.xpm:
9902         * sheet/UML/aggregation.xpm
9903         * sheet/UML/umlclass_template.xpm
9904         Added sheet pixmaps.
9905         These are moved from their old places.
9907         * sheet/.cvsignore:
9908         Shut up cvs.
9910         * objects/*/*.c:
9911         Removed sheet objects and sheet registration.
9912         
9913         * objects/ER/Makefile.am:
9914         * objects/ER/pixmaps/weakentity.xpm:
9915         * objects/UML/Makefile.am:
9916         * objects/UML/pixmaps/aggregation.xpm:
9917         * objects/UML/pixmaps/umlclass_template.xpm:
9918         Removed alternative pixmaps. (Moved to sheet).
9920         * objects/custom/Makefile.am:
9921         * objects/custom/load_sheet.[ch]:
9922         Removed old sheet loading code.
9923         
9924         * objects/custom/custom.c:
9925         Load all shapes instead of sheets.
9926         Removed custom_register_sheets().
9928         * objects/custom/custom_object.c:
9929         Added debug code.
9931         * objects/custom/shape_info.[ch]:
9932         Added shape_info_getbyname().
9934         * objects/flowchart/Makefile.am:
9935         * objects/flowchart/collate.shape            
9936         * objects/flowchart/delay.shape              
9937         * objects/flowchart/display.shape            
9938         * objects/flowchart/document.shape           
9939         * objects/flowchart/extract.shape            
9940         * objects/flowchart/flowchart.c              
9941         * objects/flowchart/intstorage.shape         
9942         * objects/flowchart/magdisk.shape            
9943         * objects/flowchart/magdrum.shape            
9944         * objects/flowchart/magtape.shape            
9945         * objects/flowchart/manualinput.shape        
9946         * objects/flowchart/manualop.shape           
9947         * objects/flowchart/merge.shape              
9948         * objects/flowchart/offlinestore.shape       
9949         * objects/flowchart/offpageconn.shape        
9950         * objects/flowchart/or.shape                 
9951         * objects/flowchart/predefdproc.shape        
9952         * objects/flowchart/preparation.shape        
9953         * objects/flowchart/punchedcard.shape        
9954         * objects/flowchart/punchedtape.shape        
9955         * objects/flowchart/sort.shape               
9956         * objects/flowchart/sumjunction.shape        
9957         * objects/flowchart/terminal.shape           
9958         * objects/flowchart/transaction.shape        
9959         * objects/flowchart/transmittape.shape       
9960         * objects/flowchart/pixmaps/collate.xpm      
9961         * objects/flowchart/pixmaps/delay.xpm        
9962         * objects/flowchart/pixmaps/display.xpm      
9963         * objects/flowchart/pixmaps/document.xpm     
9964         * objects/flowchart/pixmaps/extract.xpm      
9965         * objects/flowchart/pixmaps/intstorage.xpm   
9966         * objects/flowchart/pixmaps/magdisk.xpm      
9967         * objects/flowchart/pixmaps/magdrum.xpm      
9968         * objects/flowchart/pixmaps/magtape.xpm      
9969         * objects/flowchart/pixmaps/manualinput.xpm  
9970         * objects/flowchart/pixmaps/manualop.xpm     
9971         * objects/flowchart/pixmaps/merge.xpm        
9972         * objects/flowchart/pixmaps/offlinestore.xpm 
9973         * objects/flowchart/pixmaps/offpageconn.xpm  
9974         * objects/flowchart/pixmaps/or.xpm           
9975         * objects/flowchart/pixmaps/predefdproc.xpm  
9976         * objects/flowchart/pixmaps/preparation.xpm  
9977         * objects/flowchart/pixmaps/punchedcard.xpm  
9978         * objects/flowchart/pixmaps/punchedtape.xpm  
9979         * objects/flowchart/pixmaps/sort.xpm         
9980         * objects/flowchart/pixmaps/sumjunction.xpm  
9981         * objects/flowchart/pixmaps/terminal.xpm     
9982         * objects/flowchart/pixmaps/transaction.xpm  
9983         * objects/flowchart/pixmaps/transmittape.xpm 
9984         Moved shapes and their pixmaps to shapes/flowchart
9986         * shapes/Circuit/Makefile.am:
9987         * shapes/Circuit/index.sheet:
9988         Removed index.sheet.
9989         
9990         * shapes/Makefile.am:
9991         * shapes/flowchart/Makefile.am:
9992         * shapes/flowchart/*.shape:
9993         * shapes/flowchart/*.xpm:
9994         Added flowchart shapes. (Moved from objects/flowchart)
9995         
9997 1999-11-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
9999         * app/app_procs.c: Fixed popt stuff.
10001 1999-11-01  James Henstridge  <james@daa.com.au>
10003         * shapes/Circuit/[hv]led_de.{shape,xpm}: new circuit shapes from
10004         Andreas Scherf.
10006 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
10008         * dia.spec:
10009         * configure.in:
10010         Update version to 0.81.
10011         
10012         * NEWS:
10013         Update with news for 0.81.
10014         
10015         * shapes/Circuit/*:
10016         * shapes/Circuit_eu/*:
10017         Moved european circuit objects to Circuit sheet.
10019 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
10020         
10021         * lib/diagramdata.[ch]:
10022         Added layer_set_object_list() function.
10024         * app/undo.[ch]:
10025         Added support for undo of reordered objects.
10026         Fix the undo of delete to keep the right order on undo.
10027         
10028         * app/diagram.c:
10029         changed loop to object_add_updates_list() calls.
10030         Added undo support to bring to front/back.
10032         * app/disp_callbacks.c:
10033         * app/paginate_psprint.c:
10034         Remove warnings.
10036 1999-10-30  Alexander Larsson  <alla@lysator.liu.se>
10038         This plugs some leaks. Thanks to
10039         Bruce Mitchener <bruce@cybersight.com> for running
10040         Dia through purify for me.
10041         
10042         * app/app_procs.c:
10043         Free displays and diagrams on exit.
10045         * app/modify_tool.c:
10046         Free gc when freeing tool.
10048         * lib/diagramdata.c:
10049         Free layer name.
10050         
10051         * app/display.c:
10052         Free update and display lists when destroying display.
10053         
10054         * lib/diagramdata.c:
10055         Don't leak layer name.
10057         * objects/custom/load_sheet.c: 
10058         * objects/custom/shape_info.c:
10059         Free loaded xml documents.
10061 1999-10-28  Alexander Larsson  <alla@lysator.liu.se>
10063         * app/commands.c:
10064         * app/object_ops.[ch]:
10065         Add undo handling to alignment ops.
10066         Based partially on patch by Dan Cohn <dan@internap.com>.
10068         * objects/standard/image.c (image_move_handle):
10069         Don't divide by zero for small images.
10070         Patch by Dan Cohn <dan@internap.com>.
10072         * objects/UML/class.c (umlclass_destroy): 
10073         * objects/custom/custom_object.c (custom_destroy):
10074         Don't free connectionpoints before calling element_destroy
10075         which unconnects them.
10077 1999-10-26  Alexander Larsson  <alla@lysator.liu.se>
10079         * objects/custom/custom_object.c: 
10080         Load and save padding too. Fixes strange load crashes.
10082         * app/group.c (group_destroy):
10083         Don't unconnect already freed connectionpoints when
10084         destroying group. Probably fixes bug reported by
10085         Elliot Lee <sopwith@redhat.com>.
10087         * app/render_gdk.c:
10088         Don't crash on zero-size (broken) bezier curves.
10089         Different sort of fix. This should work on closed bezier curves
10090         too.
10092         * objects/standard/textobj.c:
10093         Activate default properties dialog for Text objects.
10095         * app/render_eps.c: 
10096         * app/load_save.c:
10097         * app/preferences.c:
10098         * app/render_svg.c:
10099         fopen files in binary or text mode.
10101 1999-10-26  Alexander Larsson  <alex@cendio.se>
10103         * app/render_gdk.c (bezier_add_lines):
10104         Don't crash on zero-size (broken) bezier curves.
10105         Fixes a crashing bug.
10107 1999-10-25  James Henstridge  <james@daa.com.au>
10109         * app/Makefile.am (run_dia.sh): allow dia to find internal shape files
10110         before it is installed.
10112         * objects/flowchart/flowchart.c: use relative paths to find shapes.
10114         * objects/custom/custom.c (custom_object_load): take file names
10115         relative to $(pkgdatadir)/shape-internal, and check an environment
10116         variable for an alternative directory.
10118         * app/...: added copyright messages to the top of my new code.
10120         * app/paginate_psprint.c: some general clean ups.  Also, give an error
10121         dialog if we can't open the command or output file for writing.
10123         * app/diapagelayout.c (dia_page_layout_set_orientation): fixed
10124         function so it would set orientation to landscape correctly.
10126         * app/paginate_psprint.c: use the paper settings that come with
10127         the diagram.  Also implemented landscape printing.
10129         * app/render_eps.c (new_psprint_renderer): use diagram paper metrics
10130         in PS header.
10132         * app/commands.[ch] (file_pagesetup_callback): added callback for
10133         the page setup dialog.
10135         * app/menus.c: added page setup menu item.
10137         * app/pagesetup.[ch]: implementation of the page setup dialog.
10139         * app/diapagelayout.[ch]: added accessors for the scaling factor.
10140         
10141         * app/load_save.c (diagram_load): load paper information from save
10142         file.
10143         (diagram_save): save the paper info.
10145         * lib/diagramdata.c (new_diagram_data): initialise paper info section
10146         of DiagramData structure.
10147         (diagram_data_destroy): free the paper name.
10149         * lib/diagramdata.h: added a paper member to the DiagramData structure
10150         that holds the page layout info for a diagram.
10152 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
10154         * objects/flowchart/box.c:
10155         * objects/flowchart/ellipse.c:
10156         * objects/flowchart/diamond.c:
10157         * objects/flowchart/parallelogram.c:
10158         Load and save padding too. Fixes strange load crashes.
10160 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
10162         * app/app_procs.c (name_is_lib):
10163         .dll, .sl and .so.0.0.0 are also libraries.
10165 1999-10-20  James Henstridge  <james@daa.com.au>
10167         * configure.in: added extra makefile.
10168         
10169         * shapes/Circuit_eu/*: a new set of european circuit shapes from
10170         Andreas Scherf <scherfa@fh-trier.de>.  Made a few small modifications
10171         (added fuses to makefile, fill the area of some of the components).
10173 1999-10-19  Alexander Larsson  <alla@lysator.liu.se>
10175         * lib/Makefile.am:
10176         * app/Makefile.am: 
10177         Add GDK_IMLIB_CFLAGS to includes.
10178         Changed --export-dynamic to -export-dynamic
10180         * lib/widgets.c:
10181         * objects/UML/message.c:
10182         Removed c++ comment.
10184         * lib/render_store.[ch]:
10185         Don't use empty structure. That is not Ansi C.
10187 1999-10-19  James Henstridge  <james@daa.com.au>
10189         * app/diapagelayout.c (dia_page_layout_init): use DiaUnitSpinner's for
10190         the margin entries, as they allow interpretation of units.
10191         (paper_size_change): display the current page dimensions.
10193         * app/diaunitspinner.[ch]: a widget derived from the standard
10194         GtkSpinButton that tries to take units into account.  So if you enter
10195         "1in" into the entry, it will convert it to 2.54cm.
10197 1999-10-18  Alexander Larsson  <alla@lysator.liu.se>
10199         * app/app_procs.c:
10200         Removed include of dlfcn.h
10202 1999-10-18  James Henstridge  <james@daa.com.au>
10204         * app/diapagelayout.c (paper_size_change, orient_changed): set upper
10205         bound on margin widths.  It is set to the paper width/height.
10207         * objects/flowchart/diamond.c (diamond_distance_from): fixed distance
10208         routine for the diamond.  This bug was found and fixed by Daniel Wang
10209         <danwang@CS.Princeton.EDU>
10211 Sun Oct 17 19:46:36 1999  ape@gandalf.spacetec.no  (Asbjorn Pettersen)
10213         * app/commands.c: Add <sys/types.h> before <sys/stat.h> to
10214         remove warning (OS/2 version).
10216 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
10218         * README:
10219         Put a pointer to objects/custom/README.
10220         
10221 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
10223         * dia.spec:
10224         Updated version to 0.80
10226         * configure.in:
10227         Updated version to 0.80cvs
10229 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
10231         * Released Dia 0.80
10232         Tag called DIA_0_80
10233         
10234 1999-10-17  Fredrik Hallenberg  <hallon@lysator.liu.se>
10236         * app/Makefile.am
10237         * lib/Makefile.am
10238         * objects/UML/Makefile.am
10239         * objects/ER/Makefile.am
10240         * objects/network/Makefile.am
10241         * objects/standard/Makefile.am
10242         * objects/FS/Makefile.am
10243         * objects/sybase/Makefile.am
10244         * objects/flowchart/Makefile.am
10245         * objects/custom/Makefile.am
10246         Added -I$(top_srcdir)/intl which is needed for
10247         --with-included-gettext.
10249         * POTFILES.in
10250         Updated.
10251         
10252         * po/sv.po
10253         Updated swedish translation.
10255 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
10257         * configure.in:
10258         Updated version number to 0.80.
10260         * KNOWN_BUGS:
10261         New file.
10263         * TODO:
10264         Updated. Moved bugs to KNOWN_BUGS.
10266         * NEWS:
10267         Updated with 0.80 release notes.
10268         
10269 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
10270         
10271         * lib/orth_conn.c:
10272         For backwards compatibility, make sure handle 0 and 1 are the
10273         first and last handle. Fixes compatibility with 0.41, breaks
10274         compatibility with cvs version.
10275         Fixed bug in undo/redo of adding deleting endpoint segments
10276         when the endpoint was connected.
10277         Start OrthConn objects with three segments.
10279 1999-10-16  James Henstridge  <james@daa.com.au>
10281         * objects/custom/custom_object.c (custom_update_data): changed
10282         resizing behaviour a bit so that shapes don't grow huge when you try
10283         to resize them to smaller than the size required by the text box.
10284         Also, now shapes will not grow with fixed aspect ratio when you enter
10285         text into them unless the shape has the fixed aspect ratio flag set.
10287 1999-10-15  James Henstridge  <james@daa.com.au>
10289         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10291         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10293         * objects/flowchart/magdrum.shape: 
10294         * objects/flowchart/offlinestore.shape: 
10295         * objects/flowchart/punchedtape.shape: 
10296         * objects/flowchart/transmittape.shape: 
10297         * objects/flowchart/punchedcard.shape: new shapes.
10299         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10301         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10303         * objects/flowchart/collate.shape:
10304         * objects/flowchart/delay.shape:
10305         * objects/flowchart/extract.shape:
10306         * objects/flowchart/intstorage.shape:
10307         * objects/flowchart/magdisk.shape:
10308         * objects/flowchart/magtape.shape:
10309         * objects/flowchart/merge.shape:
10310         * objects/flowchart/or.shape:
10311         * objects/flowchart/sort.shape:
10312         * objects/flowchart/sumjunction.shape: new shapes.
10314 1999-10-15  Alexander Larsson  <alla@lysator.liu.se>
10316         * TODO (BUGS):
10317         Added bug:
10318         Entering an erronous command as print command
10319         crashes dia.
10321         * app/paginate_psprint.c:
10322         Save all print dialog values for next time.
10323         
10324         * app/Makefile.am:
10325         Remove custom lib from DIA_LIB_PATH.
10327 1999-10-14  James Henstridge  <james@daa.com.au>
10329         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
10331         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
10332         
10333         * objects/flowchart/offpageconn.shape: 
10334         * objects/flowchart/manualop.shape: 
10335         * objects/flowchart/preparation.shape: 
10336         * objects/flowchart/manualinput.shape: 
10337         * objects/flowchart/predefdproc.shape: 
10338         * objects/flowchart/terminal.shape: new shapes in the flowchart sheet.
10340 1999-10-13  James Henstridge  <james@daa.com.au>
10342         * app/diapagelayout.[ch]: added accessors to paper information.  The
10343         widget should be just about complete now.
10345         * app/diapagelayout.[ch]: fleshed out the page setup widget a bit more.
10346         It actually does something now.
10348 1999-10-12  James Henstridge  <james@daa.com.au>
10350         * app/pixmaps/portrait.xpm, app/pixmaps/landscape.xpm: support pixmaps
10351         for the page layout widget.
10353         * app/diapagelayout.[ch]: start of page layout widget.  Not actually
10354         built yet as it is not complete.
10356         * objects/flowchart/flowchart.c: added new shapes to sheet.
10358         * objects/flowchart/display.shape:
10359         * objects/flowchart/transaction.shape: new shapes.
10361         * AUTHORS: added my name to the spec file.
10363         * dia.spec: include the dia desktop entry to the spec file.
10365         * Makefile.am: install the dia.desktop file.
10367         * dia.desktop: added a gnome desktop entry so you can start dia
10368         from the gnome panel menu.
10370 1999-10-11  James Henstridge  <james@daa.com.au>
10372         * objects/custom/custom_object.c:
10373         * objects/custom/shape_info.c: warning fixes.
10375         * objects/flowchart/document.shape: a shape file for the `document'
10376         flowchart shape.
10378         * lib/custom.h: new header with the custom shape prototypes.
10380         * app/app_procs.c: register custom objects as well.
10381         (register_objects_in): close shared libraries if they don't load
10382         correctly, and call g_module_make_resident on libraries that load
10383         correctly.
10385         * app/Makefile.am (dia_LDADD): added libcustom_objects.a to link list.
10387         * objects/custom/custom.c: removed get_version, added custom_ prefix
10388         to register_objects and register_sheets.
10390         * objects/custom/Makefile.am: converted to a normal library.
10392 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
10394         * app/lineprops_area.c:
10395         * app/render_svg.c:
10396         * lib/objchange.c:
10397         * objects/custom/shape_info.c:
10398         * objects/flowchart/box.c:
10399         * objects/flowchart/diamond.c:
10400         * objects/flowchart/ellipse.c:
10401         * objects/flowchart/parallelogram.c:
10402         * objects/network/flash.c:
10403         * objects/network/scead-plug.c:
10404         * objects/sybase/client.c:
10405         Removed -Wall warnings.
10406         
10407         * objects/network/bus.c:
10408         Removed unused functions.
10410         * objects/FS/flow-ortho.c:
10411         * objects/FS/flow-poly.c:
10412         * objects/FS/flow.c:
10413         * objects/FS/function.c:
10414         
10415         Implemented "non-implemented" undo for FS objects.
10416         Now at least it won't crash.
10417         
10418 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
10420         * objects/network/bus.c:
10421         Implemented undo.
10422         Handles are now added and removed using the object menu.
10423         Default to 6 handles instead of 10.
10424         Changed name from "Standard - Bus" to "Network - Bus". Kept old
10425         name for backwards compatibility.
10427         * objects/network/network.c:
10428         Changed name from "Standard - Bus" to "Network - Bus". Kept old
10429         name for backwards compatibility.
10431         * app/properties.[ch]:
10432         * app/undo.c:
10433         Update properties in properties dialog if the shown object
10434         is part of and ObjectChange (undo or redo).
10436         * lib/poly_conn.c:
10437         Remove old known bugs list.
10439         * objects/UML/class_dialog.c:
10440         Removed debug printf's.
10442 1999-10-10  James Henstridge  <james@daa.com.au>
10444         * objects/custom/custom.c (custom_object_load): new function that
10445         provides a nice entry point to the custom shape code for when it
10446         gets used by other libraries.
10448         * configure.in: removed 11 makefiles from AC_OUTPUT list.  This
10449         speeds builds up a bit.
10451         * */Makefile.am (EXTRA_DIST): include pixmaps in distribution.
10452         (SUBDIRS): do not descend into pixmaps subdirs.
10454         * */pixmaps/Makefile.am: removed -- incorporate into parent makefiles.
10455         This speeds up build process.
10457         * objects/custom/custom.c (sheets): made variable static.
10459         * objects/custom/custom_util.[ch] (custom_get_relative_filename):
10460         renamed function.
10462         * objects/custom/load_sheet.[ch] (custom_sheet_load): renamed function.
10464         * objects/custom/custom.c: look in ~/.shapes instead of
10465         ~/.dia_shapes as the per-user shapes directory.
10467         * app/preferences.c (prefs_save): save config to ~/.diarc.
10468         (prefs_load): load configuration from ~/.diarc.  If the file
10469         does not exist, fallback on the old ~/.diarc location.
10471         * app/app_procs.c (create_user_dirs): create the ~/.dia directory
10472         on startup.
10473         (register_all_objects): look for user specific objects in
10474         ~/.objects rather than ~/.dia_libs.
10476 1999-10-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
10478         * configure.in:
10479         * app_procs.c:
10480         * objects/flowchart/box.c
10481         * objects/flowchart/ellipse.c
10482         * objects/flowchart/flowchart.c 
10483         Use gmodule for dynamic linking. As gmodule is using
10484         RTLD_GLOBAL i had to change flowchart box and ellipse
10485         so the typenames doesn't conflict with the standard
10486         box and ellipse.
10488         * message.c
10489         * commands.c
10490         Use button box to make dialogs look better.
10492 1999-10-09  Alexander Larsson  <alla@lysator.liu.se>
10494         * objects/UML/class_dialog.c:
10495         * objects/UML/class.h:
10496         Implemented undo for "UML - Class" objects.
10497         Not 100% tested yet.
10499         * objects/UML/classicon.c:
10500         * objects/UML/constraint.c:
10501         * objects/UML/dependency.c:
10502         * objects/UML/generalization.c:
10503         * objects/UML/implements.c:
10504         * objects/UML/large_package.c:
10505         * objects/UML/lifeline.c:
10506         * objects/UML/message.c:
10507         * objects/UML/object.c:
10508         * objects/UML/realizes.c:
10509         * objects/UML/state.c:
10510         * objects/UML/usecase.c:
10511         Removed warnings.
10512         
10513         * lib/connectionpoint.h:
10514         Fixed typo.
10515         
10516 1999-10-09  James Henstridge  <james@daa.com.au>
10518         * objects/custom/*.[ch]: added copyright notices to custom object
10519         files.
10521         * shapes/Circuit/hdiode.shape:
10522         * shapes/Circuit/hzener.shape: 
10523         * shapes/Circuit/opamp.shape:
10524         * shapes/Circuit/vdiode.shape:
10525         * shapes/Circuit/vzener.shape: made adjustments to make the circuit
10526         shapes look nice after the custom shape code changes.
10528         * objects/custom/README: updated docs to cover changes to drawing
10529         code.
10531         * objects/custom/custom_object.c (custom_draw): honour the line
10532         properties when drawing the shape.
10534         * objects/custom/shape_info.[ch]: added support for setting line
10535         properties for individual drawing elements in a custom shape.  You
10536         can set the dash style, dash length, cap style and join style.
10538 1999-10-07  James Henstridge  <james@daa.com.au>
10540         * objects/custom/shape_info.c (parse_style): added a few extra synonyms
10541         for foreground and background.
10543         * objects/custom/custom_object.c (custom_draw): use the new style
10544         information when drawing the object.
10546         * objects/custom/shape_info.[ch]: store all shape style info in the
10547         GraphicStyle structure.  This makes adding support for extra CSS
10548         attributes easier -- we don't have to keep adding extra arguments to
10549         a lot of functions.
10551 1999-10-05  James Henstridge  <james@daa.com.au>
10553         * lib/intl.c (unalias_lang): merged in changes from the i18n code
10554         swiped from gnome-libs.
10556 1999-10-03  Alexander Larsson  <alla@lysator.liu.se>
10558         * objects/standard/image.c (get_directory):
10559         Fix memleak. Found by Kjartan Maraas <kmaraas@online.no>
10561 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
10563         * lib/poly_conn.c (polyconn_destroy):
10564         Fix bug. Access of freed memory.
10565         Rememeber, you can't free the handles of an object
10566         before calling object_destroy(), as it unconnects the handles
10567         therefore referencing them.
10569 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
10571         * app/undo.c:
10572         undo_clear() didn't set stack->depth to zero.
10573         This made other undo functions crash after this had been called
10574         on a "full" stack.
10575         
10576         * dia.xpm:
10577         Slightly modified by Chris Love <clove@exactis.com>
10579 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
10581         * objects/UML/class.h: 
10582         * objects/UML/class_dialog.c:
10583         Retrun NULL ObjectChange on class property change.
10584         This means no crashes, but "UML - Class" doesn't support undo yet.
10585         
10586 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
10587         
10588         * lib/text.c:
10589         Indentation fix.
10591         * objects/UML/classicon.c:
10592         * objects/UML/dependency.c:
10593         * objects/UML/generalization.c:
10594         * objects/UML/implements.c:
10595         * objects/UML/large_package.c:
10596         * objects/UML/lifeline.c:
10597         * objects/UML/message.c:
10598         * objects/UML/object.c:
10599         * objects/UML/realizes.c:
10600         * objects/UML/state.c:
10601         * objects/UML/usecase.c:
10602         Update to new undo (w. get/set_state).
10603         Add object menu to add/delete segments.
10605 1999-09-17  Alexander Larsson  <alla@lysator.liu.se>
10607         * app/menus.c:
10608         Add equal distance alignment.
10610         * app/object_ops.c:
10611         Add equal distance alignment.
10612         Fix bug in adjacent alignment.
10614 1999-09-16  Alexander Larsson  <alla@lysator.liu.se>
10616         * objects/UML/constraint.c: 
10617         Update to new undo (w. get/set_state).
10619 1999-09-15  Alexander Larsson  <alla@lysator.liu.se>
10621         * app/paginate_psprint.c:
10622         Save (parts, more todo) of the info in the print dialog to the
10623         next time it's opened.
10624         Patch from Yo Ric Dude <ricdude@toad.net>
10626 1999-09-14  Alexander Larsson  <alla@lysator.liu.se>
10628         * configure.in:
10629         Updated version string to 0.41cvs.
10631         * objects/UML/assocition.c:
10632         Update to new undo (w. get/set_state).
10633         Add object menu to add/delete segments.
10635         * app/app_procs.c:
10636         Added function debug_break() and called it after all
10637         objects and sheets are loaded. Place a breakpoint here if you
10638         want to debug objects. All symbols should be loaded.
10640 1999-09-12  James Henstridge  <james@daa.com.au>
10642         * app/menus.c (display_menu_items): added print menu item.
10643         (filemenu): always add print menu item -- even if gnome-print is
10644         not installed.
10646         * app/commands.h, app/commands.c (file_print_callback): the print
10647         menu item is now available for both gnome-print and non gnome-print
10648         setups.
10650         * app/paginate_psprint.c (diagram_print_ps): show a dialog to let you
10651         print with the non gnome-print driver.
10653 1999-09-11  James Henstridge  <james@daa.com.au>
10655         * app/paginate_gnomeprint.c (diagram_print_gnome): moved the gnome
10656         printer dialog code out of commands.c.
10658         * app/paginate_psprint.c: new file containing the pagination code for
10659         psprint.
10661         * app/render_eps.c: made a few modifications so as well as producing
10662         EPS files, this renderer can be set up to do postscript printing.
10663         This basically entailed adding an extra function to create a RenderEPS
10664         renderer which did not bother setting the viewport for the document.
10665         That was left for the pagination code.
10667 1999-09-10  James Henstridge  <james@daa.com.au>
10669         * app/render_gnomeprint.c (draw_ellipse, fill_ellipse): since
10670         gnome-print does not support elliptic arcs at the moment, approximate
10671         the ellipse with eight bezier curves.  This gives a pretty good
10672         match to a true ellipse.
10674 1999-09-09  James Henstridge  <james@daa.com.au>
10676         * app/commands.c (file_gnome_print_callback): added support for
10677         scaling the diagram.  Also fixed a few other bugs.
10679         * app/paginate_gnomeprint.c (print_page): added ability to scale
10680         document.  Fixed up test to see if the page has no objects on it.
10681         This should prevent some blank pages being printed.  Non square
10682         objects such as lines could still cause problems.
10684 1999-09-08  James Henstridge  <james@daa.com.au>
10686         * app/commands.c (file_gnome_print_callback): changed from using the
10687         standard printer selection dialog to one that also has a paper size
10688         selector as well.
10690         * commands.[ch]: added callbacks for the print menu item.  Currently
10691         it only does A4 output.  I will make it configurable soon.
10692         
10693         * app/menus.c: add a print diagram menu item if gnome-print support
10694         is enabled.
10695         
10696         * app/paginate_gnomeprint.c, app/paginate_gnomeprint.h: this is a
10697         bit higher level than the gnome-print renderer.  It splits the
10698         diagram into page size chunks and then renders them.  For each
10699         page, it only renders the objects whose bounding box intersects
10700         the page, and it sets the clip mask so that the diagram does not
10701         overlap the margins.
10702         
10703         * app/render_gnomeprint.c, app/render_gnomeprint.h: added a renderer
10704         that uses gnome-print as its back end.
10705         
10706         * configure.in: added a check for gnome-print.  It is disabled by
10707         default because the code is not really working correctly yet.
10709         * app/menus.c: the delete object menu item was missing from the
10710         GnomeUIInfo style menus.
10712 1999-09-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
10714         * configure.in
10715         Added japanese to ALL_LINGUAS.
10716         Fix for Linux on Alpha.
10718 1999-09-07  Alexander Larsson  <alla@lysator.liu.se>
10720         * app/create_object.c (create_object_button_press):
10721         Always initialize tool->obj. Otherwise we store a null
10722         in the undo Change.
10724         * lib/text.c:
10725         Set linestyle before drawing cursor.
10726         Fix undo of backwards delete.
10728 1999-09-05  James Henstridge  <james@daa.com.au>
10730         * dia.spec: updated spec file to distribute $(prefix)/share/dia.
10732         * app/render_svg.c (draw_image): some fixes so that the appropriate
10733         style attributes are set.  Before it was setting line styles on
10734         fill_* functions.  Now it only does this for the draw_* variants.
10736         * app/Makefile.am (run_dia.sh): set the DIA_SHAPE_PATH environment
10737         variable so that custom shapes can be loaded.
10739         * shapes/: new directory for custom shapes.  The Circuit sheet has
10740         been moved here.
10742 1999-09-02  James Henstridge  <james@daa.com.au>
10744         * TODO: removed a few todo items that have been implemented.
10746         * app/interface.c (create_sheets): enabled the popup page menu to the
10747         notebook.  This can make it easier to select different sheets.
10749         * object/custom/Circuit/: added diode, zener diode, ground point and
10750         operational amplifier shapes.
10751         
10752         * objects/custom/Makefile.am: added a note about adding DEBUG_CUSTOM
10753         if you want the output.
10755         * objects/custom/shape_info.c (parse_path): same here.
10757         * objects/custom/load_sheet.c (load_with_readdir): don't print so
10758         much debugging output.  To get the previous level of output, define
10759         DEBUG_CUSTOM.
10761         * objects/custom/shape_info.c (parse_svg_node): polygons were being
10762         recorded as polylines in the ShapeInfo structure.
10764         * objects/custom/README: some notes on writing new custom shapes.
10765         
10766 1999-09-01  James Henstridge  <james@daa.com.au>
10768         * objects/custom/Circuit/hinductor.*:
10769         * objects/custom/Circuit/vinductor.*: added inductor shapes that
10770         also test out the bezier curve and SVG path support.
10771         
10772         * objects/custom/custom_object.c (custom_draw): added support for
10773         drawing bezier paths and filled shapes.
10775         * objects/custom/shape_info.c (parse_path): new function to parse
10776         SVG path elements.  It does not do quadratic beziers or elliptic
10777         arcs though.  Only moves, lines and cubic beziers.
10778         (*): added support for paths.
10780 1999-08-31  James Henstridge  <james@daa.com.au>
10782         * objects/sybase/ltm.c (render_to_store): use the newer bezier API.
10784         * app/render_svg.c (draw_bezier, fill_bezier): updated renderer
10785         interface
10787         * app/render_eps.c (draw_bezier, fill_bezier): updated renderer
10788         interface
10790         * app/render_gdk.c (draw_bezier, fill_bezier): updated renderer
10791         interface.
10793         * lib/render_store.[ch]: use newer bezier functions.
10795         * lib/render.h: changed the bezier drawing functions to use an array
10796         of BezPoint structures instead of normal Point structures to allow
10797         lineto's mixed in with the curveto's.
10798         
10799         * objects/custom/Circuit/pnp.*: added pnp transistor shape.
10800         
10801         * objects/custom/Circuit/Makefile.am (SHAPES): added index.sheet and
10802         xpm images for different shapes to Makefile.
10804         * objects/custom/custom_object.c (custom_object_new): set the icon
10805         for the sheet button if there is one.  Otherwise fall back on the
10806         default custom object icon.
10808         * objects/custom/shape_info.c (load_shape_info): read the sheet
10809         icon name from the shape file.
10811         * app/interface.c (create_sheet_page): if sheet_obj->pixmap == NULL,
10812         check the pixmap_file field for the name of a pixmap file to load
10813         for the tool.
10815         * lib/sheet.h (SheetObj): added pixmap_file field to structure.  It is
10816         at the end of the structure, and it isn't used if the pixmap field
10817         is non NULL, so it should not break binary compatibility.
10819         * objects/custom/load_sheet.[ch]: moved sheet loading code here.  Also
10820         added support for the use of an index.sheet file so you can specify
10821         the ordering of the shapes in the sheet, and also internationalise
10822         the sheet name and actually be able to give a description.  The old
10823         readdir based sheet loading code acts as a fallback if an index.sheet
10824         file can not be found.
10826         * objects/custom/custom_util.[ch]: new file containing useful routines
10827         needed by the custom object code.  Currently only contains a simple
10828         routine for resolving relative paths.
10830         * objects/custom/custom_object.c (custom_draw): fixed problem with
10831         drawing rectangles if the shape has been flipped.
10833 1999-08-30  James Henstridge  <james@daa.com.au>
10835         * objects/custom/custom_object.c (custom_get_object_menu): allow
10836         flipping of custom shapes.  This uses the miggle click object
10837         menu.
10839         * objects/custom/Circuit/npn.shape: fix aspect ratio.
10841         * objects/custom/custom_object.c (custom_update_data): honour the
10842         aspect ratio constraints.
10844         * objects/custom/shape_info.c (load_shape_info): updated aspect ratio
10845         tag parsing, so you can specify a free, fixed or a range for aspect
10846         ratios for the shape.
10848 1999-08-29  James Henstridge  <james@daa.com.au>
10850         * objects/custom/test.xml, objects/custom/Circuit/*.shape: fixed
10851         up shape namespace tag.
10853         * objects/custom/shape_info.c (load_shape_info): check xml:lang
10854         attribute on <description> elements to support i18n for custom
10855         shape descriptions.
10856         Also changed the shape namespace for custom shapes to something
10857         a little more sensible.
10859         * lib/dummy_dep.h (dummy_dep): added extra dummy dependency.
10861         * lib/intl.c: new file containing some functions for i18n stuff.
10863         * app/layer_dialog.c (create_button_box): fixed a warning.
10865         * objects/custom/custom_object.c: use current line style.  Save dash
10866         length.
10868         * objects/flowchart/diamond.c: use current line style.  Save dash
10869         length.
10871         * objects/flowchart/parallelogram.c: use current line style.  Save
10872         dash length.
10874         * objects/flowchart/ellipse.c: use current line style.  Save dash
10875         length.
10877         * objects/flowchart/box.c: use current line style.  Save dash length.
10879         * objects/standard/ellipse.c: make ellipse use current line style.
10881         * objects/standard/box.c: use the line style set in the toolbox for
10882         new boxes, and remember the dash length.
10884         * app/commands.c (view_toggle_rulers_callback): fix reshowing of
10885         rulers.
10887 1999-08-24  James Henstridge  <james@daa.com.au>
10889         * objects/flowchart/ellipse.c (ellipse_update_data): made some changes
10890         to try to stop ellipse to get infinite width/height when we resize,
10891         while trying to keep the text inside the ellipse.
10893         * objects/flowchart/box.c, objects/flowchart/parallelogram.c,
10894         * objects/flowchart/diamond.c, objects/flowchart/ellipse.c: fixed
10895         resizing behaviour, so that you can't push objects round the screen
10896         with the resize handles.
10898         * app/lineprops_area.c (dia_arrow_chooser_init, dia_line_chooser_init):
10899         get the OK buttons in the dialogs to take default clicks.
10901         * objects/custom/custom_object.c: added code so that resizing the
10902         shape does not end up pushing it round the screen.
10904 1999-08-23  Alexander Larsson  <alla@lysator.liu.se>
10906         * app/display.[ch]:
10907         Generate rectangle with the union of the damaged regions.
10908         This is used to optimize the grid paint and the object rendering.
10909         display_render_pixmap passes this info to grid_draw() and data_render().
10911         * app/grid.[ch]:
10912         grid_draw doesn't draw grid lines outside of damaged rectangle.
10913         Sets dashlength when drawing non-solid grid.
10914         
10915         * lib/diagramdata.[ch]:
10916         data_render() and layer_render() takes an optional damaged rectangle
10917         argument. No objects not intersecting this are drawn.
10919         * app/diagram.c:
10920         Fix warning.
10921         Call data_render with NULL update rectangle.
10922         
10923 1999-08-23  James Henstridge  <james@daa.com.au>
10925         * objects/custom/custom_object.c (custom_update_data): if the aspect
10926         ratio is fixed, make sure the shape is not distorted.
10928         * object/custom/shape_info.h, objects/custom/shape_info.c: notice if
10929         a <fixaspectratio/> tag is given in the shape file.
10931         * objects/custom/shape_info.[ch], objects/custom/custom_object.c:
10932         added support for stroke-width, stroke and fill CSS attributes
10933         specified in style attributes of the SVG elements.  The line width
10934         is relative to the user specified line width.  The stroke and fill
10935         attributes can only be used to swap the foreground/background
10936         colours.
10938         * lib/widgets.c (dia_line_style_selector_set_linestyle): set the
10939         sensitivity on the dash length selector when this function is called.
10941         * objects/standard/arc.c: same.  Also handle dash length.
10942         * objects/standard/zigzagline.c: same.
10943         * objects/standard/polyline.c: same.  Also handle dash length.
10944         * objects/standard/line.c: use default arrow/line styles.
10946         * app/interface.c: added callbacks to set the default attributes.
10948         * lib/attributes.c: added implementations of these functions.
10950         * lib/attributes.h: added extra prototypes for the new line properties
10951         area in the toolbox.
10953         * app/interface.c (create_lineprops_area): added line properties
10954         area to bottom of toolbox.
10956         * app/lineprops_area.h: a header exporting a few routines of the
10957         line properties area widgets.
10959         * app/lineprops_area.c: new file containing a selector for arrows
10960         and line styles to go in the main toolbox.
10962 1999-08-22  Alexander Larsson  <alla@lysator.liu.se>
10964         * HACKING:
10965         Update Gtk+ 1.0.5 comment to 1.2.0.
10967         * INSTALL:
10968         Demand libtool 1.3
10970         * acconfig.h:
10971         Add HAVE_LIBPOPT
10973         * configure.in:
10974         Make sure we don't propagate -ldl and -lpopt to all LIBS
10975         by adding new var APP_LIBS that only app/dia links with.
10976                 
10977         * app/Makefile.am:
10978         Update run_dia.sh to load custom and flowchart objects.
10980         * objects/ER/Makefile.am:
10981         * objects/FS/Makefile.am:
10982         * objects/UML/Makefile.am:
10983         * objects/network/Makefile.am:
10984         * objects/standard/Makefile.am:
10985         * objects/sybase/Makefile.am:
10986         Don't build versioned libs.     
10987         
10988 1999-08-22  James Henstridge  <james@daa.com.au>
10990         * configure.in: added objects/custom/Circuit/Makefile to AC_OUTPUT
10991         list.
10993         * objects/Makefile.am (SUBDIRS): added custom to subdir list -- it
10994         should actually work a bit now.
10996         * objects/custom/Circuit/*: a test sheet for the custom shape code.
10997         It is a small collection of circuit elements.
10999         * objects/custom/shape_info.c: fixed up loading of polylines and
11000         polygons.  Before it was removing negative signs :(
11002         * objects/custom/pixmaps/custom.xpm: drew the custom shape icon.  A
11003         placeholder was here before.  I still need to work out how to set
11004         icons for individual custom shapes.
11005         
11006         * objects/custom/custom.c: added code to load the shapes into sheets
11007         properly.  The shape files should be arranged into directories, and
11008         each directory represents a different sheet in the toolbox.  This
11009         will make it very easy to distribute a collection of dia shapes as
11010         a tarball.  I still need to work out internationalisation, and maybe
11011         also shape ordering in the sheet.
11013         * objects/custom/custom_object.c: fixed up dialogs for these objects.
11014         (custom_create): fix for objects without text areas.
11016         * objects/custom/shape_info.h, objects/custom/custom_object.c: loading
11017         and saving of custom object works correctly now.
11019 1999-08-21  James Henstridge  <james@daa.com.au>
11021         * objects/flowchart/ellipse.c: 
11022         * objects/flowchart/diamond.c: 
11023         * objects/flowchart/parallelogram.c: 
11024         * objects/flowchart/box.c: Fixed up a few bugs in these objects when
11025         copying or loading these object types.  Not all the connection
11026         points would be initialised correctly.
11028         * objects/flowchart/Makefile.am (libflowchart_objects_la_LDFLAGS):
11029         similar here.
11031         * objects/custom/Makefile.am (libcustom_objects_la_LDFLAGS): do not
11032         build a versioned library.  It will only ever be dlopen'd, so this
11033         is not a problem.
11035         * objects/custom/custom_object.c (custom_distance_from): allow
11036         selecting the object by clicking on the text.  This fixes problems
11037         where the text box is outside the graphic.
11039         * objects/custom/shape_info.c (load_shape_info): fixed up reading
11040         of connections points.  It should be possible to add connections
11041         to custom objects now.
11043         * objects/custom/custom_object.c (custom_update_data): fixed resizing
11044         due to changes to text.
11046         * configure.in: added extra makefiles.
11047         
11048         * objects/custom/shape_info.[ch]:
11049         * objects/custom/custom_object.c:
11050         * objects/custom/custom.c: the starts of custom shape support in dia.
11051         This is not built by default at the moment, since it is not quite
11052         complete.  When it is, it will let you create more shapes for dia
11053         without writing a line of C.  Its implementation includes buzzwords
11054         such as XML and SVG, so it must be good :)
11056 1999-08-19  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
11058         * app/app_procs.c (app_exit): Use button labels "Quit" and
11059         "Cancel" instead of "Yes" and "No".
11060         Set default action to "Cancel" instead of "Quit".
11062 1999-08-19  James Henstridge  <james@daa.com.au>
11064         * objects/flowchart/flowchart.c: added ellipse object.
11065         
11066         * objects/flowchart/ellipse.c: a new shape for the flowchart toolbox.
11068 1999-08-18  James Henstridge  <james@daa.com.au>d
11070         * app/color_area.c (color_area_edit): small fix to prevent dia from
11071         segfaulting when you try to change the default foreground/background.
11073 1999-08-17  Alexander Larsson  <alla@lysator.liu.se>
11075         * app/diagram.[ch] (diagram_redraw_all):
11076         Added function that redraws all diagrams.
11078         * app/preferences.c (prefs_apply):
11079         Call diagram_redraw_all when prefs are changed.
11081         * app/render_svg.c:
11082         Don't use xmlEncodeEntitiesReentrant(). It doesn't exist on
11083         older libxml's, and the old version works good enought here.
11084         
11085 1999-08-17  James Henstridge  <james@daa.com.au>
11087         * lib/widgets.c: changed handlers that were connected to the GtkButton
11088         "pressed" signal to connect to the "clicked" signal.  This removes the
11089         problem where dialogs are inactive until you click a mouse button
11090         after using a colour selector.
11092         * configure.in: added extra makefiles to AC_OUTPUT list.
11093         
11094         * objects/Makefile.am (SUBDIRS): added flowchart module
11096         * objects/flowchart/*: a collection of shapes for use in flowcharts.
11098         * app/color_area.c (color_area_events): similar here.
11100         * app/linewidth_area.c (linewidth_area_events): sometimes a configure
11101         event is recieved with event->width == 0, which causes a warning if we
11102         try to create a pixmap of that width.
11104         * app/preferences.c, app/preferences.h, app/grid.c: added code to
11105         allow you to configure the colour of the grid, and also lets you
11106         set the grid to use dotted lines instead of solid ones.
11107         
11108         * app/commands.c, app/commands.h, app/diagram.c, app/diagram.h,
11109         app/menus.c, app/Makefile.am: added menu entry for exporting SVG files.
11110         
11111         * app/render_svg.h, app/render_svg.c: an SVG (Scalable Vector Graphics)
11112         export filter.  It is not quite complete, but for most shapes it
11113         works as expected.  Fonts still need a bit of work.
11115 1999-08-11  Robert Brady  <rwb197@ecs.soton.ac.uk>
11117         * configure.in: Added "en_GB" to ALL_LINGUAS.
11119 1999-08-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
11121         * menus.c
11122         Added Undo and Redo to GNOME menus.
11123         
11124         * objects/ER/attribute.c:
11125         * objects/ER/entity.c:
11126         * objects/ER/participation.c:
11127         * objects/ER/relationship.c:
11128         Added get/set_state functions.
11130         * objects/ER/participation.c:
11131         Added add/delete segment.
11133         * po/sv.po
11134         Updated Swedish translation.
11136 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11138         * app/preferences.[hc]:
11139         Added undo_depth pref.
11140         
11141         * app/undo.[ch]:
11142         Never grow stack larger than pref.undo_depth.
11143         undo_depth == 0 means unlimited.
11144         Converted printfs to conditionally compiled DEBUG_PRINTFs.
11145         
11146 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11148         * app/diagram.c:
11149         * app/group.c:
11150         * lib/object.h:
11151         * lib/render_object.c:
11152         * objects/ER/attribute.c:
11153         * objects/ER/entity.c:
11154         * objects/ER/participation.c:
11155         * objects/ER/relationship.c:
11156         * objects/FS/flow-ortho.c:
11157         * objects/FS/flow-poly.c:
11158         * objects/FS/flow.c:
11159         * objects/FS/function.c:
11160         * objects/UML/actor.c:
11161         * objects/UML/association.c:
11162         * objects/UML/class.c:
11163         * objects/UML/classicon.c:
11164         * objects/UML/component.c:
11165         * objects/UML/constraint.c:
11166         * objects/UML/dependency.c:
11167         * objects/UML/generalization.c:
11168         * objects/UML/implements.c:
11169         * objects/UML/large_package.c:
11170         * objects/UML/lifeline.c:
11171         * objects/UML/message.c:
11172         * objects/UML/note.c:
11173         * objects/UML/object.c:
11174         * objects/UML/realizes.c:
11175         * objects/UML/small_package.c:
11176         * objects/UML/state.c:
11177         * objects/UML/usecase.c:
11178         * objects/network/bus.c:
11179         * objects/standard/arc.c:
11180         * objects/standard/box.c:
11181         * objects/standard/ellipse.c:
11182         * objects/standard/image.c:
11183         * objects/standard/line.c:
11184         * objects/standard/polyline.c:
11185         * objects/standard/textobj.c:
11186         * objects/standard/zigzagline.c:
11187         Removed all traces of is_empty(). It doesn't work in an
11188         Undo/Redo world.
11190 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
11192         * app/diagram.c:
11193         * app/group.[ch]:
11194         * app/undo.[ch]:
11195         Undoable grouping and ungrouping.
11197         * app/layer_dialog.c:
11198         * lib/diagramdata.[ch]:
11199         Undoable layer ops.
11201         * app/modify_tool.c:
11202         Undoable unconnect on handle move.
11204         * lib/orth_conn.[ch]:
11205         Working undoable add/remove segment.
11206         Removed endpoint_handles from OrthConn, renamed
11207         midpoint_handles to handles and put the endpoint
11208         handles there.
11210         * objects/standard/zigzagline.c:
11211         * objects/ER/participation.c:
11212         * objects/UML/association.c:
11213         * objects/UML/dependency.c:
11214         * objects/UML/generalization.c:
11215         * objects/UML/realizes.c:
11216         Update for the changes in OrthConn
11217         
11218 1999-07-23  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
11220         * configure.in: Added "de" to ALL_LINGUAS.
11222 1999-07-17  Alexander Larsson  <alla@lysator.liu.se>
11224         * dia.1:
11225         Fixed typo.
11227         * app/display.c:
11228         * po/da.po:
11229         * po/fr.po:
11230         * po/hu.po:
11231         * po/no.po:
11232         * po/pl.po:
11233         * po/sv.po:
11234         Don't have the <Display> etc part of the menu strings
11235         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
11237         * app/diagram.c:
11238         Don't have the <Display> etc part of the menu strings
11239         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
11240         Don't remove is_empty() objects, that don't work with undo.
11242         * lib/objchange.[ch]:
11243         New files.
11244         Definition of ObjectChange. This is essentially an Change
11245         exported to the object libs. It encapsulates a change made
11246         to an objects internals. It can be applied, reverted and freed.
11247         There are also utility functions for doing ObjectChanges that
11248         only get/set the whole state of an object to store the change.
11249         This cannot be used when the object change deletes or adds a
11250         object which has references from other objects, eg. Handles which
11251         might be connected.
11253         * lib/Makefile.am:
11254         Added objchange.c and objchange.h.
11256         * lib/dia_image.c:
11257         Return NULL when loading fails.
11259         * lib/diamenu.h:
11260         Menu callbacks return an ObjectChange.
11262         * lib/dummy_dep.h:
11263         Reference objchange.o
11265         * lib/focus.h:
11266         Key events return ObjectChange if they modify the object.
11268         
11269         * lib/object.h:
11270         Added object_add_handle_at() function.
11271         Apply properties returns an ObjectChange.
11272         Remove ObjectState and the get/set state functions, these
11273         don't always work. Use the new ObjectChange instead.
11274         
11275         * lib/object.c:
11276         Added object_add_handle_at() function implementation.
11277         
11278         * lib/orth_conn.[ch]:
11279         Use ObjectChange. Not finished yet.
11280         Removed get/set/free state functions
11282         * lib/poly_conn.[ch]:
11283         Use ObjectChange.
11284         Don't remove segments that are small.
11285         Removed get/set/free state functions
11287         * lib/text.[ch]:
11288         Use ObjectChange.
11289         Added functions to get/set all text attributes.
11291         * objects/standard/arc.c:
11292         * objects/standard/box.c:
11293         * objects/standard/ellipse.c:
11294         * objects/standard/image.c:
11295         * objects/standard/line.c:
11296         * objects/standard/polyline.c:
11297         * objects/standard/textobj.c:
11298         * objects/standard/zigzagline.c:
11299         Use ObjectChange.
11300         fixed bug in image_set_state.
11301         zigzagline.c not finished yet.
11303         * app/disp_callbacks.c:
11304         Use ObjectChange that are returned from menu callbacks and
11305         key_events for undo.
11307         * app/properties.c:
11308         Use ObjectChange that are returned from properties apply
11309         for undo.
11311         * app/undo.c:
11312         * app/undo.h:
11313         New undo type: ObjectChangeChange. This wraps a change to the
11314         internals of an object (and ObjectChange) in code that does
11315         app specific stuff (object_add_updates etc.)
11317 1999-07-11  Alexander Larsson  <alla@lysator.liu.se>
11319         * lib/orth_conn.[ch]:
11320         Added code for add/delete segment.
11322         * objects/standard/zigzagline.c:
11323         Use the new orth_conn code.
11324         
11326 1999-07-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
11328         * objects/FS/Makefile.am
11329         Removed fs.h from sources.
11331         * Makefile.am
11332         * dia.1
11333         Added man page.
11335 1999-07-07  Alexander Larsson  <alla@lysator.liu.se>
11337         * app/disp_callbacks.c (ddisplay_canvas_events):
11338         Fix for bug. Every other arrow-key press got lost.
11339         patch from Mr. Data Esq. <data@r47h102.res.gatech.edu>
11341         * INSTALL:
11342         change automake.sh to autogen.sh
11343         
11344 1999-06-24  Alexander Larsson  <alla@lysator.liu.se>
11346         * app/diagram.c:
11347         Don't remove 'empty' objects.
11348         This violent destruction of objects won't work
11349         with the new undo framework.
11351         * app/disp_callbacks.c:
11352         Save undo info for object menu calls and key_events.
11354         * app/properties.c:
11355         Save undo info on properties apply.
11357         * lib/dia_image.[ch]:
11358         Add refcounting for images.
11360         * app/render_eps.c:
11361         * app/render_gdk.c:
11362         * lib/render.h:
11363         DiaImage * -> DiaImage
11365         * app/undo.[ch]:
11366         Add undo functions for object state changes.
11368         * lib/focus.h:
11369         * lib/text.c:
11370         change of semntics for focus->key_event.
11371         Now returns TRUE if the object recieving the event
11372         was changed.
11374         * lib/object.h:
11375         Comment changes.
11377         * lib/orth_conn.[ch]:
11378         Don't automatically create and delete segments when
11379         handles are moved. This is incompatible with undo.
11380         Added state get, set and free functions.
11382         * lib/orth_conn.[ch]:
11383         Added state get, set and free functions.
11385         * objects/UML/object.c:
11386         * objects/UML/uml.c:
11387         Fixed typo "UML - Objet" -> "UML - Object".
11388         Saved old for backwards compatibility.
11390         * objects/standard/arc.c:
11391         * objects/standard/box.c:
11392         * objects/standard/ellipse.c:
11393         * objects/standard/image.c:
11394         * objects/standard/line.c:
11395         * objects/standard/polyline.c:
11396         * objects/standard/textobj.c:
11397         * objects/standard/zigzagline.c:
11398         Added get/set state functions.
11399         Textobj has a redo crash-bug.
11400         Zigzagline needs object menus to add segments.
11401         
11403 1999-06-20  Alexander Larsson  <alla@lysator.liu.se>
11405         * app/render_eps.c (set_dashlength):
11406         Don't generate eps files with zero dash-length.
11408 1999-06-16  Alexander Larsson  <alla@lysator.liu.se>
11410         * app/commands.c:
11411         * app/create_object.c:
11412         * app/undo.[ch]:
11413         Finished undo for create and paste.
11414         
11415         * lib/object.h:
11416         Started properties undo.
11418 1999-06-14  Alexander Larsson  <alla@lysator.liu.se>
11420         * TODO:
11421         Added resizeable groups.
11423         * app/app_procs.c:
11424         Removed unused variable.
11426         * app/commands.c:
11427         * app/undo.[ch]:
11428         Undo/redo for cut/delete done.
11430         * app/create_object.c:
11431         * app/modify_tool.c:
11432         * lib/diagramdata.[ch]:
11433         * app/diagram.[ch]:
11434         renamed diagram_add_selected -> diagram_select
11435         renamed diagram_remove_selected -> diagram_unselect
11436         
11437         * app/properties.[ch]:
11438         Added properties_hide_if_shown() function.
11440 1999-06-13  Alexander Larsson  <alla@lysator.liu.se>
11442         * app/undo.[ch]:
11443         * app/Makefile.am:
11444         Undo functions.
11445         
11446         * app/commands.[ch]
11447         * app/modify_tool.[ch]
11448         * app/object_ops.[ch]
11449         * app/connectionpoint_ops.c
11450         * app/menus.c
11451         Use undo functions.
11452         WARNING: Not finished. Will break.
11453         Finished: move object, move handle.
11455         * app/diagram.[ch]
11456         Added diagram_selected_break_external() function.
11457         It removes all connections between selected objects
11458         and non-selected.
11459         Add undo stack to Diagram.
11460         
11461         * lib/diagramdata.[ch]
11462         Added layer_remove_objects() function
11463         
11464 1999-06-11  Fredrik Hallenberg  <hallon@lysator.liu.se>
11466         * objects/FS/Makefile.am
11467         * objects/sybase/Makefile.am
11468         Now uses GNOME_CFLAGS.
11470         * app/app_procs.c
11471         Now compiles with GNOME even if popt.h isn't available.
11473 1999-06-10  Alexander Larsson  <alla@lysator.liu.se>
11475         * configure.in
11476         * objects/Makefile.am
11477         * objects/sybase/*
11478         First version of sybase objects from
11479         Brian Bruns <camber@umcc.ais.org>
11481 1999-06-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
11483         * configure.in
11484         Added fr to ALL_LINGUAS
11486 1999-06-09  Fredrik Hallenberg  <hallon@lysator.liu.se>
11488         * configure.in
11489         * app/app_procs.c
11490         Popt-code is activated if popt is available.
11492 1999-06-08  Alexander Larsson  <alla@lysator.liu.se>
11494         This is a patch from David Thompson <dcthomp@mail.utexas.edu>
11495         
11496         * lib/orth_conn.[ch]:
11497         Added orthconn_get_middle_handle()
11499         * lib/text.[ch]:
11500         Added text_set_cursor_at_end()
11501         
11502         * objects/FS/*
11503         Added first version of functions structure diagrams.
11504         
11505 1999-05-24  Alexander Larsson  <alla@lysator.liu.se>
11507         * app/modify_tool.c:
11508         Include math.h to remove warning.
11510         * app/commands.c (dialogs_properties_callback):
11511         Bring up correct properties dialog when selected
11512         from menu.
11513         From Dan Cohn <dan@internap.com>
11515 1999-05-20  Alexander Larsson  <alla@lysator.liu.se>
11517         Patch from Lars R. Clausen 
11518         
11519         * app/modify_tool.c:
11520         Changed abs to fabs.
11522 1999-05-19  Alexander Larsson  <alla@lysator.liu.se>
11524         * INSTALL: 
11525         * configure.in:
11526         Require Gtk+ 1.2.0
11528 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
11530         Patches from Dan Cohn <dan@internap.com>
11531         
11532         * app/commands.[ch]: 
11533         * app/display.[ch]: 
11534         * app/menus.c:
11535         * app/preferences.[ch]:
11536         Implements ability to turn on/off connection points in
11537         current drawing and in global prefs.
11539 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
11541         * lib/widgets.c (dia_line_style_selector_init): 
11542         Fixed warnings.
11543         
11544         * lib/diagramdata.c (layer_update_extents):
11545         Fixed uninitialized variable error.
11547 1999-05-17  Alexander Larsson  <alla@lysator.liu.se>
11549         * lib/dia_image.c:
11550         Made some changes to the gdk_imlib visual+colormap setup.
11552 1999-05-17  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11554         * objects/UML/usecase.c: 
11555        * objects/UML/lifeline.c
11556         Fine tunning.
11558         * objects/UML/object.c: 
11559         * objects/UML/message.c: 
11560         Changed font from Courier to Helvetica.
11562         * lib/widgets.c: 
11563         * lib/widgets.h:
11564         Added dash lenth to the LineStyle widget.
11565         
11566         * objects/standard/ellipse.c :
11567         * objects/standard/zigzagline.c: 
11568         * objects/standard/line.c: 
11569         Added dash lenght property.
11571 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
11573         * app/render_eps.c:
11574         First shot at latin1 encoded eps files.
11575         Works, but the eps files get a bit large.
11576         
11577 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
11579         * objects/UML/class.[ch]: 
11580         * objects/UML/uml.[ch]:
11581         Reverted the line wrap changes.
11582         Some day this might return, but it has to be selectable and
11583         default to off for loaded objects, otherwise it breaks file
11584         format compatibility.
11585         There was also some complains about how it looked, so a making it
11586         selectable is good for this too.
11588 1999-05-15  Alexander Larsson  <alla@lysator.liu.se>
11590         * objects/UML/class.[ch]:
11591         Some indentation cleanup.
11592         Added wrap_lines variable to class.
11593         I'll fix the line break stuff tomorrow.
11595 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
11597         * lib/dummy_dep.h:
11598         Added ref to poly_conn.o.
11600         * objects/standard/polyline.c (polyline_draw): 
11601         * objects/standard/zigzagline.c (zigzagline_draw): 
11602         * objects/standard/arc.c (arc_draw): 
11603         * objects/standard/line.c (line_draw):
11604         Draw lines before arrows. This makes hollow arrows not
11605         show the line.
11607 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
11609         Changes from Kim Peasley <kpeasley@ior.com> 
11610                 
11611         * objects/UML/class.c:
11612         Break lines with long operations so classes won't be
11613         so wide.
11615         * objects/UML/uml.[ch]:
11616         Helperfunctions for the above.
11617         
11618         * objects/UML/objects.c:
11619         Fix bug that duplicated the text in the attributes
11620         textwidget each time the object was selected.
11621         
11622 1999-05-12  Alexander Larsson  <alla@lysator.liu.se>
11624         Changes from Lars R. Clausen <lrclause@cs.uiuc.edu>
11625         
11626         * app/modify_tool.c:
11627         * app/modify_tool.h:
11628         Control-drag is restricted to vertical/horizontal movement
11629         
11630         * lib/object.h:
11631         ModifierKeys argument added to object_move_handle
11633         * app/connectionpoint_ops.c:
11634         * app/create_object.c:
11635         * app/object_ops.c:
11636         * objects/ER/attribute.c:
11637         * objects/ER/entity.c:
11638         * objects/ER/participation.c:
11639         * objects/ER/relationship.c:
11640         * objects/UML/actor.c:
11641         * objects/UML/association.c:
11642         * objects/UML/class.c:
11643         * objects/UML/classicon.c:
11644         * objects/UML/component.c:
11645         * objects/UML/constraint.c:
11646         * objects/UML/dependency.c:
11647         * objects/UML/generalization.c:
11648         * objects/UML/implements.c:
11649         * objects/UML/large_package.c:
11650         * objects/UML/lifeline.c:
11651         * objects/UML/message.c:
11652         * objects/UML/note.c:
11653         * objects/UML/object.c:
11654         * objects/UML/realizes.c:
11655         * objects/UML/small_package.c:
11656         * objects/UML/state.c:
11657         * objects/UML/usecase.c:
11658         * objects/network/bus.c:
11659         * objects/standard/arc.c:
11660         * objects/standard/box.c:
11661         * objects/standard/ellipse.c:
11662         * objects/standard/image.c:
11663         * objects/standard/line.c:
11664         * objects/standard/polyline.c:
11665         * objects/standard/textobj.c:
11666         * objects/standard/zigzagline.c:
11667         Changed calls to move_handle to pass the new argument.
11668         
11669         * lib/widgets.c:
11670         * lib/widgets.h:
11671         Default line width, color etc #define'd
11672         
11673         * po/da.po:
11674         Updates of danish menus
11676 1999-05-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
11678         * dia.xpm
11679         * dia_gnome_icon.png
11680         * dia_gnome_menu_icon.png
11681         * dia_logo.png
11682         Graphics by Toussaint Frédéric <ftoussin@club-internet.fr>.
11684         * app/commands.c
11685         About dialog shows dia_logo.png. Removed the GNOME about dialog.
11687         * Makefile.am
11688         Distribute the icons and install logo in pkgdatadir.
11689         
11690         * app/Makefile.am
11691         Added DATADIR-define.
11692         
11693 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
11694         Patches from Enrico Scholz <enrico.scholz@wirtschaft.tu-chemnitz.de>
11696         * dia.spec:
11697         Updated version number, made setup quiet, can build from cvs,
11698         --enable-gnome, now using automake 1.4 DESTDIR feature, install-strip
11700         * lib/Makefile.am
11701         * objects/ER/Makefile.am
11702         * objects/UML/Makefile.am
11703         * objects/network/Makefile.am
11704         * objects/standard/Makefile.am
11705         now builds better with gnome
11707         * objects/UML/class_dialog.c
11708         Fixed typo -> po files must be updated too!!
11709         
11710 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
11712         * lib/dummy_dep.h:
11713         Added reference so that widgets.o gets linked to the app.
11715 1999-04-23  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11717         * objects/UML/classicon.c: 
11718         Added object mode.
11720         * objects/UML/actor.c: 
11721         Changed position of 'snap-to-grid' so connection points are
11722         in the grid.
11724 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
11726         * objects/UML/classicon.c:
11727         Changed position of 'snap-to-grid'.
11728         By Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
11729         
11730 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
11732         * objects/network/antenna.c
11733         * objects/network/flash.c
11734         * objects/network/hub.c
11735         * objects/network/modem.c
11736         * objects/network/modularswitch.c
11737         * objects/network/rj45plug.c
11738         * objects/network/scead-plug.c
11739         * objects/network/network.c
11740         * objects/network/Makefile.am
11741         * objects/network/pixmaps/antenna.xpm
11742         * objects/network/pixmaps/flash.xpm
11743         * objects/network/pixmaps/hub.xpm
11744         * objects/network/pixmaps/modem.xpm
11745         * objects/network/pixmaps/modularswitch.xpm
11746         * objects/network/pixmaps/rj45plug.xpm
11747         * objects/network/pixmaps/sceadplug.xpm
11748         * objects/network/pixmaps/Makefile.am
11749         Lots of new network objects from
11750         Roland Steinbach <roland@support-system.com>.
11752 1999-04-15  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11754         * objects/UML/classicon.c: 
11755         Fixed connection positions, saved type as int (it has 3 states),
11756         and other small fixes.
11757         
11758 1999-04-14  Alexander Larsson  <alla@lysator.liu.se>
11760         * app/preferences.c:
11761         * app/load_save.c:
11762         Added preference compress_save. It lets dia save uncompressed
11763         xml files.
11765         * objects/UML/class.c:
11766         Fixed bug with size calculation on methods that had class scope.
11767         
11768 1999-04-13  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11770         * objects/UML/usecase.c: 
11771         Added collaboration mode
11772         Fixed connection points with text > ellipse bug and other 
11773         small things
11775         * objects/UML/state.c:
11776         Fixed bug of bad position of text after being either end
11777         or begin, moved and returned to text
11779 1999-04-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
11781         * app/preferences.c: Add prototype declaration for prefs_apply.
11783 1999-04-11  Alexander Larsson  <alla@lysator.liu.se>
11785         * app/preferences.c:
11786         Added 'ok' button.
11787         Apply don't hide window.
11789         * app/properties.c:
11790         Add 'ok' button.
11792         * objects/UML/object.c:
11793         * objdcts/UML/state.c:
11794         Some data was not copied on copy.
11796         This patch is from
11797         Ben Hochstedler <benh@eeyore.moneng.mei.com>
11799 1999-04-09  Alexander Larsson  <alla@lysator.liu.se>
11801         * app/Makefile.am:
11802         Changed link order between X and libxml.
11803         Some people had problems with an old libz in their
11804         x11 directory.  
11806 1999-04-09  Kjartan Maraas  <kmaraas@online.no>
11808         * po/no.po: updated translation.
11809         
11810 1999-04-08  Lars R. Clausen <lrclause@cs.uiuc.edu>
11812         * lib/message.c (message_error):
11813         Fixed small error.
11815         * app/commands.[ch]:
11816         * app/diagram.[ch]:
11817         Added begining of xfig importing
11819 1999-04-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11821         * objects/UML/pixmaps/state.xpm: 
11822         * objects/UML/state.c: 
11823         New UML object state machine.
11825         * objects/UML/uml.c:
11826         * objects/UML/Makefile.am:
11827         * objects/UML/pixmaps/Makefile.am:
11828         Added the state object.
11829         
11830 1999-04-08  Alejandro Aguilar Sierra  <ale@bucefalo>
11832         * objects/UML/usecase.c: 
11833         Added dialog to allow move text outside the ellipse.
11835 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
11837         * Released Dia 0.41
11838         Tag called DIA_0_41
11840         * NEWS:
11841         Updates for 0.41.
11842         
11843 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
11845         * configure.in:
11846         Updated version number to 0.41
11848         * po/*.po:
11849         Update po-files
11851 1999-04-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
11853         * app/app_procs.c
11854         Changed errormessage for --export-to-ps. Removed call to 
11855         g_log_set_always_fatal().
11857         * app/diagram.c
11858         * app/disp_callbacks.c
11859         * app/load_save.c
11860         (i18n) Removed gettext from some debugmessages.
11862         * app/menus.c
11863         Small fix in GNOME-menus. Added warning that will help track
11864         problems with translations.
11866         * po/sv.po
11867         (i18n) Updated swedish translation.
11869 1999-04-02  Alexander Larsson  <alla@lysator.liu.se>
11871         * po/da.po:
11872         New updates
11874 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
11876         * po/da.po:
11877         * po/no.po:
11878         Some fixes.
11879         
11880 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
11882         * po/da.po:
11883         (i18n) Updated the danish translation.
11884         From Lars R. Clausen.
11886 1999-04-01  Fredrik Hallenberg  <hallon@lysator.liu.se>
11888         * app/menus.c
11889         (i18n) The popup menu is translated now.
11891         * po/sv.po
11892         (i18n) Updated swedish translation.
11894 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
11896         * Released Dia 0.40
11897         Tag called DIA_0_40
11899         * NEWS:
11900         Updated for new release
11901         
11902 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
11904         * objects/network/bus.c:
11905         Added initialization of properties dialog to NULL.
11907         * app/commands.c (edit_cut_callback):
11908         Update menu sensitivity when cut object.
11910         * app/modify_tool.c (click_select_object):
11911         * app/modify_tool.c (modify_button_release): 
11912         Call diagram_update_menu_sensitivity() when
11913         selecting objects to update stuff that depends
11914         on selected/not selected.
11916 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
11918         * Makefile.am:
11919         Change order of subdir so that libintl.a builds.
11920         Now passed make distcheck.
11922 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
11924         * lib/font.c (init_x11_font):
11925         Stupid bug fixed.
11927 1999-03-28  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
11929         * objects/UML/pixmaps/classicon.xpm: 
11930         * objects/UML/classicon.c:
11931         * objects/UML/uml.c:
11932         Added the class stereotype icon objects.
11934         * app/commands.c:
11935         Changed default ps extension from .ps to .eps.
11936         
11937 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
11939         * lib/Makefile.am:
11940         Added diamenu.h and intl.h
11942         * lib/font.c:
11943         Stupid typo fix.
11944         
11945         * objects/UML/pixmaps/Makefile.am:
11946         Added message.xpm
11948         * objects/standard/pixmaps/Makefile.am:
11949         Added image.xpm
11951 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
11953         * lib/font.c:
11954         Use a scalable font before fixed when real font not found.
11956         * app/commands.c:
11957         Removed warning.
11959         * objects/standard/image.c:
11960         Better handling of loading/saving of images.
11962         * INSTALL:
11963         Added some text about cvs, fonts and rewrote some parts.
11965         * TODO:
11966         Updated with new stuff.
11967         
11968         * configure.in:
11969         Bump up version number to 0.40.
11970         
11971 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
11973         * app/display.c:
11974         Moved diagram_add_ddisplay() call into new_display().
11975         Fixed new_display to not use uninitialized variables
11976         causing loaded files to show up as black (or garbage).
11977         
11978         * app/commands.c:
11979         * app/app_procs.c:
11980         Removed unneeded calls to diagram_add_ddisplay().
11981         
11982 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
11984         * objects/UML/lifeline.c:
11985         Fixed bug in copy.
11986         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
11988         * objects/UML/message.c:
11989         Fixed bug loading messages with null-text.
11990         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
11992 1999-03-27  Fredrik Hallenberg  <hallon@lysator.liu.se>
11994         * po/sv.po
11995         Updated swedish translation.
11997         * app/menus.c
11998         (GNOME) Removed help-browser from help menu. Fixed typo.
12000         * app/interface.c
12001         (GNOME) Accelerators in diagrams should work now. 
12003 1999-03-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
12005         * app/app_procs.c
12006         * app/commands.c
12007         * app/defaults.c
12008         * app/disp_callbacks.c
12009         * app/display.c
12010         * app/interface.c
12011         * app/menus.c
12012         * app/preferences.c
12013         * app/render_eps.c
12014         * lib/diagramdata.c
12015         * lib/font.c
12016         * lib/message.c
12017         * lib/widgets.c
12018         * objects/ER/*.c
12019         * objects/UML/*.c
12020         * objects/network/*.c
12021         * objects/standard/*.c
12022         * po/update_pofiles_in.sh
12023         * po/POFILES.in
12024         More i18n. All strings (expect rare debug messages) can be
12025         translated now. Moved intl.h from app to lib. Updated
12026         update_pofiles_in.sh to check all .c-files.
12028 1999-03-23  Alexander Larsson  <alla@lysator.liu.se>
12030         * app/disp_callbacks.c (ddisplay_canvas_events):
12031         Don't drop keys while num-lock, scroll-lock etc is on.
12033 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12035         * app/render_eps.c (draw_image):
12036         Fixed exporting of images.
12037         Still not perfect, but not outright buggy.
12038         
12039 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12041         * configure.in:
12042         * po/hu.po:
12043         Added hungarian translation. By Shooby Ban <bansz@szif.hu>.
12045         * app/Makefile.am:
12046         Added $* to the dia call in run_dia.sh
12048 1999-03-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12049         
12050         * lib/color.[ch]:
12051         Added color_equals() call.
12053         * objects/standard/arc.c:
12054         * objects/standard/line.c:
12055         Don't save unneccesary data.
12056         
12057         * objects/standard/box.c:
12058         * objects/standard/ellipse.c:
12059         * objects/standard/image.c:
12060         * objects/standard/polyline.c:
12061         * objects/standard/zigzagline.c:
12062         Share properties dialog.
12063         Don't save unneccesary data.
12064         
12065 1999-03-22  Seth Alves  <alves@hungry.com>
12067         * app/menus.c:
12068         * app/diagram.c:
12069         * app/display.c:
12070         small changes so that gnome menus aren't broken
12071         
12072 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
12074         * po/da.po:
12075         Added danish translation from lrclause@cs.uiuc.edu.
12077         * po/POFILES.in:
12078         Updated file.
12080         * po/update_pofiles_in.sh:
12081         Added script that updates POFILES.in.
12082         This should probably be run automatically from somewhere.
12084 1999-03-19  Alexander Larsson  <alla@lysator.liu.se>
12086         * app/diagram.[ch]:
12087         Added function diagram_update_menu_sensitivity() which
12088         sets the sensitivity of some menu items. This function
12089         is called at each diagram state change (from diagram_modified()).
12090         This is needed  because otherwise the keyboard accelerators
12091         don't work correctly.
12093         * app/display.[ch]:
12094         Changed display_set_menu_sensitivity() to display_update_menu_state().
12095         Moved lots of code to diagram_update_menu_sensitivity() in
12096         diagram.c. Optimized to only look up menu-items from path:s once.
12097         
12098         * app/disp_callbacks.c:
12099         * app/interface.c:
12100         When we get a GDK_FOCUS_CHANGE, update menu sensitivity.
12101         Need to set GDK_FOCUS_CHANGE_MASK.
12102         
12103         * app/create_object.c:
12104         Call diagram_modified when an object has been created and
12105         selected so that the menu sensitivity is updated. 
12107         * app/menus.[ch]:
12108         removed menus_set_sensitive() and menus_set_state(). Exported
12109         renamed function menus_get_item_from_path().
12111 1999-03-15  Alexander Larsson  <alla@lysator.liu.se>
12113         * app/disp_callbacks.c:
12114         Show (empty) object menus on object that has none.
12115         Show title on object menus.
12117         * app/display.c:
12118         Set zoom factor correctly when opening new displays.
12119         Better setting of scrollbars.
12121         * app/grid.c:
12122         * app/menus.h:
12123         Some reformating cleanup.
12125         * lib/diamenu.h:
12126         Added title to object menus.
12128         * objects/*/*.c:
12129         Added object menu method (NULL-valued) to all objects.
12131         * objects/standard/polyline.c:
12132         Added title to object menu.
12134 1999-03-14  Alexander Larsson  <alla@lysator.liu.se>
12136         * app/preferences.[ch]:
12137         New files. Implements the preferences dialog and
12138         loading/saving of ~/.diarc.
12140         * app/Makefile.am:
12141         Added preferences.[ch].
12143         * app/app_procs.c:
12144         Load preferences on startup.
12146         * app/commands.[ch]:
12147         Added file_preferences_callback to show the preferences dialog.
12149         * app/create_object.c:
12150         Update extents when creating object.
12151         Use the reset_tools_after_create preferences setting.
12153         * app/display.c:
12154         Use preferences when creating new display.
12156         * app/menus.c:
12157         Add preferences to menu.
12159         * app/defaults.c:
12160         * app/layer_dialog.c:
12161         * app/properties.c:
12162         Don't allow shrinking of dialog.
12163         Add i18n of some strings.
12165 1999-03-11  Kjartan Maraas  <kmaraas@fib.hl.no>
12166         * po/no.po:
12167         Norwegian translation added.
12168         
12169 1999-03-11  Alexander Larsson  <alla@lysator.liu.se>
12171         * objects/standard/line.c: 
12172         * objects/standard/arc.c: 
12173         * objects/standard/polyline.c: 
12174         * objects/standard/zigzagline.c:
12175         Loading of arrow data fixed.
12177 1999-03-09  Alexander Larsson  <alla@lysator.liu.se>
12179         * app/commands.c:
12180         Update extents when saving and exporting to postscript.
12181         Fixes a bug with postscript bounding-box being wrong.
12183         * app/defaults.c:
12184         Changed border width from 5 to 2.
12186         * app/group.c:
12187         Move grouped objects by the move-point of the first object.
12188         Fixes bug that made all objects in the group be off-grid
12189         when moving the group, even though all objects was on-grid.
12191         * app/layer_dialog.c:
12192         Update extents when changing layer.
12194 1999-03-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12196        * objects/UML/uml.c: 
12197        * objects/UML/component.c: 
12198        * objects/UML/pixmaps/component.xpm: 
12199        Added the UML component object
12200         
12201 1999-03-04  Seth Alves  <alves@hungry.com>
12203         * objects/UML/generalization.c (generalization_create): avoid
12204         math on uninitialized genlz->text_width (NaN causes sigfpe)
12205         
12206         * objects/UML/realizes.c (realizes_create): same
12208         * objects/UML/dependency.c (dependency_create): same
12210 1999-03-01  Seth Alves  <alves@hungry.com>
12212         * app/display.c (ddisplay_active): don't fly a warning panel
12213         if ddisplay_active is called when no views are open.
12215         * app/commands.c (set_default_file_selection_directory): set
12216         file selector's default directory if there is already
12217         a document open.
12219 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12221         * INSTALL:
12222         New info about imlib requirements.
12224         * Configure.in:
12225         Added lib/pixmaps/Makefile to created makefiles.
12227         * app/app_procs.c:
12228         * app/commands.c:
12229         Change from obsoleted to newer gtk calls.
12230         
12231         * load_save.c:
12232         Pass filename of the diagram when loading and saving.
12233         This creates better oportunities to handle filename saving.
12235         * lib/object.h:
12236         Pass filenames to load and save methods.
12237         
12238         * lib/dia_image.[ch]:
12239         Added dia_image_get_broken() call that returns a image which
12240         is used for 'broken' images.
12241         
12242         * lib/pixmaps/.cvsignore:
12243         * lib/pixmaps/Makefile.am:
12244         * lib/pixmaps/broken.xpm:
12245         New files for the broken image bitmap.
12247         * lib/widgets.c:
12248         Fixed bug with double destroyed filedialog.
12250         * objects/*/*.c:
12251         Updated load and save prototypes to use the new filename argument.
12253         * objects/image.c:
12254         Render broken image instead of line when got no image.
12255         Use the new filename in load and save to save (if possible)
12256         relative pathnames and to better try to find loaded images.
12258 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12260         * TODO:
12261         Some updates to the todo file.
12262         
12263         * app/menus.c:
12264         * app/display.c:
12265         Place over/place over => sent to back/bring to front.
12266         Added some keyboard shortcuts to menus.
12267         
12268 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
12270         * lib/dia_xml.c:
12271         Changed string saving/loading to a new method. This should
12272         be much better att handling &,<,> and whitespaces.
12273         Loading strings of the old kind is still supported for backwards
12274         compatibility.
12276         * samples/ER-demo.dia:
12277         * samples/UML-demo.dia:
12278         Updated to use the new strings.
12279         
12280         * app/load_save.c:
12281         statusbar modified update fix.
12283 1999-02-27  Seth Alves  <alves@hungry.com>
12285         * app/app_procs.c (app_init): added a --export-to-ps option
12286         which will cause dia to load a dia file and save it as ps
12287         and then exit.  this is a little bogus, because it still
12288         pops up a window.  this option only shows up if --enable-gnome
12289         is used
12291         * app/display.c (display_set_menu_sensitivity): no Edit/Delete
12292         menu when built with --enable-gnome
12294         * app/interface.c (create_display_shell): build status bar
12295         even if --enable-gnome is used
12297         * app/menus.c: menu fixes for --enable-gnome
12299         * app/commands.c (file_open_dialog_ok_callback): fixed up
12300         menus when --enable-gnome is used
12301         (file_export_to_eps_callback): set a default file name
12302         when dialog is created
12304 1999-02-27  Alexander Larsson  <alex@c125.ryd.student.liu.se>
12306         * objects/UML/association.c (association_create):
12307         Fixed usage of not initialized variable.
12308         Pointed out by Seth Alves <alves@hungry.com>.
12310 1999-02-24  Alexander Larsson  <alex@c125.ryd.student.liu.se>
12312         * configure.in:
12313         Fixed detection of gnome-xml.
12314         From Valtteri Vuorikoski <vuori@k.notcom.org>.
12315         
12316         * app/app_procs.c:
12317         Fixed error detection on dlsym calls. 
12318         From Valtteri Vuorikoski <vuori@k.notcom.org>.
12320 1999-02-23  Alexander Larsson  <alla@lysator.liu.se>
12322         * objects/UML/message.c (fill_in_dialog):
12323         Fixed warnings.
12325 1999-02-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12327         * objects/standard/zigzagline.c:
12328         * objects/standard/polyline.c:
12329         * objects/standard/line.c:
12330         * objects/standard/arc.c:
12331         * lib/widgets.h:
12332         * lib/arrows.h:
12333         * lib/widgets.c:
12334         Support for sizeable arrows. 
12336         * objects/standard/box.c:
12337         * objects/standard/ellipse.c:
12338         * objects/standard/image.c:
12339         Changed creation handle to lower-right.
12340         Transparent box/ellipse.
12341         
12342         * objects/standard/image.c:
12343         Better layout of properties boxes.
12345 1999-02-20  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12347         * objects/UML/message.c (fill_in_dialog): 
12348         Fixed dialog fill in. Common dialog for all messages.
12350         * objects/UML/object.c: 
12351         Added multiple instance. Dialog related bugs fixed.
12352         Common dialog for all instances. Completed copy and destroy.
12354         * objects/UML/lifeline.c (lifeline_load): 
12355         Conn initialization bug fixed and few bad loading prevention flags.
12356         Common dialog for all lifeline objects.
12357         
12358 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12360         * lib/dia_image.[ch]:
12361         More work on the DiaImage abstraction.
12362         
12363         * app/app_procs.c:
12364         * app/render_eps.c:
12365         * app/render_gdk.c:
12366         * objects/standard/image.c:
12367         Use the new DiaImage calls.
12369 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12371         * app/menus.c:
12372         * app/display.c:
12373         Reversed the meaning of align horizontal/vertical.
12375 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12377         * app/load_save.c (diagram_load):
12378         Statusbar update fix.
12380 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12382         * app/interface.c (create_display_shell):
12383         Fixed status bar size.
12384         
12385 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
12387         * lib/dia_image.[ch]:
12388         Added extern declaration for dia_image_release.
12389         Removed dia_image_draw, as it's not neseccary.
12391 1999-02-14  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12392         
12393         * app/object_ops.c: 
12394         * app/menus.c: 
12395         Added equal distance alignment both vertical and horizontal.
12396         
12397         * objects/UML/object.c: 
12398         Added a couple of attributes to load/read that were missing.
12400         * objects/UML/lifeline.c: 
12401         Better handling of handles. Fixed another bug I forgot to add
12402         to my last patch.
12403         
12404 1999-02-13  Alexander Larsson  <alla@lysator.liu.se>
12406         Patch from Lars Clausen <lrclause@shasta.cs.uiuc.edu>
12407         
12408         * lib/dia_image.[ch]:
12409         * lib/Makefile.am:
12410         New files. DiaImage wraps the GdkImlibImage.
12412         * lib/render.h:
12413         * app/render_eps.c:
12414         * app/render_gdk.c:
12415         * lib/render_store.[ch]:
12416         * objects/standard/image.c:
12417         Use the new DiaImagetype.
12419         * lib/widgets.c:
12420         Removed unused variable to eliminate  warning.
12422 1999-02-11  Alexander Larsson  <alla@lysator.liu.se>
12424         * objects/standard/box.c:
12425         Added rounded corners on the box object.
12427         * lib/widgets.[ch]:
12428         Updated the DiaFileSelector widget.
12429         
12430 1999-02-09  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12432         * objects/UML/object.c (objet_draw): 
12433         Completed underlining of all object name lines. 
12435         * objects/UML/message.c (fill_in_dialog): 
12436         Fixed a bug that filled incorrectly the message's dialog.
12438         * objects/UML/lifeline.c (lifeline_load): 
12439         Some cleanning and fixed a couple of bugs that caused
12440         crashes after reading diagrams with lifelines.
12442         * lib/text.c: 
12443         Added flags to prevent crash with void strings
12445 1999-02-07  Matthias Köster <Matthias.Koester@Informatik.Uni-Oldenburg.DE>
12446         * app/display.[ch]:
12447         Added statusbar to the display widget. Currently shows the zoom
12448         factor and modified flag of the viewed diagram. The statusbar is
12449         updated upon calls to ddisplay_zoom and ddisplay_update_statusbar.
12450         This caused the following additions:
12451         
12452         * app/diagram.[ch]:
12453         Added function diagram_set_modified. Calls
12454         ddisplay_update_statusbar for all displays showing the modified diagram.
12455         Changed diagram_modified to call diagram_set_modified.
12456         
12457         * app/interface.c:
12458         Added the creation of the statusbar.
12459         
12460         * app/load_save.c:
12461         diagram_save now calls diagram_set_modified instead of setting
12462         dia->modified. Needed to force call to display_update_statusbar
12463         
12464         * app/commands.c:
12465         Changed the way view_show_all works. Now calls ddisplay_zoom
12466         instead of directly setting the zoom_factor, so the zoom factor is
12467         correctly shown in the statusbar.
12469         * app/magnify.c:
12470         Fixed rubberband zoom to use ddisplay_zoom().
12471         
12472 1999-02-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
12474         * app/app_procs.c
12475         Rudimentary GNOME session management.
12476         
12477         * app/disp_callbacks.c
12478         * app/interface.c
12479         * app/menus.c
12480         * app/menus.h
12481         GNOME menus. Problems: 
12482         Callbacks doesn't get user_data.
12483         Weird warnings when creating popup menus.
12484         menus_set_sensitive(), menus_set_state() doesn't work.
12486 1999-02-05  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12488         * configure.in:
12489         Add AM_PATH_GDK_IMLIB() call.
12491         * app/Makefile.am:
12492         Add gdk_imlib to linking flags.
12494         * app/app_procs.c:
12495         Init gdk_imlib.
12496         Print library-loading error messages on stdout too.
12498         * app/interface.c:
12499         Add standard image to toolbox.
12500         
12501         * app/render_eps.c: 
12502         Set a more reasonable dot length.  Fixed
12503         missing initialization of dot length.
12504         Added draw_image methods.
12506         * app/render_gdk.c (new_gdk_renderer): 
12507         Dot a bit wider.  Looks good in normal mode now.
12509         * objects/standard/image.c:
12510         * objects/standard/pixmaps/image.xpm:
12511         New files. Standard object for images.
12512         
12513         * app/render_eps.c (set_linestyle):
12514         * app/render_gdk.c (set_linestyle):
12515         * lib/widgets.c (dia_line_style_selector_init): 
12516         * lib/render.h: 
12517         New line style DOTTED.
12519         * lib/render.h:
12520         * lib/render_store.c:
12521         Change DrawImage call to use gdk_imlib.
12523         * lib/widgets.[ch]:
12524         Added widgets for selecting files.
12525         Added dotted to the linestyle selector.
12527 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
12529         * objects/network/printer.c:
12530         * objects/network/network.c:
12531         * objects/network/pixmaps/printer.xpm:
12532         * objects/network/.cvsignore:
12533         * objects/network/Makefile.am:
12534         * objects/network/pixmaps/Makefile.am:
12535         New printer object in network.
12536         From Martin Hawlisch <hawlisch@roxi.rz.fh-mannheim.de>
12538         * TODO:
12539         Added known XML bug.
12540         
12541 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
12543         * app/load_save.c:
12544         * lib/dia_xml.c:
12545         Reverted back from #include <gnome-xml/tree.h> to
12546         #include <tree.h> as this is fixed by the xml-config program.
12547         The former way broke for some people.
12548         Reported by blizzard@redhat.com.
12550         * objects/UML/lifeline.c:
12551         * objects/UML/message.c:
12552         * objects/UML/object.c:
12553         Removed some warnings.
12554         
12555 1999-02-04  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12557         * objects/UML/lifeline.c: 
12558         Fixed connection points over the life line when the focus of
12559         control is not drawn.
12561         * objects/UML/message.c: 
12562         Now a recursive message can be freely resized using the handles.
12564 1999-02-02  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12566         * objects/UML/lifeline.c:
12567         Added connection points.
12568         Added properties dialog with the option to draw/hide focus of control
12569         box and destruction mark.
12571         * objects/UML/object.c: 
12572         Added properties dialog and stereotype, explicit state and attributes. 
12573         It's also possible to mark the object as active.
12575         * objects/UML/pixmaps/object.xpm: 
12576         Cosmetic change.
12578         * objects/UML/message.c:
12579         Added "recursive" message type (was not necessary to use OrthConn).
12581 1999-02-02  Alexander Larsson  <alla@lysator.liu.se>
12583         * objects/standard/arc.c:
12584         Removed old debug code. Fixes a visual bug. From lrclause@cs.uiuc.edu.
12586 1999-02-01  Alexander Larsson  <alla@lysator.liu.se>
12588         Patch from Lars R. Clausen <lrclause@cs.uiuc.edu>
12589         
12590         * app/load_save.c:
12591         * lib/dia_xml.c:
12592         Update xml includes to gnome-xml/*.h.
12594         * objects/standard/arc.c:
12595         Only one property dialog per type.
12596         Fix arrows directions.
12598         * objects/standard/box.c:
12599         * objects/standard/ellipse.c:
12600         * objects/standard/textobj.c
12601         Added default properties dialog.
12602         
12604 1999-01-31  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
12606         * objects/UML/Makefile.am: 
12607         * objects/UML/uml.c:
12608         * objects/UML/lifeline.c: 
12609         * objects/UML/object.c: 
12610         * objects/UML/message.c:
12611         * objects/UML/pixmaps/lifeline.xpm: 
12612         * objects/UML/pixmaps/object.xpm: 
12613         * objects/UML/pixmaps/message.xpm:
12614         Added 3 new UML objects for dynamic modeling. To avoid internal 
12615         conflicts, the name "objet" is used for object "object".        
12617         * lib/arrows.[ch]: 
12618         Added ARROW_HALF_HEAD arrow type to allow drawing asynchronous
12619         UML messages.
12620         
12621 1999-01-30  Alexander Larsson  <alla@lysator.liu.se>
12623         * app/display.[ch]:
12624         * app/modify_tool.c:
12625         Added autoscrolling while doing rubber-band select.
12626         This patch from Matthias Köster
12627         (Matthias.Koester@Informatik.Uni-Oldenburg.DE)
12628         
12630 1999-01-28  Alexander Larsson  <alla@lysator.liu.se>
12632         * app/defaults.[ch]:
12633         New files, deals with default properties dialog.
12635         * lib/diamenu.h:
12636         New file. Contains definitions for the new object menu.
12638         * lib/poly_conn.[ch]:
12639         New file. Base class for poly-line like objects.
12641         * objects/standard/polyline.c:
12642         * objects/standard/pixmaps/polyline.xpm:
12643         New files. Polyline object.
12645         * app/app_procs.c:
12646         Fixed bug with infinite loop when registering sheets.
12647         
12648         * app/commands.c:
12649         Removed unneccesary stuff.
12651         * app/disp_callbacks.c:
12652         Support for object menus.
12654         * app/interface.c:
12655         Added polyline to toolbox.
12656         Added call to tool_options_dialog_show() when double clicking on
12657         tool.
12659         * app/tool.[ch]:
12660         New function tool_options_dialog_show() for tool properties.
12662         * lib/arrows.[ch]:
12663         Added ARROW_NONE.
12665         * lib/object.h:
12666         Added ObjectType methods for handling object default dialogs.
12667         Added Object method for handling object_menu.
12668         Added unused methods to ObjectTypeOps for future binary
12669         compatibility.
12671         * lib/widgets.[ch]:
12672         Added DiaArrowTypeSelector widget.
12674         * objects/standard/arc.c:
12675         * objects/standard/zigzagline.c:
12676         Added support for default properties.
12678         * objects/standard/line.c:
12679         Added support for default properties.
12680         Just use one properties dialog for all line objects. NOTE: This
12681         seems to have a bug. We're working on it.
12683         * standard/standard.c:
12684         Add the polyline object.
12686 1999-01-27  Alexander Larsson  <alla@lysator.liu.se>
12688         * app/modify_tool.c:
12689         Commented out buggy transitive select function. It wasn't really
12690         meant to go into cvs.
12691         
12693 1999-01-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
12695         * autogen.sh:
12696         * acconfig.h:
12697         * configure.in:
12698         * Makefile.am:
12699         * app/Makefile.am:
12700         * po/POTFILES.in:
12701         * app/intl.h
12702         i18n-support.
12704         * po/sv.po:
12705         Swedish translation. Not completed.
12706         
12707         * configure.in:
12708         * acconfig.h:
12709         Added possibility to enable GNOME specific code with configure.
12711         * configure.in:
12712         Added possibility to set debug level with configure.
12714         * commands.[hc]:
12715         Added about dialog.
12717         * app_procs.c
12718         * commands.c
12719         * interface.c
12720         * menus.c
12721         Added some GNOME specific code. Not ready for use.
12723 1999-01-24  Alexander Larsson  <alla@lysator.liu.se>
12725         * INSTALL:
12726         Added text about needing gtk 1.1.13 and gnome-xml.
12727         
12728         * NEWS:
12729         Described changes since last version (0.20).
12731         Released version 0.30, tagged DIA_0_30.
12733 1999-01-22  Alexander Larsson  <alla@lysator.liu.se>
12735         * app/magnify.c (magnify_button_release):
12736         Fixed a problem when zooming in on a very small box would
12737         not release the grabbed pointer-focus.
12739 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
12741         * app/load_save.c (diagram_load):
12742         Be somewhat more robust when loading files that
12743         are not diagrams.
12744         
12745 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
12747         * app/app_procs.c:
12748         * objects/ER/er.c:
12749         * objects/UML/uml.c:
12750         * objects/network/network.c:
12751         * objects/standard/standard.c:
12752         Added versioning of object libraries.
12754         * app/create_object.c:
12755         Don't change tool when an object is created.
12756         
12757         * objects/network/network.c:
12759         * TODO:
12760         Update
12762 1999-01-19  Alexander Larsson  <alla@lysator.liu.se>
12764         * configure.in:
12765         Updated gtk requirement to Gtk+ 1.1.13.
12767         * app/display.c:
12768         Always add one screenful of scrolling space on
12769         each side of a diagram window.
12771 1999-01-19  Jeff Garzik  <jgarzik@pobox.com>
12773         * autogen.sh:
12774         Tell automake to auto-install missing files.
12776         * app/menus.c:
12777         Renamed deprecated Gtk+ function.
12779 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
12781         * Makefile.am:
12782         * configure.in:
12783         * samples/Makefile.am:
12784         * samples/ER-demo.dia:
12785         * samples/UML-demo.dia:
12786         Added samples directory.
12787         Added samples for ER and UML.
12788         
12789         * app/commands.c:
12790         * app/disp_callbacks.c:
12791         * app/menus.c:
12792         Zoom is done by sqrt(2) instead of 2.
12793         Lots of more zoom options in the menu.
12795         * objects/ER/relationship.c:
12796         Relationships have 8 connectionpoints instead of 4.
12798         * objects/UML/class.c:
12799         UML class name font a bit smaller.
12800         Fixed stupid bug in the copy operation.
12801         
12802         * app/display.c:
12803         Displays are opened at 500x400 instead of 256x256.
12805         * app/load_save.c:
12806         Fixup of internal error message.
12808         * app/color_area.c:
12809         * app/diagram.c:
12810         * app/modify_tool.c:
12811         * lib/object.c:
12812         Removed debug printf's.
12813         
12814         * TODO (BUGS):
12815         Added new known bug.
12817 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
12819         * app/interface.c:
12820         * app/menus.c:
12821         Fixed so accelerator groups work in all windows.
12822         Updated to new gtk function names.
12824         * TODO (BUGS):
12825         Removed fixed bug.
12827         * app/display.c:
12828         Updated to new gtk function names.
12829         Set sensitivity of the align menu items.        
12831         * objects/ER/pixmaps/Makefile.am:
12832         * objects/UML/pixmaps/Makefile.am:
12833         * objects/network/pixmaps/Makefile.am:
12834         Fix so that make dist works.
12836         * app/app_procs.c:
12837         * app/color_area.c:
12838         * app/commands.c:
12839         * app/diagram.c:
12840         * app/grid.c:
12841         * app/layer_dialog.c:
12842         * app/load_save.c:
12843         * app/object_ops.c:
12844         * app/properties.c:
12845         * lib/diagramdata.[ch]: 
12846         * lib/message.c:
12847         * lib/objects/ER/attribute.c:
12848         * lib/objects/ER/entity.c:
12849         * lib/objects/ER/participation.c:
12850         * lib/objects/ER/relationship.c:
12851         * lib/objects/ER/.c:
12852         * objects/UML/actor.c:
12853         * objects/UML/association.c:
12854         * objects/UML/class_dialog.c:
12855         * objects/UML/dependency.c:
12856         * objects/UML/generalization.c:
12857         * objects/UML/large_package.c:
12858         * objects/UML/realizes.c:
12859         * objects/UML/.c:
12860         * objects/UML/.c:
12861         Updated to new gtk function names.
12862         Removed warnings.
12864 1999-01-15  Alexander Larsson  <alla@lysator.liu.se>
12866         * TODO:
12867         Update TODO.
12869         * app/app_procs.c:
12870         Fixed loading of diagrams specified as arguments.
12872         * objects/ER/attribute.c:
12873         * objects/ER/entity.c:
12874         * objects/ER/er.c:
12875         * objects/ER/participation.c:
12876         * objects/ER/relationship.c:
12877         Updated the ER objects.
12878         
12880 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
12882         * configure.in:
12883         * app/Makefile.am:
12884         * objects/Makefile.am:
12885         * objects/ER/attribute.c:
12886         * objects/ER/entity.c:
12887         * objects/ER/er.c:
12888         * objects/ER/participation.c:
12889         * objects/ER/relationship.c:
12890         * objects/ER/pixmaps/Makefile.am:
12891         * objects/ER/pixmaps/attribute.xpm:
12892         * objects/ER/pixmaps/entity.xpm:
12893         * objects/ER/pixmaps/participation.xpm:
12894         * objects/ER/pixmaps/relationship.xpm:
12895         * objects/ER/pixmaps/weakentity.xpm:
12896         First commit of entity relationship objects.
12897         These were done by hallon@lysator.liu.se.
12898         There are still stuff to do on these.
12899         
12900 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
12902         * TODO:
12903         Updates.
12905         * app/diagram.[ch]:
12906         Change diagram_remove_all_selected to take new argument
12907         delete_empty. Empty objects are deleted only if it is TRUE.
12908         Removed call to close_eps_renderer. This is now done in end_render
12909         in the eps renderer.
12911         * app/create_object.c:
12912         * app/layer_dialog.c:
12913         Update calls to diagram_remove_all_selected.
12915         * app/commands.c:
12916         Update calls to diagram_remove_all_selected.
12917         Some code reformating.
12918         Changed order of adding updates i align_h and align_v.
12920         * app/modify_tool.c:
12921         Update calls to diagram_remove_all_selected.
12922         Added pointer grab when doing rubber-band selection, this fixes
12923         the bug when draging the box over to another window.
12925         * app/connectionpoint_ops.[ch]:
12926         diagram_update_connections_object changed to take an argument
12927         update_nonmoved. This lets connections that has not moved, but
12928         the stuff they're connected to has been moved work.
12929         Update calls to the new diagram_update_connections_object.
12931         * app/properties.c:
12932         Update calls to the new diagram_update_connections_object.
12933         Update extents when properties are applied.
12934         
12935         * app/disp_callbacks.c:
12936         Added support for zooming with the '+' and '-' keys.
12938         * app/menus.c:
12939         Removed old keyboard shortcuts for zoom.
12941         * lib/render.h:
12942         Added calls begin_render and end_render to renderer.
12943         These can be used for setup and cleanup.
12945         * lib/diagramdata.c:
12946         Added calls to begin_render and end_render in data_render.
12948         * app/render_gdk.c:
12949         Added begin_render and end_render.
12951         * app/render_eps.[ch]:
12952         Added begin_render and end_render.
12953         Moved close_eps_renderer code to end_render.
12954         Various fixes to the generated eps code. This fixes importing
12955         generated eps into LYX.
12956         
12957 1999-01-12  Alexander Larsson  <alla@lysator.liu.se>
12959         * TODO:
12960         Update of todo.
12961         
12962         * app/menus.c:
12963         Menus for alignment updated.
12965         * app/object_ops.[ch]:
12966         Functions for object alignment updated.
12968         * app/commands.[ch]:
12969         Object alignment callbacks updated.
12970         New diagrams are called Untitled-<nr>.
12972         * app/layer_dialog.c:
12973         Active layer selected when showing layers from new
12974         diagram.
12976         * app/load_save.c:
12977         Compress xml files when saving.
12978         Use xml namespace 'dia'.
12980         * lib/object.h:
12981         Minor comment update.
12983         * objects/UML/class_dialog.c:
12984         Cleanup of the gkt_list_item moving code.
12985         Fixed bug with update of operation when moving parameters.
12987 1999-01-10  Alexander Larsson  <alla@lysator.liu.se>
12989         * app/layer_dialog.[ch]:
12990         Fixed the rest of the layers dialog.
12992         * app/dialog.c:
12993         Added call to redo layer dialogs diagram list when changing
12994         diagram name.
12996         * lib/diagramdata.[ch]:
12997         Added data_raise_layer and data_lower_layer functions for
12998         raising/lowering layers. Added data_add_layer_at for adding a
12999         layer at a specified index.
13001 1999-01-05  Alexander Larsson  <alla@lysator.liu.se>
13003         This is the asierra-990105 patch done by asierra@servidor.unam.mx.
13004                 
13005         * app/app_procs.c:
13006         Added support for reading diagrams from the command line.
13008 1998-12-21  Alexander Larsson  <alla@lysator.liu.se>
13010         This is the asierra-981220 patch done by asierra@servidor.unam.mx.
13011                 
13012         * app/commands.[ch]:
13013         Added objects_align_callback().
13015         * app/menus.c:
13016         Added align objects to menu.
13018         * app/object_ops.[ch]:
13019         Add object_list_align().
13020         
13021 1998-12-17  Alexander Larsson  <alla@lysator.liu.se>
13022         * app/layer_dialog.[ch]:
13023         New files. Handles the layers dialog. Needs a bugfix for glib to
13024         work. Sent patch to gtk-list.
13025         
13026         * app/pixmaps/new.xpm:
13027         * app/pixmaps/eye.xbm:
13028         * app/pixmaps/lower.xpm:
13029         * app/pixmaps/raise.xpm:
13030         * app/pixmaps/delete.xpm:
13031         New files. Images for the layer dialog buttons.
13032         
13033         * lib/diagramdata.h
13034         * lib/diagramdata.c
13035         New files for the DiagramData and Layer structures and functions.
13036         
13037         * app/app_procs.c:
13038         Added call to create_layer_dialog() on startup.
13039         
13040         * app/commands.[ch]:
13041         New callbacks for showing the properties and layout dialog.
13042         Changes for the new DiagramData structure.
13044         * app/connectionpoint_ops.c:
13045         * app/cut_n_paste.c:
13046         * app/diagram.[ch]:
13047         * app/display.[ch]:
13048         * app/group.c:
13049         * app/modify_tool.c:
13050         * app/object_ops.[ch]:
13051         * app/render_eps.c:
13052         * lib/object.[ch]:
13053         Changes for the new DiagramData structure.
13055         * app/interface.c:
13056         * app/properties.c:
13057         Set correct wmclasses.
13059         * app/load_save.c:
13060         Fix load and save of layers.
13062         * diagram.dtd:
13063         Update DTD for layers.
13064         
13065         * app/menus.c:
13066         New menus for dialogs.
13068         
13069         * TODO:
13070         Some updates.
13071         
13072 1998-12-06  Alexander Larsson  <alla@lysator.liu.se>
13074         * TODO:
13075         Removed the gtk 1.1.5 stuff.
13077         * configure.in:
13078         Updated gtk check to version 1.1.5.
13079         Updated version from 0.20 to 0.30
13081         * app/commands.[ch]:
13082         Updated some callbacks to be of type GtkItemFactoryCallback1.
13083         Not all are done yet, but it works anyway.
13085         * app/display.h:
13086         Removed Gtk 1.0.0 GtkAcceleratorTable references.
13087         
13088         * app/interface.c:
13089         * app/menus.[ch]:
13090         Update to Gtk 1.1.x functions.
13091         Use ItemFactory instead of MenuFactory.
13092         
13093         * app/render_gdk.c:
13094         Removed Gtk 1.0.0 references.
13096         * objects/UML/class_dialog.c:
13097         Scrolled window updates for Gtk 1.1.5.
13098         
13099         * lib/dia_xml.c:
13100         Removed ugly fix for gnome-xml bug. Make sure you get the
13101         newest version of gnome-xml from CVS.
13102         
13103 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
13105         * TODO:
13106         Removed the xml load/save line.
13108         * lib/files.[ch]:
13109         Removed files.
13110         
13111         * lib/Makefile.am:
13112         Removed building of files.c
13114         * app/load_save.c:
13115         * lib/connection.c:
13116         * lib/element.c:
13117         * lib/object.c:
13118         * lib/orth_conn.c:
13119         * lib/render_object.c:
13120         * objects/UML/actor.c:
13121         * objects/UML/association.c:
13122         * objects/UML/class.c:
13123         * objects/UML/constraint.c:
13124         * objects/UML/dependency.c:
13125         * objects/UML/generalization.c:
13126         * objects/UML/implements.c:
13127         * objects/UML/large_package.c:
13128         * objects/UML/note.c:
13129         * objects/UML/realizes.c:
13130         * objects/UML/small_package.c:
13131         * objects/UML/uml.c:
13132         * objects/UML/usecase.c:
13133         * objects/network/bus.c:
13134         * objects/standard/arc.c:
13135         * objects/standard/box.c:
13136         * objects/standard/ellipse.c:
13137         * objects/standard/line.c:
13138         * objects/standard/textobj.c:
13139         * objects/standard/zigzagline.c:
13140         Removed all includes of files.h
13142         
13143 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
13145         * dialog.dtd:
13146         Made the val property of string be implied.
13147         This makes it possible to save strings that
13148         are NULL. Just leave out val.
13150         * objects/lib/dia_xml.c:
13151         Fixed string so that it is possible to save strings
13152         that are NULL. Also made an ugly workaround of a
13153         bug in gnome-xml which removes empty properties.
13154         
13155         * objects/lib/orth_conn.c:
13156         Fixed a bug in saving. Forgot to step through the
13157         directions.
13158         
13159         * objects/UML/association.c: 
13160         * objects/UML/class.c: 
13161         * objects/UML/constraint.c: 
13162         * objects/UML/dependency.c: 
13163         * objects/UML/generalization.c: 
13164         * objects/UML/implements.c: 
13165         * objects/UML/large_package.c: 
13166         * objects/UML/note.c: 
13167         * objects/UML/small_package.c:
13168         * objects/UML/realizes.c:
13169         * objects/UML/usecase.c: 
13170         * objects/UML/actor.c: 
13171         Fixed UML objects to save as xml.
13172         The last two were done by asierra@servidor.unam.mx (asierra-981204)
13173         
13174         * objects/UML/uml.[ch]:
13175         Updated *_write() and *_read() functions to use xml.
13177         * objects/network/bus.c: 
13178         * objects/network/computer.c: 
13179         * objects/network/disc.c: 
13180         * objects/network/monitor.c:
13181         Updated network diagrams to use xml.
13183 1998-12-02  Alexander Larsson  <alla@lysator.liu.se>
13185         * dialog.dtd:
13186         New file. DTD that describes the xml file format
13187         dia uses.
13189         * lib/dia_xml.[ch]:
13190         New files. Support for saving object to xml files.
13192         * configure.in:
13193         * app/Makefile.am:
13194         * lib/Makefile.am:
13195         Added check for and usage of gnome-xml library.
13197         * app/load_save.c:
13198         Major chages. Now saves/loads diagrams as xml.
13200         * lib/object.[ch]:
13201         * lib/element.[ch]:
13202         * lib/connection.[ch]:
13203         * lib/orth_conn.[ch]:
13204         * lib/render_object.[ch]:
13205         * lib/text.[ch]:
13206         Updated object support load/save functions for xml:
13208         * object/standard/arc.c:
13209         * object/standard/box.c:
13210         * object/standard/ellipse.c:
13211         * object/standard/line.c:
13212         * object/standard/textobj.c:
13213         * object/standard/zigzagline.c:
13214         Updated all standard objects to use xml.
13215         
13216         NOTE NOTE NOTE
13217         Only the standard objects are converted right now, don't
13218         save or load uml or network diagrams yet. Also, since this
13219         is new code it is deemed a bit unstable.
13220         
13221         * TODO
13222         Added a know bug.
13224 1998-12-01  Alexander Larsson  <alla@lysator.liu.se>
13226         * objects/UML/class.c:
13227         Changed classname font to Helvetica.
13228         Added more space above the classname
13230         * objects/UML/usecase.c:
13231         Correct placements of connectionpoints on ellipse.
13232         Better algorithm for deciding aspect ration on
13233         ellipse.
13235         These changes were made by Alejandro Aguilar Sierra
13236         <asierra@servidor.unam.mx>. (asierra-981201)
13238 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
13240         * objects/UML/actor.c:
13241         Changed the extents and alignment of the element
13242         and the text.
13244         * objects/UML/.cvsignore:
13245         Added usecase.lo and actor.lo.
13247 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
13249         * objects/UML/actor.c:
13250         * objects/UML/usecase.c:
13251         * objects/UML/pixmaps/actor.xpm:
13252         * objects/UML/pixmaps/case.xpm:
13253         New files. Implements usecase and actor UML objects.
13254         These objects are done by Alejandro Aguilar Sierra
13255         <asierra@servidor.unam.mx>.
13256         
13257         * objects/UML/Makefile.am:
13258         * objects/UML/pixmaps/Makefile.am:
13259         Added usecase and actor to makefile.
13260         
13261         * AUTHORS:
13262         Added Alejandro and Jerome to autors list.
13263         
13264 1998-11-25  Alexander Larsson  <alla@lysator.liu.se>
13266         * objects/UML/class.c (umlclass_load):
13267         Fixed typo. Reported by Jerome.Abela@solsoft.fr
13269 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
13271         * app/properties.c:
13272         Update connections when doing apply in the properties window.
13274         * objects/UML/uml.[ch]:
13275         * objects/UML/class.[ch]:
13276         * objects/UML/class_dialog.c:
13277         Added connection points on both sides of attributes and
13278         operations in UML classes.
13279         Based on idea from Jerome.Abela@solsoft.fr
13280         
13281 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
13283         * README:
13284         Some new documentation about handles and connectionpoints.
13285         
13286         * lib/object.[ch]:
13287         Added functions object_add_connectionpoint and
13288         object_remove_connectionpoint for handling a dynamic
13289         number of connectionpoints.
13291         * objects/UML/class.c:
13292         Only reserve space for stereotype when it is shown.
13294         These changes are from Jerome Abela <Jerome.Abela@solsoft.fr>
13296 1998-11-08  Alexander Larsson  <alla@lysator.liu.se>
13298         * app/connectionpoint_ops.c:
13299         * app/commands.c:
13300         * app/disp_callbacks.c:
13301         * app/display.[ch]:
13302         * app/grid.c:
13303         * app/handle_ops.c:
13304         * app/magnify.c:
13305         * app/modify_tool.c:
13306         * app/render_gdk.[ch]:
13307         * lib/render.h:
13308         Huge cleanup of internal rendering system.
13309         Moved a lot of data (pixmap, width, height & gc) into the GdkRenderer.
13310         This gives a few new methods for Interactive Renderers for setting
13311         clipping regions and drawing pixel based lines and rects.
13312         Updated the rest of the code to use the new stuff.
13313         
13314         * app/render_eps.c:
13315         Fixed warning.
13317         * lib/widgets.c:
13318         * objects/standard/zigzagline.c
13319         Fixed unused variable warnings.
13321         * lib/font.c:
13322         Fixedbug with stringwidth where width==0.
13324         * TODO:
13325         Added known bug.
13327 1998-11-02  Alexander Larsson  <alla@lysator.liu.se>
13329         * lib/widgets.[ch]:
13330         Added suppot for setting the font of a
13331         DiaFontSelector widget.
13332         Also fixed some typos in the header.
13334         * lib/object.h: 
13335         Added a comment about the GetPRoperties method call.
13336         You have to make sure to update widget state when
13337         this method is called. (Not all objects do this yet,
13338         to be fixed.)
13340         * TODO:
13341         Some small updates
13343 1998-11-01  Alexander Larsson  <alla@lysator.liu.se>
13345         * lib/font.c
13346         Fixed problem with height of ascent and descent for fonts.
13347         It didn't use the whole height (==ascent+descent) when calculatine
13348         ascent_ratio and descent_ratio.
13350         * objects/standard/textobj.c:
13351         * objects/standard/box.c:
13352         * objects/standard/ellipse.c:
13353         * objects/standard/line.c:
13354         * objects/standard/arc.c:
13355         Updated and added property dialogs for these objects.
13356         Also added line width/color/style to those objects
13357         that didn't have it.
13358         This change breaks fileformat compatibility for these objects.
13359         
13360         * objects/standard/zigzagline.c:
13361         Changed zigzagline to be based on OrthConn, much nicer.
13362         Also added line style and color to properties.
13363         This change breaks fileformat compatibility for zigzagline.
13365         * lib/message.c:
13366         Fixed bug in message(). Forgot a pair of '&'.
13368 1998-10-29  Alexander Larsson  <alla@lysator.liu.se>
13370         * lib/widgets.[ch]:
13371         Added DiaColorSelector widget.
13372         This is a colored button that pops up a color selection
13373         dialog when pressed.
13375 1998-10-28  Alexander Larsson  <alla@lysator.liu.se>
13377         * lib/widgets.[ch]:
13378         * lib/Makefile.am:
13379         New files, added widgets for selecting fonts, alignment
13380         and line-style. Will be used later.
13382 1998-10-12  Alexander Larsson  <alla@lysator.liu.se>
13384         * app/Makefile.am:
13385         * lib/Makefile.am:
13386         * objects/UML/Makefile.am:
13387         * objects/network/Makefile.am:
13388         * objects/standard/Makefile.am:
13389         Changed "CFLAGS = -Wall -g" to "CFLAGS = @CFLAGS@"
13390         in all Makefile.am.
13392 1998-10-03  Alexander Larsson  <alla@lysator.liu.se>
13394         * app/handle_ops.c (handle_draw):
13395         connected HANDLE_MINOR_CONTROL also becomes red.
13397 1998-10-02  Alexander Larsson  <alla@lysator.liu.se>
13399         * Makefile.am:
13400         removed -ldl from linking. This is added if needed by configure.
13402         * app/app_procs.c:
13403         Open dlls with RTLD_LAZY if it is defined.
13404         Some cleanups: char *error -> const char *error
13405         Added fprintf()'s to where we exited because of errors.
13407         * lib/files.c:
13408         Include <sys/types.h>
13410 1998-10-01  Alexander Larsson  <alla@lysator.liu.se>
13412         * acconfig.h:
13413         * configure.in:
13414         * app/app_procs.c:
13415         Detect dlopen better.
13416         Detect wether dlopen needs an underscore in the identifier.
13417         This code was mostly borrowed from guile.
13419         * lib/sheet.[ch]:
13420         * app/app_procs.c:
13421         * objects/standard/standard.c:
13422         * objects/network/network.c:
13423         * objects/UML/uml.c:
13424         * most objects:
13425         Changed the way sheets reference objects to use just the
13426         name. Changed module loading to a two stage model:
13427         First register_objects() is called for all modules.
13428         Then register_sheets() is called. This means that
13429         sheets can safely include objects from other modules.
13430         
13432 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
13434         * objects/network/bus.c:
13435         * objects/network/network.c:
13436         * objects/network/Makefile.am:
13437         New file bus.c. Added new object: Ethernet bus.
13439         * objects/standard/box.c:
13440         Added call to gtk_spin_button_set_numeric for linewidth spinner
13441         in property dialog.
13443 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
13445         * app/connectionpoint_ops.c:
13446         * app/create_object.c:
13447         * app/group.c:
13448         * app/handle_ops.c:
13449         * app/modify_tool.c:
13450         * lib/connection.c:
13451         * lib/element.c:
13452         * lib/handle.h:
13453         * lib/object.c:
13454         * lib/orth_conn.c:
13455         * loads of objects:
13456         Changed handle->connectable to handle->connect_type.
13457         Now handles can be HANDLE_CONNECTABLE_NOBREAK, which means
13458         that their connections don't break when moving objects.
13460         * app/diagram.c:
13461         Always select the last handle in an object that has
13462         the closest distance.
13463         
13464         * lib/geometry.[ch]:
13465         Added rectangle_add_point function.
13466         
13468 1998-09-27  Alexander Larsson  <alla@lysator.liu.se>
13470         * app/properties.[ch]: New files. Handles the new properties
13471         dialog.
13473         * app/modify_tool.c: Changed to use new properties dialog.
13475         * app/object_ops.[ch]: Removed object_changed_callback, as it's
13476         not needed anymore. This is now handled differently in
13477         properties.c
13479         * lib/object.[ch]:
13480         Changed the properties ops for objects. Removed typedefs
13481         ChangedObjectTime and ObjectChangedFunc needed for the old way.
13482         Added object_return_null function.
13483         
13484         * app/group.c:
13485         * lib/render_object.c:
13486         * objects/*/*.c:
13487         Changed objects to use the new properties dialog.
13488         
13490 1998-09-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
13492         * */Makefile.am (INCLUDES): Changes to work with srcdir !=
13493         builddir.
13495         * autogen.sh: New file. Copied from gtk and added a call to
13496         libtoolize. Anyone knows why this isn't done in gtk?
13498         * Removed autogenerated files.
13500 1998-09-12  Alexander Larsson  <alla@lysator.liu.se>
13502         * Added call setlocale(LC_NUMERIC, "C") so that formating of
13503           floating-point numbers in postscript output will be correct.
13504         * Did some cleanup of generated postscript files.