2004-05-23 Hans Breuer <hans@breuer.org>
[dia.git] / ChangeLog
blobe88d438a60306a84b829a5e669f7171d1ef37de9
1 2004-05-23  Hans Breuer  <hans@breuer.org>
3         * plug-ins/cairo/diacairo.c : a new exporter based on
4         Cairo http://cairographics.org rendering api. Currently
5         it just can export PNG and PS but one day it might get
6         PDF and more almost for free. [It is not yet included
7         in the *NIX build system due to lack of auto* magic.]
9         * plug-ins/pixbuf/pixbuf.c : always register the export
10         filter part. If the user does not want it it can be 
11         disabled by File/Plugins or explicit selected the other
12         one in the Export Formats List
14 2004-05-23  Hans Breuer  <hans@breuer.org>
16         * lib/dia_dirs.c : #include "message.h"
17           lib/widgets.c : #include "persistence.h"
18           lib/widgets.c(dia_font_selector_init) : still not C99
19           lib/persitence.h : removed unimplemented prototype
20           lib/persitence.c(persistence_load_list) : still not C99
21           app/create_object.c : #include "highlight.h"
22           app/layer_dialog.c : #include "widgets.h"
23           app/modify_tool.c : prototype functions before usage
24           lib/object.c : if there is G_END_DECLS there _must_ be G_BEGIN_DECLS
25         [otherwise one will have a hard time to make C++ compile ;]
26           lib/dia_dirs.c : #include "message.h"
27           lib/font.c : #include <gtk/gtk.h> /* just for gtk_get_default_language() */
28           lib/
30         * plug-ins/xfig/xfig-import.c : dont initialize an int with
31         a string pointer
33         * lib/dia_image.[hc](dia_image_rgba_data) : make it work
34         as documented, i.e. _not_ copying. Plugs a memory leak in
35         lib/dialibartrenderer.c
37         * lib/diarenderer.c(*_rounded_rect) : renamed parameter rounding
38         to radius to more of a clue what it is representing
40         * */makefile.msc lib/libdia.def : updated
42         ChangeLog : fixed some date copy&paste bug
44 2004-05-21  Lars Clausen <lars@raeder.dk>
46         * NEWS: Release tag.
48         * config.h.win32: Now 0.93+cvs
50         * RELEASE-PROCESS: Update with new info about release branches.
51         
52         * Many files:  Moved devel branch back into main trunk.  Should
53         have been done in the opposite way, with release in a branch.  
54         
55 2004-05-20  Hans Breuer  <hans@breuer.org>
57         * acinclude.m4 : disable setting of PYTHON_PREFIX
58         and PYTHON_EXEC_PREFIX from prefix and exec_prefix
59         as workaround for bug #142032 (the real fix would 
60         involve some auto* knowledge which I don't have
61         either;)
62         
63         * plug-ins/python/Makefile.am : more python 
64         plug-ins to be installed (especially svg import,
65         but also 'simple scale' should be useable 
66         sometimes)
67         
68         * plug-ins/python/scascale.py : update display
69         after modifying selected objects
70         
71         * plug-ins/python/diasvg_import.py : initialize
72         stroke to none
73         
74 2004-05-18  Lars Clausen  <lars@raeder.dk>
76         * app/diagram_tree.c (select_node): Use
77         diagram_remove_all_selected to kill selected list.
79         * lib/font.c: Set language when using a different context.
81         * plug-ins/svg/svg-import.c: Changed isdigit to g_ascii_isdigit
82         and removed ctype include (#142661).
84         * lib/paper.c (get_default_paper): Changed isalnum to
85         g_ascii_isalnum and removed ctype include. (#142661)
87         * objects/custom/shape_info.c: 
88         * lib/dia_svg.c: 
89         * app/diaunitspinner.c: Removed unrequired ctype.h include. (#142661)
91 2004-05-17  Hans Breuer  <hans@breuer.org>
93         * lib/object_defaults.c : don't 'failed to load external 
94         entity "NULL"' when the defaults file does not exist, 
95         bug #108764
97         * lib/widgets.c : fixed possible menu leak
98         * lib/dialinechooser.c lib/diaarrowchooser.c : finally
99         avoid finalization of floating references, bug #142307
101 2004-05-15  Lars Clausen  <lars@raeder.dk>
103         * plug-ins/xfig/xfig-import.c: Handle default fonts and illegal
104         fonts better (#138655)
105         
106         * doc/pl/Makefile.am (EXTRA_DIST): Also include all xml files here.
108         * doc/en/Makefile.am (EXTRA_DIST): Including all required files in
109         dist, xml, dbk and man.  Also the sub-xml files. (#142098)
111         * Makefile.am (CLEANFILES): 
112         * sheets/Makefile.am (EXTRA_DIST): Not distributing the
113         translation-reports, they are generated automagically.  THANKS
114         file not considered locally generated, so is not locally
115         cleaned. (#133735) 
117         * lib/widgets.[ch]: Changing dia_arrow_selector to be a gobject.
119         * lib/diaarrowchooser.c: 
120         * lib/prop_attr.c: Fixing naming for arrowselector.
122         * objects/UML/object.c (objet_type): Oops, little too aggressive
123         with the DiaObject thing here:)
125         * objects/custom/shape_info.c (parse_svg_node): Use
126         g_ascii_isdigit instead of isdigit.
128         * app/diaunitspinner.c (dia_unit_spinner_update): 
129         * lib/dia_svg.c (dia_svg_parse_style): Using g_ascii_isspace
130         instead of isspace avoids char subscript issues (#142467).
132         * lib/persistence.c (persistence_get_string): Fixed 0/NULL/FALSE
133         return value conflict.
135         * app/display.c (ddisplay_update_handler): Fixed 0/FALSE return
136         value conflict.  Also improved signature. (#142466)
138         * app/load_save.c (diagram_data_load): Don't overwrite the list in
139         the layer, but instead free the returned list (#142480)
141         * app/pixmaps/Makefile.am (IMAGES): Added png's to be installed
142         for the grid widget.
144         * doc/en/Makefile.am (dia.1): Make proper rule for making dia.1
146         * configure.in (DB2MAN): Currently just check for two known
147         positions for the docbook xsl.  Don't know a generic way to find
148         this info.  Ought to add an option for it, but then it's really
149         only required for maintainers, I think.  Maybe.
151         * app/display.c (update_snap_grid_status): Remove nasty image
152         toggling code not require for grid toggle button anymore. (#142475)
154         * app/interface.c (create_display_shell): Use
155         dia_toggle_button_new_with_images to create grid toggle button.
156         Much nicer. (#142475)
158         * app/menus.c (menus_initialize_updatable_items): Free the string
159         along with the GString. (#142475)
161         * lib/intl.c (free_alias_table): Free hash table entries in a
162         proper way, avoiding duplicate frees. (#142475)
164         * lib/object_defaults.c (_obj_store): Only free layer_name if it's
165         not put in the hash (avoid reading freed memory). (#142476)
167         * lib/widgets.c (dia_font_selector_set_styles): Stop leaking
168         faces. (#142484)
169         (dia_font_selector_get_family_from_name): Stop leaking
170         families. (#142482) 
172 2004-05-14  Lars Clausen  <lars@raeder.dk>
174         * Transfer of fixes from release branch.  Not the prettiest way to
175         do it, this should be done during release, not afterwards.
177         Tomasz Kłoczko <kloczek@pld.org.pl>:
179         * acinclude.m4: minor fixes (added missing [] quotation).
181         Lars Clausen  <lars@raeder.dk>:
183         * app/interface.c (toolbox_delete): 
184         * app/app_procs.[ch] (app_exit): Stop the delete event if the user
185         cancels quit due to modified diagrams.
187         Samúel Jón Gunnarsson  <sammi@techattack.nu>:
189         * is.po: Added "is" to ALL_LINGUAS.
191         Lars Clausen  <lars@raeder.dk>:
193         * dia.spec: Updated as per mail from Zhang Lin-bo <zlb@lsec.cc.ac.cn>
195         Hans Breuer  <hans@breuer.org>:
197         * lib/makefile.msc : removed -DGTK_DISABLE_DEPRECATED; the 
198         burden should be shared and not be win32 only ;) [this time 
199         build was broken by adding GtkType to widget.h]
201         * objects/standard/box.c objects/standard/ellipse.c :
202         for code clarification compare (obj->aspect != FREE_ASPECT)
203         and not (obj->aspect); no binary effect.
205         * app/paginate_psprint.c : don't leak printcmd
207         * objects/standard/box.c objects/standard/ellipse.c : fix gccisms :
208         standard C requires variables to be declared at the beginning of 
209         a block, also there is no fabsf() with msvc
210         
211         * app/win32print.[ch] : make win32_printer_close() return an
212         error code, it's used as pclose replacement
214         Lars Clausen  <lars@raeder.dk>:
216         * RELEASE-PROCESS: Mention PATCH keyword in release process.
218 2004-05-06  Lars Clausen  <lars@raeder.dk>
220         * lib/widgets.[ch]: Utility function to make a widget with two
221         images (selected and non-selected).
223         * lib/diagramdata.h: Renamed selectable to connectable.
224         Selectable will come later.
226         * configure.in: 
227         * app/pixmaps/Makefile.am (imagedir): 
228         * app/pixmaps/connectable.png:
229         * app/pixmaps/connectable-empty.png: New images for the
230         selectability widget.  Proper installation, too.
232         * app/layer_dialog.[ch]: Adding new button showing connectability
233         status.  Much cleaner way of doing the button, but some problems
234         with the item getting selected
236         * lib/widgets.h: Reminder of how to install images for use by
237         dia_get_image_from_file.
239 2004-05-05  Lars Clausen  <lars@raeder.dk>
241         * objects/network/Makefile.am: 
242         * objects/network/pixmaps/radiocell.xpm: 
243         * objects/network/pixmaps/basestation.xpm: 
244         * objects/network/network.c: 
245         * objects/network/basestation.c: 
246         * objects/network/radiocell.c: 
247         Patch from W. Borgert <debacle@debian.org>: Radio cell and base
248         station objects.
250         * lib/arrows.[ch]: Patch from Anthony <anthonym@overture.com>:
251         Backslash arrow head. 
253         * app/pagesetup.c (pagesetup_respond): Do not free ps twice.
254         Notify takes care.  Should maybe use that more.
256         * lib/diagramdata.[ch]: 
257         * app/filedlg.c (file_export_ok_callback): 
258         * app/diagram.c (diagram_finalize): DiagramData now a GObject.
260         * app/dia-props.c (diagram_properties_respond): 
261         * app/diagram.c (diagram_set_modified): 
262         * app/undo.c: 
263         * app/disp_callbacks.c: 
264         * app/commands.c: 
265         * app/load_save.c (diagram_save): 
266         Better handling of undo and modified status -- only diagram
267         properties and page setup explicitly set modified status, all
268         other important changes should be done through the undo stack
269         now.
271 2004-05-04  Lars Clausen  <lars@raeder.dk>
273         * app/app_procs.c (app_init): Consistently open a new diagram if
274         none specified, with standard name Diagram1.dia.
276         * app/layer_dialog.c: 
277         * app/diagram.c (diagram_finalize): 
278         * app/commands.c (dialogs_layers_callback): 
279         * app/filedlg.c (file_export_ok_callback): 
280         * app/app_procs.c (app_exit): 
281         * app/display.c (display_set_active): 
282         * app/interface.c (dia_dnd_file_drag_data_received): 
283         * app/recent_files.c: 
284         Undone attempt at unifying the multi-diagram windows (like
285         layers).  It broke the layers and didn't make much sense for the
286         diagram properties dialog anyway.
288         * lib/group.c: 
289         * lib/diatypes.h: 
290         * lib/diagramdata.c: 
291         * lib/object.h: 
292         * lib/object.c: Undone attempts at GObject'ifying DiaObject -- too
293         many subclasses have to be fixed.  Fixed remaining
294         Object/ObjectType renaming issues.
296 2004-05-02  Lars Clausen  <lars@raeder.dk>
298         * lib/object.[ch]: Making DiaObject a GObject.  Now can I avoid
299           having to make all the children objects conform to
300           GObject style at once?  Warning!  Does not compile right now.
302         * many, many files: Rename Object to DiaObject in preparation for
303           making it a GObject.
304         
305         * app/diagram.[ch]: Turn diagram into a real GObject.
307         * app/pagesetup.c: 
308         * app/filedlg.c: Correctly ref and unref diagram. 
310         * lib/diagramdata.h: Starting to turn it into a GObject as well.
312 2004-05-02  Lars Clausen  <lars@raeder.dk>
314         * lib/object.[ch]: Starting to convert Object to DiaObject, son of
315         GObject. 
317         * app/dia-props.c: Undo the attempt at making it really
318         multi-diagram, now going for a one-diagram dialog.
320 2004-04-30  Lars Clausen  <lars@raeder.dk>
322         * app/undo.c: Undoing broken undo stuff for diagram properties and
323         page setup.  Shouldn't be mixed into undo at all.
325         * app/render_gdk.c (draw_pixel_line): Use the dash-setting
326         function to avoid in particular the grid crawling.
328         * lib/diagdkrenderer.[ch] (dia_gdk_renderer_set_dashes): Function
329         to allow aligning dashes, so they don't crawl.
331 2004-04-28  Lars Clausen  <lars@raeder.dk>
333         * app/Makefile.am: New files diacanvas.[ch]
335         * app/interface.c (create_display_shell): Use new diacanvas that
336         allows placing widgets on canvas, for text edit.
338         * lib/object.h: 
339         Early work towards rotation.  No implementation yet.
341         * app/layer_dialog.c (undo_layer): 
342         * objects/network/bus.c (bus_create_change): 
343         * objects/standard/box.c (aspect_create_change): 
344         * objects/standard/ellipse.c (aspect_create_change): 
345         Use g_new0 for change struct.
347         * app/undo.c (diagram_change_apply_or_revert): 
348         Support for undo of diagram properties and page setup.
350         * app/disp_callbacks.c (ddisplay_canvas_events): 
351         * lib/text.h: 
352         * lib/diagramdata.h: 
353         * app/modify_tool.c (click_select_object): 
354         * lib/text.c (text_register_editable): 
355         Starting work on new text editing model.  Guarded by #ifdef so
356         far. 
358 2004-04-07  Lars Clausen  <lars@raeder.dk>
360         * app/recent_files.c (open_recent_file_callback): 
361         * app/interface.c (origin_button_press): 
362         * app/filedlg.c (file_open_ok_callback): 
363         * app/display.c: 
364         * app/diagram.[ch]: 
365         * app/commands.c (dialogs_layers_callback): Using new
366         diagram_set_current() function to ensure auxilliary windows are
367         updated. 
369         * app/layer_dialog.c: Trying to unify with dia-props.  Diagram
370         menu now borken.  *sniff*
372         * app/dia-props.c: Diagram properties window attempted
373         persistentified.  Trying to make more like layer dialog (since it
374         already changes when the diagram changes), but some things still
375         borken. 
377 2004-04-06  Lars Clausen  <lars@raeder.dk>
379         * lib/dialinechooser.[ch] (dia_line_chooser_set_line_style): 
380         * lib/attributes.c (attributes_set_default_line_style): 
381         * app/interface.c (create_lineprops_area): 
382         Make line style persistent as well.  Added function to directly
383         set the style and dashlength of a dialinechooser. 
385 2004-04-03  Lars Clausen  <lars@raeder.dk>
387         * objects/standard/ellipse.c (ellipse_move_handle, ellipse_copy):
388         Copy the ellipse extra handle correctly.
390         * objects/standard/box.c (box_move_handle): Move definitions
391         according to bug #138925.
393 2004-04-02  Lars Clausen  <lars@raeder.dk>
395         * app/recent_files.c: Use absolute name for recent files list.
397         * lib/attributes.c: Set start and end arrow types, correctly.
399         * lib/widgets.c (dia_arrow_selector_set_arrow): Use new function
400         to get arrow index.
402         * lib/diaarrowchooser.[ch]: Support for setting arrow info.
404         * app/interface.c (create_lineprops_area): Set persistently stored
405         arrow info.
407         * lib/arrows.[ch]: New function to get arrow index (in arrow_types)
408         from arrow type.
410         * lib/dia_dirs.c: dia_get_absolute_path now creates a canonical
411         path (i.e. without '.' or '..').  Not tuned for Win32 yet.
413         * plug-ins/xfig/xfig-import.c: Redone ordering of import to comply
414         with what xfig does.  Text now converted from latin-1 to utf-8
415         (latin-1, since that's what xfig seems to use.  Would like to see
416         examples of non-latin-1 figs).  String case problems fixed.
418 2004-04-01  Lars Clausen  <lars@raeder.dk>
420         * lib/attributes.c: 
421         * app/interface.c: Default arrows now stored persistently, too.
423         * lib/arrows.[ch]: New function to get arrow type from name.
425         * app/color_area.c (color_area_create): 
426         * lib/attributes.c: 
427         * app/linewidth_area.c: Also persistent colors and line width.
428         That was easy.  Arrows and line style will take a bit more work,
429         but not much.
431 2004-04-01  Lars Clausen  <lars@raeder.dk>
433         * app/preferences.c:   All preferences are now
434         handled by persistence, old prefs load and store code is gone.
436         * lib/persistence.[ch]: Added string and color persistents.  This is
437         a different string from the one used in the printer dialog, that
438         one has a GtkEntry attached -- may want to make that one an
439         encapsulation of this one or something.
441 2004-03-31  Lars Clausen  <lars@raeder.dk>
443         * app/app_procs.c: Do persistence before prefs.  Prefs are to be
444         phased out anyway.
445         
446         * lib/persistence.[ch]: 
447         * app/preferences.c: Adding persistence for integers, reals,
448         booleans.  Fixed stupid list bug.  Test persistence for prefs.
450 2004-03-30  Lars Clausen  <lars@raeder.dk>
452         * app/recent_files.c: 
453         Debugging of deallocation.
454         
455         * lib/widgets.c: 
456         Font menu now uses persistence.  Ordering needs fixing, or it must
457         be sorted.
459         * lib/libdia.def: 
460         * lib/Makefile.am (libdia_la_SOURCES): 
461         * app/Makefile.am (dia_core_files): 
462         * app/persistence.[ch]: 
463         * lib/persistence.[ch]: Moved to lib as widgets need it.  Also a
464         number of fixes, including multiple entries now being read
465         properly.  Still some oddity about the persistent list having the
466         role as first entry (which makes the font menu crash after a few
467         iterations). 
469 2004-03-26  Lars Clausen  <lars@raeder.dk>
471         * app/persistence.c:
472         * app/recent_files.[ch]: Redoing the recent-files list using
473         persistence, reducing code by about 50%.  Still a problem when
474         selecting an item from the menu -- possibly it doesn't like the
475         menu being destroyed while in the callback?
477 2004-03-25  Lars Clausen  <lars@raeder.dk>
479         * app/persistence.c (persistence_load_string): Missing semicolon?!?
481 2004-03-24  Lars Clausen  <lars@raeder.dk>
483         * RELEASE-PROCESS: 
485         * app/persistence.[ch]: 
486         * app/paginate_psprint.c (diagram_print_ps): New type of data can
487         be stored persistently:  Strings.  Only the printer command/file
488         go in here now, but things like creator, organization, diagram
489         comments etc could also be handled this way.
491         * objects/standard/beziergon.c (beziergon_draw): Avoid control
492         lines when the object is not selected.
494 2004-03-23  Lars Clausen  <lars@raeder.dk>
496         * lib/connectionpoint.h: 
497         * app/load_save.c: Allow connection points to have names, and
498         handle that in load/store.
500         * lib/dialibartrenderer.c: Better highlighting for text.
502         * lib/diagdkrenderer.h (struct _DiaGdkRenderer): 
503         * lib/diagdkrenderer.c: Better highlighting for all, using same
504         principles as libart highlighter.
506 2004-03-22  Lars Clausen  <lars@raeder.dk>
508         * lib/dialibartrenderer.[ch]: 
509         * lib/diagdkrenderer.c: 
510         * lib/object.h: 
511         * app/object_ops.c:
512         * app/diagram.[ch]:
513         * app/display.[ch]:
514         * app/Makefile.am: 
515         * app/modify_tool.c: 
516         * app/create_object.c: 
517         * app/highlight.[ch]: 
518         Added simple object highlighting.  In GDK rendering, highlights
519         the bbox, in libart highlights the outline of the object (except
520         for texts).
522 2004-03-22  Lars Clausen  <lars@raeder.dk>
524         * RELEASE-PROCESS: Added info on how to do a branch for
525         development during release process.
527 2004-03-20  Lars Clausen  <lars@raeder.dk>
529         * RELEASE-PROCESS: Mention PATCH keyword in release process.
531 2004-03-19  Lars Clausen  <lars@raeder.dk>
533         * xmldocs.make: Fixed apparent uninstall error.
535         * config.h.win32: 
536         * doc/en/dia-manual.xml: 
537         * doc/pl/dia-manual.xml: 
538         * dia.spec: 
539         * configure.in: 
540         * NEWS: Version 0.93-pre1.
542         * lib/dialinechooser.[ch]: Patch from pborelli@katamail.com (paolo
543         borelli):  Remove some deprecated stuff.
545 2004-03-18  Lars Clausen  <lars@raeder.dk>
547         * Makefile.am: Try better uninstall thing for scrollkeeper.
549         * objects/ER/entity.c: 
550         * lib/arrows.[ch]: Patch from Georg Lothar Thimm
551         <MGEORG@ntu.edu.sg>: Adds new ER arrows 1 or many, 0 or many, 0 or
552         1, 1 exactly, as well as associative ER entities.
554 2004-03-17  Lars Clausen  <lars@raeder.dk>
556         * Makefile.am: Make distcheck not complain about scrollkeeper
557         problems (as per advice from James Henstridge).
559         * doc/pl/*.{xml,sgml}: Converted SGML manuals to XML to get better
560         standard installation.
562         * objects/standard/ellipse.c: Better strings for object menu.
564         * app/sheets_dialog_callbacks.c: Fixed crashes from broken caching
565         of dialogs (shame on you, glade!)
567         * objects/custom/custom_object.c (custom_setup_properties):
568         Removed debugging output
570         * app/paginate_psprint.c (diagram_print_ps): Slightly more
571         readable printer error messages.
573         * xmldocs.make: 
574         * omf.make: 
575         * doc/en/Makefile.am: 
576         * doc/pl/Makefile.am: 
577         New more standard way to install the XML-based manuals.  
579 2004-03-15  Lars Clausen  <lars@raeder.dk>
581         * objects/standard/box.c (box_move_handle): More intuitive fixed
582         aspect behaviour.
584         * objects/standard/ellipse.c: 
585         * objects/standard/box.c: 
587         * lib/widgets.[ch]:
588         * app/layer_dialog.[ch]:
589         Patch from Steve Langasek <vorlon@debian.org>:
590         Fixes startup crash on Alpha (bug #137169)
591         
592         * objects/standard/box.c: Aspect fixing like ellipses.
594         * app/Makefile.am (dia_core_files): Include dia-app-icons.h
596         * lib/pixmaps/Makefile.am (imagedir): Better Makefile.am for
597         pixmaps, now can uninstall properly.
599         * objects/standard/ellipse.c: Patch from dooms@info.ucl.ac.be:
600         Fixed and circle aspect ratios for ellipses.  Bug #137156, #87966,
601         #93940. 
602         Added object menu access.
604 2004-03-07  Hans Breuer  <hans@breuer.org>
606         * lib/diaarrowchooser.c lib/dialinechooser.c : #undef
607         GTK_DISABLE_DEPRECATED (I'd rather like if these widgets
608         would not use deprecated apis, but it's much simpler this way)
610         * lib/makefile.msc : build the above new widgets and render_pixmap
611         * lib/libdia.def app/dia.def app/makefile.msc : updated
613         * app/disp_callbacks.c : fix gccisms (without being able to make much sense of 
614         what I saw, i.e. how big is an empty array supposed to be ? ;-). 
615         Previously it gave :
616         disp_callbacks.c(188) : error C2059: syntax error : '}'
617         disp_callbacks.c(191) : warning C4034: sizeof returns 0
619         * app/interface.c : #include "dialinechooser.h"
621         * lib/diagdkrender.c : make the !HAVE_FREETYPE case compile again
622         [one more reason not to use it here : it's quite slow compared to
623          the native win32 font renderer ;]
625         * app/app_procs.c app/filedlg.c : gtk_widget_destroy does not take
626         a GtkDialog*, removed unneeded cast
628         * app/render_eps.c : avoid assignment warning for void* user_data
629         not being an int 
631 2004-03-06  Steffen Macke sdteffen@web.de>
633         * shapes/Map/Isometric/Makefile.am: added Makfile for Isometric
634         shapes
636 2004-03-06  Lars Clausen  <lars@raeder.dk>
638         * lib/arrows.h (DEFAULT_ARROW_SIZE): Downed default arrow size to
639         0.5, as per poll.
641         * lib/font.c: Simple cleanup system for layout cache removes any
642         layout that hasn't been used for 10 minutes, but only during idle
643         time. 
645 2004-03-05  Lars Clausen  <lars@raeder.dk>
647         * sheets/Electric.sheet.in: Added patch from padro@lsi.upc.es
648         (lluis padro) (#130887): Extended Electric shapes with vertical
649         versions. 
651         * sheets/Cybernetics.sheet.in: Normalize shape descriptions (never
652         start with "Create a" or "A", always capitalize first word).
654         * objects/standard/ellipse.c: Patch from Grégoire Dooms
655         <dooms@info.ucl.ac.be>: Add extra connection point in center of
656         ellipse.  Additionally added a handle in the center, and resize is
657         now around the center.
659         * configure.in: 
660         * sheets/Makefile.am (SUBDIRS): 
661         * sheets/IsometricMap.sheet.in: 
662         * shapes/Map/Isometric/*
663         * shapes/Makefile.am (SUBDIRS): Added Isometric shapes.
665 2004-03-04  Lars Clausen  <lars@raeder.dk>
667         * lib/Makefile.am: 
668         * lib/pixmaps/Makefile.am: 
669         * configure.in: 
670         Better installation handling of pixmaps.
671         
672         * lib/diagdkrenderer.c: 
673         * lib/diagtkfontsel.h (struct _DiaGtkFontSelectionClass): 
674         * lib/diagtkfontsel.c (dia_gtk_font_selection_show_available_fonts): 
675         Constness fixes.
677 2004-03-03  Lars Clausen  <lars@raeder.dk>
679         * lib/diagtkfontsel.h (struct _DiaGtkFontSelection): 
680         * lib/diagdkrenderer.c: 
681         * lib/diasvgrenderer.c:
682         * lib/dialibartrenderer.c:
683         * lib/diainteractiverenderer.c: 
684         * lib/prop_text.c (multistringprop_handle_key): 
685         * lib/dia_dirs.c: 
686         * lib/dia_image.c (dia_image_rgba_data): 
687         * lib/widgets.c: 
688         * lib/diagramdata.c (layer_set_object_list): 
689         * lib/font.h: 
690         * lib/font.c: 
691         Getting rid of compile warnings.
693         * lib/widgets.c: Handle destroy properly, i.e. unref the two extra
694         images.  Also remove unused decls.
696 2004-03-02  Lars Clausen  <lars@raeder.dk>
698         * lib/widgets.h: 
699         * lib/widgets.c (dia_size_selector_init): Add images to the size
700         selector chain widget.  Also new function to load installed images
701         from files (better than from included XPM, IMHO).
703 2004-03-02  Lars Clausen  <lars@raeder.dk>
705         * lib/libdia.def: 
706         * lib/pixmaps/[un]broken-chain.xpm: Icons stolen from GIMP for the
707         size selector.
709         * lib/Makefile.am: 
710         * lib/widgets.c (dia_size_selector_init): Work
711         on getting proper icon onto the size selector.  Need simple image
712         load mechanism in utils.
714         * lib/text.c: 
715         * app/display.[ch]:
716         * app/disp_callbacks.c: Patch from kou@cozmixng.org: Show preedit
717         strings, handle utf8 strlen properly.  Bug #135930.
719 2004-03-01  Lars Clausen  <lars@raeder.dk>
721         * shapes/Cybernetics/*:
722         * sheets/Cybernetics.sheet.in:
723         * sheets/Makefile.am:
724         * shapes/Makefile.am: 
725         * configure.in: Patch from charly.meyer@t-online.de (Thorsten
726         Roggendorf): Cybernetic shapes (#95553).
728 2004-03-01  Lars Clausen  <lars@raeder.dk>
730         * app/Makefile.am: Fixed $(EXEEXT) warning from automake.
732         * lib/diatypes.h: New type DiaSizeSelector.
734         * lib/widgets.[ch]: New size selector widgets that selects two
735         values (width and height, nominally) optionally linked to keep
736         aspect ratio.
738 2004-03-01  Hubert Figuiere  <hfiguiere@teaser.fr>
740         * plug-ins/svg/render_svg.c (new_svg_renderer): Add DTD declaration
741         in front of file. Bug #128600.
743         * app/Makefile.am:
744         * app/interface.h:
745         * app/lineprops_area.[ch]:
746         * lib/Makefile.am:
747         * lib/dialinechooser.[ch]:
748         * lib/widgets.c (dia_line_style_selector_init): use line preview 
749         instead of text labels. This involve moving away line_chooser to lib
750         from app.
752         * lib/diaarrowchooser.[ch] (close_and_hide): Make static to avoid
753         symbol conflicts.
755         * app/Makefile.am (dia_core_files): 
756         * app/interface.c (create_lineprops_area):
757         * app/render_pixmap.[ch]:
758         * lib/Makefile.am:
759         * lib/diaarrowchooser.[ch]:
760         * lib/libdia.def:
761         * lib/prop_attr.c:
762         * lib/propdialogs.c:
763         * lib/render_pixmap.[ch]:
764         * lib/widgets.c (dia_arrow_fill_menu): Use arrow preview instead
765         of text labels. This involve moving away arrow_chooser to lib from
766         app.
768 2004-02-29  Lars Clausen  <lars@raeder.dk>
770         * objects/UML/class.[ch]: Puny kludge to avoid GtkList objects
771         being updated half-way through destruction.  To be removed when
772         the lists are replaced by something better.
774         * objects/UML/class_dialog.c: Patch from luc@handhelds.org:
775         Accelerators for class dialog.  Bug #130995.
776         Patch from luc@handhelds.org: Better aligning of widgets.  Bug #130994.
778         * app/dia-props.c:
779         * app/preferences.c:
780         * lib/properties.c:
781         * objects/GRAFCET/step.c:
782         * objects/Misc/analog_clock.c:
783         * objects/chronogram/chronoline.c:
784         * objects/chronogram/chronoref.c:
785         Change to american spelling (color, not colour) to ease
786         translators job.  Note that a number of translations may need an
787         update now.  Bug #120466.
789 2004-02-29  Lars Clausen  <lars@raeder.dk>
791         * plug-ins/xfig/xfig-export.c: Patch from solworth@cs.uic.edu:
792         Better arrow handling for missing arrows.
794         * plug-ins/metapost/render_metapost.[ch]: Patch from
795         phred@cs.berkeley.edu (Fred Reiss): Add font faces and font
796         size. See bug #135363.
798         * app/app_procs.c (app_init): If non-interactive, or if
799         --log-to-stderr used, send all messages to stderr.  This should
800         mean that old diaconv == dia --export-to-format=FOO BAR
802 2004-02-29  Hubert Figuiere  <hfiguiere@teaser.fr>
804         * app/menus.c: Get rid of GNOME menus. Deprecated APIs in GNOME 2.
806 2004-02-28  Lars Clausen  <lars@raeder.dk>
808         * lib/text.c (text_key_event): Patch from Kouhei Sutou
809         <kou@cozmixng.org>: Fix wrong utf8 strlen handling.
811 2004-02-27  Lars Clausen  <lars@raeder.dk>
813         * KNOWN_BUGS: Added info on most commonly reported bugs, with
814         BugZilla numbers.
815         
816         * app/disp_callbacks.c (popup_object_menu): Unified properties
817         entry, fixes bug #105080.
819         * app/diagram.c (diagram_update_menu_sensitivity): 
820         * app/menus.h (struct _UpdatableMenuItems): 
821         * app/menus.c (menus_initialize_updatable_items): Menu items
822         changed around, align menus flattened, properties entry ghosted,
823         dialogs menu removed, more shortcuts added.  Closing bugs #94018,
824         #117495, #135125.
825         Also taking out Gnome menus for now.  They don't allow shortcuts,
826         so what are they good for?
828 2004-02-27  Lars Clausen  <lars@raeder.dk>
830         * app/menus.c (display_menu_items): 
831         * app/commands.[ch]: Added duplicate menu item from Alan Horkan
832         (bug #95546).
834 2004-02-24  Adam Weinberger  <adamw@FreeBSD.org>
836         * configure.in: Added 'en_CA' (Canadian English) to ALL_LINGUAS.
838 2004-02-23  Lars Clausen  <lars@raeder.dk>
840         * app/app_procs.c (app_init): Comments for translators.
842 2004-02-22  Hubert Figuiere  <hfiguiere@teaser.fr>
844         * app/preferences.c (prefs_create_dialog): Change packing policy
845         for widget to expand.
847         * app/Makefile.am (run_dia.sh): Fixed a typo in wrapper that prevented
848         running with a debugger.
850 2004-02-19  Lars Clausen  <lars@raeder.dk>
852         * app/undo.[ch]: Adding last-saved information to undo to allow a
853         diagram with all changes since last save undo to be marked as
854         nonmodified.  Still needs integration with actual undo
855         apply/revert calls.
857         * app/diagram.h: 
858         * app/diagram_tree.c (diagram_tree_update): 
859         * app/diagram.c: 
860         * app/display.c (update_modified_status): 
861         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_GetAttr): 
862         * app/autosave.c (autosave_check_autosave): Encapsulate modifed
863         test. 
865         * app/render_eps.[c]: Restructure to better handle PS vs. EPS
866         vs. EPSI, comment out EPSI until preview is in there.
868         * lib/render.c: 
869         * lib/diarenderer.c: Removing debugging printfs.
871         * app/diapsrenderer.[ch]: Preparations for proper EPSI rendering
872         (with preview)
874         * objects/standard/arc.c (arc_update_handles): Check to avoid
875         crash when start and end points are the same.
877 2004-02-19  Lars Clausen  <lars@raeder.dk>
879         * objects/standard/bezier.c: 
880         * objects/standard/line.c (line_load): 
881         * objects/standard/polyline.c (polyline_load): 
882         * objects/standard/zigzagline.c (zigzagline_load): 
883         * objects/standard/arc.c (arc_load): 
884         * lib/widgets.h (DEFAULT_ARROW_WIDTH): Use DEFAULT_ARROW_SIZE
885         instead of hardcoding.
887 2004-02-18  Hubert Figuiere  <hfiguiere@teaser.fr>
889         * app/disp_callbacks.c (popup_object_menu): append a menu item to 
890         display properties.
892 2004-02-17  Hubert Figuiere  <hfiguiere@teaser.fr>
894         * app/app_procs.c: declare rc properly with the proper #ifdef
896 2004-02-17  Lars Clausen  <lars@raeder.dk>
898         * plug-ins/xfig/xfig-import.c: Correct ordering of imported FIG
899         objects (which seemingly FIG itself breaks, or else there is no
900         ordering).
902 2004-02-16  Lars Clausen  <lrclause@cs.uiuc.edu>
904         * plug-ins/xfig/xfig-export.c (figLineWidth): Check for minimum
905         width renderable in xfig.  Helps on bug #133637, but does not
906         quite fix it -- something about depth is wrong.
908         * plug-ins/xslt/xslt.[ch]: Patch #133913 from phenning@lanl.gov:
909         Extern definitions for Mac compilation.
911         * app/app_procs.c: Patch #131159 from J. H. M. Dassen
912         (jdassen@debian.org): Include fix.
914         * app/interface.c: Patch #130100 from luc@handhelds.org:  Make
915         sure the initial diagram size is correct.
917 2004-02-15  Lars Clausen  <lrclause@cs.uiuc.edu>
919         * lib/Makefile.am (AM_CPPFLAGS): Override AM_CPPFLAGS instead of
920         CPPFLAGS, as per automake warning.
921         * app/Makefile.am (AM_LDFLAGS): Override AM_LDFLAGS instead of
922         LDFLAGS, as per automake warning.
923         (run_dia.sh): More robust creation, and more easily moved.
925         * app/undo.c (group_objects_revert): Don't double-free the objects
926         list.  (#129221) Call object_add_updates on grouped objects.
927         (ungroup_objects_revert): Call object_add_updates on grouped objects.
929         * lib/diagramdata.c: Internal
930         documentation. 
932         * lib/polyshape.c (polyshape_update_data): Correctly calculate
933         directions for polyshape corners (thanks, Valgrind!)
935         * lib/attributes.c: 
936         * lib/prop_attr.c (arrowprop_load): Use default arrow size.
938         * lib/arrows.h: Default arrow size defined.  After all are using
939         this, may lower to 0.4 or so.
941         * app/lineprops_area.[ch]: New function to set the arrow type for an
942         arrow chooser.
944         * app/interface.c (create_lineprops_area): Set default line to
945         have an arrow (fairly likely to be what's wanted, plus it shows
946         the user where arrows are set).
948         * app/app_procs.c: #ifdef HAVE_POPT popt args to process_opt
950 2004-02-14  Lars Clausen  <lrclause@cs.uiuc.edu>
952         * plug-ins/metapost/render_metapost.c (draw_with_linestyle):
953         Dotted lines should use dot_length, not dash_length.
955 2004-02-06  Hans Breuer  <hans@breuer.org>
957         * app/interface.c : don't use gtk_drawing_area_size() to avoid
958         the defaut size being also the minimum size. Instead use
959         gtk_window_set_default_size() on the display shell. Fixes #130982.
961         [fixing #131210, but umlauts in the 'main' filename still not really 
962          supported on systems where filesystem encoding != utf8
963         (Problems with recent file menu and window title)]
964         * lib/dia_xml.[hc] : add data_filename() and data_add_filename()
965         to deal with possible differnces in filename encodings, see
966         g_filename_<to|from>_utf8()
967         * objects/standard/image.c : use them.
969         * lib/widgets.c : handle possible encoding difference here, too.
970         Also get rid of most warnings by using const and GTK casts where 
971         appropriate; one wrong cast (probably causing a crash) was found/fixed 
972         by this - the remaining give a hint on finally leaking FontSelectorEntry.
974         * lib/widgets.[hc] : hide _DiaFileSelector and *Class in .c. Modified
975         dia_file_selector_<get|set>_file to behave like the respective Gtk 
976         functions do : encoding- and const-wise ;-)
978 2004-02-01  Robert Sedak  <robert.sedak@sk.htnet.hr>
980         * configure.in: Added "hr" (Croatian) to ALL_LINGUAS.
982 2004-01-19  Hans Breuer  <hans@breuer.org>
984         * app/app_procs.c app/diaconv : 
985         only call bind_textdomain_codeset when available, what's good 
986         for The Gimp (bug #131215) can't be wrong for Dia : bug #125926
987         * config.h.win32 : define HAVE_BIND_TEXTDOMAIN_CODESET
989 2004-01-19  Steffen Macke <sdteffen@web.de>
991         * makefile.msc: updated for new GAIM-like installer build; sync'ed
992         ALL_LINGUAS with configure.in
994 2004-01-18  Hans Breuer  <hans@breuer.org>
996         * app/app_procs.c (myXmlErrorReporting) : avoid possible crash 
997         by not passing NULL to g_print()
999         * app/interface.c (create_toolbox) : actually use
1000         persitence_register_window() to restore toolbox window size
1002         * app/makefile.msc lib/makefile.msc : allow to deselect
1003         building with Freetype by command line to nmake like :
1004                 nmake -f makefile.msc "NOFT2=1"
1006         * plug-ins/python/diasvg_import.py : handle 'stroke-array' as
1007         far as possible with Dia's limited line style
1008         * plug-ins/python/pydia-property.c : allow to get and set
1009         Linestyle, style and dash(length)
1011         * lib/object.h : removed typedef for ObjectId not use anywhere
1013 2004-01-17  Hans Breuer  <hans@breuer.org>
1015         * objects/custom/shape_info.[hc] objects/custom/custom_object.c
1016           doc/shape.dtd doc/custom-shapes : 
1017         support for images in custom shapes, also removed some long-time
1018         dead code
1020         * doc/en/*.xml : fixed crippled line ends which get created
1021         when windoze line ends are checkin from the unix side
1023 2004-01-13  Laurent Dhima  <laurenti@alblinux.net>
1025         * configure.in: Added "sq" to ALL_LINGUAS.
1027 2004-01-11  Hans Breuer  <hans@breuer.org>
1029         [more less leaks ;-]
1030         
1031         * objects/SADT/annotation.c : use text_destroy() not g_free()
1032         
1033         * objects/chronogram/chronoline.c : neither leak chronoline::events
1034         nor chronoline::name
1036         * objects/wpg/wpg.c : don't g_free() but g_object_unref(renderer);
1038 2004-01-11  Hans Breuer  <hans@breuer.org>
1040         * lib/properties.h :
1041         * objects/custom/custom_object.c : more properties optional
1042         to be backward compatible for older diagrams not having them 
1043         set. (Try to load samples/all_objects.dia)
1044         
1045         [less memory leaks thanks valgrind ;-]
1046         
1047         * app/recent_files.c (recent_file_history_write) : 
1048         g_free(history_filename);
1049         (recent_file_menu_item) : use g_path_get_basename() 
1050         which already strdups, free result of g_strescape()
1051         
1052         * app/filedlg.c (create_export_menu) : return of
1053         filter_get_export_filter_label() must be g_free()'d
1054         (create_open_menu) : same for import
1055         
1056         * app/export_png.c (export_png_ok) : destroy info ptr
1057         with png_destroy_write_struct()
1058         
1059         * app/app_procs.c (app_init) : g_free(export_format_string);
1060         
1061         * lib/font.c (dia_font_finalize) : finalize parent_class, too
1062         (dia_font_new_from_style) : stop leaking almost all DiaFont by not
1063         refing it a second time, g_type_create_from_instance() is enough
1064         
1065         * lib/object_defaults.c (_obj_store) : don't mess with names
1066         len 0 (should avoid 'Invalid read of size 1, but doesn't ;)
1067         
1068 2004-01-11  Steffen Macke <sdteffen@web.de>
1070         * app/diapsftrenderer.c: including ftoutln.h
1071         * app/makefile.msc: updated for freetype build
1072         * lib/libdia.def: added dia_font_get_context()
1073         * lib/dialibartrenderer.c (draw_string): added cast
1074         
1075 2004-01-10  Hans Breuer  <hans@breuer.org>
1077         * lib/diagdkrenderer.c (draw_string) : gdk_draw_line with
1078         transformed coordinates, fixes bug 130804
1080 2004-01-10  Hans Breuer  <hans@breuer.org>
1082         * app/filedlg.c app/app_procs.c : don't try to destroy 
1083         'gtk_dialog_run'-dialogs dialogs by connecting to the "response"
1084         signal but simply by gtk_widget_destroy() after gtk_dialog_run()
1085         returns. Fixes 'has no handler' bugs like #121019
1087 2004-01-10  Hans Breuer  <hans@breuer.org>
1089         * objects/UML/class.c objects/UML/class_dialog.c : 
1090         handle umlclass->name being empty to avoid, i.e. fix #127968
1092         [plugging memleaks, thanks valgrind :-]
1093         
1094         * lib/dia_xml.c (data_string) : don't leak return value
1095         of xmlNodeListGetString()
1096         
1097         * lib/dia_xml.c (xml_file_check_encoding) : g_free(buf)
1098         before returning, maybe alloca() would be the better 
1099         choice but anyway ;)
1101         * objects/custom/custom_object.c:306 : adde xmlFree(str) below
1102         
1103         * lib/font.c (dia_font_build_layout) : don't leak result
1104         of g_utf8_strdown()
1105         
1106         * lib/diagdkrenderer.c (draw_string) : don't leak rgba
1107         (this is the one which got me started using valgrind, see #130816)
1108         
1109 2004-01-07  Sanlig Badral  <badral@openmn.org>
1111         * configure.in: Added "mn" to ALL_LINGUAS.
1113 2004-01-04  Hans Breuer  <hans@breuer.org>
1115         * lib/diagdkrenderer.c : replace rendering of really small (height
1116         less than 2 pixels) with a simple dashed line, you wont notice the 
1117         differnce beside it being much faster. This allows ...
1118         * lib/diagdkrenderer.h : ... to remove gboolean rendertext ...
1119         * app/navigation.c : ... and lets you see an read rendered text even 
1120         in the nice navigation popup.
1122         * lib/dialibartrenderer.c : FONT_SCALE defined as 1.0 for G_OS_WIN32, too. 
1123         (draw_string) : don't leak temporary image
1125 2004-01-04  Hans Breuer  <hans@breuer.org>
1127         * app/dia-app-icons.h : TODO : to be removed when autogenerated on *NIX, too.
1128         * app/interface.c : use dia-app-icons.h to give Dia window icons
1130         * lib/dia_image.c lib/color.c : _never_ call functions implemented
1131         in app/ from lib/. It is not portable and broken from design
1132         * app/app_procs.c : call color_init() and dia_image_init() conditional,
1133         i.e. only if running interactive.
1135         * lib/font.h : #include <time.h>
1137         * lib/libdia.def : updated externals
1139         * objects/UML/actor.c 
1140             objects/UML/association.c (todo)
1141           objects/UML/branch.c
1142           objects/UML/class.[hc] objects/UML/class_dialog.c
1143           objects/UML/classicon.c
1144           objects/UML/component.c 
1145           objects/UML/constraint.c
1146           objects/UML/dependency.c
1147           objects/UML/generalization.c
1148           objects/UML/implements.c
1149           objects/UML/large_package.c
1150           objects/UML/lifeline.c
1151           objects/UML/message.c
1152           objects/UML/node.c
1153           objects/UML/object.c
1154           objects/UML/realizes.c
1155           objects/UML/small_package.c
1156           objects/UML/state.c
1157           objects/UML/usecase.c
1158           objects/UML/
1159         : ported coloring of most UML objects (bug #97517, orginal
1160           work Mathias Hasselmann)
1162         * lib/properties.h : add _OPTIONAL variants for 
1163         PROP_STD_(LINE|FILL|TEXT)_COLOUR which allows to load old -
1164         i.e. default colored - UML diagrams without complaining
1165         * lib/proplist.c lib/propoffsets.c : avoid setting _OPTIONAL,
1166         not set properties with the help of PXP_NOTSET. Otherwise 
1167         optional attributes would lead to wrong initialization. 
1169         * lib/widgets.[hc] : moved _DiaFontSelector from .h to .c
1170         to hide details and restict #undef GTK_DISABLE_DEPRECATED to .c
1171         Same for most other selectors which probably should be rewritten
1172         to the combo box with tree model from Gtk+ 2.4
1174 2004-01-04  Lars Clausen  <lrclause@cs.uiuc.edu>
1176         * INSTALL (PLATFORM NOTES): Mention the Gnu gettext and iconv as
1177         being the Right Thing(tm) to use on Solaris.
1179         * objects/standard/bezier.c (bezierline_draw): Don't draw
1180         guidelines if not selected.
1182         * lib/object.[ch] (dia_object_is_selected): Function to check whether
1183         a given object is selected. O(n), where n is # selected objects.
1184         
1186 2004-01-03  Lars Clausen  <lrclause@cs.uiuc.edu>
1188         * lib/widgets.[ch]: Make sure old font is re-chosen when the Other
1189         Fonts dialog is closed without pressing Ok (bug #128646).
1191 2004-01-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1193         * app/Makefile.am: Quote arguments correctly for run_dia.sh (bug
1194         #130099). 
1196 2004-01-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1198         * INSTALL: Updated list of requirements (bug #129653)
1200         * doc/en/dia.dia: Beginning class diagram for Dia from Luc
1201         Pionchon <luc@handhelds.org>.
1203 2003-12-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1205         * lib/diagdkrenderer.c (draw_string): Don't attempt to render
1206         empty or NULL strings (bug #130097).
1208 2003-12-31  Chris Sperandio <sperandi@eng.usf.edu>
1209         
1210         * plug-ins/metapost/render_metapost.c: Fixed string colorization.
1211         Added checks against color_black.
1213 2003-12-31  Lars Clausen  <lrclause@cs.uiuc.edu>
1215         * plug-ins/xfig/xfig-export.c (figArrow): Output nothing for
1216         ARROW_TYPE_NONE.  Thanks to Jon A. Solworth for showing that this
1217         can happen.
1219         * objects/UML/component_feature.c: Patch from W. Borgert
1220         <debacle@debian.org>:  Add handle to component feature text.
1222         * lib/diagdkrenderer.c (draw_string): Remove poorly placed caching.
1224         * lib/font.c: Caching PangoLayout for better rendering speed.
1226 2003-12-30  Lars Clausen  <lars@raeder.dk>
1228         * lib/dia_dirs.[ch] (dia_get_absolute_filename): New function to
1229         get absolute file name from relative.
1230         * app/recent_files.c (recent_file_history_add): Use absolute
1231         filenames for recent files menu so that files can be found when
1232         Dia is invoked from other places.  
1234         * app/app_procs.c (handle_all_diagrams): Fix for 1/3 of 130098:
1235         Actually load different diagrams if such are requested on command
1236         line.  
1238         * objects/UML/class_dialog.c (class_create_page): Fix from Luc
1239         Pionchon <luc@handhelds.org>: Correctly align labels for colors.
1241         * lib/diagdkrenderer.[ch]: From Luc: New option to GdkRenderer to
1242         remove text rendering.  May be turned into greeking at some later
1243         stage.
1245         * app/interface.c: 
1246         * app/Makefile.am (dia_core_files): 
1247         * app/navigation.[ch]: Patch from Luc Pionchon <luc@handhelds.org>:
1248         Adds navigation window a la Gimp, though without text being
1249         rendered at all.
1251 2003-12-27  Luc Pionchon <luc@handhelds.org>
1253         * app/navigation.h: (new file)
1254         * app/navigation.c: (new file) creates a navigation window with a
1255         thumbnail view of the whole diagram.
1256         * app/Makefile.am (dia_core_files): added new files.
1258         * app/interface.c (create_display_shell): added a button between
1259         the scrollbars to popup a navigation window.
1261         * lib/diagdkrenderer.h (struct_DiaGdkRenderer): added rendertext
1262         boolean
1263         * lib/diagdkrenderer.c (renderer_init): set rendertext TRUE by default
1264         * lib/diagdkrenderer.c (draw_string): returns if the renderer do
1265         not want text rendering.        
1267 2003-12-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1269         * shapes/Circuit/hresistor.shape: Uses new extra attribute thing.
1271         * objects/custom/shape_info.[ch]: Cleanup.
1273         * objects/custom/custom_object.[ch]: Changed to use new props
1274         interface.
1276         * lib/properties.h: 
1277         * lib/prop_text.c: 
1278         * lib/prop_inttypes.c: 
1279         * lib/prop_geomtypes.c: Added *prop_get_data_size.
1281         * lib/libdia.def: Added object_load_props.
1283         * configure.in: Better FT2 version test, from bug #129225.
1285         * dia.spec (BuildRequires): Changed to match makefile (bug #129131)
1287         * plug-ins/xslt/dia-uml2python.xsl: Added Python sheet from Holger
1288         Lehmann <holger.lehmann@catworkx.de>.
1290         * plug-ins/xslt/Makefile.am: 
1291         * plug-ins/xslt/stylesheets.xml: Added Python, Component List,
1292         and OWL XSLT sheets.
1294 2003-12-13  Lars Clausen  <lrclause@cs.uiuc.edu>
1296         * lib/diagdkrenderer.c: Add implementation so text is still
1297         rendered.  May be improved later.
1299         * lib/dia_image.c: 
1300         * app/main.c: 
1301         * app/export_png.c: 
1302         * app/diagram.c: 
1303         * app/app_procs.c: Patch from W. Borgert <debacle@debian.org>:
1304         Allow running without a $DISPLAY!
1306         * lib/color.c: Remove warnings for non-interactive run.
1308         * doc/en/dia.dbk: 
1309         * app/export_png.c: 
1310         * app/diaconv.c: 
1311         * app/app_procs.[ch]: 
1312         Patch from W. Borgert <debacle@debian.org>: Allow a --size argument
1313         to specify size for PNG output.
1315         * app/lineprops_area.c (dia_arrow_preview_expose): Make arrows
1316         render a little smaller, so as to fit the big ones.
1318         * lib/arrows.[ch]: New arrow type from W. Borgert
1319         <debacle@debian.org>: Filled Dot and Triangle.
1321 2003-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1323         * doc/pl/Makefile.am (install-data-hook): Fixed installation bug
1324         for gif images.
1326         * plug-ins/xslt/dia-uml2owl.xsl: Added OWL XSLT from Dan Connolly.
1328         * acinclude.m4: Better Python configure code patch (can't find
1329         author, author please speak up!)
1331 2003-12-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1333         * lib/diagdkrenderer.c (get_cached_text): Stupid bugs replaced by
1334         smarter ones.
1336 2003-11-30  Hans Breuer  <hans@breuer.org>
1338         * plug-ins/python/diasvg.py : initialize self.dash_length
1339         in constructor to avoid crashing if the renderer user
1340         does not set it before first usage.
1342 2003-11-30  Lars Clausen  <lrclause@cs.uiuc.edu>
1344         * lib/diagdkrenderer.c: Start of cache GDK text renderer -- not
1345         active yet.
1347         * configure.in: 
1348         * config.h.win32: Set version number to 0.92.2+cvs to distinguish
1349         development and stable versions.
1351         * lib/text.c (text_draw): Use new renderer function to draw the
1352         text.
1354         * lib/diarenderer.h: 
1355         * lib/diarenderer.c: New renderer function "draw_text" with
1356         default implementation.  This function should eventually be the
1357         main interface, as it will be able to handle width and caching of
1358         rendering internally.  All users of draw_string should convert to
1359         use Text objects and call either renderer->draw_text or text_draw,
1360         the latter if the text can be edited in-place (as should be the
1361         goal, eventually).
1363 2003-11-29  Lars Clausen  <lrclause@cs.uiuc.edu>
1365         * shapes/Circuit/hresistor.shape: First example of extra
1366         attributes. 
1368 2003-11-28  Lars Clausen  <lrclause@cs.uiuc.edu>
1370         * plug-ins/shape/shape-export.c: 
1371         * lib/diasvgrenderer.h: 
1372         * lib/diasvgrenderer.c: 
1373         * plug-ins/svg/render_svg.c (new_svg_renderer): 
1374         Actually store the font size, using DiaRenderer's font fields.
1376 2003-11-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1378         * objects/custom/shape_info.[ch]: 
1379         * objects/custom/custom_object.[ch]: 
1380         Support for extra attributes in custom objects.
1381         
1382 2003-11-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1384         * app/diagram.c (diagram_update_menu_sensitivity): More
1385         intelligent checks for menu sensitivity.  Might be slow on huge
1386         diagrams, but I think other things outweigh it by a lot.
1388         * app/menus.[ch]: Make "Bring Forwards"
1389         and "Send Backwards" updateable.
1391 2003-11-22  Steffen Macke <sdteffen@web.de>
1393         * shapes/Assorted/arrow-turn-up.shape:
1394         * shapes/Assorted/arrow-turn-up.png:
1395         * sheets/Assorted/Makefile.am:
1396         * sheets/Assorted.sheet.in: Added new arrow
1398 2003-11-17  Lars Clausen  <lrclause@cs.uiuc.edu>
1400         * app/app_procs.c
1401         * app/color_area.c
1402         * app/commands.c
1403         * app/defaults.c
1404         * app/dia_embedd.c
1405         * app/diagram.c
1406         * app/diagram_tree.c
1407         * app/diagram_tree_menu.c
1408         * app/diagram_tree_window.c
1409         * app/diapagelayout.c
1410         * app/diaunitspinner.c
1411         * app/export_png.c
1412         * app/filedlg.c
1413         * app/interface.c
1414         * app/layer_dialog.c
1415         * app/lineprops_area.c
1416         * app/linewidth_area.c
1417         * app/menus.c
1418         * app/pagesetup.c
1419         * app/paginate_psprint.c
1420         * app/persistence.c
1421         * app/plugin-manager.c
1422         * app/preferences.c
1423         * app/properties.c
1424         * app/recent_files.c
1425         * app/sheets.c
1426         * app/sheets_dialog.c
1427         * app/sheets_dialog_callbacks.c
1428         * app/tool.c: Patch from Sebastien Tricaud <toady@gscore.org>:
1429         GTK-2 compatibility update, mostly gtk_foo -> g_foo.
1431         * TODO: Updated, note on EPS transparency.
1433 2003-11-07  Lars Clausen  <lrclause@cs.uiuc.edu>
1435         * objects/UML/class.c (umlclass_draw): Allow classes with no name
1436         without crashing.
1438 2003-11-01  Lars Clausen  <lrclause@cs.uiuc.edu>
1440         * config.h.win32: 
1441         * doc/en/dia-manual.xml: 
1442         * dia.spec: 
1443         * configure.in: 
1444         * NEWS: Another Brown Bag release for parenting problems,
1445         including a crash bug fix.
1447         * app/connectionpoint_ops.c (diagram_update_connections_object):
1448         Also update connections when moving children.  This can cause
1449         move_handle to be called twice, so it must be idempotent.
1451         * app/load_save.c: Loading and saving of children totally redone.
1452         Now doesn't violate assumption that all objects in a layer are
1453         placed in order in XML file.
1455         * objects/UML/branch.c (branch_create): Don't lie about being
1456         resizable. 
1458         * objects/UML/node.c (node_create): 
1459         * objects/UML/large_package.c (largepackage_create): Drag with
1460         lower right-hand handle at creation like all other objects.
1462 2003-10-28  Lars Clausen  <lrclause@cs.uiuc.edu>
1464         * app/disp_callbacks.c (ddisplay_drop_object): Change initial
1465         parenting drop to behave like a move inside, i.e. constrain place
1466         instead of trying to resize.  'Cause, resizing cannot be done for
1467         all objects (e.g. UML Class). Also simplified the algorithm a lot
1468         at the same time.
1470         * app/load_save.c: Saving and loading of connection points for
1471         children added.  Prototypes for static functions added.
1473         * lib/dynamic_obj.c: Removed debugging output.
1475 2003-10-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1477         * doc/en/dia-manual.xml: 
1478         * doc/pl/dia-manual.sgml: 
1479         * dia.spec: 
1480         * config.h.win32: 
1481         * configure.in: 
1482         * NEWS: Brown Bag release 0.92.1
1484         * lib/dynamic_obj.c: Fixed embarassing dynamic object removal bug.
1486 2003-10-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1488         * app/app_procs.c (app_init): Rearrangement for translators.
1490 2003-10-24  Steffen Macke <sdteffen@web.de>
1492         * lib/text.c(text_key_event): enforcing the inserted text length now,
1493         fix for bug #125348
1495 2003-10-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1497         * MAINTAINERS: Change Debian maintainer to be the default address.
1499         * objects/Misc/analog_clock.c (analog_clock_move_handle): Reorder
1500         args to match prototype, thus removing crashbug #125159.
1502         * RELEASE-PROCESS: Note to self.
1504 2003-10-22  Steffen Macke <sdteffen@web.de>
1506         * doc/en/dia-manual.xml: removed superfluous external references
1507         
1508 2003-10-21  Steffen Macke <sdteffen@web.de>
1510         * lib/libdia.def: added filter_get_by_name
1511         * app/render_eps.c: moved extensions definition outside #ifdef
1513 2003-10-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1515         * Makefile.am: 
1516         * dia.1:
1517         Removed old Dia manual, put new one in doc/en/.  Translations
1518         should go in doc/??/.
1520         * doc/en/dia-manual.xml: 
1521         * doc/pl/dia-manual.sgml: 
1522         * dia.spec (Release): 
1523         * config.h.win32: 
1524         * configure.in: 
1525         * NEWS: 0.92 is here!
1527         * doc/en/dia.dbk: 
1528         * doc/en/dia.1: 
1529         * doc/en/Makefile.am (man_MANS): Added man page, thanks to Fredrik
1530         HallenBerg, W. Borgert.  Not currently autogenerated from dia.dbk,
1531         but it shall be.
1533         * doc/en/usage-objects.xml: Fixed lower-case PNG tags.
1535         * doc/en/usage-objects-selecting.xml: Commented out empty note.
1537 2003-10-14  Lars Clausen  <lrclause@cs.uiuc.edu>
1539         * doc/pl/dia-manual.sgml: 
1540         * doc/en/dia-manual.xml: 
1541         * config.h.win32: 
1542         * NEWS: 
1543         * configure.in: 
1544         * dia.spec (Release): Pre7.
1546         * app/diapsrenderer.c (draw_string): Convert string to print based
1547         on current locale.  If conversion fails, fall back to UTF-8 (which
1548         is almost certain to be messy).
1550 2003-10-13  Lars Clausen  <lrclause@cs.uiuc.edu>
1552         * doc/pl/dia-manual.sgml: 
1553         * dia.spec (Release): 
1554         * configure.in: 
1555         * NEWS: 
1556         * config.h.win32: 
1557         * doc/en/dia-manual.xml: Pre6.
1559         * plug-ins/pstricks/render_pstricks.c (draw_string): Don't escape
1560         TeX chars in strings -- must be possible to use TeX text in there.
1561         Also avoids infinite loop bug (#124464) Will get option for this
1562         later.
1564 2003-10-11  Lars Clausen  <lrclause@cs.uiuc.edu>
1566         * shapes/Cisco/Makefile.am: Cisco shapes now install correctly.
1568         * doc/en/dia-manual.xml: 
1569         * doc/pl/dia-manual.sgml: 
1570         * dia.spec (Release): 
1571         * configure.in: 
1572         * config.h.win32: 
1573         * NEWS: pre5.
1575         * app/authors.h: Removed duplicate of M. C. Nelson.
1577         * plug-ins/pixbuf/pixbuf.c: Unique name for pixbuf export: gdkpixbuf.
1579         * app/export_png.c: Unique name for libart PNG export: png-libart.
1581         * app/render_eps.c: Unique names for the two eps export methods:
1582         eps-builtin, eps-pango.
1584         * lib/filter.h: Binary compatibility change: 
1585         Added unique name to export filters.  Can be NULL.
1586         * lib/filter.c (filter_get_by_name): Finding a filter by
1587         non-extension name.
1589         * app/app_procs.h: Changed prototype for do_convert.
1590         * app/app_procs.c (app_init): Support for non-extension file
1591         format selection for export.  Also allow extension to differ from
1592         that specified by the filters.  A bit of refactoring, too.
1594 2003-09-28  Steffen Macke <sdteffen@web.de>
1596         * makefile.msc: added target po to update the translations
1598 2003-09-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1600         * config.h.win32: 
1601         * dia.spec (Release): 
1602         * NEWS: 
1603         * doc/pl/dia-manual.sgml: 
1604         * doc/en/dia-manual.xml: 
1605         Pre4 is given a short try.
1606         
1607         * configure.in: Give all necessary libs to PNG test.
1609         * lib/font.c: Added legacy entries for sans, serif and monospace.
1611         * app/app_procs.c (internal_plugin_init): 
1612         * app/render_eps.h: 
1613         * app/render_eps.c: 
1614         Added PS fonts output for Unix.
1616         * app/diapsrenderer.c (set_font): Adjusted height by the magic .7
1617         factor to make PS fonts stay in boxes.
1618         
1619 2003-08-03  Hans Breuer  <hans@breuer.org>
1621         * config.h.win32 : close the version string
1623         * lib/libdia.def : with color_white, color_black being static
1624         on win32 they can not be exported anymore either
1626         * lib/dialibartrenderer.c : text rendering is back on win32,
1627         only by Gdk though; almost a year seems to be enough to
1628         wait for my patch at bug #94791 to be accepted ...
1630 2003-09-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1632         * shapes/network/{digitizing_board.png,plotter.png,
1633         laptop.png,telephone.png}: 22x22 icons.
1635 2003-09-22  Lars Clausen  <lrclause@cs.uiuc.edu>
1637         * doc/pl/dia-manual.sgml: 
1638         * doc/en/dia-manual.xml: 
1639         * dia.spec (Release): 
1640         * configure.in: 
1641         * config.h.win32: 
1642         * NEWS: 
1643         pre3 improves font rendering speed.
1645         * app/app_procs.c (app_init): Don't do pango init here, it's done
1646         on demand in font.c now.
1648         * lib/font.c: Load pango context on demand rather than during
1649         init/all the time strikes a better balance between working font
1650         size and speed.  Still need to cache width calculations.
1652 2003-09-18  Lars Clausen  <lrclause@cs.uiuc.edu>
1654         * lib/dia_xml.c: Enable pretty printing.  Should have been added
1655         on 8/12. 
1657 2003-09-11  Lars Clausen  <lrclause@cs.uiuc.edu>
1659         * lib/arrows.c (calculate_arrow_point): Adjust arrow line
1660         adjustment a bit for half diamond and open round.
1662         * RELEASE-PROCESS: Added note about notifying translators and
1663         maintainers. 
1665         * doc/pl/dia-manual.sgml: 
1666         * doc/en/dia-manual.xml: 
1667         * dia.spec (Release): 
1668         * configure.in: 
1669         * config.h.win32: 
1670         * NEWS:
1671         Update to 0.92-pre2.
1672         
1673 2003-09-10  Lars Clausen  <lrclause@cs.uiuc.edu>
1675         * lib/arrows.c (calculate_arrow_point): Some fixing-up of arrow
1676         calculation for half diamond and open round.
1678         * lib/arrows.c: 
1679         * objects/UML/component_feature.c: 
1680         * lib/arrows.h: Patch from W. Borgert <debacle@debian.org>: Use
1681         arrows instead of specific little hacks.  Much nicer, but damn
1682         there's a lot of arrows.
1684         * lib/dialibartrenderer.c (begin_render): 
1685         * app/render_libart.c (begin_render): Use correct DPI for screen
1686         (well, actually the default DPI of 75 for now).
1688         * app/display.h: Informative notes on the DDISPLAY_*_ZOOM macros.
1690         * lib/diagdkrenderer.c (draw_string): Some reformatting.
1692         * app/app_procs.c (app_init): Note on what should be done for the
1693         pango context now, only it doesn't work:(
1695         * lib/font.c (dia_font_new): Make sure to load fonts that are
1696         used, using a reasonable pango_context.  Also a comment on the
1697         global_zoom_factor, 
1699 2003-09-09  Lars Clausen  <lrclause@cs.uiuc.edu>
1701         * doc/pl/graphics/*.png:
1702         * doc/pl/Makefile.am: Added graphics to distro, avoiding empty
1703         loop (bug #121817).  PL translator may want to change the
1704         home_network png to be in Polish.  If the docs get translated into
1705         more languages, we'll want to find out how to share these things.
1707 2003-09-08  Lars Clausen  <lrclause@cs.uiuc.edu>
1709         * app/splash.c (app_splash_init): Patch from Sébastien Tricaud
1710         <stricaud@mwsp.net>: Use g_signal_* instead of gtk_signal_* in
1711         splash.
1713         * app/filedlg.c (file_save_as_callback): Put filename setting
1714         together.  (Preparation for allowing default save dir.)
1716         * app/paginate_psprint.c (diagram_print_ps): Use $PRINTER
1717         correctly this time:)
1719         * app/dia-props.c (diagram_properties_show): 
1720         * app/properties.c (properties_show): Make sure the
1721         dialogs are transient for the correct diagram.
1723 2003-09-07  Lars Clausen  <lrclause@cs.uiuc.edu>
1725         * configure.in: Make sure -lz -lm is passed into second png test
1726         as well (stupid AC_LINK_IFELSE can't take it as an argument).
1728         * plug-ins/xfig/xfig-import.c: Skip XFig comments to make certain
1729         comment-filled files readable.  Once we have a 'generic data'
1730         system, we can put comments in there.
1732 2003-09-06  Steffen Macke <sdteffen@web.de>
1734         * plug-ins/pstricks/render_pstricks.c(tex_escape_string): using
1735         g_string_sized_new() instead of g_string_new() to make it compile
1736         * app/Makefile.am: including dia.ico and dia.rc in the tarball
1737         * plug-ins/wmf/wmf.cpp (set_linestyle): In WMF maximum linewidth is 1 
1738         for non-solid linestyles - otherwise custom linestyles have to be used.
1740 2003-09-02  Steffen Macke <sdteffen@web.de>
1742         * app/commands.c(help_manual_callback): using dia-manual.chm instead of 
1743         dia.chm
1745 2003-09-02  Christian Neumair  <chris@gnome-de.org>
1747         * sheets/Pneumatic.sheet.in: Slight unification fix.
1749 2003-09-02  Lars Clausen  <lrclause@cs.uiuc.edu>
1751         * config.h.win32: 
1752         * configure.in: 
1753         * dia.spec (Release): 
1754         * doc/en/dia-manual.xml: 
1755         * doc/pl/dia-manual.sgml: 
1756         * NEWS: Update to 0.92-pre1.
1758         * app/properties.c (properties_key_event): Removing Esc/Enter
1759         handling for now, interferes to much with regular dialog usage.
1761         * plug-ins/pstricks/render_pstricks.c (tex_escape_string):
1762         Function to escape special TeX characters.  Not in use yet, as
1763         PSTricks output by default is TeX strings.  Should get a save-time
1764         selector. 
1766 2008-09-01  Steffen Macke <sdteffen@web.de>
1768         * lib/paper.h: explanatory comment on width and height
1770 2003-08-30  Steffen Macke <sdteffen@web.de>
1772         * lib/color.c:
1773         * lib/color.h: made color_white, color_black static on win32
1775 2003-08-28  Lars Clausen  <lrclause@cs.uiuc.edu>
1777         * configure.in (PNG_LIBS): Something in the png tests added an
1778         extra -lpng to $LIBS.  Saving old $LIBS to avoid that.
1780 2003-08-27  Lars Clausen  <lrclause@cs.uiuc.edu>
1782         * configure.in: Quote correctly for temporarily adding freetype
1783         cflags to CPPFLAGS.
1785         * app/preferences.c (prefs_save): Remove debugging g_print.
1787 2003-08-26  Lars Clausen  <lrclause@cs.uiuc.edu>
1789         * objects/flowchart/parallelogram.c (pgram_update_data):
1790         Directions for connections, better system for placing
1791         connectionpoints. 
1793 2003-08-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1795         * lib/diagramdata.c (layer_find_closest_object_except): Look all
1796         the way through the object list, so the foremost object is selected.
1798         * lib/diagramdata.h: Removing dynamic_obj.h, it should only be
1799         included for diagramdata.c.
1801         * lib/prop_text.c (multistringprop_handle_key): Attempt at making
1802         newline in multistringprop not close the dialog.  Failed so far.
1804 2003-08-25  Steffen Macke <sdteffen@web.de>
1806         * app/commands.c: using CHM instead of HTML on win32 if available
1807         * lib/diagramdata.h: including dynamic_obj.h
1809 2003-08-25  Lars Clausen  <lrclause@cs.uiuc.edu>
1811         * app/properties.c (properties_key_event): Make Enter = Ok for
1812         properties dialogs.  Still some problems with this and Esc for
1813         Cancel, for instances escaping out of a menu closes the dialog.
1815         * objects/UML/association.c (association_get_properties): 
1816         * objects/UML/class_dialog.c (class_create_page): Grab appropriate
1817         focus. 
1819         * app/diapsft2renderer.c (draw_string): Use
1820         dia_font_scaled_build_layout to ensure similarity of text.
1822         * lib/diagramdata.c: Remove obj from dynobj list when removing
1823         from layer to avoid nasty race conditions.
1825         * app/undo.c (group_objects_revert): Make sure to unparent and
1826         remove from dynobj list when changing layers objects.
1828 2003-08-23  Steffen Macke <sdteffen@web.de>
1830         * plug-ins/wmf/wmf.cpp (draw_image): replaced BitBlt() with 
1831         StretchBlt(); fixes #92249
1832         
1833 2003-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
1835         * app/filedlg.c (file_save_as_callback): 
1836         * app/preferences.h: 
1837         * app/preferences.c (prefs_data): 
1838         * lib/diagramdata.h: 
1839         * lib/diagramdata.c (new_diagram_data): 
1840         * app/load_save.c (diagram_data_load): 
1841         Let the document remember whether it was compressed.  The user can
1842         still override this in the Save As... dialog, and that will still
1843         be remembered as the default for new diagrams.
1845 2003-08-23  Steffen Macke <sdteffen@web.de>
1847         * plug-ins/xslt/Makefile.am: added dia-uml2componentlist.xsl
1849 2003-08-22  Steffen Macke <sdteffen@web.de>
1851         * plug-ins/xslt/dia-uml.xsl:
1852         * plug-ins/xslt/dia-uml2componentlist.xsl: generate a HTML file with a
1853         table containing a list of components grouped by stereotype
1855 2003-08-21  Steffen Macke <sdteffen@web.de>
1857         * lib/makefile.msc: added connectionpoint.obj
1858         * lib/libdia.def: added connpoint_update, find_slope_directions
1859         * app/disp_callbacks.c: including scroll_tool.h
1860         * obj/makefile.msc: added component_feature.obj
1861         * app/paginate_gdiprint.c: fixed loop initialization in 
1862         paginate_gdiprint(); partial fix for bug #85831 - the scaling is still
1863         wrong
1865 2003-08-21  Lars Clausen  <lrclause@cs.uiuc.edu>
1867         * plug-ins/python/pydia-object.c (PyDiaObject_MoveHandle): Fix
1868         move_handle call.
1870         * lib/diagramdata.h: Colors added to prefs.
1871         * lib/diagramdata.c (new_diagram_data): Set diagram colors from prefs.
1872         New field for pagebreak color, which should
1873         behave the same as grid color and be settable for a diagram.
1875         * app/diagram.c (diagram_init): Update diagram pagebreak color
1876         from prefs. 
1878         * app/grid.c (pagebreak_draw): Draw using diagrams pagebreak
1879         colors. 
1881         * app/preferences.[ch]: Default diagram colors now #defines, so
1882         loading can use it.  Also, colors are now in NewDiagramData, so
1883         are passed nicely into new diagrams directly from prefs.  Yum.
1885         * app/load_save.c (diagram_data_write_doc, diagram_data_load): 
1886         Support for loading and saving grid and pagebreak colors with the
1887         diagram.  I'm inclined to make all the three Colors in diagram
1888         Color*s instead, so we can tell if they're specified for the
1889         diagram or merely the default setting.  There'd be no way for the
1890         user to tell if the color of a diagram is default, though, unless
1891         we add a 'reset to default' button to prefs.
1893         * app/dia-props.c: Adding widgets for dynamic grid, grid colour,
1894         pagebreak color.  Unsensitizing grid size when dynamic.
1896         * objects/UML/component.c: Patch from Krzysztof Foltman
1897         <kfoltman@onet.pl>: Add two new connectionpoints and adjust a
1898         third.  Makes the left side connections actually be on the line
1899         (gasp!). 
1901 2003-08-20  Steffen Macke <sdteffen@web.de>
1903         * lib/libdia.def: added layer_find_closest_object_except
1904         * lib/diagramdata.c: added ; after GOTO to make MSVC compile 
1906 2003-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
1908         * app/tool.h: 
1909         * app/tool.c: 
1910         * app/scroll_tool.c: 
1911         * app/interface.c: 
1912         * app/disp_callbacks.c: 
1913         * app/create_object.h: 
1914         * app/create_object.c: Patch from Krzysztof Foltman
1915         <kfoltman@onet.pl>: Middle button can scroll transiently when
1916         menu-bar-mode is on, and mouse wheels (hopefully) can scroll in
1917         various ways.
1919         * app/authors.h: 
1920         * sheets/UML.sheet.in: 
1921         * sheets/UML/receptacle.xpm: 
1922         * sheets/UML/Makefile.am: 
1923         * sheets/UML/eventsource.xpm: 
1924         * sheets/UML/eventsink.xpm: 
1925         * objects/UML/pixmaps/facet.xpm: 
1926         * objects/UML/uml.c (dia_plugin_init): 
1927         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): 
1928         * objects/UML/component_feature.c: 
1929         Patch from W. Borgert <debacle@debian.org>:  Add event sources and
1930         event sinks.
1931         
1932 2003-08-19  Lars Clausen  <lrclause@cs.uiuc.edu>
1934         * lib/object.h: Turning some comments into doxygen style.
1936         * lib/object_defaults.c (dia_object_defaults_load)
1937         (dia_object_default_get, dia_object_default_create): 
1938         Fixing up existing documentation.
1940         * lib/object.h: Doxygen style documentation begun.
1942         * app/create_object.c: 
1943         * app/undo.c: 
1944         * app/connectionpoint_ops.c: 
1945         * app/disp_callbacks.c: 
1946         * app/modify_tool.c: 
1948         * objects/network/wanlink.c (wanlink_move_handle): 
1949         * objects/network/bus.c (bus_move_handle): 
1951         * objects/flowchart/parallelogram.c (pgram_move_handle): 
1952         * objects/flowchart/ellipse.c (ellipse_move_handle): 
1953         * objects/flowchart/diamond.c (diamond_move_handle): 
1954         * objects/flowchart/box.c (box_move_handle): 
1956         * objects/custom/custom_object.c (custom_move_handle): 
1958         * objects/chronogram/chronoref.c (chronoref_move_handle): 
1959         * objects/chronogram/chronoline.c (chronoline_move_handle): 
1961         * objects/SADT/box.c (sadtbox_move_handle): 
1962         * objects/SADT/arrow.c (sadtarrow_move_handle): 
1963         * objects/SADT/annotation.c (annotation_move_handle): 
1965         * objects/Misc/analog_clock.c (analog_clock_move_handle): 
1967         * objects/GRAFCET/vergent.c (vergent_move_handle): 
1968         * objects/GRAFCET/vector.c (arc_move_handle): 
1969         * objects/GRAFCET/transition.c (transition_move_handle): 
1970         * objects/GRAFCET/step.c (step_move_handle): 
1971         * objects/GRAFCET/condition.c (condition_move_handle): 
1972         * objects/GRAFCET/action.c (action_move_handle): 
1974         * objects/FS/function.c: 
1975         * objects/FS/flow.c: 
1976         * objects/FS/flow-ortho.c (orthflow_move_handle): 
1977         * objects/FS/flow-poly.c (flow_move_handle): 
1979         * objects/UML/usecase.c (usecase_move_handle): 
1980         * objects/UML/state_term.c (state_move_handle): 
1981         * objects/UML/state.c (state_move_handle): 
1982         * objects/UML/small_package.c (smallpackage_move_handle): 
1983         * objects/UML/realizes.c (realizes_move_handle): 
1984         * objects/UML/object.c (objet_move_handle): 
1985         * objects/UML/note.c (note_move_handle): 
1986         * objects/UML/node.c (node_move_handle): 
1987         * objects/UML/message.c (message_move_handle): 
1988         * objects/UML/lifeline.c (lifeline_move_handle): 
1989         * objects/UML/large_package.c (largepackage_move_handle): 
1990         * objects/UML/implements.c (implements_move_handle): 
1991         * objects/UML/generalization.c (generalization_move_handle): 
1992         * objects/UML/fork.c (fork_move_handle): 
1993         * objects/UML/dependency.c (dependency_move_handle): 
1994         * objects/UML/constraint.c (constraint_move_handle): 
1995         * objects/UML/compprop.c (compprop_move_handle): 
1996         * objects/UML/component.c (component_move_handle): 
1997         * objects/UML/branch.c (branch_move_handle): 
1998         * objects/UML/association.c (association_move_handle): 
1999         * objects/UML/actor.c (actor_move_handle): 
2000         * objects/UML/activity.c (state_move_handle): 
2001         * objects/UML/class.c (umlclass_move_handle): 
2003         * objects/standard/ellipse.c (ellipse_move_handle): 
2004         * objects/standard/zigzagline.c (zigzagline_move_handle): 
2005         * objects/standard/textobj.c (textobj_move_handle): 
2006         * objects/standard/polyline.c (polyline_move_handle): 
2007         * objects/standard/polygon.c (polygon_move_handle): 
2008         * objects/standard/line.c (line_move_handle): 
2009         * objects/standard/image.c (image_move_handle): 
2010         * objects/standard/bezier.c (bezierline_move_handle): 
2011         * objects/standard/arc.c (arc_move_handle): 
2012         * objects/standard/beziergon.c (beziergon_move_handle): 
2013         * objects/standard/box.c (box_move_handle): 
2014         
2015         * objects/ER/relationship.c (relationship_move_handle): 
2016         * objects/ER/participation.c (participation_move_handle): 
2017         * objects/ER/entity.c (entity_move_handle): 
2018         * objects/ER/attribute.c (attribute_move_handle): 
2019         
2020         * lib/polyshape.c (polyshape_move_handle): 
2021         * lib/polyshape.h: 
2022         * lib/orth_conn.c (orthconn_move_handle): 
2023         * lib/orth_conn.h: 
2024         * lib/neworth_conn.c (neworthconn_move_handle): 
2025         * lib/neworth_conn.h: 
2026         * lib/element.c (element_move_handle): 
2027         * lib/element.h: 
2028         * lib/connection.c (connection_move_handle): 
2029         * lib/connection.h: 
2030         * lib/beziershape.c (beziershape_move_handle): 
2031         * lib/beziershape.h: 
2032         * lib/bezier_conn.c (bezierconn_move_handle): 
2033         * lib/bezier_conn.h: 
2034         *BINARY COMPATIBILITY CHANGE*
2035         Update prototype for *_move_handle() to include connectionpoint,
2036         and also pass on modifiers.  Pass in connectionpoint where
2037         applicable. 
2038         
2039         * lib/dummy_dep.h (dummy_dep): Adding dummy dependencies for new
2040         file connectionpoint.c.
2042 2003-08-17  Danilo Šegan  <dsegan@gmx.net>
2044         * configure.in: Added "sr" and "sr@Latn" to ALL_LINGUAS.
2046 2003-08-15  Lars Clausen  <lrclause@cs.uiuc.edu>
2048         * lib/object.c (object_copy): Use g_malloc0 instead of g_malloc.
2050         * lib/beziershape.c (beziershape_update_data): Autoroute
2051         directions for beziershapes!
2053         * lib/connectionpoint.c (find_slope_directions): 
2054         * lib/connectionpoint.h: Function for finding the available
2055         directions on a slope.
2057         * lib/polyshape.c: Reasonable directions for
2058         connectionpoints.       
2060 2003-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
2062         * objects/Misc/analog_clock.c (analog_clock_update_arrow_tips): 
2063         * objects/GRAFCET/vergent.c (vergent_update_data): 
2064         * objects/GRAFCET/transition.c (transition_update_data): 
2065         * objects/GRAFCET/action.c (action_update_data): 
2066         * objects/GRAFCET/step.c (step_update_data): 
2067         * objects/FS/function.c (function_update_data): 
2068         * lib/connpoint_line.c (connpointline_putonaline): 
2069         * objects/ER/attribute.c (attribute_update_data): 
2070         * objects/ER/entity.c (entity_update_data): 
2071         * objects/ER/relationship.c (relationship_update_data): 
2072         * objects/chronogram/chronoline.c (chronoline_update_data): Set
2073         directions for connection points.
2075         * objects/UML/component.c (component_create): Set to allow
2076         parenting. 
2078         * app/create_object.c (create_object_button_press): 
2079         * app/diagram.[ch] (diagram_find_clicked_object_except): 
2080         * lib/diagramdata.[ch] (layer_find_closest_object_except): 
2081         Avoid parenting to objects you're connecting to (otherwise you
2082         couldn't make a connection out of a parenting object).  To do
2083         this, added functions to find the nearest object except a given
2084         list of objects.
2085         
2086         * app/render_libart.c: Rearrange libart include to avoid multiple
2087         include program (and put libart includes inside #ifdef!)
2089 2003-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2091         * lib/dialibartrenderer.c: Don't include art_config.h if others
2092         also do, as it isn't #ifdef'd.
2094         * objects/flowchart/ellipse.c (ellipse_update_data): Add
2095         directions for connection points.
2097 2003-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2099         * objects/flowchart/box.c (box_update_data): Add directions, use
2100         connpoint_update. 
2101         (box_load): Use g_malloc0.
2103         * lib/Makefile.am (libdia_la_SOURCES):
2104         * lib/connectionpoint.c (connpoint_update): 
2105         Function to call to update a connection point info in _update_data().
2106         
2107         * lib/connectionpoint.h: Convenience DIR_ macros.
2109         * app/preferences.c (prefs_data): Make pretty formatted XML the
2110         default.
2112         * lib/dialibartrenderer.c: 
2113         * app/render_libart.c: Make sure art_config.h is included, cause
2114         some libart headers are broken.
2116         * configure.in (HAVE_FREETYPE): Restore CPPFLAGS to old value
2117         after test.  Add freetype-config cflags to cflags variable.
2119 2003-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
2121         * app/authors.h: Credits for Krzysztof.
2123         * sheets/Flowchart.sheet.in: Updated descriptions from Krzysztof
2124         Foltman <kfoltman@onet.pl>.  It occurs to me that the name (rather
2125         than the description) is visible in the title of the properties
2126         dialog.  That ought to be a short description (translatable),
2127         though we still want long descriptions for the tooltips.  Hmmm...
2129         * configure.in: Updated to use AC_LINK_IFELSE instead of
2130         AC_TRY_COMPILE, also force to link to check libs on Solaris.
2132         * objects/ER/entity.c (entity_load): 
2133         * objects/ER/attribute.c (attribute_load): 
2134         * lib/attributes.c (attributes_set_default_font): 
2135         Check if font is non-null before unreffing.
2136         
2137 2003-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
2139         * app/diagram.c (diagram_ungroup_selected) 
2140         (diagram_group_selected): Use the undo apply to make sure grouping
2141         and ungrouping is done in consistent manners.  This removes a fair
2142         amount of duplicated code from diagram.c.
2144         * app/undo.c (ungroup_objects_revert, ungroup_objects_apply) 
2145         (group_objects_revert, group_objects_apply): Working undo/redo for
2146         diagram tree updates.  The initial actions still don't quite work.
2148 2003-08-07  Lars Clausen  <lrclause@cs.uiuc.edu>
2150         * app/create_object.c (create_object_button_press): 
2151         * app/undo.[ch]: 
2152         * app/diagram.c: Undo support for parenting.  Uses apply/revert in
2153         undo only for manipulating the parent/child relationships.  Things
2154         like removing an object doesn't use the undo functions for
2155         parenting, so any updates to come (like to diagramtree) should be
2156         done in those, too.
2158 2003-08-03  Hans Breuer  <hans@breuer.org>
2160         * app/create_object.c : minor formating and g_new0 for
2161         tool creation
2163         * lib/bezier_conn.[hc] lib/beziershape.[hc]
2164           lib/prop_geomtypes.c (prop_geomtypes_register)
2165           objects/standard/bezier.c objects/standard/beziergon.c :
2166         ability to set bezpoints via StdProp api
2168         * plug-ins/python/pydia-property.c : convert list of tuples
2169         to BEZPOINTARRAY
2171         *  plug-ins/python/diasvg_import.py : use it to
2172         implement part of path parsing. Also minor improvements
2173         like inheritance of group attributes to members,
2174         whitespace, title and style:text/css ignoring ;-)
2176 2003-08-02  Hans Breuer  <hans@breuer.org>
2178         * lib/connections.c (connection_move_handle): return
2179         something to make it compile
2180         * lib/object.c(190) : error C4033: 'object_list_move_delta_r' 
2181         must return a value -> dito
2182         [Is there a warnings-as-errors switch we could use with gcc 
2183          to avoid such in future ?]
2185         * plug-ins/python/pydia-object.h : define *_Check macros
2186         * plug-ins/python/diamodule.c : provide dia.group_create()
2187         * plug-ins/python/pydia-diagramdata.c : add 
2188         DiaDiagramData.add_layer()
2189         * plug-ins/python/pydia-property.c : allow to set color by
2190         tuple of doubles
2192         *  plug-ins/python/diasvg_import.py : based on the above
2193         implement a) group support, b) rgb(1,2,3) color handling,
2194         and somewhat fishy data:image/png;base64 support (create
2195         temporary files from inline image data)
2196         d) dump the import errors as text into an 'Error' layer
2198         *  plug-ins/python/diasvg.py : add xmlns:xlink, removed a
2199         stray " in draw_rect and corrected error message formating 
2201         * plug-ins/pydia/pydia-geometry.c : removed ## to make it
2202         compile with gcc 3.3, fixes bug #117204. Thanks to Daniel 
2203         Jacobowitz.
2204         
2205 2003-08-01  Hubert Figuiere  <hfiguiere@teaser.fr>
2207         * app/magnify.c (create_magnify_tool): allocate with g_new0()
2209         * app/preferences.c (prefs_create_dialog): use checkboxes for boolean 
2210         preferences values (see bug 118570). Also group items into a GtkFrame.
2212 2003-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
2214         * app/menus.c:
2215         * app/menus.h:
2216         * app/commands.h: 
2217         * app/commands.c (objects_unparent_children_callback): 
2218         * app/diagram.h: 
2219         * app/diagram.c (diagram_unparent_selected,
2220         (diagram_update_menu_sensitivity): 
2221         Added unparenting of single children.
2223         * lib/bezier_conn.c:
2224         * lib/bezier_conn.h:
2225         * lib/beziershape.c:
2226         * lib/beziershape.h:
2227         * lib/connection.c:
2228         * lib/connection.h:
2229         * lib/element.c:
2230         * lib/element.h:
2231         * lib/group.c:
2232         * lib/neworth_conn.c:
2233         * lib/neworth_conn.h:
2234         * lib/object.h:
2235         * lib/orth_conn.h:
2236         * lib/poly_conn.c:
2237         * lib/poly_conn.h:
2238         * lib/polyshape.c:
2239         * lib/polyshape.h:
2240         * objects/EML/instantiation.c:
2241         * objects/EML/interaction-ortho.c:
2242         * objects/EML/interaction.c:
2243         * objects/EML/process.c:
2244         * objects/ER/attribute.c:
2245         * objects/ER/entity.c:
2246         * objects/ER/participation.c:
2247         * objects/ER/relationship.c:
2248         * objects/FS/flow-ortho.c:
2249         * objects/FS/flow-poly.c:
2250         * objects/FS/flow.c:
2251         * objects/FS/function.c:
2252         * objects/GRAFCET/action.c:
2253         * objects/GRAFCET/condition.c:
2254         * objects/GRAFCET/step.c:
2255         * objects/GRAFCET/transition.c:
2256         * objects/GRAFCET/vector.c:
2257         * objects/GRAFCET/vergent.c:
2258         * objects/Misc/analog_clock.c:
2259         * objects/SADT/annotation.c:
2260         * objects/SADT/arrow.c:
2261         * objects/SADT/box.c:
2262         * objects/UML/activity.c:
2263         * objects/UML/actor.c:
2264         * objects/UML/association.c:
2265         * objects/UML/branch.c:
2266         * objects/UML/class.c:
2267         * objects/UML/classicon.c:
2268         * objects/UML/component.c:
2269         * objects/UML/constraint.c:
2270         * objects/UML/dependency.c:
2271         * objects/UML/fork.c:
2272         * objects/UML/generalization.c:
2273         * objects/UML/implements.c:
2274         * objects/UML/large_package.c:
2275         * objects/UML/lifeline.c:
2276         * objects/UML/message.c:
2277         * objects/UML/node.c:
2278         * objects/UML/note.c:
2279         * objects/UML/object.c:
2280         * objects/UML/realizes.c:
2281         * objects/UML/small_package.c:
2282         * objects/UML/state.c:
2283         * objects/UML/state_term.c:
2284         * objects/UML/usecase.c:
2285         * objects/chronogram/chronoline.c:
2286         * objects/chronogram/chronoref.c:
2287         * objects/custom/custom_object.c:
2288         * objects/flowchart/box.c:
2289         * objects/flowchart/diamond.c:
2290         * objects/flowchart/ellipse.c:
2291         * objects/flowchart/parallelogram.c:
2292         * objects/network/bus.c:
2293         * objects/network/wanlink.c:
2294         * objects/standard/arc.c:
2295         * objects/standard/bezier.c:
2296         * objects/standard/beziergon.c:
2297         * objects/standard/box.c:
2298         * objects/standard/ellipse.c:
2299         * objects/standard/image.c:
2300         * objects/standard/line.c:
2301         * objects/standard/polygon.c:
2302         * objects/standard/polyline.c:
2303         * objects/standard/textobj.c:
2304         * objects/standard/zigzagline.c:
2305         Binary compatibility update:  Added return value for foo_move() and
2306         foo_move_handle().  Orthconn derivatives also returns change from
2307         orthconn_move_handle().
2308         
2309         * lib/orth_conn.c: Undo support for autorouting.  Neworthconn
2310         doesn't support it yet.
2312         * lib/object.c (object_list_move_delta_r, object_list_move_delta):
2313         Add returning ObjectChange from object moves.  Needs to handle
2314         multiple object moves.
2316         * app/modify_tool.c (modify_motion, modify_release): Add
2317         ObjectChange from move & move_handle to undo stack.
2319         * objects/EML/instantiation.c (instantiation_move): Removing
2320         duplicate move & update.
2322 2003-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
2324         * plug-ins/xfig/xfig-export.c: Added support for arrow head
2325         export.  Many arrow types not supported by XFig, replacing those
2326         with standard arrows.  Not sure whether it'd be better to render
2327         them as a group of lines instead.  You'd lose the arrow-ness for
2328         further editing, but preserve the actual shape of it.  Also added
2329         support for dash length.
2331         * plug-ins/xfig/xfig-import.c: Added support for dash length settings.
2333         * plug-ins/xfig/fig-format-3.2: Added copy of Fig format
2334         description for version 3.2, for reference.
2336         * plug-ins/xfig/xfig-import.c: Added import of arrows.
2338         * app/menus.c: Removed prefs item from Gnome diagram menu.  Made
2339         Align Vertical Adjacent call _v rather than _h.
2341 2003-07-29  Hubert Figuiere  <hfiguiere@teaser.fr>
2343         * app/scroll_tool.c (create_scroll_tool): 
2344         * app/modify_tool.c (create_modify_tool): use g_new0() to
2345         initialize the tool
2347 2003-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
2349         * configure.in: Added proper settings for XSLT_LIBS and XSLT_CFLAGS.
2351 2003-07-24  Pablo Saratxaga  <pablo@mandrakesoft.com>
2353         * configure.in: Added Macedonian (mk) to ALL_LINGUAS
2355 2003-07-23  Dmitry G. Mastrukov  <dmitry@taurussoft.org>
2357         * configure.in: Added Belarusian to ALL_LINGUAS.
2359 2003-07-19  Hans Breuer  <hans@breuer.org>
2361         [
2362          Make the xslt plug-in work on win32, too. It appears
2363          to require a quite recent version of libxml and libxslt,
2364          otherwise windoze pathes aren't translated correctly
2365          during file processing
2366         ]
2368         * plug-ins/xslt/xslt.h : #include <glib.h> before 
2369         using G_OS_WIN32
2371         * plug-ins/xslt/xslt.c : plugged some memory leaks and do
2372         the 'script' file finding similar to how it is done
2373         with the python scripts (no need for hardcoded pathes,
2374         removed the 'plugin' part from the path)
2376         * plug-ins/xslt/stylesheets.xml : added again. It does
2377         not have any path but only the pure filename again
2379         * plug-ins/xslt/stylesheets.xml.in : removed
2381         * plug-ins/xslt/Makefile.am : removed 'plugin' and the
2382         rule to process stylesheets.xml.in
2384         * plug-ins/makefile.msc : added xslt
2386 2003-07-19  Hans Breuer  <hans@breuer.org>
2388         Finally Dia learned to remember the recent selected sheet
2390         * app/preferences.[hc] : added prefs.recent_sheet
2391         * app/interface.c : restore and remember the sheet-option-menu
2392         history, but only if the respective number is stiil available.
2393         This additional adds robustness against running Dia without
2394         any sheet (e.g. installation problems)
2395         * app/app_procs.c : call prefs_safe() in app_exit() to remember
2396         changes which are not done by the prefernces dialog
2398         * app/diagram_tree_menu.c app/diagram_tree_menu_callbacks.c :
2399         removed every call (especially the conditional ones) to prefs_safe().
2400         Before prefs_safe() was called _many_ times during Dia startup
2402 2003-07-18  Hans Breuer  <hans@breuer.org>
2404         * app/makefile.msc lib/makefile.msc lib/libdia.def :
2405         updated win32 build
2407         * lib/color.c : use gtk_widget_get_default_visual();
2408         as suggested in #114536
2410         * app/interface.c app/disp_callbacks.c :
2411         moved round_up () to the latter file where it is used
2413         * app/linewidth_area.c : #include "interface.h" for
2414         interface_get_toolbox_shell()
2416 2003-07-18  Hubert Figuiere  <hfiguiere@teaser.fr>
2418         * plug-ins/pixbuf/.cvsignore
2419         * shapes/Cisco/.cvsignore: 
2420         added cvsignore
2422 2003-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2424         * app/dia-props.c (diagram_properties_retrieve): Use
2425         diagram_get_name() to add the diagram name to the diagram
2426         properties dialog.
2428         * app/diagram.h: 
2429         * app/diagram.c (diagram_get_name): New function to get a
2430         reasonable diagram name.
2432         * lib/diagramdata.h: Added major_lines, dynamic and colour to grid
2433         info.  Still need to be able to set dynamic grid.  Also ought to
2434         follow Gnome style and have instant apply.
2436         * app/preferences.h: 
2437         * app/preferences.c (prefs_data): Remove option to use stippled
2438         grid, add option for major line offset.  Default to 5 minor lines
2439         per major line.
2440         Add option for dynamically sized grid.
2442         * app/display.c (ddisplay_render_pixmap): Call pagebreak_draw as well.
2444         * app/grid.c: Pagebreak drawing separated out.  Grid drawing using
2445         stippled/solid to display minor/major grid lines.  Line drawing in
2446         separate functions away from calculating line distance.
2448         * app/grid.h: Split page break drawing out of grid_draw.
2450         * app/layer_dialog.c (layer_dialog_show): Patch from Hubert
2451         Figuiere <hfiguiere@teaser.fr>:  Layer dialog show go to front
2452         when menu item is selected.
2454 2003-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
2456         * configure.in: Removed -Winline flag to make way for important
2457         warnings. 
2459         * samples/UML-demo.dia: Adjusted for 0.91 font size, saved as
2460         non-compressed.  Should fix bug #117381, also look prettier.
2461         
2462         * Makefile.am: 
2463         * dia.desktop.in: Patch from Mark McLoughlin <mark@skynet.ie>:
2464         Set up desktop info more properly.
2466 2003-07-13  Lars Clausen  <lrclause@cs.uiuc.edu>
2468         * activity.c:
2469         * actor.c:
2470         * branch.c:
2471         * class.c:
2472         * classicon.c:
2473         * component.c:
2474         * large_package.c:
2475         * lifeline.c:
2476         * node.c:
2477         * note.c:
2478         * object.c:
2479         * small_package.c:
2480         * state.c:
2481         * state_term.c:
2482         * usecase.c: 
2483         Autorouting directions patch from Krzysztof Foltman
2484         <kfoltman@onet.pl>.
2486         * app/menus.c: Wrong GNOME paren fixed.  Correct callbacks for
2487         GNOME parent menu items.
2488         
2489         * app/authors.h: Added Vadim to contributors list.
2491 2003-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
2493         * app/commands.[ch]: 
2494         * app/create_object.c: 
2495         * app/disp_callbacks.[ch]: 
2496         * app/diagram.[ch]: 
2497         * app/interface.c: 
2498         * app/load_save.c: 
2499         * app/menus.[ch]:
2500         * app/modify_tool.c
2501         * app/undo.[ch]:
2502         * lib/Makefile.am:
2503         * lib/group.c: 
2504         * lib/object.[ch]: 
2505         * lib/parent.[ch]:
2506         * objects/UML/large_package.c: Patch from Vadim Berezniker
2507         <vadim@berezniker.com>: 
2508         Objects may "parent" other objects, i.e. contain them within
2509         themselves, restrain them and move them along.  Some more stuff is
2510         needed, such as selection and individual unparenting.  This adds
2511         parenting to UML - Large Package rather than Box.
2513 2003-07-11  Lars Clausen  <lrclause@cs.uiuc.edu>
2515         * app/linewidth_area.c: Patch from Krzysztof Foltman
2516         <kfoltman@onet.pl>: Make linewidth dialog conform to HIG (well,
2517         conform more, at least:).
2519         * plug-ins/metapost/render_metapost.[ch] : Applied patch from
2520         Chris Sperandio <sperandi@eng.usf.edu>:  Fixed linewidths and
2521         arcs.  Implemented images (though there is some pixelization and
2522         banding in the output).  Changed output file format to be a little
2523         more readable.  
2525         * app/app_procs.c (app_exit): Added message for double exit, which
2526         shouldn't happen any more.  Also preventing strange g_object_unref
2527         messages by having a printf after gtk_main_quit.  This is really
2528         weird.
2530         * app/interface.c (toolbox_delete): Avoid double app_exit call by
2531         removing handler for destroy when delete is called.
2533 2003-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
2535         * app/display.h: 
2536         * app/display.c (ddisplay_scroll_to_object,
2537         ddisplay_scroll_center_point):  New function for easy scrolling to
2538         object or point.
2540 2003-07-06  Lars Clausen  <lrclause@cs.uiuc.edu>
2542         * plug-ins/xslt/Makefile.am: Patch from Hubert Figuiere:  Add
2543         $(srcdir) on stylesheets.xml.
2545         * app/menus.c: Patch from Hubert Figuiere: Adds help menu to
2546         diagram menus (since they're at the top by default now).  Also
2547         move the Properties... menu item from Dialogs to Objects.  Dialogs
2548         menu should disappear at some point.
2550         * autogen.sh: Patch from Hubert Figuiere: Don't automatically call
2551         ./configure from ./autogen.sh, as configure may need to be run
2552         from a different directory.  (Also more standard this way.)
2554         * app/app_procs.c (app_init): 
2555         * app/Makefile.am (INCLUDES): Gnome standardization patch from
2556         Alex. 
2558 2003-07-03  Lars Clausen  <lrclause@cs.uiuc.edu>
2560         * objects/flowchart/parallelogram.c (pgram_update_data):
2561         Left/right alignment for parallelograms.  Doesn't use all
2562         available space, but then pgrams also ignore their shear value.
2563         This thing needs a loving hand.
2565 2003-07-01  Hans Breuer  <hans@breuer.org>
2567         * lib/properties.h : introduce PROP_FLAG_OPTIONAL
2568         * lib/proplist.c : don't complain if optional attr is missing
2569         * lib/orth_conn.h : make "orth_autoroute" optional to
2570         stop complaining with older files.
2572 2003-06-13  Guntupalli Karunakar  <karunakar@freedomink.org>
2574         * configure.in: Added "ml" for Malayalam in ALL_LINGUAS.
2576 2003-06-05  Andrew Halper  <ashalper@cox.net>
2578         * app/diagram_tree.c : add scrolling of drawing area
2579         to desired object on "Locate".  Patch modified to use new ddisplay
2580         function ddisplay_scroll_to_object().
2582 2003-06-11  Lars Clausen  <lars@raeder.dk>
2584         * lib/diagramdata.h: Added major_lines, dynamic and colour to grid
2585         info.  Before next version, the grid dialog (view dialog, really)
2586         must be redone to allow a) instant apply, b) apply to all
2587         diagrams, and c) setting colour, dynamic, major lines.
2589         * app/preferences.h: 
2590         * app/preferences.c (prefs_data): Remove option to use stippled
2591         grid, add option for major line offset.  Default to 5 minor lines
2592         per major line.
2593         Add option for dynamically sized grid.
2595         * app/display.c (ddisplay_render_pixmap): Call pagebreak_draw as well.
2597         * app/grid.c: Pagebreak drawing separated out.  Grid drawing using
2598         stippled/solid to display minor/major grid lines.  Line drawing in
2599         separate function away from calculating line distance.
2601         * app/grid.h: Split page break drawing out of grid_draw.
2603 2003-05-15  Hans Breuer  <hans@breuer.org>
2605         * plug-ins/python/diasvg.py : add xlink definition,
2606         also avoid to put spaces into attribute values. At least
2607         Sodipodi doesn't like them in width/height attributes
2609         * plug-ins/python/diasvg_import.py : add simple scaling.
2610         Some (more) handling for <svg>, <desc>, <circle>        
2612         * plug-ins/python/scascale.py : (new file) which does
2613         some experimental scaling via StdProp api
2615         * plug-ins/python/pydia-cpoint.c 
2616           plug-ins/python/pydia-handle.c : return PyDiaPoint for
2617         obj.pos not simple tuples. PyDiaPoint has a tuple interface
2618         so this may even be api compatible ...
2620 2003-05-11  Hans Breuer  <hans@breuer.org>
2622         * app/line_area.c : add window position persitence
2624         * lib/poly_conn.[hc] lib/polyshape.[hc] : allow to set 
2625         'poly_points' via StdProp api
2626         * lib/neworth_conn.h : don't rely on OrthConn and 
2627         NewOrtConn having the same struct offsets
2629         * lib/properties.h : introduce PROP_FLAG_WIDGET_ONLY
2630         to help separating 'useful' properies - in terms of
2631         the PyDia access
2633         * objects/custom/custom_object.c
2634           objects/UML/*.c
2635         add the missing prop_desc_list_calculate_quarks to
2636         all the *_describe_props()
2638         * objects/standard/beziergon.c objects/standard/bezier.c :
2639         explicit initializtion of default_user_data
2640         * objects/standard/polygon.c objects/standard/polyline.c :
2641         Same here. Also use POLY<CONN|SHAPE>_COMMON_PROPERTIES
2643         * plug-ins/python/diamodule.c : implement dia.register_import
2645         * plug-ins/python/makefile.msc : need to link with Pango
2646         for pango_color_parse()
2648         * plug-ins/python/pydia-property.c : add a bunch of type
2649         conversions to PyDiaProperty_ApllyToObject()
2651         * plug-ins/python/diasvg_import.py : (new file) which currently
2652         is mainly a stress test for PyDia but for some files already
2653         produces better results than svg-import.c
2655 2003-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
2657         * objects/UML/uml.c (uml_get_operation_string): Avoid ':' on
2658         type-less operations.
2660 003-05-03  Hasbullah Bin Pit  <sebol@ikhlas.com>
2662         * configure.in(ALL_LINGUAS): Added "ms".
2664 2003-05-01  Lars Clausen  <lrclause@cs.uiuc.edu>
2666         * plug-ins/xslt/xslt.c (xslt_ok): 
2667         * plug-ins/shape/shape-export.c (new_shape_renderer): 
2668         * plug-ins/svg/render_svg.c (new_svg_renderer): 
2669         * plug-ins/hpgl/hpgl.c (export_data): 
2670         * plug-ins/dxf/dxf-export.c (export_dxf): 
2671         * plug-ins/metapost/render_metapost.c (export_metapost): 
2672         * plug-ins/pstricks/render_pstricks.c (export_pstricks): 
2673         * plug-ins/xfig/xfig-export.c (export_fig): 
2674         * plug-ins/wpg/wpg.c (export_data): 
2675         * plug-ins/cgm/cgm.c (export_cgm): 
2676         * app/render_eps.c (export_eps): 
2677         * app/export_png.c (export_png_ok): 
2678         * app/load_save.c (diagram_data_save): Adding and standardizing
2679         output file error messages to include fopen error message.
2681 2003-05-01  Steffen Macke <sdteffen@web.de>
2683         * app/persistence.c: do not use unistd.h for MSVC build
2685 2003-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
2687         * sheets/Assorted.sheet.in
2688         * sheets/Circuit.sheet.in
2689         * sheets/Contact.sheet.in
2690         * sheets/EML.sheet.in
2691         * sheets/ER.sheet.in
2692         * sheets/Electric.sheet.in
2693         * sheets/FS.sheet.in
2694         * sheets/Flowchart.sheet.in
2695         * sheets/GRAFCET.sheet.in
2696         * sheets/Logic.sheet.in
2697         * sheets/MSE.sheet.in
2698         * sheets/Misc.sheet.in
2699         * sheets/Pneumatic.sheet.in
2700         * sheets/SADT.sheet.in
2701         * sheets/SDL.sheet.in
2702         * sheets/UML.sheet.in
2703         * sheets/chronogram.sheet.in
2704         * sheets/ciscohub.sheet.in
2705         * sheets/ciscomisc.sheet.in
2706         * sheets/cisconetwork.sheet.in
2707         * sheets/ciscorouter.sheet.in
2708         * sheets/civil.sheet.in
2709         * sheets/network.sheet.in
2710         * sheets/sybase.sheet.in:
2711         Patch from Jan-Willem Harmanny <jwharmanny@zeelandnet.nl>
2712         standardizes shape descriptions to use no articles, no 'create
2713         ...'.
2714         
2715         * app/interface.c (tool_data): Standard objects follow same
2716         standard as sheets.
2718 2003-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
2720         * app/color_area.c (color_area_edit): More informative title on
2721         color selection dialog.
2723         * app/disp_callbacks.c (ddisplay_drop_object): Update menu
2724         sensitivity when dropping object in.  Also reset tool to pointer.
2726         * objects/flowchart/diamond.c (diamond_update_data): 
2727         * objects/flowchart/parallelogram.c (pgram_update_data): Added
2728         left and right alignment options.
2730 2003-04-28  Lars Clausen  <lrclause@cs.uiuc.edu>
2732         * objects/flowchart/box.c: Added left and right alignment options.
2734 2003-04-26  Lars Clausen  <lrclause@cs.uiuc.edu>
2736         * app/persistence.c (persistence_load): Test existence of
2737         persistence file before trying to open it.
2739 2003-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
2741         * app/properties.c: Escape now closes properties dialogs.
2743 2003-04-25  Hans Breuer  <hans@breuer.org>
2745         * app/config.h.win32 : bump version to 0.91+cvs
2747         * app/makefile.msc lib/makefile.msc lib/libdia.def : updated
2749         * lib/dia_dirs.c : G_OS_WIN32: #define mkdir(s,a) _mkdir(s)
2751         * app/commands.c : don't leak "netscape" if getenv("BROWSER")
2752         returns NULL
2754         * app/presistence.c : need to #include "dia_xml_libxml.h"
2755         for xmlDiaParseFile
2757         * app/layer_dialog.c : make delayed creation work by protecting
2758         all non static layer_dialog_*() with :
2759            if (layer_dialog == NULL || layer_dialog->dialog == NULL)
2760              create_layer_dialog();
2761         * app/app_procs.c : removed /* create_layer_dialog(); */
2763         * objects/uml/association.c : give it a minimal StdProp
2764         implementation to fix bug #108896
2765         * lib/object_defaults.c : don't try to copy props if there
2766         is no obj->ops->describe_props
2768 2003-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
2770         * objects/standard/image.c (image_create): 
2771         * objects/standard/ellipse.c (ellipse_create): 
2772         * objects/standard/box.c (box_create): 
2773         * objects/flowchart/ellipse.c (ellipse_create): 
2774         * objects/flowchart/diamond.c (diamond_create): 
2775         * objects/flowchart/box.c (box_create): 
2776         * objects/custom/custom_object.c (custom_create): 
2777         * objects/ER/relationship.c (relationship_create): 
2778         * objects/ER/entity.c (entity_create): 
2779         * objects/ER/attribute.c (attribute_create): Initialize
2780         elem->height to DEFAULT_HEIGHT instead of DEFAULT_WIDTH.
2782         * lib/dia_svg.c (dia_svg_parse_style): Added case to set center
2783         alignment. 
2785         * configure.in: 
2786         * plug-ins/Makefile.am: 
2787         * plug-ins/xslt/Makefile.am: 
2788         * plug-ins/xslt/xslt.c (dia_plugin_init): 
2789         Patch from Götz Waschk <waschk@informatik.uni-rostock.de> uses
2790         automake-style if to only include xslt dir when needed.  Works
2791         with automake 1.4 and up, at least.
2793 2003-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
2795         * lib/diasvgrenderer.c (draw_string): 
2796         * lib/dia_svg.c (dia_svg_parse_style): Use
2797         text-anchor:(start|middle|end).
2799         * lib/diasvgrenderer.c (draw_polygon, fill_polygon): Use svg
2800         polygon rather than polyline & avoid missing line pieces.
2801         (get_draw_style): Set fill-opacity to 0 on draw_style to avoid
2802         black-filled things.
2804 2003-04-21  Lars Clausen  <lrclause@cs.uiuc.edu>
2806         * app/persistence.c (persistence_load): Check that persistence
2807         file exists before trying to read it.
2808         (persistence_update_window): Removed printf.
2810         * objects/GRAFCET/step.c: Don't copy defaults for name and id.
2812         * lib/autoroute.c: Take badness into the layouters again, as some
2813         of them know they can do things that are pretty but would be
2814         counted as ugly by the default calculation.
2816         * objects/UML/large_package.c: Shrink package name box when no
2817         stereotype is present.
2819         * lib/orth_conn.h (ORTHCONN_COMMON_MENUS): 
2820         * lib/orth_conn.c: Added object menu item for autorouting.
2822         * objects/FS/flow-ortho.c (orthflow_get_object_menu): 
2823         Autorouting, plus set initial dragging handle to be the end, not
2824         the middle.
2825         (orthflow_draw): Flipped arrow place to be at the end, as
2826         originally intended (got lost in arrow update).
2828         * objects/standard/zigzagline.c (zigzagline_get_object_menu): 
2829         * objects/UML/dependency.c (dependency_get_object_menu): 
2830         * objects/UML/association.c (association_get_object_menu): 
2831         * objects/UML/realizes.c (realizes_get_object_menu): 
2832         * objects/SADT/arrow.c (sadtarrow_get_object_menu): 
2833         * objects/GRAFCET/vector.c (arc_get_object_menu): 
2834         * objects/ER/participation.c (participation_get_object_menu): 
2835         * objects/EML/instantiation.c (instantiation_get_object_menu): 
2836         * objects/UML/generalization.c (generalization_get_object_menu): 
2837         * objects/EML/interaction-ortho.c (interaction_ortho_get_object_menu): 
2838         Autorouting setup (currently disabled for SADT/arrow).
2839         
2840 2003-04-19  Lars Clausen  <lrclause@cs.uiuc.edu>
2842         * lib/autoroute.c: Removed printfs.
2844         * lib/orth_conn.c: 
2845         * lib/autoroute.[ch] (autoroute_layout_orthconn): Handle
2846         non-connected orthconns too.
2848 2003-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
2850         * lib/orth_conn.h: 
2851         * lib/orth_conn.c: Function to set autorouting on/off, use
2852         autorouting in move_handle (turns off when a middle handle is
2853         moved), added to standard orthconn props. 
2855         * app/disp_callbacks.c (create_object_menu, popup_object_menu):
2856         Stopped signal emission for check menu items being set to on/off.
2858         * objects/standard/zigzagline.c: Added autorouting object menu item.
2860         * lib/autoroute.c: Added last cases of autoroute layout, fixed
2861         floating point comparison bug, cleaned up layouters, tweaked
2862         badness to allow kinks. 
2864 2003-04-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2866         * lib/connectionpoint.h: Changed DIR_* macros to go around the
2867         clock. 
2869         * lib/orth_conn.[ch] (orthconn_set_points): New function to set all
2870         points at once.
2871         * objects/standard/zigzagline.c (zigzagline_move_handle): Removed
2872         old cruft, added call to autoroute (currently cannot be turned
2873         off).  Need to check what undo thinks about this.
2874         * lib/autoroute.[ch]: Fairly working simple layout.
2876         * lib/Makefile.am (libdia_la_SOURCES): Added autoroute files.
2877         * lib/autoroute.[ch]: Start of proper autorouting functionality.
2879 2003-04-10  Lars Clausen  <lrclause@cs.uiuc.edu>
2881         * lib/prop_widgets.c: Show labels on ListProp.
2883 2003-04-11  Steffen Macke <sdteffen@web.de>
2885         * doc/en/dia-manual.xml: removed reference of non-existing authors 
2886         note.
2887         * doc/en/usage-objects-selecting: commented out misleading section
2888         references.
2890 2003-04-10  Lars Clausen  <lrclause@cs.uiuc.edu>
2892         * app/app_procs.c (app_init): Layer window now opened at startup
2893         only if needed.
2895         * lib/prop_widgets.c: Show labels on ListProp.
2897 2003-04-09  Steffen Macke <sdteffen@web.de>
2899         * doc/en/*.sgml: removed files
2900         * doc/en/*.xml: added files
2901         * doc/en/Makefile.am: switched to XML DocBook
2903 2003-04-09  Lars Clausen  <lrclause@cs.uiuc.edu>
2905         * plug-ins/xslt/xslt.c (dia_plugin_init): 
2906         * configure.in: Added --with-xslt-prefix to allow other XSLT
2907         placements than /usr/lib.
2909 2003-04-09  Steffen Macke <sdteffen@web.de>
2911         * lib/makefile.mingw: updated to include latest files, including 
2912         and linking libintl
2913         * lib/geometry.h: don't define isinf and finite for mingw gcc build
2915 2003-04-08  Lars Clausen  <lrclause@cs.uiuc.edu>
2917         * app/persistence.h:
2918         * app/persistence.c (persistence_register_window_create): 
2919         * app/app_procs.c (app_init): 
2920         Register window function that doesn't create the window unless it
2921         should be open.  Other windows should move to this, so startup
2922         speed can be reduced.
2923         
2924         * app/persistence.h: Removed call prototype for update_window, now
2925         done internally.
2926         * app/persistence.c (persistence_register_window): A number of
2927         fixes.  Doesn't forget position when window is closed.  Now
2928         actually loads prefs.
2930         * app/layer_dialog.c (create_layer_dialog): Removed extraneous
2931         event connect.
2933         * app/preferences.c (prefs_data): 
2934         * app/diagram_tree_window.h: 
2935         * app/diagram_tree_window.c: Added persistence registering.
2936         Removed prefs items storing size and openness. 
2938         * app/sheets_dialog.c (create_sheets_main_dialog): Added
2939         persistence registering.  
2941         * app/Makefile.am (dia_core_files): Added persistence files.
2943         * lib/dia_dirs.h: 
2944         * lib/dia_dirs.c (dia_config_ensure_dir): New function to ensure
2945         that dirs are present.
2947         * app/app_procs.c (app_init): Loads persistent values on startup.
2948         (app_exit): Saves persistent values on exit.
2950         * app/layer_dialog.c (create_layer_dialog): Registers the layer
2951         window for persistence.
2953         * app/persistence.[ch]: New files handling various kinds of
2954         persistence.
2956 2003-04-04  Lars Clausen  <lrclause@cs.uiuc.edu>
2958         * lib/arrows.c: Adjusted arrow head spacing, more systematic arrow
2959         head spacing calculations.  Added half-circle arrow from Matthieu
2960         Sozeau <mattam@netcourrier.com> 
2962 2003-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
2964         * app/app_procs.c (app_init): Moved layer dialog init to allow
2965         tooltips to be initialized.
2967         * app/interface.c (create_display_shell): More tooltips.
2969         * app/linewidth_area.c (linewidth_area_create) 
2970         (linewidth_area_events): 
2971         * app/color_area.c (color_area_events, color_area_create): 
2972         Made tooltips work by embedding drawing_area in event_box.
2974         * app/interface.c (create_display_shell,
2975         (create_lineprops_area, create_color_area): Added a few tooltips.
2977 2003-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
2979         * app/pixmaps/off-grid.xpm: 
2980         * app/pixmaps/on-grid.xpm: 
2981         * app/Makefile.am (EXTRA_DIST): Added snap to grid icons.
2983         * app/display.h: 
2984         * app/commands.c (view_snap_to_grid_callback): 
2985         * app/display.c (ddisplay_set_snap_to_grid) 
2986         (update_snap_grid_status): 
2987         * app/interface.c (create_display_shell, grid_toggle_snap): 
2988         Added snap-to-grid status button.
2990 2003-03-31  Lars Clausen  <lrclause@cs.uiuc.edu>
2992         * app/app_procs.c (app_init): Create a new diagram if a file on
2993         the command line isn't found.
2995 2003-03-17  Lars Clausen  <lrclause@cs.uiuc.edu>
2997         * lib/dialibartrenderer.c (draw_string): Correct color handling
2998         for AA.
3000 2003-03-14  Lars Clausen  <lrclause@cs.uiuc.edu>
3002         * NEWS: 
3003         * doc/en/dia-manual.sgml: 
3004         * doc/pl/dia-manual.sgml: 
3005         * configure.in: 
3006         * dia.spec (Release): 
3007         Version 0.91 is here!
3009 2003-02-10  Steffen Macke <sdteffen@web.de>
3011         * plug-ins/wmf/wmf.cpp: patch from Ken Tsukahara 
3012         <ken.tsukahara@tmt-d.co.jp>, fixes windows printing and WMF export of
3013         non-ANSI characters, closes #107980
3015 2003-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3017         * configure.in: 
3018         * NEWS: 
3019         * dia.spec (Release): 
3020         * doc/en/dia-manual.sgml: Upping to pre6.
3022         * configure.in: Missing comma broke HAVE_IEEEFP_H test.
3024         * app/lineprops_area.c (dia_arrow_chooser_new): Fixing bug
3025         #107511:  Make arrow selector for correct arrow type.
3027 2003-03-03  Lars Clausen  <lrclause@cs.uiuc.edu>
3029         * shapes/Circuit/Makefile.am (SHAPES): Added hjumper.png to
3030         EXTRA_DIST.
3032 2003-03-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3034         * doc/en/dia-manual.sgml: 
3035         * configure.in: 
3036         * NEWS: 
3037         * dia.spec (Release): Upping to pre5.
3039         * configure.in: Add freetype-config derived libs to the
3040         AC_CHECK_LIB statement for freetype.
3042 2003-02-28  Hans Breuer  <hans@breuer.org>
3044         [fix for bug #107203]
3046         * lib/diarenderer.c : add warning 'implementation'
3047         for fill_rect to avoid crashing with a renderer
3048         which does not implement this required function.
3050         * plug-ins/dxf/dxf-export.c : provide - still empty -
3051         'implementations' for fill_rect and fill_polygon 
3052         to suppress the above warnings. Now it works like
3053         in version 0.90 
3055 2003-02-28  Steffen Macke <sdteffen@web.de>
3057         * samples/all_objects.dia: New sheet containing all dia shapes
3058         and objects; one layer per sheet
3059         
3060 2003-02-28  Lars Clausen  <lrclause@cs.uiuc.edu>
3062         * lib/prop_text.c (multistringprop_get_widget,
3063         multistringprop_reset_widget, multistringprop_set_from_widget): 
3064         Now uses GtkTextView instead of deprecated stuff, and also works:)
3066         * configure.in: Slightly more informative error message for isinf.
3068         * dia.spec (Requires): Require libxml2 rather than libxml.
3070 2003-02-28  Steffen Macke <sdteffen@web.de>
3072         * shapes/Circuit/hjumper.png:
3073         * shapes/Circuit/hjumper.shape: added missing icon for horizontal
3074         jumper shape
3075         
3076 2003-02-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3078         * doc/en/dia-manual.sgml: 
3079         * configure.in: 
3080         * dia.spec (Release):
3081         * NEWS: New prerelease 0.91pre4, two important fixes.
3083 2003-02-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3085         * plug-ins/xslt/Makefile.am (EXTRA_DIST): Also dist
3086         stylesheets.xml.in 
3088         * app/commands.c (help_manual_callback): More correct URL for help
3089         page (include file://, was broken on Dillo without it).
3091 2003-02-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3093         * app/disp_callbacks.c: Set modifed when text is changed.
3095         * app/modify_tool.c (modify_button_release): Allow undo for moving
3096         objects.
3098 2003-02-16  Lars Clausen  <lrclause@cs.uiuc.edu>
3100         * dia.spec: 
3101         * doc/en/dia-manual.sgml: 
3102         * NEWS: 
3103         * configure.in: New prerelease with important bugfix.
3104         * shapes/network/digitizing_board.png:
3105         * shapes/network/plotter.png: Re-adding with -kb.
3106         
3107 2003-02-17  Abel Cheung  <maddog@linux.org.hk>
3109         * app/app_procs.c (app_init): Add comment for translators.
3111 2003-02-16  Lars Clausen  <lrclause@cs.uiuc.edu>
3113         * lib/filter.c (filter_register_import, filter_register_export):
3114         Don't accept filters with NULL description.
3116         * lib/plug-ins.c (dia_plugin_load): Fail if there's no description
3117         (as we assume the description is available in other places).
3119 2003-02-15  Lars Clausen  <lrclause@cs.uiuc.edu>
3120         
3121         * app/disp_callbacks.c (ddisplay_vsb_update, ddisplay_hsb_update): 
3122         * app/display.c (ddisplay_resize_canvas): Use
3123         ddisplay_add_update_all().
3124         (ddisplay_add_update_all): Free display and update lists when
3125         doing update_all, as they'll be regenerated immediately to cover
3126         all visible area.  Fixes bug #106165, crash when resizing.  This
3127         appears to be the original AA crash bug, believed long extinct.
3129 2003-02-13  Lars Clausen  <lrclause@cs.uiuc.edu>
3131         * app/commands.c (help_manual_callback): Use file: protocol for
3132         help. 
3134         * plug-ins/xslt/.cvsignore: Ignore .o files, please.
3136         * plug-ins/xslt/stylesheets: Removed old-style config file.
3137         
3138         * plug-ins/xslt/stylesheets.xml.in: New XML-based config file.
3140         * plug-ins/xslt/Makefile.am: 
3141         * plug-ins/xslt/xslt.c: Applied patch from Matthieu, improved path
3142         handling (no more DIA_PLUGIN_PATH).
3144 2003-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
3146         * plug-ins/svg/render_svg.c: 
3147         * lib/diasvgrenderer.c: Fixed numeric localized output issues.
3149 2003-02-10  Lars Clausen  <lrclause@cs.uiuc.edu>
3151         * objects/SADT/arrow.c (sadtarrow_draw): Clamp cosa, cosb to 
3152         [-1.0, 1.0].  Shouldn't be necessary, but in some cases the
3153         side of the triangle is longer than the hypotenuse.  Rounding
3154         error suspected.
3156 2003-02-09  Lars Clausen  <lrclause@cs.uiuc.edu>
3158         * NEWS: 
3159         * configure.in: 
3160         * doc/en/dia-manual.sgml: Update for pre2.
3162         * app/menus.c (display_menu_items): Fixed wrongly place separators.
3164         * objects/flowchart/box.c (box_update_data): Applied patch from
3165         Eivind Tagseth <eivind-gnome@multinet.no> to allow resize (with
3166         comment). 
3168         * app/paginate_psprint.c (print_page): Set paper name, so it
3169         convinces ps printers to use to right size.
3171 2003-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
3173         * app/properties.c (properties_show): Hide the dialog if the
3174         object is NULL (get rid of 'no properties' randomly popping up).
3176 2003-02-06  Lars Clausen  <lrclause@cs.uiuc.edu>
3178         * plug-ins/pixbuf/pixbuf.c (export_data): Adjust width and height
3179         for diagrams not starting at origo.
3181 2003-02-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3183         * dia.spec (BuildRequires): Use libxml2-devel.
3185         * plug-ins/pixbuf/Makefile.am: Added to CVS.
3187         * RELEASE-PROCESS: Note on RPM version numbers.
3189         * app/interface.c (create_display_shell): Don't set as toolbar
3190         under Unix, either.  Especially not the diagram shell.  It removes
3191         it from the taskbar and makes it unresizable, always-on-top with
3192         OpenBox.  TOOLBAR != TOOLBOX.  Setting toolbox to the only
3193         appropriate thing, UTILITY, is not good either, you lose resizing
3194         and minimizing/maximizing under OpenBox.
3196         * app/menus.c (display_menu_items): Set delete item to use Delete.
3198 2003-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
3200         * dia.spec (BuildRequires, Requires): Updated for Gtk2
3201         requirements.
3203         * app/disp_callbacks.c (ddisplay_canvas_events): Only add a
3204         display flush when getting focus in, or we may get an update after
3205         the diagram has been destroyed in some cases.  Fixes bug #105221.
3207         * plug-ins/xfig/xfig-import.c: Notes on the splines used by XFig.
3209         * lib/diarenderer.c: Notes on the basis matrix for our beziers.
3211         * app/app_procs.c (app_init): Fixed missing popt context for Gnome
3212         - gnome-compiled Dia will now read files specified on the command line.
3214 2003-02-03  Lars Clausen  <lrclause@cs.uiuc.edu>
3216         * INSTALL (REQUIREMENTS): Updated requirements section.
3218         * configure.in: Better finite() check from Mårten Svantesson
3219         <f95-msv@nada.kth.se>.  Doesn't seem to generate strange dangly
3220         if's. 
3221         
3222 2003-02-03  Lars Clausen  <lrclause@cs.uiuc.edu>
3224         * plug-ins/xfig/xfig-import.c: Notes on spline conversions.
3226         * app/app_procs.c (debug_break): Added some code to avoid
3227         over-eager optimizations removing the call.  Surely there's a
3228         nicer way, but I'm not sure how.
3230         * app/diapsft2renderer.c (draw_bezier_outline): Removed paps relic
3231         that set text to black.
3233 2003-02-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3235         * NEWS: Mention of Twiki as doc source for Python.
3237         * plug-ins/pixbuf/pixbuf.c: Export with pixbuf if
3238         libart/libpng is not available.  Later when we have a way of
3239         letting the user pick options in the file select dialog we shall
3240         allow the choice when applicable.
3242 2003-02-02  Steffen Macke <sdteffen@web.de>
3244         * doc/en/usage-loadsave.sgml:
3245         * doc/en/usage-objects.sgml: patch from
3246         James K. Lowden <jklowden@schemamania.org> to fix
3247         some docbook errors
3248         
3249 2003-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3251         * plug-ins/Makefile.am (SUBDIRS): 
3252         * plug-ins/pixbuf/pixbuf.c: 
3253         * plug-ins/pixbuf/Makefile.am: 
3254         * configure.in: 
3255         Added pixbuf plugin to Makefile.am, but for import only.  PNG
3256         export handled by libart, which is better. JPG export is
3257         discouraged.  BMP is not much used on Unix.  Next release will
3258         integrate libart to allow all outputs.
3260 2003-02-01  Hans Breuer  <hans@breuer.org>
3262         * app/preferences.c :
3263         * app/pagesetup.c :
3264         the last two dialogs with 'old' button order finally
3265         are converted to gtk2, no GnomeDialog in all of Dia 
3266         anymore :-) 
3268 2003-02-01  Hans Breuer  <hans@breuer.org>
3270         * app/filedlg.c : don't try to use a button as
3271         'overwrite-file-dialog'-parent, use the FileSelDialog
3272         instead
3274         * plug-ins/pixbuf/pixbuf.c : make it work with 
3275         system-visual-depth < 24. Remove 'bmp' from output
3276         format extensions, it just was wishful thinking.
3278         * plug-ins/python/Makefile.am : added the four new python 
3279         plug-ins mentioned below to pyplugin_DATA and EXTRA_DIST
3281 2003-02-01  Hans Breuer  <hans@breuer.org>
3283         * NEWS : updated content beside dependencies
3285 2003-02-01  Hans Breuer  <hans@breuer.org>
3287         * lib/arrow.h : arrow_types needs to be declared as DIAVAR
3288         to make it useable across DLL boundaries
3289         * app/lineprops_area.c : same code to access arrow_types
3290         on all platforms
3292         * objects/UML/class.c : the non empty string is e.g.
3293         comment != NULL && comment[0] != '\0'
3294         * objects/UML/uml.c : same here, don't bother with
3295         empty operation stereotypes
3297 2003-02-01  Steffen Macke <sdteffen@web.de>
3299         * app/lineprops_area.c: latest changes do not work on
3300         windows, using old code without tooltips
3301         * makefile.msc: fixed copying of wmf.dll
3302         * plug-ins/makefile.msc: 
3303         * app/makefile.msc:
3304         * lib/makefile.msc: now linking libintl
3305         * config.h.win32: enabling native language support
3307 2003-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
3309         * plug-ins/xslt/Makefile.am (libxslt_filter_la_LDFLAGS): Removed
3310         -ldl and -lglib.  May or may not work on windows...awaiting verdict.
3312 2003-01-31  Daniel Yacob  <locales@geez.org>
3314         * configure.in: Added am (Amharic) to ALL_LINGUAS.
3316 2003-01-31  Steffen Macke <sdteffen@web.de>
3318         * objects/UML/class.c (umlclass_calculate_data): fixed crash
3319         when comments were visible, no class comment available and
3320         a attribute comment
3321          
3322 2003-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
3324         * RELEASE-PROCESS: Updated to fit new install-module syntax.
3325         * Prerelease 0.91-pre1 released on a suspecting public.  Tagging
3326         with DIA_0_91_PRE1.
3328 2003-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
3330         * config.h.win32: 
3331         * NEWS: 
3332         * configure.in:
3333         * dia.spec:
3334         Prerelease version changes, version 0.91-pre1.
3336         * app/sheets_dialog_callbacks.h: 
3337         * app/sheets_dialog_callbacks.c: 
3338         * app/sheets_dialog.c (create_sheets_main_dialog): 
3339         * app/sheets.c (sheets_dialog_create): More destroy stuff.  Trying
3340         to handle destruction of main dialog cleanly, but it's a mess.
3342         * configure.in: Downgraded ieeefp test to make it not produce
3343         illegal shell code.
3345         * lib/widgets.c (dia_arrow_selector_set_arrow): 
3346         (dia_line_style_selector_set_linestyle): Select menu dot
3347         correctly set.
3349         * lib/arrows.c (calculate_arrow_point): Fix of wrong arrow
3350         adjustment for diamondheads.
3352         * lib/plug-ins.c (dia_plugin_load): Fixed typo.
3354         * app/properties.c (create_dialog): Destroy properties dialog and
3355         box correctly.
3357         * app/sheets_dialog_callbacks.c
3358         (on_sheets_dialog_button_edit_clicked): Only create a new dialog
3359         if the old one is destroyed.
3361 2003-01-29  Lars Clausen  <lrclause@cs.uiuc.edu>
3363         * app/export_png.c (export_png_ok): Added info on resolution.
3364         Should (next release) improve export dialog to allow setting
3365         resolution instead of pixels.
3367         * app/lineprops_area.c (dia_arrow_chooser_new): Use menudesc list
3368         to generate arrowheads as well as tooltips.
3370         * lib/arrows.c: Added hollow diamond to menudesc list.
3372         * lib/arrows.[ch]: 
3373         * lib/widgets.[ch]: Moved arrow name list into arrows.[ch] to
3374         unify with rendered menu.
3376         * lib/diarenderer.c (draw_line_with_arrows)
3377         (draw_polyline_with_arrows, draw_arc_with_arrows)
3378         (draw_bezier_with_arrows): Fixed linestyle change bug (#104488)
3379         without changing renderer API.  Thanks to David Scherba for
3380         providing inspiration.
3382 2003-01-28  Lars Clausen  <lrclause@cs.uiuc.edu>
3384         * app/interface.c (create_display_shell):
3385         * app/display.h: Patching from Hubert Figuiere
3386         <hfiguiere@teaser.fr>:  Better types for menu bar widgets, and
3387         correct menu items.
3389 2003-01-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3391         * app/defaults.c (defaults_show): Fixed defaults closing bug.
3392         Thanks to Hans for pointing it out.
3394 2003-01-25  Hans Breuer  <hans@breuer.org>
3396         * app/commands.c : don't warn about crashing libart renderer
3397         on win32. It simply doesn't render text anymore :-(
3399         * app/filedlg.c : use GtkMessageDialog for 'file overwrite'
3401         * objects/UML/class.c : don't access umlclass->properties_dialog
3402         after calling gtk_widget_destroy(umlclass->properties_dialog->dialog)
3403         which sets the former to NULL by destroy_properties_dialog() callback.
3405         * plug-ins/wmf/wmf.cpp : use dia_image_rowstride()
3407         * plug-ins/python/pydia-font.c : fix PyDiaFont_GetAttr()
3409         * plug-ins/python/pydia-image.c : add image.uri member
3410         not only useful for SVG rendering
3412         * plug-ins/python/diasvg.py : (new file) a more advanced
3413         example. A full blown SVG Renderer, currently only
3414         registered for .svgz
3416         * plug-ins/python/export-object.py : write text props
3418         * plug-ins/python/debug_objects.py : write prop.type and
3419         prop.visible 
3421 2003-01-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3423         * objects/UML/association.c (association_update_data): Better
3424         bounding box for assoc with arrows.
3426         * lib/properties.h: New flag for properties with multiple values
3427         in groups.
3429         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): Correct
3430         arrow updating in dialog.  Was broken due to changes from destroy
3431         fix:(
3433         * app/commands.c (view_aa_callback): AA warning only for Windows
3434         -- I trust the Unix side well enough.
3436         * app/render_libart.c (get_text_width): 
3437         * lib/dialibartrenderer.h (struct _DiaLibartRenderer): Font and
3438         font height can be taken from parent instance.
3440         * lib/dialibartrenderer.c (dia_libart_renderer_class_init) 
3441         (get_text_width): Proper cursor positioning for libart renderer.
3442         Ought to have a DiaInteractiveRenderer that these two can inherit
3443         from, that knows about transform.
3445 2003-01-25  Steffen Macke <sdteffen@web.de>
3447         * plug-ins/xslt/xslt.h: don't use dlfcn.h on win32. XSLT
3448         plug-in still not working on win32
3449         
3450 2003-01-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3452         * app/disp_callbacks.c (ddisplay_canvas_events): Moved
3453         gdk_window_get_pointer to avoid destroy crash.  Simpler than I
3454         thought.
3456 2003-01-23  Lars Clausen  <lrclause@cs.uiuc.edu>
3458         * app/app_procs.c (app_init): Run gtk_init before popt so we don't
3459         bail out on gtk options.
3461         * lib/message.c (gtk_message_internal): Better handling of destroy
3462         event.
3464 2003-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
3466         * app/color_area.c (color_area_edit): 
3467         * lib/widgets.c (dia_file_selector_browse_pressed) 
3468         (dia_color_selector_pressed): 
3469         * app/plugin-manager.c (get_plugin_manager): 
3470         * app/filedlg.c (file_open_callback, file_save_as_callback) 
3471         (file_export_callback):
3472         * app/diagram_tree_window.c (diagram_tree_window_new): Correct
3473         handling of destroy event.
3475 2003-01-22  Alan Horkan <horkana@tcd.ie>
3477         * app/commands.c (file_new_callback): Changed Untitled to Diagram
3478         for default name.
3480 2003-01-21  Lars Clausen  <lrclause@cs.uiuc.edu>
3482         * app/preferences.c (prefs_create_dialog): 
3483         * app/linewidth_area.c (linewidth_create_dialog): 
3484         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): 
3485         * app/layer_dialog.c (create_layer_dialog)
3486         (layer_dialog_edit_layer): Correct handling of destroy signal. 
3488         * app/diapsft2renderer.c (set_font): Adjust silly random factor
3489         for change in font.c
3491         * lib/widgets.c: Avoid warning when font menu file doesn't exist.
3493         * lib/font.c (dia_font_build_layout): Let's all use the same weird
3494         factor here.
3496         * app/lineprops_area.c (dia_arrow_chooser_dialog_show): 
3497         * app/layer_dialog.c (create_layer_dialog) 
3498         (layer_dialog_edit_layer): 
3499         * app/filedlg.c (file_open_callback, file_save_as_callback) 
3500         (file_export_callback): 
3501         * app/dia-props.c (create_diagram_properties_dialog): 
3502         * app/defaults.c (defaults_dialog_destroyed): 
3503         * app/color_area.c (color_area_edit): Dialog destroy event handling.
3505 2003-01-19  Lars Clausen  <lrclause@cs.uiuc.edu>
3507         * app/defaults.c (defaults_dialog_destroyed): Reset cache when
3508         defaults dialog destroyed.
3510 2003-01-19  Steffen Macke <sdteffen@web.de>
3512         * objects/makefile.msc: added bondgraph
3513         * plug-ins/makefile.msc: added GDK_PIXBUF_LIBS in order
3514         to compile pixbuf.dll
3515         * makefile.msc: copying all objects and dlls now
3516         
3517 2003-01-19  Hans Breuer  <hans@breuer.org>
3519         * app/diagram.[hc] : provide dia_open_diagrams(), make
3520         open_diagrams variable static
3521         * app/dia.def : export it (to be used by PyDia)
3522         * app/app_procs.c app/autosave.c app/diagram_tree_window.c
3523           app/display.c app/dynamic_refresh.c app/layer_dialog.c
3524           app/load_save.c : make use of dia_open_diagrams()
3526         * app/interface.c : don't set GDK_WINDOW_TYPE_HINT_TOOLBAR
3527         on win32. It removes the diagram window from the taskbar and
3528         shrinks it's window title to toolbar style (newest gtk2.2 cvs)
3530         * app/menus.c : add '...' to menu entries where a dialog 
3531         gets invoked
3532         * app/recent_files.c app/dia_embedd.c : reflect the above in 
3533         menus_get_item_from_path() calls
3535         * lib/libdia.def : add dia_image_rgba_data
3537         * lib/properties.h lib/prop_text.[hc] : add new property
3538         type StringList
3539         * objects/UML/class.[hc] object/UML/class_dialog.c : use
3540         StringList for attributes_strings and operations_strings to
3541         make this calculated data accessible via the Property API
3543         * plug-ins/python/diamodule.c : use dia_open_diagrams() and
3544         provide dia.new() to create a new diagram, dia.registered_types()
3545         to get on Dia's type registry, dia.message() for simple dialogs
3547         * plug-ins/python/pydia-diagram.c : implement DiaDiagram.display()
3548         to create a new display from a diagram. Let diagram.extents and
3549         diagram.bg_color return the same types as in diagramdata.*
3551         * plug-ins/python/pydia-geometry.c : add a read-only 
3552         'sequence interface' to DiaPoint and DiaRectangle
3554         * plug-ins/python/pydia-property.c : allow to get on StringList
3555         from Python
3557         * plug-ins/python/pydia-render.c : fix typo to make it compile
3559         * plug-ins/python/python-startup.py : removed 'import pygtk'
3560         again. This file does not need any gtk UI, and some python
3561         plug-ins don't do either
3563         * plug-ins/python/gtkcons.py : ported to GTK2 interface, now
3564         it should actually work as intended again
3566         * plug-ins/python/group_props.py : (new file) a prototype for
3567         one the most requested features: Change properties of selected
3568         objects in one step. Requires pygtk.
3570         * plug-ins/python/select_by.py : (new file) select objects by 
3571         common properties. Requires pygtk.
3573         [Start of 'PyDia Self Documentation Series']
3575         * plug-ins/python/pydiadoc.py : (new file) generates a new 
3576         diagram which contains all objects of dir(dia)
3577         
3578         * plug-ins/python/otypes.py : (new file) generates a new diagram 
3579         which contains all the currently registered object types sorted 
3580         by their containing package
3582 2003-01-18  Lars Clausen  <lrclause@cs.uiuc.edu>
3584         * configure.in: Added check for Pango >= 1.1.5, which appears to
3585         be enough to have text work.
3586         (INTLOBJS): Added dummy subst cause gettext doesn't always seem to
3587         do it.  AC_SUBST should be idempotent, though.
3589 2003-01-17  Lars Clausen  <lrclause@cs.uiuc.edu>
3591         * configure.in (HAVE_FREETYPE): Better test for freetype version
3592         using neat macro.
3593         Now actually sets HAVE_IEEEFP_H, needed for Solaris.
3595         * lib/font.c: Renamed global_size_one to global_zoom_factor to
3596         avoid confusion, and added comment.  Set scale factor in
3597         dia_font_build_layout to 1.0 for Unix side.  This fixes at least
3598         my weird scaling problems.  Fonts are now of the expectable size,
3599         i.e. the space between lines at size 1.0 is 1.0.  If we want a
3600         compatibility fix, we should scale fonts by about 1/0.75 from 0.90
3601         diagrams, though there will always be differences.
3603 2003-01-15  Lars Clausen  <lrclause@cs.uiuc.edu>
3605         * plug-ins/python/python-startup.py: 
3606         * plug-ins/python/gtkcons.py: Require gtk 2.0 for pygtk
3608         * plug-ins/python/python.c (dia_plugin_init): Added warning
3609         message for missing startup file.
3611         * lib/dialibartrenderer.c (draw_image): Alpha rendering!  Yay!
3612         
3613         * lib/dia_image.c (dia_image_rgb_data): 
3614         * app/diapsrenderer.c (draw_image): Fixed rowstride problems
3615         involving EPS.  Can't do transparency in EPS yet.
3617         * lib/dia_image.h: 
3618         * lib/dia_image.c (dia_image_rgba_data): New function to get RGBA
3619         data as one chunk.  Documentation for the RGB data getting funcs.
3620         (dia_image_rgb_data): Added comment.
3622         * lib/dialibartrenderer.c (draw_image): Correct rowstride handling
3623         (bug #103565)
3625 2003-01-13  Steffen Macke <sdteffen@web.de>
3627         * lib/dia_image.c: dia_image_rgb_data() is working for
3628         non-alpha images now. Fixes #93762
3629         * Makefile.am: added makefile.msc to EXTRA_DIST
3630         
3631 2003-01-10  Steffen Macke <sdteffen@web.de>
3633         * app/paginate_psprint.c: Closing print dialog when file
3634         could not be written. Fixes #84746
3635         
3636 2003-01-04  Steffen Macke <sdteffen@web.de>
3638         * doc/custom-shapes: incomplete description of <svg:text>
3640 2003-01-03  Steffen Macke <sdteffen@web.de>
3642         * makefile.msc(new): new makefile to create file
3643         structure suitable for running dia win32 under
3644         $(TOP)/dia/build/win32
3645         
3646 2003-01-02  Steffen Macke <sdteffen@web.de>
3647         
3648         * lib/dia_svg.c: including stdlib.h
3649         * lib/makefile.msc: added gdk_pixbuf libs to linker
3650         * app/makefile.msc: added gdk_pixbuf libs, made libart
3651         libs compatible with gnuwin32 package
3652         
3653 2003-01-01  Hans Breuer  <hans@breuer.org>
3655         * lib/font.c : more comment about global_size_one
3657         * app/menus.c : <control>[<shift>]A for plain gtk build too.
3659         * plug-ins/wmf/wmf.cpp : some type juggling to make 
3660         msvc7 happy
3662 2002-12-31  Steffen Macke <sdteffen@web.de>
3664         * app/makefile.msc: added hint on how to enable console output
3665         
3666 2002-12-17  Lars Clausen  <lrclause@cs.uiuc.edu>
3668         * objects/standard/textobj.c (textobj_load): Get the handle type
3669         right, at least to be the same as when created.
3671 2002-12-12  Lars Clausen  <lrclause@cs.uiuc.edu>
3673         * lib/dialibartrenderer.c (draw_string): Removed extra 'is'.
3675 2002-12-08  Hans Breuer  <hans@breuer.org>
3677         * app/commands.c : fixed bug #85315 'give diagram properties, 
3678         instead of no object selected error' almost a one-liner
3680         * app/splash.c : don't make having the logo pixmap
3681         mandatory. Fixes bug #96068. 
3683         * app/defaults.c : avoid crashing from open-dialog,esc,open-dialog
3684         sequence by connecting to the "delete_event"
3685         * app/objects/uml/class_dialog.c : handle "destroy" for 
3686         the same reason.
3688         * lib/libdia.def : remove diaXmlNewChild again
3690         * app/paginate_gdiprint.cpp : reflect Dia's page setting
3691         portrait/landscape in the windoze print dialog
3693         * objects/makefile.msc : only UML needs to link against
3694         $(GTK2_LIBS) and only custom against $(LIBXML2_LIBS)
3696 2002-12-08  Lars Clausen  <lrclause@cs.uiuc.edu>
3698         * objects/standard/ellipse.c (ellipse_distance_from): 
3699         * lib/geometry.c (distance_ellipse_point): Ellipse now uses the
3700         correct distance function.  Could be faster, but it's not really
3701         essential. 
3703 2002-12-07  Lars Clausen <lrclause@cs.uiuc.edu>
3705         * lib/font.c: Changed global_size_one to more correct 28.35.
3706         Looks better, too.
3708         * app/load_save.c:
3709         * lib/dia_xml.h: 
3710         * lib/dia_xml.c: Removed pretty print hack, the libxml thing works
3711         after all.
3713 2002-12-07  Hans Breuer  <hans@breuer.org>
3715         * lib/widgets.c : g_file_get_contents() silently assumes
3716         a binary file. Reflect when creating the font_menu file
3717         to get rid of junk in font menus
3719 2002-12-06  Hans Breuer  <hans@breuer.org>
3721         * app/diapsrenderer.[hc] app/diapsft2renderer.[hc] :
3722         removed 0xD 0xD 0xA line ends which get created by
3723         cvs if windoze line ends 0xD 0xA are checked in from
3724         *nix and checked out on win32.
3726         * app/preferences.c : changed toolbox_on_top default to
3727         false. It is currently not possible to change the behaviour
3728         at runtime, at least not on win32.
3730         * lib/dialibartrenderer.c : bug #94791 'rendering to 
3731         bitmap without PangoFt2' got delayed to milestone future 
3732         so wrap libart text rendering into PANGO_WIN32_FUTURE. 
3733         It is not available without my Pango patch in bugzilla.
3735         * lib/font.c : added comment to global_size_one and adapt
3736         the arbitrary size scaling in dia_font_build_layout() for
3737         win32, too. This is needed to get an acceptable font size 
3738         approximation for Dia 0.90 and earlier files.
3739         Also #include "message.h".
3741         * app/makfile.msc app/dia.def lib/makefile.msc lib/libdia.def :
3742         reflect movement of group.[hc]
3743         * lib/group.h : export group_type which gets used by app/*
3745         * lib/diagtkfontsel.c : added #undef GTK_DISABLE_DEPRECATED
3746         to get the GtkTypeInfo definition
3748         * plug-ins/makefile.msc : dxf and xfig don't need to link
3749         against app/ anymore now that group is moved to lib/
3751         * plug-ins/python/pydia-render.c : remove massive leaking
3752         of self, i.e. PyDiaRenderer
3754         *  plug-ins/python/makefile.msc : remove linking against
3755         GTK libs
3757 2002-12-06  Lars Clausen  <lrclause@cs.uiuc.edu>
3759         * objects/standard/line.c: Removed properties options for gaps,
3760         until release is done.
3762         * configure.in: Check for freetype version.
3764         * lib/text.c (text_insert_char): Fixed small buffer overflow for
3765         length = 0.
3767         * lib/dialibartrenderer.c (draw_string): Removed debugging printf.
3769         * app/diapsft2renderer.h: 
3770         * app/diapsft2renderer.c: 
3771         * app/diapsrenderer.h: 
3772         * app/diapsrenderer.c: Split ps rendering into standard and freetype.
3774         * app/render_eps.c (export_eps, new_psprint_renderer): Using
3775         PS_FT2 renderer when available.  Old render stuff killed.  Yay!
3777         * lib/properties.h: Fixed bad frame end def.
3779         * app/Makefile.am (dia_core_files): Added diapsft2renderer.[ch].
3781         * lib/dia_xml.c (data_add_string): Avoid #-less strings.
3782         
3783         * objects/bondgraph/Makefile.am: Removed unneeded EXTRA_DIST.
3785 2002-12-05  Lars Clausen  <lrclause@cs.uiuc.edu>
3787         * lib/font.c: Now checking for the proper dia-style standard fonts.
3789         * lib/Makefile.am: 
3790         * app/Makefile.am: Moving group.[ch]
3792         * plug-ins/dxf/dxf-import.c: 
3793         * plug-ins/xfig/xfig-import.c: 
3794         * plug-ins/xfig/xfig-export.c: Now can refer directly to group.h.
3796         * app/object_ops.c: 
3797         * app/object_ops.h: 
3798         * lib/object.c (object_list_move_delta, object_copy_list): 
3799         * lib/object.h: Moved some object-related functions from
3800         object_ops to object to assist moving group.c.
3802         * lib/diatypes.h: Added Group typedef.
3804         * lib/group.h: 
3805         * lib/group.c: Moved from app to lib to a) resolve plug-ins
3806         references, and b) make groups more "real" objects.
3808         * lib/Makefile.am (libdia_la_SOURCES): Added diatyps.h
3810 2002-12-03  Lars Clausen <lrclause@cs.uiuc.edu>
3812         * lib/font.c (dia_font_init): Added check that the three standard
3813         fonts exist.
3815 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3817         * lib/dia_xml.[ch]:
3818         * app/load_save.c: Linebreaks in dia files, no indentation.
3819         Should help text tools.  xmlNewChild wrapped in diaXmlNewChild for
3820         this. 
3821         
3822         * objects/standard/line.c: Small but important fixes to the line
3823         gap code.
3825         * lib/dia_xml.h: 
3826         * lib/dia_xml.c (diaXmlNewChild): 
3827         * app/load_save.c (diagram_data_write_doc, write_objects): Simple
3828         XML prettyprinting wrapper.
3830 2002-12-03  Steffen Macke <sdteffen@web.de>
3832         * shapes/Cisco/Makefile.am:
3833         * shapes/Cisco/*.shape: finished conversion of Cisco icons
3834         to *.png
3835         
3836 2002-12-02  Steffen Macke <sdteffen@web.de>
3838         * doc/en/Makefile.am:
3839         * doc/en/usage-objects.sgml:
3840         * doc/en/graphics/line_icon.png: (new) added line icon
3841         
3842 2002-12-02  Lars Clausen  <lrclause@cs.uiuc.edu>
3844         * objects/standard/line.c: Binary search object edge line gap.
3846 2002-12-01  Lars Clausen  <lrclause@cs.uiuc.edu>
3848         * configure.in: Added Cisco makefile, sorted Makefiles list.
3850         * shapes/Makefile.am (SUBDIRS): Added Cisco dir
3852         * configure.in: Now checks for availability of PangoFT2 and
3853         FreeType, raising an error if not found.
3855         * app/Makefile.am (dia_core_files): Adding diapsft2renderer from
3856         Hans.
3858 2002-12-01  Steffen Macke <sdteffen@web.de>
3859         
3860         * doc/en/usage-loadsave.sgml: updated information on import
3861         and export formats
3862         
3863 2002-11-28  Lars Clausen  <lrclause@cs.uiuc.edu>
3865         * app/commands.c (edit_copy_callback): Freeing copy_list.
3867 2002-11-28  Steffen Macke <sdteffen@web.de>
3868         
3869         * app/render_libart.c: art_config.h was included twice
3871 2002-11-27  Lars Clausen  <lrclause@cs.uiuc.edu>
3873         * sheets/.cvsignore: More ignorance.
3875         * lib/diagdkrenderer.c (draw_string): Removed silly #ifdef 1.
3877         * lib/prop_widgets.h: Two (currently unused) settings for frame
3878         foldability.
3880         * lib/prop_widgets.c (frame_beginprop_get_widget): Frames are now
3881         (by default) foldable. 
3883         * lib/propinternals.h: 
3884         * lib/propdialogs.c (prop_dialog_add_raw_with_flags): Way to add
3885         widgets in a more controlled manner.
3887         * objects/standard/line.c (line_update_data): Line gap things
3888         inserted.  Can do xeyes now:)
3890 2002-11-26  Christian Neumair  <chris@gnome-de.org>
3892         * .cvsignore: Changed.
3893         * objects/bondgraph/.cvsignore, plug-ins/metapost/.cvsignore,
3894         plug-ins/xslt/.cvsignore, shapes/Assorted/.cvsignore, shapes/Misc/.cvsignore:
3895         Added.
3897 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3899         * app/pixmaps/delete.xpm: Trashcan stolen from Gimp.
3901         * lib/widgets.c (dia_font_selector_get_font): Fixed wrong name
3902         passing to font hash.
3904         * app/filedlg.c (file_save_as_ok_callback): Check that filename is
3905         utf-8 or locale-convertible before adding to dialog text.  This
3906         probably needs done in a number of places where we get text from
3907         the environment and send it to GTK to display.
3909         * lib/widgets.c: Fixed case problems for font menu entries.
3911         * objects/SADT/annotation.c: Don't run the event test (but leave
3912         it here for inspiration).
3914         * lib/widgets.c: 
3915         * lib/widgets.h: Allowing setting preview text for fonts.
3917 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3919         * objects/bondgraph/Makefile.am: 
3920         * objects/bondgraph/bondgraph.c: 
3921         * configure.in: 
3922         * objects/Makefile.am: Added bond graph dir.
3924 2002-11-26  Lars Clausen  <lrclause@cs.uiuc.edu>
3926         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor size.
3928 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3930         * lib/text.c (text_calc_boundingbox, text_draw): Better cursor
3931         positioning. 
3933         * app/diapsrenderer.c: Freetype rendering is back in force.
3935         * app/disp_callbacks.c: Added missing updates for pre-text-change.
3937 2002-11-25  David Hoover <jazzdaq@yahoo.com>
3939         * app/render_libart.c: Added missing #include line for libart.
3941         * lib/geometry.h:
3942         * lib/geometry.c: Added point_convex function.  This computes
3943         points inside a line segment (0 <= alpha <= 1) or outside the
3944         line segment (alpha < 0 | alpha > 1).
3946         * objects/standard/line.c: Line now has additional code/attributes
3947         which permit the line to extend past the line anchors (gap < 0) or
3948         leave a gap without reaching the anchor (gap > 0).  If no gap is
3949         specified, the default gap of 0 will result in identical line
3950         behavior as before.  If the 'fractional' attributes are TRUE, the
3951         gap length is not fixed, but a percentage of the line length.  I
3952         did not know how create the GTK widgets so the gap code currently
3953         cannot be used without adding XML attributes by hand.
3955 2002-11-25  Lars Clausen  <lrclause@cs.uiuc.edu>
3957         * lib/diagdkrenderer.c (draw_string): Removed timing bits.
3959         * lib/Makefile.am (libdia_la_SOURCES): Added fontsel files to SOURCES.
3961 2002-11-24  Lars Clausen  <lrclause@cs.uiuc.edu>
3963         * lib/font.c: Debugging functionality in separate functions.
3965         * lib/widgets.c: Using fontsel with context.
3967         * lib/diagtkfontsel.[ch]: Context-aware copy of the GTK fontsel.
3969         * objects/custom/custom_object.c: Orientation handling for shapes,
3970         patch thanks to Martin Hans <opfinder@gmx.net>.
3972         * objects/standard/zigzagline.c (zigzagline_move_handle): Starting
3973         work on even better orientation handling.
3975         * app/menus.c (menus_get_item_from_path): Fixed sily warnings from
3976         casting NULL pointers.  Should be unnecessary in an upcoming GTK
3977         release. 
3979 2002-11-18  Lars Clausen  <lrclause@cs.uiuc.edu>
3981         * lib/font.h:
3982         * lib/font.c:
3983         * lib/widgets.c: Now uses correct context to get font families.
3985         * lib/diagdkrenderer.c (get_text_width, draw_string): 
3986         * lib/dialibartrenderer.c (draw_string): 
3987         * lib/font.h: 
3988         * lib/font.c (dia_font_init): Removed old kludgy font name compare.
3989         (dia_font_build_layout): Unified the twiddle factors into a use of
3990         global_size_one.  But I deeply distrust Pango for seeming to
3991         change size of fonts every time I turn my back.
3993         * app/display.c: 
3994         * app/diagram.c: 
3995         * app/menus.c:
3996         * app/menus.h: Updated some more methods to also be more specific
3997         on the types.
3999         * app/menus.h:
4000         * app/recent_files.c: 
4001         Changed to return most specific type, to avoid run-time type errors.
4003         * app/menus.c (menus_get_item_from_path): Non-gnome version now
4004         gets menu_item rather than widget, which works better.
4006 2002-11-17  Cyrille Chépélov  <cyrille@chepelov.org>
4008         * app/display.c: (new_display):
4009         * app/menus.c: (menus_get_item_from_path):
4010         Relying on the tearoff to locate the input methods menu wasn't a
4011         good idea: tearoffs seem to be an endangered species nowadays.
4012         Anyway, the IM menu seems to be working now.
4014         * app/interface.c: hinted the window manager that the toolbox window
4015         is a toolbox window. Not that my (fairly default configuration)
4016         sawfish cares, but other NETWM compliant WMs may.
4018         * app/commands.c: 
4019         * app/defaults.c: 
4020         * app/dia-props.c:
4021         * app/filedlg.c: 
4022         * app/interface.c: 
4023         * app/layer_dialog.c: 
4024         * app/linewidth_area.c: 
4025         * app/properties.c: 
4026         * app/sheets_dialog.c: 
4027         * app/splash.c: 
4029         The GTK doc says to avoir gtk_window_set_wmclass() and 
4030         gtk_window_set_policy(), and use gtk_window_set_role() and
4031         gtk_window_set_resizable(), respectively.
4032         
4033         * app/preferences.c: (prefs_create_dialog):
4034         * app/preferences.h:
4035         * app/display.c: (display_set_active):
4036         Added a preference to have the toolbox hover over diagram windows.
4037                 
4038 2002-11-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4040         * lib/diagdkrenderer.c (get_text_width, draw_string):
4041         Freetype-based string drawing now works.  Not very fast, though.
4042         I wish I could use the graphics card for this:(  I'm doing three
4043         bitmap loops where I should be doing one.  The size is not correct
4044         either, despite having get_text_width give the right thing.
4046 2002-10-21  Lars Clausen  <lrclause@cs.uiuc.edu>
4048         * app/connectionpoint_ops.c (diagram_update_connections_object):
4049         Allows more than one connectionpoint on an object to be moved at a
4050         time (bug #96306).
4052 2002-10-18  Stanislav Brabec  <sbrabec@suse.cz>
4054         * configure.in: Added cs to ALL_LINGUAS.
4056 2002-10-17  Lars Clausen  <lrclause@cs.uiuc.edu>
4058         * app/paginate_psprint.c: Removed unnecessary decl of autosave
4059         stuff.
4061         * app/display.c (ddisplay_set_renderer): Calls to begin/end render.
4063         * app/export_png.c (export_png_ok): Saving more variables from the
4064         evil setjmp.
4066 2002-10-16  Lars Clausen  <lrclause@cs.uiuc.edu>
4068         * lib/dialibartrenderer.c (begin_render):
4069         (end_render): Correct pushing and popping of font contexts.
4070         (draw_string): Double zooming eliminated, strange twiddle factor
4071         introduced (grumble).  Close to working now, but there are still
4072         strange differences from font to font.  In particular, some fonts
4073         really mess with the cursor and extents.
4075         * app/render_eps.c (export_eps): 
4076         * app/diapsrenderer.c (dia_ps_renderer_finalize): 
4077         Fixed file closing confusion, no longer dependent on PS/EPS.
4079         * app/diagram.c (diagram_place_down_selected) 
4080         (diagram_place_up_selected): Now implemented.
4082         * lib/font.c (dia_font_init): 
4083         * lib/font.h: 
4084         Redesigned the font init/context pushing code.  Start of fix for
4085         font name differences.
4086         
4087 2002-10-15  Kjartan Maraas  <kmaraas@gnome.org>
4089         * app/sheets_dialog_callbacks.c: Fix a typo.
4090         
4091 2002-10-15  Hans Breuer  <hans@breuer.org>
4093         * app/diapsrenderer.[hc] : (new files, old content :-)
4094         simple base class for post script rendering. Does neither 
4095         use Pango/FT2 nor does it handle non latin1 characters. 
4096         The fancy stuff which nowadays appears to be needed should 
4097         probably be done in derived class(es)
4099         * app/makefile.msc app/Makefile.am : added new files
4101         * app/paginate_psrint.c : re-enabled and used as test
4102         for the simple ps renderer above.
4104         * app/render_eps.[hc] : ripped out common ps code and
4105         moved to DiaPsRenderer. The rest of the file is mostly
4106         disabled. And I don't understand enough of it to 
4107         change port it.
4109         * app/diaepsrenderer.h : short lived, removed.
4111 2002-10-15  Lars Clausen  <lrclause@cs.uiuc.edu>
4113         * lib/plug-ins.c (dia_register_plugin): Don't try to load libdia
4114         as a plugin (thanks to Torben Nielsen).
4116 2002-10-14  Lars Clausen  <lrclause@cs.uiuc.edu>
4118         * app/diaepsrenderer.h: 
4119         * app/render_eps.h: 
4120         * app/paginate_psprint.c: 
4121         #ifdef'd out enough ps stuff to allow compile.  Now we just need
4122         to convert it.
4123         
4124 2002-10-12  Hans Breuer  <hans@breuer.org>
4126         [last plug-in ported]
4128         * plug-ins/xfig/xfig-export.c : ported to new renderer api
4130         * plug-ins/xfig/xfig-import.c(fig_create_object) : need to
4131         scale color values to [0..1.0] to properly reconstruct
4132         user colors
4134         * plug-ins/xfig/xfig-common.c : some cleaning
4136 2002-10-12  Hans Breuer  <hans@breuer.org>
4138         [decrease inter-plug-in-dependencies]
4140         * objects/custom/shape_info.[hc] : move parse_style()
4141         to lib/dia_svg.[hc] as dia_svg_parse_style(); Namespace
4142         the related structs and constants.
4143         * objects/custom/custom_object.c : reflect namespace
4144         changes
4146         * lib/dia_svg.[hc] : new files
4147         * lib/makefile.msc lib/Makefile.am : add new files
4148         * lib/libdia.def : updated externals
4150         * plug-ins/svg/svg-import.c : use dia_svg_parse_style()
4152         * plug-ins/svg/svg.c : enable svg import for win32 (and
4153         probably for other non ELF builds)
4155         * plug-ins/makefile.msc : enable svg import
4157 2002-10-11  Hans Breuer  <hans@breuer.org>
4159         * plug-ins/metapost/render_metapost.[hc] : ported
4161         * plug-ins/pstricks/render_pstricks.[hc] : dito
4163 2002-10-11  Hans Breuer  <hans@breuer.org>
4165         * plug-ins/cgm/cgm.c : ported, appears to work as before,
4166         but graphic apps available to me can't import the generated 
4167         files (the could not with Dia-0.90 cgm as well) ...
4169         * plug-ins/dxf/dxf-export.c : Ported to new renderer api.
4170         Removed all those function which did emulate 'complex' 
4171         drawing ops with basic ones (e.g. rect by line) cause this
4172         stuff is already provided by the base class
4173         * plug-ins/dxf/dxf-import.c : removed render.h include
4175         * plug-ins/python/pydia-font.[hc]
4176           plug-ins/python/pydia-text.c : finally ported to new font api
4178         * plug-ins/python/pydia-layer.c : add extra parameter
4179         to layer_find_closest_connectionpoint()
4181         * plug-ins/python/pydia-render.c : ported to DiaRenderer api
4183         * plug-ins/python/python.c : added missing copyright notice
4185         * plug-ins/hpg/hpgl.c plug-ins/wpg/wpg.c plug-ins/wmf/wmf.cpp : 
4186         actually use the renderers set_font implementation
4188         * plug-ins/renderer.inc : unused now, removed
4189         * plug-ins/Makefile.am : reflect it
4191 2002-10-08  Hans Breuer  <hans@breuer.org>
4193         * app/render_gdk.c : don't add the InteractiveRenderer
4194         interface multiple times (it's added to the type, not
4195         the object)
4196         * app/render_libart.c : dito. It's currently added
4197         unconditional cause eport_png uses it, but claims
4198         to be non-interactive. Probably set_size should be moved
4199         to the DiaRenderer interface.
4201         * lib/dialibartrenderer.c : add implementations for
4202         get_<width|height>_pixels. Libart rendering works again.
4203         DiaLibartRenderer::draw_image : use dia_image_rowstride()
4204         instead of width*3
4206         * lib/diatransform.c(dia_transform_coords_double) :
4207         don't ROUND() the returned values
4209         * plug-ins/pixbuf/pixbuf.c : added import function. It
4210         simply creates a wrapping "Standard - Image" object.
4212         * plug-ins/shape/shape-export.c : use the more direct
4213         method to call base class methods
4215 2002-10-07  Lars Clausen  <lrclause@cs.uiuc.edu>
4217         * lib/font.c (dia_font_init): Changed dia_font_init to return old
4218         pango context, to allow stacked contexts (for printing while
4219         antialiased).
4220         
4221         * lib/arrows.h
4222         * lib/bezier_conn.h
4223         * lib/beziershape.h
4224         * lib/boundingbox.h
4225         * lib/color.h
4226         * lib/connection.h
4227         * lib/connectionpoint.h
4228         * lib/create.h
4229         * lib/dia_image.h
4230         * lib/diagdkrenderer.h
4231         * lib/diagramdata.h
4232         * lib/dialibartrenderer.h
4233         * lib/diamenu.h
4234         * lib/diarenderer.h
4235         * lib/diasvgrenderer.h
4236         * lib/diatransform.h
4237         * lib/element.h
4238         * lib/filter.h
4239         * lib/focus.h
4240         * lib/font.h
4241         * lib/geometry.h
4242         * lib/handle.h
4243         * lib/neworth_conn.h
4244         * lib/objchange.h
4245         * lib/object.h
4246         * lib/orth_conn.h
4247         * lib/paper.h
4248         * lib/plug-ins.h
4249         * lib/poly_conn.h
4250         * lib/polyshape.h
4251         * lib/properties.h
4252         * lib/ps-utf8.h
4253         * lib/sheet.h
4254         * lib/text.h
4255         * lib/textattr.h
4256         * lib/widgets.h
4257         * lib/diatypes.h
4258         Moved all externally visible struct typedefs into diatypes.h, as
4259         per Hans' suggestions.
4261 2002-10-07  Steffen Macke <sdteffen@web.de>
4263         * lib/Makefile.am: removed a '\' causing problems
4265 2002-10-07  Hans Breuer  <hans@breuer.org>
4267         [Libart Renderer resurrected; almost it's compiling but
4268          almost instantly crashing :-]
4270         * lib/dialibartrenderer.[hc] : new files, ported to DiaRenderer
4271         * app/render_libart.[hc] : ported to DiaInteractiveRenderer
4272         * lib/diatransform.[hc] : added dia_transform_coords_double()
4274         * app/display.c : the right parameters for new_renderer_libart()
4275         * app/export_png.c : ported, removed the blind Display hack
4277         * app/makefile.msc lib/makefile.msc 
4278           lib/Makefile.am : updated
4280         * lib/dia<|gdk|interactive>renderer.c : properly copyrighted
4282 2002-10-06  Hans Breuer  <hans@breuer.org>
4284         * plug-ins/pixbuf/pixbuf.c : (new file)
4285         there is a new export plug-in called 'Pixbuf' which uses 
4286         DiaGdkRenderer to export to gdk-pixbuf supported bitmap
4287         formats (currently only PNG and JPEG).
4289 2002-10-06  Hans Breuer  <hans@breuer.org>
4291         See also: 
4292         http://mail.gnome.org/archives/dia-list/2002-October/msg00027.html
4294         * lib/dia-enums.h lib/diatransform.[hc]
4295           lib/diarenderer.[hc] lib/diainteractiverenderer.c
4296           lib/diagdkrenderer.[hc] lib/diasvgrenderer.[hc]
4297         : new files 
4299         * lib/makefile.msc lib/makefile.am : added new files
4301         * lib/plug-ins.c : g_module_error() returns a locale
4302         string, convert to utf8 before further usage 
4304         * lib/render.h : #error out. Everything including this
4305         needs porting
4306         * lib/*.[hc] : ported to new renderer api
4308         * app/diaepsrenderer.h : unfinished DiaEpsRenderer interface
4309         just to make the rest compile
4310         * app/render_eps.c : temporary disabled all of this
4311         * app/render_eps.h : removed RendererEPS
4313         * app/render_gdk.[hc] : a small wrapper around the new
4314         DiaGdkRenderer form lib/*
4316         * app/render_libart.h : removed RenderLibart definition
4317         * app/render_libart.c : not yet ported to new DiaRenderer
4318         but having an implementation to untie form FT2 dependency
4319         at least on win32. It is using new Pango api form bug #94791
4321         * app/render_pixmap.[hc] : a small wrapper around the new
4322         DiaGdkRenderer form lib/*
4324         * app/display.h : removed render_*.h includes
4325         * app/display.c : the only place where specific 
4326         renderers need to be known
4328         * app/connectionpoint_ops.c app/grid.c app/handle_ops.c
4329         use new DiaInteractiveRenderer interface
4331         * app/*.c : ported to new renderer api
4332         * object/*/*.c : ported to new renderer api
4333         s/render.h/diarenderer.h/
4334         s/Renderer/DiaRenderer/
4335         s/renderer->ops/renderer_ops/
4336         add in every draw method:
4337         DiaRendererClass *renderer_ops = DIA_RENDERER_GET_CLASS (renderer);
4339         * plug-ins/hpgl/hpgl.c : 
4340           plug-ins/wmf/wmf.cpp 
4341           plug-ins/wpg/wpg.c : ported to be DiaRenderer based
4342         * plug-ins/shape/shape-export.c
4343           plug-ins/svg/render_svg.c : ported to be DiaSvgRenderer based
4344           (nice how small these files became :-)
4346 2002-09-28  Hans Breuer  <hans@breuer.org>
4348         * */makefile.msc : updated
4350         * app/defaults.c : don't gdk_invalidate_rect(NULL)
4351         * app/disp_callbacks.c : 
4352         can't cast GtkWindow to GdkWindow, use shell->window
4353         (ddisplay_unrealize) don't use already unrefed im_context
4354         * app/display.c :
4355         can't cast from GtkMenu to GtkMenuItem
4356         (ddisp_destroy) : mark im_context as unrefed
4358         * lib/dia_xml (data_font) : prefer new font format over old one
4359         (data_add_font) : write the legacy name to allow file exchange
4360         with pre Pango versions of Dia, which would otherwise crash 
4361         on missing font 'name' attribute.
4362         * lib/font.c (dia_font_get_legacy_name) : improved implementation
4363         to get a better match.
4365         * lib/libdia.def : updated
4367         * lib/messages.c : don't gdk_widget_show(NULL)
4369         * lib/prop_text.c : don't gtk_entry_set_text() with NULL string 
4371         [make Dia compile, link _and_ work with mingw/gcc3.2]
4373         * config.h.win32 : #define LIBXML, this gets defined from libxml
4374         header but only for _MSC_VER. The mingw build did access an 
4375         unitialized function pointer for xmlFree.
4377         * */makefile.mingw : updated (some plug-ins have build issues)
4378         
4379         * lib/handle.h lib/object.h :   there appears to be no 
4380         forward declaration of the form 
4381                 typedef enum _HandleId HandleId 
4382         (at least not with GCC 3.2 for C++) ../lib/handle.h:22: 
4383         use of enum `_HandleId' without previous declaration
4385         * app/paginate_gdiprint.cpp : added a hack to avoid g++
4386         naming conflict on 'export'
4388         * app/paginate_gdiprint.h : forward declare Diagram
4390         * objects/SADT/annotaion.c : use g_random_double()
4392 2002-09-26  Lars Clausen  <lrclause@cs.uiuc.edu>
4394         * app/modify_tool.c: Made motion not happen until sufficiently
4395         large or past double-click interval, to avoid accidental moving
4396         when doubleclicking.  Got the double-click time right, and fixed
4397         some issues with release.  There are some corner cases that may
4398         exhibit strange behaviour, will look at those later.  Nah, let's
4399         not care about those, they are rare and not dangerous.
4401 2002-09-26  Cyrille Chépélov  <cyrille@chepelov.org>
4403         * app/layer_dialog.c: 
4404         * app/load_save.c: 
4405         * plug-ins/dxf/dxf-import.c: 
4406         * plug-ins/python/pydia-diagram.c: 
4407         * lib/diagramdata.c:
4408         * lib/diagramdata.h:
4409         Improved the consistency of the obj->parent_layer backlinks (esp.
4410         during reloads)
4412         * lib/Makefile.am:
4413         * lib/dummy_dep.h:
4414         * lib/dynamic_obj.[ch] (NEW):
4415         * app/Makefile.am:
4416         * app/app_procs.c: 
4417         * app/dynamic_refresh.[ch] (NEW):
4418         * objects/Misc/analog_clock.c: 
4419         Added support for dynamic refresh (animated objects).
4420                 
4421 2002-09-25  Cyrille Chépélov  <cyrille@chepelov.org>
4423         Patch from Owen Taylor <otaylor@redhat.com>:    
4424         * doc/en/Makefile.am:
4425         * doc/en/dia-manual.sgml:
4426         * doc/en/usage-objects.sgml:
4427         * doc/en/usage-quickstart.sgml:
4428         * doc/pl/Makefile.am:
4429         * doc/pl/dia-manual.sgml:
4430         * doc/pl/usage-objects.sgml:
4431         * doc/pl/usage-quickstart.sgml:
4433         - Change the DTD declration from an outdated GNOME one to a
4434         standard DTD.
4435         
4436         - Remove close tags for <graphics> which aren't allowed for
4437         docbook SGML
4438         
4439         - A hacky fix for a problem where some versions of db2html don't
4440         create *.css files. (If *.css doesn't match anything, then you get
4441         the global explicitely.)
4443         (Closes: #92061)
4444         
4445 2002-09-24  Cyrille Chépélov  <cyrille@chepelov.org>
4447         * objects/custom/custom_object.c: 
4448         * objects/custom/shape_info.[ch]: GE_TEXT display lists elements 
4449         were never properly prepared for use when reloading a shape with
4450         <svg:text> elements. Thanks to Scott Frazer <frazer@nc.rr.com> for
4451         reporting the problem and coming up with a fix! (Closes: #93974)
4453         * app/menus.c: patch from Alan Horkan <horkana@tcd.ie>: review
4454         the menu shortcuts towards better GNOME HIG compliance (Closes: #87157)
4456         * app/menus.c:
4457         * app/display.c: updated menu item paths Alan's patch had moved.
4458         
4459         * app/interface.c: Fixed a crash when gdk-pixbuf doesn't want to
4460         load the sheet-provided icon (libpng versions mismatch, grrr.).
4461         
4462         * configure.in:
4463         * objects/Makefile.am:
4464         * objects/Misc/Makefile.am (NEW):
4465         * objects/Misc/libmisc.c (NEW):
4466         * objects/Misc/analog_clock.c (NEW):
4467         * objects/Misc/pixmaps/analog_clock.xpm (NEW):
4468         * sheets/Misc.sheet.in: just a little experiment...
4470 2002-09-23  Cyrille Chepelov  <cyrille@chepelov.org>
4472         * plug-ins/xlst/Makefile.am: found a way to silence automake while
4473         not forcing everyone to build using libxslt.
4475         * lib/font.c: 
4476         * lib/message.c:
4477         * lib/object_defaults.c:
4478         * lib/intl.[ch]:
4479         * lib/render.c:
4480         * lib/properties.[ch]:
4481         * lib/propobject.c:
4482         * objects/standard/box.c: 
4483         * objects/UML/state_term.c:
4484         * objects/FS/box.c:
4485         * objects/FS/flow-ortho.c:
4486         * app/app_procs.c:
4487         * app/autosave.c:       
4488         * app/commands.c:
4489         * app/diagram_tree.c:
4490         * app/display.c:
4491         * app/disp_callbacks.c:
4492         * app/export_png.c:
4493         * app/filedlg.c:
4494         * app/lineprops_area.c:
4495         * app/menus.c:  
4496         * app/preferences.c:
4497         * app/render_eps.c:     
4498         * app/sheets.c:
4499         * app/sheets_dialog_callbacks.c:
4500         * plug-ins/xslt/xslt.c:
4501         * plug-ins/metapost/render_metapost.c:
4502         * plug-ins/xfig/xfig-export.c:
4503         * plug-ins/shape/shape-export.c:
4504         
4505         Killed most gcc-3.2 warnings (const-correctness and derived warnings, 
4506         unused variables, mostly)
4508         * app/display.c:
4509         * app/menus.c: enabled GTK Input Methods (thanks Lars!)
4511         * app/Makefile.am: modified run_dia.sh so that we recover the
4512         ability to run a debugger despite libtool's hacks.
4514         * plug-ins/dxf/Makefile.am: 
4515         * app/Makefile.am
4516         "make distcheck" fixes.
4517         
4518 2002-09-19  Lars Clausen  <lrclause@cs.uiuc.edu>
4520         * objects/UML/uml.c (uml_get_operation_string): Patch from Mauf
4521         <mfranzoni@madd.it>:  Check for the type being NULL.
4523 2002-09-16  Lars Clausen  <lrclause@cs.uiuc.edu>
4525         * app/render_eps.c (set_font): Re-tweaked font size for printing.
4527 2002-09-12  Cyrille Chepelov  <cyrille@chepelov.org>
4529         Patch from Angus Ainslie <angusa@deltatee.com>:
4530         * plug-ins/dxf/dxf-import.c:
4531         * plug-ins/dxf/autocad_pal.h: Import from visio 2002 improvements.
4533         (plus a couple extra fixes by me, such as the removal of printf's,
4534         adapting for recent changes, and killed a couple warnings) 
4536         * app/authors.h: a 60K patch isn't insignificant, is it?
4537         
4538 2002-09-09  Tor Lillqvist  <tml@iki.fi>
4540         * configure.in: Check for both pangoft2 (using PKG_CHECK_MODULES,
4541         as before) and -lfreetype (using AC_CHECK_LIB). At least on
4542         Solaris with Sun's compiler (Forte C), you need to link also the
4543         dia application with -lfreetype, even if it is implicitly linked
4544         to by -lpangoft2. Rename FREETYPE_CFLAGS and _LIBS to PANGOFT2_*,
4545         which is what they actually mean. Use FREETYPE_LIBS for
4546         -lfreetype.
4548         Don't look for libsunmath if isinf() is not found in math.h (as on
4549         Solaris). The sunmath library is part of Forte C and not present
4550         on all machines. Besides, even if isinf was found in libsunmath,
4551         we didn't use it in the Makefile.am.
4552         
4553         Fix a couple of bashisms.
4555         AC_SUBST also Z_LIBS, need to link the dia application to -lz,
4556         too, on Solaris with Forte C.
4558         Don't try to use the gcc flags with other compilers.
4559         DIA_CHECK_CFLAG gives a false indication that Forte C understands
4560         the gcc -f switches, but in fact they get interpreted meaning
4561         something completely different.
4563         Define the automake conditional HAVE_CGC.
4564         
4565         * app/Makefile.am (dia_LDADD): Add Z_LIBS and FREETYPE_LIBS.
4567         Use -export-dynamic only with gcc.
4569         * */Makefile.am
4570         * */*/Makefile.am: Modify according to the FREETYPE_CFLAGS -> 
4571         PANGOFT2_CFLAGS rename.
4573         * lib/geometry.h: Drop HAVE_SUNMATH_H and <sunmath.h> per above.
4574         
4575         * lib/dia_xml.c: Include geometry.h for the isinf() stuff on
4576         Solaris.
4578         * lib/paper.c: Workaround for gccism: Can't use inline this way with
4579         Forte C, either.
4581 2002-09-08  Cyrille Chepelov  <cyrille@chepelov.org>
4583         * lib/text.c(set_string): fixed a memory leak (char* ain't no
4584         std::auto_ptr<char> !).
4586         * app/display.[ch]:
4587         * app/interface.[ch]:
4588         * app/ddisp_callbacks.[ch]: Added some basic support for input 
4589         methods (GtkIMContext-based)
4591         * lib/Makefile.am:
4592         * app/Makefile.am: made libdia a shared object (per Tor
4593         Lillqvist's suggestion/request), to cope for platforms with a less
4594         than par dynamic library loader.
4596         * app/display.c: disabled the input method menu (I really don't
4597         see where and how to put them. Blame Frozen Bubble )
4598         
4599 2002-09-06  Lars Clausen  <lrclause@cs.uiuc.edu>
4601         * objects/flowchart/box.c (box_update_data): Made resizing
4602         possible again (only set width & height when resized too small).
4604         Patch from Soeren Sandmann <sandmann@daimi.au.dk>:
4606         * app/disp_callbacks.c (ddisplay_canvas_events): Handle
4607         GdkScrollEvents.
4608         
4609 2002-09-05  Cyrille Chepelov  <cyrille@chepelov.org>
4611         * app/authors.h: now showing Akira TAGOH's name in the native script.
4613 2002-09-01  Lars Clausen  <lrclause@cs.uiuc.edu>
4615         * plug-ins/xslt/xslt.c: Removed glib warning for unset
4616         DIA_PLUGIN_PATH.
4618 2002-09-01  Cyrille Chepelov  <cyrille@chepelov.org>
4620         * plug-ins/svg/render_svg.c: Applied (reversed...) patch from
4621         Mike Sowka <msowka@rogers.com>. This fixes a problem with the
4622         sweep flag in arcs.
4624 2002-08-31  Lars Clausen  <lrclause@cs.uiuc.edu>
4626         * objects/UML/class.c: Fixed showing of empty stereotypes and got
4627         the string placed correctly.
4629 2002-08-30  Hans Breuer  <hans@breuer.org>
4631         * lib/font.c (dia_font_get_style) : don't shift already
4632         shifted DIA_FONT values.
4634         * lib/libdia.def : updated externals
4636         * app/disp_callbacks.c : on win32 GdkEventKey::string already
4637         is in UTF-8. (Longterm this probably should be handled on the
4638         gtk api level)
4640         * app/command.[hc] app/display.[hc] app/menus.c : add code to 
4641         switch display renderers again. The libart renderer is very 
4642         useful for win9x with it's limited GDI.
4644         * app/render_gdk.c : use g_warning instead of printf which gets
4645         nowhere on win32 (non console apps)
4647         * app/render_libart.c : make it compile without FREETYPE
4649         * objects/makefile.msc plug-ins/makefile.msc : added clean target
4651 2002-08-29  Lars Clausen  <lrclause@cs.uiuc.edu>
4653         * app/render_eps.c (postscript_draw_contour): Debugging statement
4654         that allowed me to figure out font problems.
4656         * lib/widgets.c (dia_font_selector_set_styles): Use radio menu
4657         items for font styles.
4659         * objects/FS/flow-poly.c: 
4660         * objects/FS/flow-ortho.c: 
4661         * objects/FS/flow.c: Further conversion away from GTK dialogs.
4662         Can't set a default label right now:(
4664         * app/interface.c (fill_sheet_wbox): Added initialization for mask.
4666 2002-08-27  Cyrille Chepelov  <cyrille@chepelov.org>
4667         Patch from Andrew Ferrier  <andrew@new-destiny.co.uk>:
4669         * Makefile.am: rules relating to AUTHORS and THANKS
4670         altered.
4671         * AUTHORS: file content changed to more accurately
4672         reflect guideline requirements.
4673         * TODO: warning added about Gnome BTS.
4674         * KNOWN_BUGS: warning added about Gnome BTS.
4676         ---
4678         * AUTHORS: added full copyright info.
4679         * mkauthors-placeholder: (removed) 
4680         
4681 2002-08-27  Lars Clausen  <lrclause@cs.uiuc.edu>
4683         * app/paginate_psprint.c (print_page): Fixed text printing after
4684         tip from Dov Grobgeld.
4686 2002-08-26  Lars Clausen  <lrclause@cs.uiuc.edu>
4688         * app/paginate_psprint.c (print_page): Fixed color of clip
4689         region.
4691 2002-08-26  Cyrille Chepelov  <cyrille@chepelov.org>
4693         * sheets/Makefile.am: enabled intltool-merge translation cache for
4694         sheets.
4696         * Makefile.am:
4697         * mkauthors-placeholder:
4698         * AUTHORS: revived that file (in a placeholder form) so that
4699         automake stops yelling.
4700         (derived from a patch by Andrew Ferrier <andrew@new-destiny.co.uk>) 
4701         (Closes: #91144)
4703         Heh, by the way, thanks Christophe. I feel better now.
4704         
4705 2002-08-25  Christophe Merlet  <christophe@merlet.net>
4707         * app/command.c: Removed invalid multibyte sequence in Chepelov.
4709 2002-08-24  Lars Clausen  <lrclause@cs.uiuc.edu>
4711         * lib/dia_image.c (dia_image_rgb_data): 
4712         Bugfixes in image data retrieval.
4713         
4714         * app/render_eps.c: Refactoring of new_*_renderer.
4716 2002-08-23  Lars Clausen  <lrclause@cs.uiuc.edu>
4718         * app/render_eps.c: 
4719         * lib/dia_image.h: 
4720         * lib/dia_image.c: Support for rowstride != width (odd width images)
4722 2002-08-20  Lars Clausen  <lrclause@cs.uiuc.edu>
4724         * lib/paper.c (get_paper_info): Fixed NULL prefs problem.
4725         * plug-ins/xfig/xfig-import.c: Removed assertion.
4727 2002-08-18  Lars Clausen  <lrclause@cs.uiuc.edu>
4729         * lib/paper.c: Removed app/preferences.h reference.
4731 2002-08-14  Lars Clausen  <lrclause@cs.uiuc.edu>
4733         * plug-ins/svg/svg-import.c: 
4734         * plug-ins/xfig/xfig-import.c: 
4735         * lib/Makefile.am (libdia_a_SOURCES): 
4736         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
4737         * lib/create.h:
4738         * objects/standard/create.h:
4739         * objects/standard/polygon.c (polygon_create): 
4740         * objects/standard/polyline.c (polyline_create): 
4741         * objects/standard/beziergon.c (beziergon_create): 
4742         * objects/standard/bezier.c (bezierline_create): 
4743         Moving create.h into lib.
4745 2002-08-13  Lars Clausen  <lrclause@cs.uiuc.edu>
4747         * app/render_libart.[ch]: Work on PNG font export.  Something's
4748         still fishy with the scaling, I don't get it.
4750         * app/display.c: 
4751         * app/interface.c: Replaced broken zoom combo with entry+menu.
4752         Now works beautifully.  Removed WITHOUT_ZOOM_COMBO stuff.
4754         * app/render_gdk.c (get_text_width): Checks for validity of text.
4755         Temporary help while debugging input -- should only activate on
4756         invalid input.
4758         * objects/SADT/annotation.c: 
4759         * objects/GRAFCET/transition.c: 
4760         * objects/FS/function.c: Removal of gtk.h include.
4762         * objects/UML/state.c (state_load): Warnings about using State
4763         object for initial/final states.
4765         * plug-ins/cgm/cgm.c (init_fonts): Proper Pango interfacing.
4767 2002-08-12  Lars Clausen  <lrclause@cs.uiuc.edu>
4769         * app/render_eps.c: Text rendering that scales correctly.  Too bad
4770         the standard fonts don't get selected right.
4772 2002-08-09  Lars Clausen  <lrclause@cs.uiuc.edu>
4774         * lib/diagramdata.h: 
4775         * lib/paper.c (get_paper_info): 
4776         * lib/paper.h: 
4777         * plug-ins/xfig/xfig-import.c: 
4778         Committed before testing.  I am so embarrased.  This compiles, now
4779         that the includes are in the right order.
4780         
4781         * app/diagram.c (diagram_init): 
4782         * app/app_procs.c (do_convert): 
4783         * app/preferences.h: 
4784         * lib/diagramdata.h: 
4785         * lib/diagramdata.c (new_diagram_data): 
4786         * lib/paper.h: 
4787         * lib/paper.c (get_paper_info): 
4788         Moved new_diagram part of prefs into lib/diagramdata.h.  More
4789         could be done in new_diagram_data() now.
4791 2002-08-08  Lars Clausen  <lrclause@cs.uiuc.edu>
4793         * app/render_eps.c: Better scaling of fonts at non-normal zoom.
4795 2002-08-07  Cyrille Chepelov <cyrille@chepelov.org>
4797         * configure.in: removed silly user-visible comment
4799         (actually, this is a dummy entry before I manually run nemo; for
4800         some dist-upgrade related reason, this morning's run aborted before
4801         the snapshots were created)
4802         
4803 2002-08-06  Lars Clausen  <lrclause@cs.uiuc.edu>
4805         * objects/network/wanlink.c: 
4806         * objects/network/bus.c: 
4807         stdprop compliance!
4809         * objects/custom/custom_object.c: 
4810         * objects/network/wanlink.c: 
4811         * objects/flowchart/parallelogram.c: 
4812         * objects/flowchart/ellipse.c: 
4813         * objects/flowchart/diamond.c: 
4814         * objects/flowchart/box.c: 
4815         Removed GTK defaults stuff.
4816         
4817         * objects/UML/fork.c: 
4818         * objects/UML/object.c: 
4819         * objects/UML/lifeline.c: 
4820         * objects/UML/branch.c: 
4821         * objects/GRAFCET/transition.c: 
4822         * objects/FS/function.c: Removed GTK include.
4824         * objects/FS/flow-ortho.c: 
4825         * objects/FS/flow.c: Made the label behave again.
4826         Also removed GTK defaults stuff.
4828 2002-08-06  Hans Breuer  <hans@breuer.org>
4830         * app/autosave.c : ported to GDir which is the improved
4831         cross platform replacement for <dirent.h>
4833         * app/makefile.msc : build autosave.obj
4835         * app/font.c : some (bad?) code calls 
4836         dia_font_scaled_decent() not only with empty string but 
4837         with NULL. Handle it gracefully.
4839         * lib/paper.c : don't depend on ../app. Although IMO
4840         this shouldn't be allowed on any platform it is only
4841         disabled for win32, where it simply doesn't work
4842         this way
4844         * lib/widget.c (strcase_equal) : pass char* to g_strcasecmp()
4846         * objects/fs/flow.c : conditionalize debug spew, disabled
4847         and 'ported' to use g_print. Simple printf won't work with
4848         standard win32 gui apps, may even crash them.
4850         * plug-ins/makefile.msc : DISABLED svg-import cause it
4851         depends on ../objects/custom. This not only break the
4852         build for all non ELF systems but IMO also isn't acceptable
4853         from a design point of view. See dia-list mail on subject.
4855         * plug-ins/python/makefile.msc :
4856           plug-ins/python/python.c : remove all references to dirent    
4858 2002-08-05  Cyrille Chepelov  <cyrille@chepelov.org>
4860         * configure.in: added ro to ALL_LINGUAS
4862         * po-checktrans:
4863         * po-checktrans.py:
4864         * ../translation-graphs/transgraph.py: added support for fuzzy
4865         translations. Enlarged the graphs.
4867 2002-08-05  Lars Clausen  <lrclause@cs.uiuc.edu>
4869         * app/disp_callbacks.c (ddisplay_canvas_events): Now translates
4870         key events according to locale.  No clue if this works for
4871         advanced stuff.
4873 2002-08-04  Lars Clausen  <lrclause@cs.uiuc.edu>
4875         * lib/text.c: Various UTF8 related fixes, in particular in
4876         deleting.  Text_insert_char is fine, far as I can tell.
4878         * app/interface.c (create_display_shell): 
4879         * app/commands.c: Now uses gtk_clipboard functions, for they are
4880         much simpler.  Also handles Win32 clipboard.  Non-ascii chars
4881         don't seem to get handled correctly by text_insert_char in
4882         lib/text.c.
4883         
4884         * app/commands.c (received_selection_handler): Got utf8 handling
4885         on paste, and individual char handling out of commands.c.  Pasting
4886         non-ASCII is still broken, somehow.  It's all lib/text.c's fault.
4888         * lib/message.c (gtk_message_internal): Message dialog re-shown
4889         when new message appears.  Maybe it should even move to top?
4891         * lib/font.c: 
4892         * lib/widgets.c: 
4893         * app/render_eps.c (create_eps_renderer): Fonts now lowercase
4894         (again) and case-insensitive.
4896         * objects/GRAFCET/condition.c (CONDITION_FONT): Changed to
4897         BASIC_SANS_FONT. 
4899 2002-08-02  Lars Clausen  <lrclause@cs.uiuc.edu>
4901         * app/commands.c (edit_cut_text_callback): 
4902         * lib/text.c (text_delete_all): Now functioning undo for text cut.
4903         
4904         * app/commands.c (edit_cut_text_callback): Now removes text.
4905         Undo is broken, though.
4907 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
4909         * app/diagram.c (diagram_update_menu_sensitivity): 
4910         Making cut_text active.
4911         
4912         * app/commands.h: 
4913         * app/commands.c: Using PROP_TYPE_TEXT to find text to copy to
4914         clipboard.  Also removed AA callback.   
4916 2002-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
4918         * objects/chronogram/chronoref.c: 
4919         * objects/chronogram/chronoline.c: 
4920         * objects/SADT/annotation.c: 
4921         * objects/SADT/arrow.c: 
4922         * objects/SADT/box.c: 
4923         * objects/GRAFCET/vergent.c: 
4924         * objects/GRAFCET/vector.c: 
4925         * objects/GRAFCET/step.c: 
4926         * objects/GRAFCET/condition.c: 
4927         * objects/GRAFCET/action.c: 
4928         * objects/ER/participation.c: 
4929         * objects/ER/relationship.c: 
4930         * objects/ER/entity.c: 
4931         * objects/ER/attribute.c: 
4932         Removing unnecessary GTK references.
4934 2002-07-31  Lars Clausen  <lrclause@cs.uiuc.edu>
4936         * objects/standard/image.c: 
4937         * objects/standard/textobj.c: 
4938         * objects/standard/ellipse.c: 
4939         * objects/standard/polygon.c: 
4940         * objects/standard/beziergon.c:
4941         * objects/standard/box.c: 
4942         Making default default properties.
4943         
4944         * objects/standard/image.c: 
4945         * objects/standard/arc.c: 
4946         * objects/standard/box.c: 
4947         * objects/standard/zigzagline.c: 
4948         * objects/standard/polyline.c: 
4949         * objects/standard/line.c: 
4950         * objects/standard/ellipse.c: 
4951         * objects/standard/polygon.c: 
4952         * objects/standard/beziergon.c: Removing vestigal GTK stuff.
4954         * lib/object_defaults.c (dia_object_default_create): 
4955         * lib/proplist.c: 
4956         * lib/properties.h: 
4957         * lib/object.c (object_copy_using_properties): 
4958         * lib/propdialogs.c: 
4959         * lib/propinternals.h: 
4960         * lib/propobject.c (object_create_props_dialog)
4961         (object_copy_props): 
4962         Removing the standard (toolbox) properties from defaults dialogs.
4964 2002-07-30  Lars Clausen  <lrclause@cs.uiuc.edu>
4966         * lib/font.c (dia_font_scaled_string_width) 
4967         (dia_font_scaled_ascent, dia_font_scaled_descent): Account for
4968         zoom factor.
4969         * lib/text.c (text_calc_boundingbox): Take descent into account.
4971         * objects/standard/bezier.c (bezierline_draw): 
4972         * lib/render.c (draw_bezier_with_arrows): 
4973         Better arrow drawing for beziers.  Doesn't change the mouse-click
4974         area either.
4976         * lib/arrows.h: Some const-ness.
4978         * lib/arrows.c (calculate_arrow_point): Initialize zero-length moves.
4980         * lib/render.c (draw_arc_with_arrows): 
4981         * objects/standard/arc.c (arc_draw): Better arrow drawing for
4982         arcs.  Doesn't change the mouse-click area yet.
4984         * app/menus.c: Forgotten fix:  Redraw menu item for non-Gnome.
4986         * lib/render.h: 
4987         * lib/render.c: 
4988         Arc arrow prework.
4990 2002-07-29  Lars Clausen  <lrclause@cs.uiuc.edu>
4992         * app/group.c (group_draw): Forgotten commit: Groups to draw as
4993         objects (using default routines).
4995         * app/object_ops.h: 
4996         * app/diagram.h: 
4997         * lib/diagramdata.h: 
4998         * lib/diagramdata.c (layer_find_closest_connectionpoint): 
4999         * objects/standard/zigzagline.c (zigzagline_move_handle): 
5000         * app/diagram.c (diagram_find_closest_connectionpoint): 
5001         * plug-ins/python/pydia-diagram.c
5002         (PyDiaDiagram_FindClosestConnectionPoint):
5003         * app/object_ops.c (object_connect_display) 
5004         (object_find_connectpoint_display) 
5005         * app/create_object.c (create_object_button_press) 
5006         (create_object_motion): 
5007         * app/modify_tool.c (modify_motion): 
5008         Adding object param to allow connectionpoint and handle coinciding.
5010         * objects/standard/zigzagline.c (zigzagline_check_orientation): 
5011         Fixing minor problems.
5013         * objects/standard/ellipse.c (ellipse_update_data): 
5014         Added direction hints.
5016         * lib/diagramdata.c: 
5017         * lib/object.c: 
5018         * lib/object.h: 
5019         * lib/diagramdata.h: 
5020         * objects/standard/zigzagline.c: 
5021         First working example of zigzagline hints, currently only between
5022         Box and Zigzagline.
5024 2002-07-27  Steffen Macke <sdteffen@web.de>
5026         * plug-ins/svg/render_svg.c: added support for rounded
5027         rectangles (fixes #69053 if compile with
5028         -DNEW_RENDER_OPS)
5029         * object/custom/shape_info.[c|h]: made parse_style and
5030         parse_path accessible for svg plug-in
5031         * plug-ins/svg/Makefile.am:
5032         * plug-ins/svg/svg.c:
5033         * plug-ins/svg/svg-import.c(new): added SVG import filter
5035 2002-07-27  Lars Clausen  <lrclause@cs.uiuc.edu>
5037         * objects/standard/box.c: 
5038         * objects/standard/zigzagline.c (zigzagline_move): 
5039         More work on zigzagline hints.
5041 2002-07-26  Lars Clausen  <lrclause@cs.uiuc.edu>
5042         * lib/connectionpoint.h: 
5043         Hints for zigzaglines.
5045         * app/properties.c (properties_show): 
5046         * app/defaults.c (defaults_show): 
5047         * lib/properties.h: 
5048         * lib/propobject.c (object_create_props_dialog): 
5049         * lib/object.h: 
5050         * objects/FS/flow-poly.c: 
5051         * objects/network/wanlink.c: 
5052         * objects/network/bus.c: 
5053         * objects/UML/class.h: 
5054         * objects/UML/class_dialog.c: 
5055         * objects/UML/association.c: 
5056         Start of removing toolbox props from props dialogs.
5057         
5058         * lib/widgets.c: 
5059         * lib/arrows.h: 
5060         * app/lineprops_area.c (dia_arrow_chooser_new): 
5061         * lib/arrows.c: Two new arrows: Concave, filled and blanked.
5063         * app/create_object.c: 
5064         * app/modify_tool.c: 
5065         * app/cursor.h: 
5066         * app/cursor.c: 
5067         More cursor change.
5069 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
5071         * app/preferences.c: 
5072         * lib/paper.c: 
5073         * app/diapagelayout.c: 
5074         New prefs selector kind PREF_CHOICE chooses between a list of
5075         strings.  Used for picking default paper.
5076         
5077         * app/preferences.c (prefs_data): 
5078         * lib/paper.c (get_paper_info): Added prefs setting for
5079         is_portrait.
5081         * lib/render.c (draw_polyline_with_arrows): Handles degenerate
5082         line segments at the ends (bug #86603).
5084 2002-07-25  Lars Clausen  <lrclause@cs.uiuc.edu>
5086         * objects/standard/zigzagline.c (zigzagline_copy): Fix for bug
5087         #60324: Now calls update_data after copy.
5089         * app/interface.c (fill_sheet_wbox): Better fix for bug #88601:
5090         Now doesn't steal selection from non-object tools.
5092 2002-07-24  Lars Clausen  <lrclause@cs.uiuc.edu>
5094         * app/commands.c (help_manual_callback): Uses BROWSER environment
5095         variable when available.
5097 2002-07-23  Lars Clausen  <lrclause@cs.uiuc.edu>
5099         * app/interface.c (fill_sheet_wbox): Fix for bug #88601: Select an
5100         object from the new sheet when changing.
5102         * app/app_procs.c (app_init): Uses more standard size icon, from
5103         patch #56433.  Keeping old icon as dia_gnome_icon_large.png.
5105 2002-07-22  Lars Clausen  <lrclause@cs.uiuc.edu>
5107         * objects/UML/implements.c (implements_update_data): 
5108         * objects/UML/realizes.c (realizes_update_data): 
5109         * objects/UML/dependency.c (dependency_update_data): 
5110         Test for null strings before calling on ascent.
5112         * objects/UML/realizes.c (realizes_draw): 
5113         * objects/UML/message.c (message_draw): 
5114         * objects/UML/generalization.c (generalization_draw): 
5115         * objects/UML/dependency.c (dependency_draw) 
5116         * objects/UML/constraint.c (constraint_draw): 
5117         * objects/GRAFCET/condition.c (condition_draw): 
5118         * objects/UML/association.c (association_draw): 
5119         * objects/FS/flow-ortho.c (orthflow_draw): 
5120         * objects/FS/flow.c (flow_draw): Change to use
5121         draw_foo_with_arrows.  Pretty pretty arrows.  Yay me!
5123         * lib/render.h: 
5124         * lib/arrows.c (calculate_arrow_point): 
5125         * lib/arrows.h: 
5126         * lib/render.c: 
5127         * objects/standard/zigzagline.c:
5128         * objects/standard/polyline.c:
5129         * objects/standard/line.c: Work towards better arrow drawing.
5131 2002-07-21  Lars Clausen  <lrclause@cs.uiuc.edu>
5133         * objects/UML/state.c: Starting phase-out of State object as
5134         initial/final state (which never worked right).
5136         * app/app_procs.c (app_init): --version command line option for
5137         non-Gnome.
5139         * configure.in: Slight improvement in GETTEXT_PACKAGE handling.
5141 2002-07-19  Lars Clausen  <lrclause@cs.uiuc.edu>
5143         * app/render_eps.c: Removed debugging info.
5145         * lib/font.c (dia_font_scaled_ascent, dia_font_scaled_descent):
5146         Kludge to make ascent and descent work for empty strings.  Won't
5147         work when using non-ASCII fonts.  Better would be to get a
5148         PangoFont and ask directly.
5150         * configure.in: Simple define of GETTEXT_PACKAGE, and some updates
5151         of the init stuff.
5153         * app/render_gdk.c (get_text_width): Fixed use of wrong string.
5154         Cursor now better.
5156 2002-07-18  Lars Clausen  <lrclause@cs.uiuc.edu>
5158         * plug-ins/xfig/xfig-export.c: First use of draw_object render
5159         function: All shapes are now groups in XFig export.
5161         * lib/diagramdata.c (normal_render): 
5162         * lib/render.c: 
5163         * lib/render.h: 
5164         * app/display.c (ddisplay_obj_render): 
5165         New render function for drawing objects, allows renderers to group
5166         or otherwise specially handle objects.  We may want to reconsider
5167         calling it in app/display.c, as we 'know' the object draw function
5168         is the default one there.
5170         * lib/Makefile.am: Removed extra \ that broke stuff.
5172         * plug-ins/xfig/xfig-import.c: 
5173         Spline import for xfig.  Not perfect.
5175         * objects/standard/create.h: 
5176         * objects/standard/bezier.c (bezierline_create): 
5177         * lib/bezier_conn.c: 
5178         * lib/beziershape.c (beziershape_set_points): 
5179         * lib/bezier_conn.h: 
5180         * lib/beziershape.h: 
5181         Support for creating beziers non-interactively.
5183 2002-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
5185         * plug-ins/xfig/xfig-import.c: Support for polygons and
5186         polylines.  Special warning handling system removed.
5188         * lib/message.c (gtk_message_internal): Fixed bug involving
5189         closing message window and then getting repeated message.
5191         * Makefile.am: 
5192         * autogen.sh: 
5193         * configure.in (GETTEXT_PACKAGE): 
5194         Update based on bug #88199.  Hopefully this doesn't break too much
5195         intl stuff.
5197         * dia.desktop.in (_Comment): Changed after suggestion from
5198         calum.benson@ireland.sun.com (bug 88345)
5200         * app/sheets_dialog_callbacks.c: Fix from Dolores Alia de Saravia
5201         <loli@unsa.edu.ar> that makes user/system distinction better.
5203 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
5205         * app/render_libart.c: Got the context right, removed crashes.
5207         * app/commands.c: 
5208         * app/commands.h: 
5209         Redraw menu item.
5211         * app/display.c: 
5212         * app/display.h: 
5213         * app/interface.c: 
5214         * app/menus.c: 
5215         Remove libart #defines from most places (still around for png export).
5217         * app/render_libart.h: 
5218         * app/render_libart.c: 
5219         * configure.in (HAVE_LIBART): 
5220         Starting on update of libart stuff for png export (without X).
5222         * app/autosave.h (autosave_check_autosave): 
5223         * app/load_save.h: 
5224         * app/diagram.h: 
5225         * app/Makefile.am (dia_core_files): 
5226         * app/load_save.c: 
5227         * app/diagram.c (diagram_set_modified): 
5228         * app/autosave.c: 
5229         * app/app_procs.c (app_init): 
5230         Autosave support.  No automatic restore yet.
5232 2002-07-16  Lars Clausen  <lrclause@cs.uiuc.edu>
5234         * app/render_eps.c (create_eps_renderer): #ifdef'd a scale
5235         assignment. 
5236         
5237 2002-07-15  Lars Clausen  <lrclause@cs.uiuc.edu>
5239         * app/interface.c (fill_sheet_menu): Tear-off for sheets menu.
5241 2002-07-15  Andrew Ferrier  <andrew@new-destiny.co.uk>
5243         * Fix for 'make dist' etc. --- problem caused by
5244         previous AUTHORS patch.
5246 2002-07-14  Lars Clausen  <lrclause@cs.uiuc.edu>
5248         * plug-ins/cgm/cgm.c (init_fonts): Changed pango_font_map to
5249         pango_context. 
5250         (set_font): NULL check.
5251         
5252 2002-07-12  Lars Clausen  <lrclause@cs.uiuc.edu>
5254         * app/disp_callbacks.c: 
5255         * lib/diamenu.h: 
5256         Addition to the object menus allows check menu items.
5258 2002-07-11  Andrew Ferrier  <andrew@new-destiny.co.uk>
5260         * HACKING: completely changed to bring up-to-date.
5261         * AUTHORS: file needs REMOVING from CVS as now
5262           dynamically generated.
5263         * app/authors.h: split into subcategories for original
5264           authors, maintainers, etc.
5265         * app/app_procs.c: --credits rewritten to support new
5266           app/authors.h
5267         * app/commands.c: no changes to about box code, comment
5268           added though.
5269         * Makefile.am: added rule for AUTHORS. I'm still
5270           inexperienced with automake, it seems to work, but
5271           for AUTHORS-related bugs, look at this change first.
5273 2002-07-10  Lars Clausen  <lrclause@cs.uiuc.edu>
5275         * plug-ins/Makefile.am (SUBDIRS): Just realized why my hack didn't
5276         work.  Back to including xslt dir always.
5278         * objects/UML/uml.c: 
5279         * objects/UML/class.h: 
5280         * objects/UML/class_dialog.c: 
5281         * objects/UML/class.c: Patch from
5282         <mattam@netcourrier.com>:  Adds comment visibility switch, also
5283         fixes various bugs.
5285         Big patch from Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
5286         for state/fork/activity stuff.
5287         * objects/UML/state.c: Removed old draw_rounded_rectangle code.
5288         * objects/UML/Makefile.am:
5289         * objects/UML/uml.c:
5290         * sheets/UML.sheet.in: Added new objects activity, fork,
5291           state_term.
5292         * objects/UML/pixmaps/state_term.xpm:
5293         * objects/UML/state_term.c: New, only initial/final states.
5294         * objects/UML/pixmaps/activity.xpm:
5295         * objects/UML/activity.c: New, activity state.
5296         * objects/UML/pixmaps/fork.xpm:
5297         * objects/UML/fork.c: New, fork/join bar.
5298         * objects/UML/pixmaps/state.xpm: state icon.
5300         
5301         * doc/diagram.dtd: 
5302         * doc/shape.dtd: Patch from "Dolores Alia de Saravia"
5303         <loli@unsa.edu.ar> to add dia: to diagram.dtd elements and add
5304         svg:text to shape.
5306 2002-07-07  Lars Clausen  <lrclause@cs.uiuc.edu>
5308         * plug-ins/Makefile.am (SUBDIRS): Made the XSLT dir depend on
5309         detecting XSLT
5311         * app/Makefile.am: Commented out the diaconv parts while it's not
5312         used anyway.  To come back later.
5314         * configure.in (HAVE_FREETYPE): 
5315         * app/app_procs.c: 
5316         * app/render_eps.h: 
5317         * app/render_eps.c: Support for printing with freetype, better
5318         encapsulated now.  Renders the text nicely, but ignores font
5319         setting.  Requires pangoft2 to get the font outline, but non-text
5320         objects can still be rendered without it.
5322         * app/commands.h: 
5323         * app/commands.c (objects_place_up_callback) 
5324         (objects_place_down_callback): 
5325         * app/diagram.h: 
5326         * app/diagram.c (diagram_place_down_selected) 
5327         (diagram_place_up_selected): Starting support for moving objects
5328         one level up/down.
5330         * app/menus.c: Removed character/numeral shortcuts.
5332 2002-07-06  Hans Breuer  <hans@breuer.org>
5334         * makefile.am app/makefile.am lib/makefile.am
5335           objects/makefile.am plug-ins/makefile.am 
5336           plug-ins/python/makefile.am :
5337         added required files for win32 build to EXTRA_DIST
5339         * app/paginate_psprint.c app/render_eps.c 
5340           app/app_procs.c :
5341         wrap (E)PS Renderer into HAVE_FREETYPE, no FreeType
5342         on Pango as currently is on win32 => no PostScript 
5343         anymore.
5345         * lib/widgets.c : undef GTK_DISABLE_DEPRECATED;
5346         use '/* noop */;' for empty case labels; replace
5347         debug spew printf with g_print which is guaranteed 
5348         to work on win32, too.
5350         * lib/font.c (dia_pfd_set_weight) : set 'intermediate' values 
5351         for DIA_FONT_MEDIUM and DIA_FONT_DEMIBOLD as explicit allowed 
5352         in the pango_font_description_set_weight() api documentation
5353         Take care for them in dia_font_get_style() too.
5355         * lib/font.[hc] lib/widget.c objects/custom/shape_info.c
5356           plug-ins/shape/shape-export.c plug-ins/svg/render_svg.c :
5357         rename Obliquity to Slant which appears to be the usual name,
5358         also rename dia_font_get_style_string -> dia_font_get_slant_string
5360         * plug-ins/wmf/wmf.cpp : finally ported to new font api
5362         * lib/prop_attr.c app/render_gdk.c : dont *_unref if NULL
5364         * objects/uml/association.c class.c large_package.c message.c
5365         if g_free() is used g_strdup needs to be used.
5366         * objects/custom/shape_info.c
5367           objects/ER/attribute.c entity.c
5368           objects/standard/image.c 
5369           app/sheets_dialog_callbacks.c : more strdup cleaning
5371 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
5373         * app/render_eps.c: Non-crashing printing (made the right
5374         context).  Font output still fscked up.
5376 2002-07-05  Andrew Ferrier  <andrew@new-destiny.co.uk>
5378         * app/authors.h: Added file --- now master
5379         location for contributors data.
5380         * app/app_procs.c: Added --credits option.
5381         * app/commands.c: Modified about box to use
5382         app/authors.h.
5384 2002-07-05  Lars Clausen  <lrclause@cs.uiuc.edu>
5386         * app/render_eps.c: First stab at EPS rendering using the contour
5387         code from PAPS.  Crashes.
5389 2002-06-30  Lars Clausen  <lrclause@cs.uiuc.edu>
5391         * app/recent_files.c (recent_file_history_remove): 
5392         Fixed call to g_list_delete_link discarding return value.
5393         
5394         * lib/widgets.c (dia_font_selector_set_styles): 
5395         * lib/font.h (DiaFontWeight): 
5396         * lib/font.c (dia_font_get_style): Revert to DIA_FONT_NORMAL==0
5398 2002-06-30  Cyrille Chepelov  <cyrille@chepelov.org>
5400         Contribution from Alan Horkan <horkana@tcd.ie>: 
5401         
5402         * shapes/Assorted/*
5403         * sheets/Assorted.sheet:
5404         A set of 40 assorted geometric shapes.
5406         * sheets/Assorted.sheet.in:
5407         * sheets/Makefile.am
5408         * shapes/Assorted/Makefile.am:
5409         * shapes/Makefile.am:
5410         * po/POTFILES.in:
5411         * configure.in:
5412         Done the integration job of Alan's shapes. (Translators: have fun!)
5414         * po/dia.pot: refreshed the main potfile.
5415         
5416 2002-06-28  Cyrille Chepelov  <cyrille@chepelov.org>
5418         Patch from Tim Ellis <Tim.Ellis@gamet.com>:
5419         
5420         * objects/UML/class.[ch]:
5421         * objects/UML/class_dialog.c:
5422         changed the number of connection points from a hardcoded value of
5423         8 to a #defined constant
5425         (I changed the constant back from 20 to 8, until we better know
5426         how we'll handle more connection points on the UML class in the
5427         future -- but Tim's patch is a welcome clean-up).
5429 2002-06-26  Cyrille Chepelov  <cyrille@chepelov.org>
5431         * shapes/MSE/demultiplexer.xpm:
5432         * shapes/MSE/node_center.xpm:
5433         * shapes/MSE/multiplexer.xpm:
5434         * shapes/MSE/tacsat.xpm: updated MSE icons (transparency) by Alan
5435         Horkan <horkana@tcd.ie>
5437 2002-06-25  Lars Clausen  <lrclause@cs.uiuc.edu>
5439         * lib/widgets.c: Total rehash of font selector, with font dialog
5440         option, expanding list (not LRU yet), and stuff.
5442 2002-06-25  Cyrille Chépélov  <cyrille@chepelov.org>
5444         * lib/font.h:
5445         * lib/font.c: 
5446         Added a set of new setter/getters, some of them more specially for
5447         the SVG-ish I/O.
5448         
5449         * plug-ins/shape/shape-export.c: (new_shape_renderer),
5450         (destroy_shape_renderer), (set_font), (draw_string):
5451         * plug-ins/svg/render_svg.c: (new_svg_renderer),
5452         (destroy_svg_renderer), (set_font), (draw_string):
5454         Actually exported the font face, style, weight and size (sodipodi
5455         agrees with dia on how a small sample should look like (a sample
5456         0.90 would not even display anyways). Yay !)
5458         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
5460         * plug-ins/xslt/Makefile.am: repaired the mess Cyrille put there.
5462         (end of ChangeLog-less patch)
5464         * objects/custom/shape_info.c (parse_style): now understands the
5465         font-style and font-weight attributes as well. Does not use
5466         anymore dia_font_new_from_legacy_name().
5467         
5468 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
5470         * objects/standard/textobj.c: Now uses stdprops for defaults.
5472         * lib/font.h: Changed order of DiaFontWeight entries.  Sorry.
5473         * lib/font.c (dia_font_get_style): Style now linear and conversion
5474         simple. 
5476         * lib/widgets.c (dia_font_selector_set_styles): Fixed the style
5477         selector. 
5479 2002-06-24  Cyrille Chepelov  <cyrille@chepelov.org>
5481         * plug-ins/dxf/dxf-import.c:
5482         using dia_font_new_from_style()
5484         Patch from Matthieu Sozeau  <mattam@netcourrier.com>:
5486         * objects/UML/class.[ch]: Added a comment field to class
5487         * objects/UML/uml.[ch]: Added a comment field to attributes,
5488         operations and parameters.
5489         * objects/UML/class_dialog.c: Added code for the new comment
5490         fields.
5491         * plug-ins/xslt/*.xsl: Added some code to handle comments.
5492         * plug-ins/xslt/xslt*.c: Clean up based on Cyrille comments.
5493         Added a $directory parameter for stylesheets so the output is 
5494         in the good place (not in the $PWD).
5496         (end of Patch)
5498         * AUTHORS: added contributors, updated maintainers. Removed the
5499         specific areas of action.
5501         * Patch from Andrew Ferrier <andrew@new-destiny.co.uk>, derived
5502         from a patch by Xing Wang <quixon@gnuchina.org>:
5504         * app/commands.c: help_about_callback now supports
5505         new-style GNOME about box as well as old GTK style. 
5506         code also tidied (Closes: #85726)
5508         (end of Patch)
5510         * app/commands.c: fixed the copyright (it's not all FSF), and
5511         maintainers. Synced contributors list with AUTHORS.
5512                 
5513 2002-06-24  Lars Clausen  <lrclause@cs.uiuc.edu>
5515         * lib/message.c: More work on repeating messages, now with
5516         togglable view.
5518 2002-06-24  Hans Breuer  <hans@breuer.org>
5520         * lib/widget.c : some more bits in place, at least
5521         it does something useful instead of crashing. Much
5522         better - but not all ok :-)
5524 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
5526         * lib/message.c (gtk_message_internal): First stab at repeating
5527         message dialog.
5529 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
5531         * objects/FS/*.c:
5532         * objects/GRAFCET/*.c:
5533         * objects/SADT/*.c:
5534         * objects/UML/association.c: (one instance forgotten)
5535         * objects/UML/large_package.c: 
5536         * objects/standard/textobj.c:
5537         * lib/attributes.c:
5538         * lib/text.c:
5539         using dia_font_new_from_style()
5541 2002-06-23  Hans Breuer  <hans@breuer.org>
5543         * lib/font.c : giving some love to
5544         dia_font_new_from_legacy_name() that is making
5545         import of old files as painless as possible and
5546         provide an almost exact match where possible.
5547         It does not yet fully work because it interfers
5548         with the Style to DiaStyle conversion which comes
5549         next ...
5551         [Changing these files is only allowed with Dia-0.90]
5552         * broken-files/fonts-0.90.dia : including the
5553         common hard-coded fonts from Dia-0.90. It also
5554         has drawn bounding-boxes for win32 as they were calculated
5555         from the former version (they were all too big).
5556         * broken-files/fonts-0.90-full.dia : all hardcoded
5557         fonts including the asian versions. On my machine
5558         this gives _a lot_ complaining about missing fonts
5559         and a finally a broken file display. Anyone having
5560         all these fonts ?
5561         
5562 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
5564         * objects/chronogram/*.c: 
5565         * objects/custom/custom_object.c:
5566         * objects/ER/*.c:
5567         using dia_font_new_from_style()
5569 2002-06-23  Lars Clausen  <lrclause@cs.uiuc.edu>
5571         * lib/widgets.c (dia_font_selector_set_styles): Improvements to
5572         font selector (stability, insensitivity).
5574         * lib/font.c (dia_font_scaled_build_layout): Removed unworkable
5575         stretching scheme for tweaking, and made scaling scheme faster
5576         (but less precise).
5577         (dia_font_dia_style_to_pango): Oops, % != /.
5579 2002-06-23  Cyrille Chepelov  <cyrille@chepelov.org>
5581         
5582         * patch from Matthieu Sozeau  <mattam@netcourrier.com>:
5584         * plug-ins/xslt : Added an XSLT plugin to export dia files using
5585         XML Stylesheets. The plug-in requires DIA_PLUGIN_PATH to be set.
5586         It includes a small config file to tell it what stylesheets to use.
5588         (end of patch)
5589         
5590         * plug-ins/xslt/xsltdialog.c: modified the dialog to be more 
5591         GTK2.0/HIG compliant (the labels could be slightly more verbose,
5592         perhaps). Added back a couple forgotten _(). Removed //-style
5593         comments.
5594         
5595 2002-06-23  Hans Breuer  <hans@breuer.org>
5597         * lib/plug-ins.c
5598         (dia_plugin_get_name) : don't crash plugin_manager
5599         on name being NULL 
5600         (dia_plugin_load) : reuse the description field to
5601         store the error string if loading fails.
5603         * lib/font.[hc] : starting to beautify the new
5604         font api: proper namespacing, adding convenience
5605         functions like dia_font_new_from_style(), ...
5607         * objects/uml/*.c : use the new convenience functions.
5609         [Next thing I plan to do is changing the other font
5610          functions to take DiaStyle and make Style and 
5611          BASIC_*_FONT vanish. As well as giving some love to
5612          dia_font_new_from_legacy_name().
5613          If anyone want's to help on converting the other
5614          objects to the new api during that, I would highly 
5615          appreciate it.]
5617 2002-06-23  Hans Breuer  <hans@breuer.org>
5619         * lib/font.c : made it compile and small indent fixes.
5620         Is there a code-has-no-effect-so-needs-not-be-valid
5621         with GCC?       
5623         * lib/widgets.c : use g_strcasecmp
5625 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
5627         * lib/font.c: 
5628         * lib/font.h: 
5629         * lib/widgets.c: Font names sorted, style selector widget
5630         reappeared.  Doesn't select the old style yet.
5632 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
5634         * lib/font.c: one who expects a text's font to be changed shall 
5635         actually request the attributes to apply to the whole range of the
5636         said text... D'oh! 
5638         * lib/font.c: extents computation was wrong.
5640         * lib/font.c: dia_font_get_legacy_name(); g_strconcat works better
5641         if a last NULL parameter is added...
5643         * lib/font.c: extents computation was completely wrong. This looks
5644         much better this time.
5646         * objects/UML/class.c: fixed the various strings positions.
5648         * lib/font.h, and **/*.[ch] (all callers of dia_font_new): used
5649         macros to get the hardcoded base fonts.
5651         * objects/ER/relationship.c: wasn't converted to DiaFont*
5652         
5653 2002-06-22  Hans Breuer  <hans@breuer.org>
5655         * lib/widget.c : dont use backend specific functions
5656         to get on the font_families. Including it would mean
5657         including <windows.h> which breaks due to namespace
5658         pollutions ...
5660         * lib/libdia.def : updated externals
5662         * app/makefile.msc : temporary disabled: -DHAVE_LIBART
5664         * lib/font.c : added empty dia_font_init_instance function,
5665         reformatting of dia_fon_unref to allow to set breakpoint,
5666         dia_fon_build_layout() : dont crash on string==NULL
5668         * lib/text.c (text_set_attributes) : don't unref the wrong font
5670         * lib/widgets.c (dia_fon_selector_set_font) : our hashtable
5671         stores lowercased font names, but dia_font_get_family()
5672         returns mixed case      
5674 2002-06-22  Lars Clausen  <lrclause@cs.uiuc.edu>
5676         * lib/widgets.c: 
5677         * app/render_gdk.c: Patch from Hans Breuer.
5679         * app/Makefile.am (dia_core_files): diaconv commented out for now.
5680         
5681 2002-06-22  Cyrille Chepelov  <cyrille@chepelov.org>
5683         * lib/all files touched yesterday: took into account some of Hans
5684         Breuer's remarks in
5685         http://mail.gnome.org/archives/dia-list/2002-June/msg00257.html
5687         * objects/chronogram/*: 
5688         * objects/custom/*:
5689         * objects/ER/*:
5690         * objects/flowchart/*:
5691         * objects/FS/*:
5692         * objects/GRAFCET/*:
5693         * objects/SADT/*:
5694         * objects/standard/textobj.?:
5695         * objects/UML/*:
5696         converted to the new DiaFonts.
5698         * plug-ins/cgm/*:
5699         * plug-ins/pstricks/*:
5700         * plug-ins/wpg/*:
5701         * plug-ins/dxf/*:
5702         * plug-ins/xfig/*:
5703         Made minimalistic conversions so that they'd at least compile.
5705         * app/render_gdk.c:
5706         * app/render_pixmap.c:
5707         Converted to the new DiaFonts.
5709         * app/app_procs.c
5710         * app/diaconv.c:
5711         * app/render_eps.c:
5712         made the minimal changes so that it would at least build.       
5714         *** At this point, the thing builds on my machine, but segfaults
5715         right away. ***
5716         
5717 2002-06-21  Cyrille Chepelov  <cyrille@chepelov.org>
5719         * configure.in: removed the backend-specific pango pkg_modules
5720         (trivial to add back if needed, when actually needed)
5722         * app/Makefile.am:
5723         * app/*gnomeprint.[ch]: (removed): removed the GNOME-print
5724         renderer. The APIs will have completely changed when we get around
5725         to redo a renderer for it, anyways.
5727         * font.[ch]: rewrote everything from scratch, with a Pango
5728         implementation. Normally, only backend-neutral things should go in
5729         there.
5731         **WARNING**: new rules for managing DiaFont* pointers: these are
5732         reference-counted GObjects. One >must< diafont_ref() and
5733         diafont_unref() as appropriate. I wish I could overload operator=()...
5735         lib/plug-ins.h: bumped up the plug-in API.
5736         
5737         lib/attributes.c: 
5738         lib/dia_xml.c: 
5739         lib/dummy_dep.h
5740         lib/object_defaults:
5741         lib/prop_attr.c: Adapted to the new DiaFont API. This'll change
5742         again tomorrow with GObject.
5743         
5744         lib/widgets.c: Adapted to the new DiaFont API and to Pango.
5746         **** The rest of the tree should be updated as well ****
5747         
5748 2002-06-21  Lars Clausen  <lrclause@cs.uiuc.edu>
5750         * app/render_gdk.h: 
5751         * app/render_gdk.c: 
5752         * app/render_pixmap.c: 
5753         * app/render_pixmap.h: 
5754         * app/render_libart.h: 
5755         * app/render_libart.c: 
5756         * lib/font.h: 
5757         * lib/font.c: Removed freetype stuff (still around in
5758         lib/widgets.c 'cause we might want the font selector widget).
5760 2002-06-20  Cyrille Chepelov  <cyrille@chepelov.org>
5762         * shapes/network/laptop.(xml|shape):
5763         * sheets/network.sheet.in: added Laptop (notebook) PC shape,
5764         contributed by Alan Horkan <horkana@tcd.ie>. (Closes: #82643)
5766 2002-06-17  Hans Breuer  <hans@breuer.org>
5768         * lib/object_defaults.c : #include <libxml/tree.h> not
5769         <tree.h> pointed out by Xing Wang
5771 2002-06-17  Lars Clausen  <lrclause@cs.uiuc.edu>
5773         * lib/color.h (GDK_COLOR_TO_DIA, DIA_COLOR_TO_GDK): 
5774         * lib/widgets.c: 
5775         * app/color_area.c: Update to
5776         gtk_color_selection_*_current_color() fixed bad crash issues, plus
5777         updated color conversions.
5779         * sheets/ER/weakentity.xpm: Accepted patch from
5780         quixon@gnuchina.org to make icon match actual appearance.
5782         * app/recent_files.c: Fixed GNOME recent file problem, thanks to
5783         quixon@gnuchina.org.
5785 2002-06-16  Hans Breuer  <hans@breuer.org>
5787         * lib/plug-in.[hc] : make PlugInInfo opaque again in the 
5788         good tradition of information hiding. Add new function
5789         dia_plugin_get_symbol()
5790         * app/sheets.c app/sheets_dialog_callbacks.c : use it
5792         * app/sheets.c : stop complaining about object_get_type() 
5793         returning NULL. This is a consequence of e.g. disabling 
5794         plug-ins at runtime _and_ it was and is gracefully handled. 
5795         Spitting out g_warning for it isn't appropriate. 
5797         * lib/object.[ch] : removed dead code
5799         * app/plugin-mangager.c : almost complete rewrite for gtk2
5800         using GtkListStore/GtkTreeView
5802         * lib/libdia.def : updated externals
5804         * todo.gtk2 : updated, that is removed already done steps
5806 2002-06-15  Hans Breuer  <hans@breuer.org>
5808         * objects/uml/class_dialog.c : clean some left-over
5809         utf8-mess, return 0 from "focus_out_event" handlers
5810         to avoid asserting in gtk (#78305). Reconstruct 
5811         stereotype/NULL behaviour to avoid rendering empty
5812         stereotypes on classes and member functions
5814         [#56109 - Provide object defaults for StdProp objects,
5815          some remaining issues are discussed in bugzilla]
5817         * lib/object_defaults.c : (new file) manage default properties 
5818         of dia objects. The serialization is done with standard
5819         object methods in a diagram compatible format.
5821         * lib/object.c : add object_registry_foreach() which allows
5822         to iterate over all registered object types
5824         * lib/object.h : added prototypes object_default*() and
5825         object_registry_foreach()
5827         * lib/makefile.am lib/makefile.msc : add new file to build
5829         * lib/libdia.def : export new functions
5831         * app/defaults.c : provide StdProp based defaults if the
5832         ObjectType doesn't implement it's own default functions
5834         * app/create_object.c : through dia_object_default_create()
5835         * app/disp_callbacks.c : same here
5837 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
5839         * objects/FS/flow-ortho.c (orthflow_get_object_menu): Menu
5840         sensitivity for deleting segments.
5842 2002-06-12  Cyrille Chépélov  <cyrille@chepelov.org>
5844         * app/color_area.c: (color_area_events):
5845         * app/diagram.c: (diagram_destroy):
5846         * app/interface.c: (zoom_activate_callback), (fill_sheet_wbox),
5847         (fill_sheet_menu):
5848         * app/load_save.c: (diagram_data_load):
5849         * app/menus.c: (menus_get_item_from_path):
5850         * app/preferences.c: (prefs_load):
5851         * app/render_gdk.c: (get_text_width):
5852         * lib/arrows.h:
5853         * lib/color.c: (color_convert):
5854         * lib/dia_dirs.c: (dia_config_filename):
5855         * lib/dia_xml.c: (xmlDiaParseFile), (data_type):
5856         * lib/intl.c: (intl_get_language_list):
5857         * lib/message.c: (message):
5858         * lib/message.h:
5859         * lib/paper.c: (get_default_paper):
5860         * lib/plug-ins.c: (this_is_a_plugin), (dia_register_plugins):
5861         * lib/widgets.c: (dia_file_selector_get_file):
5862         * lib/widgets.h:
5863         * objects/standard/image.c: (get_directory):
5865         warningectomy.
5866         
5867 2002-06-12  Lars Clausen  <lrclause@cs.uiuc.edu>
5869         * ChangeLog: Fixed bad UTF-8 mess.  Apologies.
5871 2002-06-11  Lars Clausen  <lrclause@cs.uiuc.edu>
5873         * app/interface.c: sscanf now returns EOF on empty string, so
5874         handle no match for zoom factor better => correct zoom at start.
5876         * app/sheets.c (create_object_pixmap): Tried to display empty error.
5877         (sheets_optionmenu_create): Died when not finding specified
5878         sheet.  Don't think it should.
5880         * objects/UML/association.c: Added patch from osamyn@ulb.ac.be
5881         (bug #84367) to place the text better.
5883 2002-06-11  Cyrille Chepelov  <cyrille@chepelov.org>
5885         * configure.in: Added forgotten libgnomeui-2.0 when --enable-gnome
5886                         
5887         * app/commands.c: Removed unnecessary gnome include. Removed
5888         GNOME-Print support.
5890         * app/menus.h: Removed now unnecessary gnome include.
5891         
5892         * app/sheets_dialog.c: Used Gtk 2.0 stock buttons instead of
5893         GNOME-specific stock buttons
5894         
5895 2002-06-09  Hans Breuer  <hans@breuer.org>
5897         * app/app_procs.c : convert 'Modified diagrams exits'
5898         dialog to use GtkMessageDialog. That gives us:
5899         - icons without Gnome dependency
5900         - much less code, also cross platform
5901         - improved useability ?
5903         * app/color_area.c : the Color Selection Widget looked
5904         quite wrong (alpha problems). Fix it by merging in required
5905         changes stolen from The Gimp cvs
5906         * app/color_area.h : to get the right appearance the maskes
5907         needed to be taken into account
5908         * app/interface.c : adapt to color_area_create changes.
5909         Also remove some dead code and finally remove cvs autexpansion, 
5910         I was bothered enough by irrelevant differences :-)
5912         * app/defaults.c app/properties.c app/dia-props.c : use improved GtkDialog
5913         api, i.e stocks and response to make the GnomeDialog usage
5914         obsolete. Also fixed the issue with closing the 'parent'
5915         before closing the dialog
5917         * app/display.[ch] : removed some dead code and conversion
5918         to new GtkDialog api. Also trying to conform to new HIG
5919         standard http://developer.gnome.org/projects/gup/hig/
5921 2002-06-09  Hans Breuer  <hans@breuer.org>
5923         * lib/makefile.msc : define GTK_DISABLE_DEPRECATED,
5924         build ps-utf8.c
5926         * lib/dia_image.c : gtk_widget_set_default_visual()
5927         remove. It does nothing with Gtk2.
5929         * lib/libdia.def : added ps_unicoder exports
5931         * lib/message.c : remove #GNOME use GtkMessageDialog.
5932         Yeah, Dia gets dialogs wit icons cross-platform.
5934         * lib/prop_geomtypes.c : gtk_spin_button_get_value_as_float()
5935         to gtk_spin_button_get_value()
5937         * lib/prop_inttypes.c : gtk_label_set() -> gtk_label_set_text()
5939         add #undef GTK_DISABLE_DEPRECATED to still use ...
5940         * lib/prop_text.c :  ... GtkText
5941         * lib/prop_widgets.c : ... GtkList
5942         * lib/prop_dialogs.c : ... gtk_signal_connect and more
5943         * lib/widgets.c : ... (too much to list here)
5945         * lib/ps-utf8.c : #include <string.h>
5947 2002-06-08  Cyrille Chepelov  <cyrille@chepelov.org>
5949         * configure.in:
5950         * Makefile.am:  Adapted for gtk2.
5951         Removed dependencies on libunicode, on iconv(), on langinfo().
5953         * acconfig.h: removed (now obsolete)
5955         * lib/charconv.[ch]: removed (superceded by glib)
5956         * lib/ps-utf8.[ch]: removed dependency on charconv.[ch]
5958         * **/*.[ch]: removed (utfchar *), (unichar) and other charconv or
5959         libunicode types for their glib counterparts. Fixed the include
5960         paths for libxml2. Removed all traces of libxml1 or non-UTF8
5961         support (there were remains in objects/uml).
5963         
5964 2002-06-08  Hans Breuer  <hans@breuer.org>
5966         */*.c */*/*.c : remove all the #ifdef *_UTF8_* hell,
5967         only keep the utf-8 clean code cause Dia+Gtk2 now talk it.
5968         Also use g_strdup()'s handling of NULL by returning NULL
5969         again at all places I found (remove unnecessary if's)
5971         * todo.gtk2 : new file to keep notes about gtk2 porting,
5972         further issues and thoughts and some status information.
5973         Also sent to dia-list ('Dia goes Gtk2 ...').
5974         
5975         [make it compile with GTK+ 2.0]
5977         * config.h.win32 : #undef GTK_TALKS_UTF8_WE_DONT,
5978         removed definition of S_ISDIR, S_ISREG and getlogin
5980         * */makefile.msc : Use GTK2 and libxml2
5981         BEWARE: makefile.am, configure.in not yet ported !
5983         * app/app_procs.c app/diagram.c : remove 
5984         gtk_item_factory_dump_rc code, (it wasn't read in again anyway) 
5985         but set use gtk_menu_set_accel_path() on menu creation
5987         * app/color_area.c lib/widgets.c : 
5988         make use of gtk_color_selection_set_has_palette ()
5990         * app/commands.c : gdk_pixbuf_new_from_file wants an 
5991         extra argument. Convert from DIR to GDir usage.
5993         * app/diagram_tree.c(button_press_callback) : need to return 
5994         FALSE in the signal handler to let gtk process it further.
5995         (get_object_name) : don't leak 'prop'
5996         
5997         * app/diapagelayout.c : adapt to GtkTypeInfo changes and handle 
5998         dia_page_layout_destroy() getting called more than once
6000         * app/diaunitspinner.c : GtkEditable -> GtkEntry, 
6001         GtkTypeInfo changes
6003         * app/disp_callbacks.c : gtk_menu_append() -> gtk_menu_shell_append()
6005         * app/display.h : wrap input contexts declarations into #ifdef USE_XIM.
6006         IIRC this code will not compile unchanged when USE_XIM is defined ...
6008         * app/gtk[hv]wrapbox.[hc] : use already ported version from The GIMP 1.3.x
6010         * app/interface.c : there is no widget->klass anymore in Gtk, 
6011         use GTK_WIDGET_GET_CLASS instead. gdk_pixbuf_new_from_file() extra
6012         parameter. Some tweaking of GtkWrapBox usage to get four tools in
6013         a row again.
6014         switch off GTK's double buffering on Dia's canvas. Otherwise we would 
6015         get triple buffering and flicker.
6016         Replace call to GTK private function _gtk_accel_group_attach()
6017         with public gtk_window_add_accel_group()
6019         * app/layer_dialog.c : adapt to GtkTypeInfo changes
6021         * app/load_save.c lib/plug-ins.c lib/sheet.c 
6022           objects/custom/custom.c : 
6023         simplified by using g_file_test()
6025         * app/menus.c : convert from gtk_item_factory_<dump|parse>_rc 
6026         to gtk_accel_map_<save|load>. Also added common stock-icons
6027         to the menu.
6028         
6029         * app/preferences.c : use gtk_button_set_label() instead
6030         of button->child which is gone. Also removed GLIB_CHECK_VERSION.
6032         * app/preferences.c lib/dia_xml.c lib/plug-ins.c :
6033         #ifdef G_OS_WIN32 #include <io.h>, this was formerly done
6034         in config.h.win32
6036         * app/recent_files.c : removed GLIB_CHECK_VERSION
6038         * app/render_eps.c 
6039           plug-ins/metapost/render_metapost.c
6040           plug-ins/pstricks/render_pstricks.c
6041           plug-ins/svg/render_svg.c :
6042         replace getlogin() with g_get_user_name() which always
6043         returns non NULL
6045         * app/render_gdk.c : gdk_region_union_with_rect() modifies
6046         inplace now and returns nothing, also less #hell
6048         * app/render_libart.c : some initial #hell cleaning, SuckFont
6049         still needs to vanish
6051         * app/splash.c : gdk_pixbuf_new_from_file() second arg and
6052         GTK_WINDOW_DIALOG -> GTK_WINDOW_TOPLEVEL
6054         * app/render_pixbuf.c app/sheets.c : plain #hell cleaning
6055         * app/sheets_dialog_callbacks.c : some #hell and adaptions
6056         needed to GtkWrapBox api changes
6059         * lib/charconv.[hc] : removed from build
6060         [changed appropriate]
6061         * lib/prop_inttypes.c lib/prop_text.c : 
6062         all utf-8 cleaning 
6063         * lib/text.c : ported from HEAD but keep original indent
6064         intact. Original was done by Akira TAGOH.
6066         * lib/color.c : GdkColorContext is gone, use GdkColormap instead.
6068         * lib/dia_image.c : gdk_pixbuf_new_from_file() second arg
6070         * lib/dia_xml.c : remove #ifdef GLIB_CHECK_VERSION, it's the
6071         same on all platforms now!
6073         * lib/font.c : still using SuckFont which was an IMPERATIVE FIXME!
6075         * lib/message.c : remove "charconv.h"
6077         * lib/prop_text.c : #define GTK_ENABLE_BROKEN to use GtkText
6079         * lib/plug-in.c :
6080         * lib/sheet.c : convert from DIR to GDir usage
6082         * lib/widgets.c : gtk_menu_(shell_)append and GtkTypeInfo
6084         * lib/widgets.h : include gtk<label|colorseldialog>.h
6087         * objects/fs/flow.c :
6088         * objects/fs/flow-ortho.c : GTK_ENABLE_BROKEN to use GtkText
6090         * objects/custom/custom.c : convert from DIR to GDir usage
6093         * plug-ins/python/makefile.msc : updated for GTK2/Python2.2
6096 2002-05-03  Hans Breuer  <hans@breuer.org>
6098         * lib/dia_xml.c : make the well formed utf8 check
6099         actually work for &#251; (non 7-bit ascii encoding)
6100         and fixed the file re-writing if the check fails.
6101         Thanks to Vitaly Lipatov for noticing the misbehaviour.
6103         * lib/font.c : synchronize #ifdef G_OS_WIN32 with
6104         comment on last ressort font. Thanks to Maxim Sobolev.
6106 2002-06-03  Cyrille Chepelov  <cyrille@chepelov.org>
6108         * sheets/network.sheet.in: corrected a typo in plotter invocation.
6110 2002-06-03  Steffen Macke  <sdteffen@web.de>
6112         * shapes/network/digitizing_board.png:
6113         * shapes/network/digitizing_board.shape:
6114         * shapes/network/plotter.png:
6115         * shapes/network/plotter.shape:
6116         * shapes/network/Makefile.am
6117         * sheets/network.sheet.in: added new plotter and digitizing
6118         board shapes
6119         
6120 2002-06-02  Cyrille Chepelov  <cyrille@chepelov.org>
6122         * lib/font.c: made a symptomatic fix to a segfault reported by 
6123         Jan Keirse <jan.keirse@pandora.be> on a SuSE 7.3 system. This
6124         won't prevent dia from terminating, but should give more
6125         user-friendly information about why did it terminate.
6127         Two patches from <robert.young@dsto.defence.gov.au>:
6128         
6129         * app/display.c: fix the size of the canvas area which gets
6130         redrawn. There was an off-by one error (Closes #83659)
6132         * app/display.c: make sure we redraw all screen only when we
6133         really have to (some update_areas were mistakenly ignored) (Closes
6134         #83496). 
6136         * NEWS: added a new entry for the future. Put there a reminder to
6137         update the dependencies.
6139         * configure.in: put in notes about what will change shortly.
6140         upped the version to 0.90+cvs (did also in config.h.win32)
6141         upped the minimum version for intltools (now 0.21)
6142         
6143 2002-06-01  Cyrille Chepelov  <cyrille@chepelov.org>
6145         * dia.spec:
6146         * configure.in:
6147         * NEWS:
6148         * config.h.win32:
6149         bumped up version number to 0.90. Yay!
6151 2002-05-30  Cyrille Chepelov  <cyrille@chepelov.org>
6153         * doc/pl/Makefile.am:
6154         * doc/en/Makefile.am: fixed a "make install" problem when db2html
6155         is not present (Reported by Andrew Ferrier
6156         <andrew.junk@new-destiny.co.uk>). Fixed another "make distclean"
6157         problem which prevented me from ever seeing the problem in doc/en...
6158         
6159         * Makefile.am: added autogen.sh to the EXTRA_DIST clause.
6160         
6161         * lib/font.c: patch from <robert.young@dsto.defence.gov.au>; add a
6162         way to read the font path from the XFS configuration files in
6163         order to enable FreeType (fixes #83098).
6165         * POTFILES.(in,skip): now skips objects/sybase/sybase.c, which is not
6166         shipped nowadays.
6167                 
6168         * dia.spec:
6169         * configure.in:
6170         * NEWS:
6171         * config.h.win32:
6172         bumped up version number to 0.90.RC3
6174 2002-05-29  Zbigniew Chyla  <cyba@gnome.pl>
6176         * configure.in, doc/Makefile.am, doc/pl/Makefile.am,
6177         doc/pl/authors.sgml, doc/pl/dia-manual.sgml, doc/pl/dia-pl.omf,
6178         doc/pl/intro.sgml, doc/pl/license.sgml, doc/pl/topic.dat
6179         doc/pl/usage-canvas.sgml, doc/pl/usage-customization.sgml,
6180         doc/pl/usage-layers.sgml, doc/pl/usage-loadsave.sgml
6181         doc/pl/usage-objects-selecting.sgml, doc/pl/usage-objects-special.sgml,
6182         doc/pl/usage-objects.sgml, doc/pl/usage-quickstart.sgml:
6183         Added Polish documentation.
6185 2002-05-27  Cyrille Cheeplov  <cyrille@chepelov.org>
6187         * objects/UML/state.c: there was a (gratuitous?) change of on-XML
6188         format for the UML State object. Now there's a hack to reload
6189         older files, and get them converted on the fly. 
6190         Justyna BiaÅ?a <nell@poczta.gazeta.pl> reported this. Thanks!
6192         * lib/properties.h:
6193         * lib/propobject.c:
6194         * lib/proplist.c: Added a new property flag, PROP_FLAG_LOAD_ONLY,
6195         and adapter the proplist predicates. A LOAD_ONLY property is for
6196         when you have legacy to support but can't resist moving your
6197         fields around... (was needed to support the above state.c fix).
6199         If the in-core of your object changes and you need a LOAD_ONLY
6200         property for the old format, you must keep some spare room in your
6201         object's struct to accomodate for the potential old-style
6202         attributes. Then in foo_load(), after having called
6203         object_load_using_properties(), you must inspect the old-style
6204         fields and act accordingly. Don't ever change the on-disk formats...
6206         * objects/UML/object.c:
6207         * objects/UML/small_package.c: added a check against empty
6208         stereotypes still consuming space. Reported by Dolores Alia de
6209         Saravia <loli@unsa.edu.ar>. Thanks!     
6210         
6211 2002-05-26  Cyrille Chepelov  <cyrille@chepelov.org>
6213         * INSTALL: added platform notes from MÃ¥rten Svantesson, for when
6214         using libtool on an AFS partition.
6216         * po/update_potfiles_in.sh: now simply calls the recent intltools 
6217         features; they work better than hand-crafted half-ignorant
6218         scripts. Thanks to Kenneth Rohde Christiansen <kenneth@gnu.org>
6219         for the tip.
6221         * po/POTFILES.in: added back two files update_potfiles_in.sh
6222         didn't take into account. Now this file is not automatically
6223         generated anymore!      
6224         * po/POTFILES.skip: told `intltool-update -m` what files to ignore
6225         (the usual suspects, in fact).
6227         * configure.in: improved the isinf() / isfinite() detection on
6228         Solaris (MÃ¥rten Svantesson)
6229         
6230 2002-05-25  Cyrille Chepelov  <cyrille@chepelov.org>
6232         * configure.in: one expression was replacing $CFLAGS, removing
6233         whatever was previously in.
6234         Added more checks for isinf() and finite() on Solaris.
6236         * lib/geometry.h: added a macro defintion for isinf() if not
6237         HAVE_ISINF. (Hans, you may want to #define HAVE_ISINF if relevant
6238         on Win32)
6240         * app/commands.c: "cut" did not set the 'modified' bit (paste has
6241         been for a little while). Fixes #82994.
6243         * Makefile.am: added more stuff to distclean-local. This should make
6244         "make distcheck" pass! Thanks to the author of
6245         http://mail.gnome.org/archives/gnome-2-0-list/2001-August/msg00212.html
6246         ... I wonder who this Henstridge guy is ... ;-)
6247         Darn. Still doesn't pass. I give up for tonight.
6248         
6249         * po/update_potfiles_in.sh: updated to take care of sheet files,
6250         and to filter out the EML plug-in.
6251         * po/POTFILES.in: updated with all .c and all .sheet.in files 
6253         * po/dia.pot, po/*.po: again updated all .po files with all
6254         strings (with the updated POTFILES). Now with the up-to-date
6255         POTFILES, just all languages have some fuzzy or untranslated
6256         strings (not that the 100% team was that large beforehand...)
6258         * po-checktrans: removed the comment about .po files not holding
6259         all translatable stuff, since now they do.
6260         
6261 2002-05-24  Cyrille Chepelov  <cyrille@chepelov.org>
6263         * dia.spec:
6264         * configure.in:
6265         * NEWS:
6266         * config.h.win32:
6267         bumped up version number to 0.90.RC2
6269 2002-05-20  Hans Breuer  <hans@breuer.org>
6271         * app/load_save.c : starting to increase
6272         Dias tolerance on incomplete/broken files. The 
6273         corresponding bug is #56233. But the patch there does
6274         neither apply anymore nor does it really fix the problem
6275         but only delays it, e.g. even if it would be allowed
6276         to read a file without any layers, the later code can't
6277         handle it.
6278         * lib/dia_xml.c : attribute_<num|first>_data(), data_type()
6279         handle passing in NULL for the node gracefully.
6281         * shapes/network/printer.shape : added two more connection
6282         points - one at each side - to fix bug #60359
6284         * app/commands.c (edit_copy_callback) : 
6285         add ddisplay_do_update_menu_sensitivity() to make 
6286         sequence select-copy-paste work.
6288 2002-05-20  Hans Breuer  <hans@breuer.org>
6290         * app/create_object.c (create_object_button_press) :
6291         added a call to ddisplay_do_update_menu_sensitivity()
6292         to make Ctrl^D etc work after object creation. 
6293         Fixes #80983.
6295 2002-05-18  Lars Clausen  <lrclause@cs.uiuc.edu>
6297         * objects/ER/entity.c: 
6298         * objects/ER/attribute.c: 
6299         * objects/ER/relationship.c: Patch to allow text size change from
6300         Celso Tetsuo Nagase Suzuki.
6302 2002-05-18  Steffen Macke <sdteffen@web.de>
6304         * app/app_procs.c: #ifdef'd xmlerror.h (comes with 
6305         libxml2)
6306         * doc/en/graphics/greendots.png:
6307         * doc/en/home_network.png:
6308         * doc/en/line_props.png: 
6309         * dia-diagram.png:
6310         * dia_gnome_icon.png:
6311         * dia_gnome_menu_icon.png:
6312         * dia_logo.png:
6313         * shapes/network/telephone.png:
6314         * shapes/Logic/and.png:
6315         * shapes/Logic/buffer.png:
6316         * shapes/Logic/connector.png:
6317         * shapes/Logic/inverter.png:
6318         * shapes/Logic/nand.png:
6319         * shapes/Logic/nor.png:
6320         * shapes/Logic/not.png:
6321         * shapes/Logic/or.png:
6322         * shapes/logic/xor.png:
6323         * samples/ER-demo.dia:
6324         * samples/SADT.dia:
6325         * samples/UML-demo.dia:
6326         * samples/chronograms.dia:
6327         * samples/grafcet.dia: re-added as binary files
6329 2002-05-17  Hans Breuer  <hans@breuer.org>
6331         * lib/libdia.def : reflect removing of render_store.[ch]
6333         * */makefile.mingw : remove VERSION definition it's
6334         done in config.h.win32. Dia still doesn't work if
6335         build with mingw ...
6337         * RELEASE-PROCESS : removed */makefile.mingw
6339         * app/sheets_dialog_callbacks.c : if we use those
6340         ugly charconv_gtk_* functions lib/charconv.h needs to
6341         be #included ...
6342         * lib/charconv.h : ... and needs to contain the 
6343         necesseray prototypes _and_ #defines
6345         * plug-ins/shape/shape-export.c : with libxml2 xmlNewGlobalNs
6346         is deprecated and does nothing but spit a warning. This broke
6347         the shape format writing. Fixed.
6348         Also with libxml2 pretty formatted xml isn't the default
6349         anymore, but needs to be enabled explicit: It is done now 
6350         for shape files, which almost always needed to be edited by
6351         hand ... 
6353         * app/app_procs.c : #if G_OS_WIN32 redirect xmlErrorReporting
6354         from stderr - which is invalid on Dia/win32 - to g_print -
6355         which opens up a console window if necessary. This way
6356         a xml-deprecation-error shouldn't stay unnoticed next time
6358 2002-05-17  Steffen Macke <sdteffen@web.de>
6360         * shapes/Misc/folder.png:
6361         * shapes/Misc/file.png: re-added as binary files
6362         
6363 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
6365         * lib/font.c: Fixed segfault for fonts without family_name.
6367 2002-05-17  Cyrille Chepelov  <cyrille@chepelov.org>
6369         * po/POTFILES.in: added app/sheets_dialog_callbacks.c
6371         * app/sheets_dialog_callbacks.c: While reviewing UTF-8isation upon
6372         Lars' request, minor cosmetic stuff (mostly _() of human-readable
6373         XML comments in .sheet files; one translator booby-trap disarmed).
6375         * lib/charconv.c: moved #hell inside the body of the new
6376         charconv_*gtk* functions (otherwise the Win32 or gtk2.0 linker
6377         will yell)
6378         
6379 2002-05-16  Lars Clausen  <lrclause@cs.uiuc.edu>
6381         * plug-ins/wpg/Makefile.am (INCLUDES): 
6382         * plug-ins/shape/Makefile.am (INCLUDES): 
6383         * plug-ins/svg/Makefile.am (INCLUDES): 
6384         * plug-ins/pstricks/Makefile.am (INCLUDES): 
6385         * plug-ins/metapost/Makefile.am (INCLUDES): Added UNICODE_CFLAGS
6386         and DEBUG_CFLAGS in some missing places.
6388         * MAINTAINERS: New file containing list of known package
6389         maintainers. 
6391         * lib/charconv.h: 
6392         * lib/charconv.c: Charconv versions of some common gtk calls.
6394         * app/sheets_dialog_callbacks.c
6395         (on_sheets_new_dialog_button_ok_clicked),
6396         (on_sheets_dialog_button_edit_clicked),
6397         (on_sheets_dialog_button_remove_clicked),
6398         (on_sheets_edit_dialog_button_ok_clicked):
6399         * app/sheets.c (sheets_optionmenu_create),
6400         (sheets_optionmenu_create): Added utf8 translations.
6402         * app/sheets_dialog.c: 
6403         * app/sheets.c: 
6404         * app/sheets_dialog_callbacks.c: Added some missing _()'s.
6406 2002-05-16  Cyrille Chepelov  <cyrille@chepelov.org>
6408         * po/POTFILES.in: added app/sheets_dialog.c
6410 2002-05-15  Cyrille Chépélov  <cyrille@chepelov.org>
6412         * lib/charconv.c: (charconv_local8_to_utf8),
6413         (charconv_utf8_to_local8): tweaked the warnings to get more 
6414         informations
6415         * lib/font.c: (font_get_suckfont): handled a potential case of
6416         uninitialised data being used (just paranoid)
6417         
6418         * objects/GRAFCET/boolequation.c: (opstring),
6419         (opblock_get_boundingbox), (opblock_draw),
6420         (boolequation_calc_boundingbox): some extra hoops needed now dia
6421         talks UTF8 (but gtk doesn't). More #hell. Beeek. Basically, the
6422         symbols can't yet be used with their proper Unicode cells, since
6423         gtk will demand them in the Symbol font, expressed in the local
6424         8-bit encoding.
6425         
6426         * samples/grafcet.dia: re-saved, now with a fixed bounding box (by
6427         the fix just above).
6429 2002-05-14  Lars Clausen  <lrclause@cs.uiuc.edu>
6431         * app/diagram_tree.c (get_object_name): Check that name property
6432         doesn't have null string.
6434 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
6436         * autogen.sh (DIE): Added conditional --force to gettextize.
6438         * app/pagesetup.c (pagesetup_ok): Commented out missing Gnome
6439         function call.
6441 2002-05-13  Cyrille Chepelov  <cyrille@chepelov.org>
6443         * RELEASE-PROCESS: added James' notes on how to properly make the
6444         tarball.
6446         * configure.in: removed macro nesting related to libpng.h, which
6447         was causing some problems on some systems (like mine, which made
6448         the snapshots bad).
6450         Made --enable-unicode, previously an option, the mandatory case.
6452         * app/Makefile.am: updated EXTRA_DIST
6453         
6454         * NEWS:
6455         * app/makefile.mingw:
6456         * dia.spec:
6457         * doc/en/dia-manual.sgml:
6458         * plug-ins/makefile.mingw:
6459         * configure.in: bumped up the version number to 0.90.RC1
6461         * lib/render_objects.[ch]:
6462         * po/POTFILES.in: removed render_objects from the build.
6464         * plug-ins/Makefile.am:
6465         * plug-ins/wmf/Makefile.am (new): EXTRA_DIST'ed the WMF plug-in,
6466         so we keep its source in the tarball.
6468         * objects/network/*.c, Makefile.am:
6469         * objects/sybase/*.c, Makefile.am:
6470         * po/POTFILES.in: cleaned up the non-existent files from the po
6471         build process.
6473         * plug-ins/Makefile.am: re-enabled metapost plug-in.
6474         
6475 2002-05-13  Steffen Macke <sdteffen@web.de>
6477         * AUTHORS:
6478         * app/command.c: added M. C. Nelson to the Authors
6479         * sheets/Circuit/Makefile.am: added firewall shape to build
6480         * sheets/network/Makefile.am: added telephone and microphone
6481           shapes to build
6483 2002-05-13  Lars Clausen  <lrclause@cs.uiuc.edu>
6485         * RELEASE-PROCESS: Added list of files that contain the release
6486         number or should otherwise be changed at each release.
6488 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
6490         * objects/UML/uml.c (uml_operation_read): Forgot to commit this
6491         (reported fixed) bug: POLYMORPHIC -> LEAF for default.
6493 2002-05-12  Hans Breuer  <hans@breuer.org>
6495         * config.h.win32 : changed VERSION to 0.90.RC1
6497         * app/makefile.msc lib/makefile.msc : use renamed
6498         gdk-pixbuf version (same content but renamed because
6499         all the other gtk+ dlls are renamed) to avoid trouble
6500         mixing gtk versions (of which one would not 
6501         be initialized ...
6503         * app/app_procs.c : removed recently unneeded
6504         inclusion of "sheets.h"
6506         * app/render_gdk.c : removed my own debug spew
6507         which should never made it to cvs
6509         * lib/render_object.[hc] : added
6510         #error "File not used anymore."
6512         * lib/libdia.def : updated externals
6514         * app/interface.c : dropped filenames need to be
6515         converted from uri with Gtk+2.0
6517 2002-05-12  Cyrille Chepelov  <cyrille@chepelov.org>
6519         * RELEASE-PROCESS (new): a draft document about how to release. To
6520         be discussed. (already with some input from Hans Breuer)
6522 2002-05-12  Steffen Macke <sdteffen@web.de>
6524         * sheets/Makefile.am: re-added Misc sheet to make process
6525         
6526 2002-05-12  Lars Clausen  <lrclause@cs.uiuc.edu>
6528         * objects/FS/function.c: Added comments to humungous list of menu
6529         items, to aid translators.
6531 2002-05-11  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6533         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
6535         * app/menus.c (display_menu_items): Added a few shortcuts for zooms.
6537         * app/interface.c (create_toolbox): Disallow shrinking beyond
6538         requested size.  Fixes bug #59439, and confirms to GTK guidelines
6539         (see gtk_window_set_policy).
6540         (create_sheets): Removed now unnecessary set_usize call.
6542 2002-05-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6544         * lib/beziershape.c (remove_handles): Fixing removal of last
6545         segment.  Undo of removal still hokey.
6547 2002-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
6549         * lib/bezier_conn.c (remove_handles): Proper offset for fixing
6550         handles. 
6551         * lib/beziershape.c (beziershape_init): Removed early call to
6552         beziershape_update_data where points aren't set yet.
6553         (beziershape_add_segment): Use segment 0 instead of overflowing
6554         points array with segment+1.
6555         (beziershape_remove_segment): Proper offset for fixing
6556         connectionpoints. 
6557         (remove_handles): Proper offset.
6559 2002-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
6561         * objects/GRAFCET/action.c (action_update_data): Init x value of
6562         click point for call to connpointlist_adjust_count.
6564         * app/modify_tool.c (create_modify_tool): Init tool->auto_scrolled
6566         * app/render_pixmap.c (new_pixmap_renderer): Moved first linestyle
6567         setting to where values are inited.
6569         * lib/polyshape.c (polyshape_init): Removed call to
6570         polyshape_update_data that tried to use uninitialized data.
6572 2002-05-06  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6574         * app/sheets_dialog.c: Mass removal of //-style comments.  The
6575         Irix compiler doesn't like them:(  I do...
6577 2002-05-06  Lars Clausen  <lrclause@cs.uiuc.edu>
6579         * app/render_libart.c (draw_string): Bail out when no GDK font is
6580         found.
6581         (set_font): Give error when font not found.
6582         (set_fillstyle): Intlized error msg.
6584         * app/pagesetup.c (pagesetup_ok, pagesetup_apply): Sets diagram
6585         modified when applied (and ok only does apply if apply is set
6586         sensitive).  Fixes bug #75623.
6588 2002-05-06  Pablo Saratxaga  <pablo@mandrakesoft.com>
6590         * configure.in: Added Vietnamese (vi) to ALL_LINGUAS
6592 2002-05-05  Steffen Macke <sdteffen@web.de>
6594         * app/Makefile.am: added $(UNICODE_CFLAGS)
6595         
6596 2002-05-02  Lars Clausen  <lrclause@cs.uiuc.edu>
6598         * app/commands.c (help_manual_callback): Check return value of
6599         opendir.
6601         * plug-ins/xfig/Makefile.am (INCLUDES): Added DEBUG_FLAGS
6603         * plug-ins/xfig/xfig-import.c: Fixed misspelled Poly_L_ine, added
6604         checks for errors.
6606 2002-04-30  Lars Clausen  <lrclause@cs.uiuc.edu>
6608         * app/render_gdk.c (draw_string): Extra free killed.  Thanks valgrind!
6610         * objects/UML/uml.c (uml_operation_read): Fix of UML default
6611         inheritance. 
6613 2002-04-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6615         * app/filedlg.c (file_save_as_callback, file_save_as_ok_callback):
6616         Added button to toggle diagram compression.
6618 2002-04-29  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
6620         * lib/font.c: Support for loading extra kerning files, plus got
6621         rid of rounding errors.  Bounding box mostly perfect for freetype
6622         fonts.
6623         (font_string_width): Fudge factor to get around nonlinearity of
6624         font scaling.
6626 2002-04-29  Lars Clausen  <lrclause@cs.uiuc.edu>
6628         * lib/font.c (font_string_width): YA font calculation scheme, with
6629         comments.
6631         * objects/UML/class.c (umlclass_calculate_data): Uses the same
6632         font for drawing and calculating now.
6634         * configure.in: Added utime.h check.
6636         * app/render_gdk.c (draw_string): Uses gdk_draw_text_wc when in
6637         GTK_DOESNT_TALK_UTF8_WE_DO.  Thus it matches the string width calc.
6639 2002-04-26  Hans Breuer  <hans@breuer.org>
6641         [ Instead of fixing about 70 occurances in 20 files
6642           where GTK_TALKS_UTF8_WE_DONT needed to be handled
6643           Dia on win32 from now on uses glib-2.0 and not 
6644           only talks utf-8 with gtk-1.3 but also internally.
6645           GTK_TALKS_UTF8_WE_DONT isn't supported/needed
6646           anymore. ]
6648         * config.h.win32 : #define UNICODE_WORK_IN_PROGRESS
6649         #undef GTK_TALKS_UTF8_WE_DONT
6651         * */makefile.msc : changes to use glib-2.0 (still
6652         using gtk+1.3(win32-production)
6654         * app/disp_callbacks.c : remove GTK_TALKS_UTF8_WE_DONT,
6655         adapt kevent->string handling, add <string.h>
6656         * app/render_gdk.c (get_text_width) : the length given
6657         is in chars, gdk_text_width() needs bytes
6659         * app/render_libart.c : 
6660         * app/render_pixmap.c : remove GTK_TALKS_UTF8_WE_DONT
6661         (could simplify the same way as done in render_gdk.c)
6663         * app/diagram_tree.c app/paginate_gdiprint.cpp
6664           app/sheets.c :
6665         * lib/prop_basic.c lib/prop_geomtypes.c 
6666           lib/propdialgs.c lib/propobject.c :
6667         added <string.h> which is now removed from charconv.h
6669         * lib/charconv.h : optional use infrastructure from
6670         glib-2.0 -> only five direct function mapping left
6672         * lib/charconv.c : avoid to build this with glib-2.0
6674         * lib/font.c : no string conversion needed anymore      
6675         when Dia and Gtk talk utf-8, also code adaptions
6676         for GLIB_CHECK_VERSION(2,0,0)
6678         * lib/libdia.def : removed charconv functions
6680         * lib/prop_inttypes.c : removed GTK_TALKS_UTF8_WE_DONT,
6681         replace charconv_unichar_to_utf8() with g_unichar_to_utf8()
6683         * lib/prop_text.c lib/prop_widgets.c lib/font.c : 
6684         removed GTK_TALKS_UTF8_WE_DONT
6686         * lib/text.c : finally(?) fixed cursor <place|move>ment 
6687         for Umlauts. Also fixed char insertion, still wondering
6688         how this could ever work. Does realloc on Linux 
6689         initialize the memory with zeros ?
6691         * objects/chronogram/chronoline_event.c
6692           objects/grafcet/boolequation.c :
6693         there is no uni_get_utf8 when building for glib-2.0.
6694         Replace with g_utf8_get_char() and g_utf8_next_char().
6696         * objects/uml/stereotype.c (bracketted_to_string) : 
6697         simplify while adding code for glib-2.0 build
6699 2002-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
6701         * app/diagram.h: Autosave field
6702         * app/diagram.c (diagram_set_modified): Sets autosave field.
6703         
6704         * objects/UML/usecase.c (usecase_update_data): 
6705         * objects/flowchart/ellipse.c (ellipse_update_data): 
6706         * objects/flowchart/parallelogram.c (pgram_update_data): 
6707         * objects/flowchart/diamond.c (diamond_update_data): 
6708         * objects/custom/custom_object.c (custom_update_data): 
6709         * objects/UML/state.c (state_update_data): 
6710         * objects/UML/small_package.c (smallpackage_update_data): 
6711         * objects/UML/object.c (objet_update_data): 
6712         * objects/UML/note.c (note_update_data): 
6713         * objects/UML/node.c (node_update_data): 
6714         * objects/UML/component.c (component_update_data): 
6715         * objects/UML/classicon.c (classicon_update_data): 
6716         * objects/UML/actor.c (actor_update_data): 
6717         * objects/SADT/box.c (sadtbox_update_data): 
6718         * objects/FS/function.c (function_update_data): 
6719         All now update text boundaries from update_data.
6720         
6721         * lib/widgets.c (dia_font_selector_set_styles): Made the style set
6722         correctly. 
6724 2002-04-26  Hans Breuer  <hans@breuer.org>
6726         * config.h.win32 : added VERSION definition here
6727         (and removed from makefile.msc's)
6729         * app/makefile.msc : added new files
6731         * app/app_procs.c (app_init): remove sheets_dialog_create()
6732         from start-up and ... 
6734         * app/sheet.c (sheets_dialog_show_callback) : ... lazy create
6735         sheet_dialog here when it is really needed.
6736         #include "../lib/message.h", make sheets_dialog_create() 
6737         return it's success or failing on (!custom_type_symbol). 
6738         Although editing shapes is nice IMHO it isn't crucial enough 
6739         to abort() Dia if       it isn't possible.
6741         * app/sheet.h : adapt create_sheet_dialog() prototype
6743         * app/sheets_dialog.c : add #ifdef HAVE_UNISTD_H
6745         * app/sheets_dialog_callbacks.c : #ifdef HAVE_UNISTD_H and
6746         #ifdef HAVE_UTIME_H. Otherwise #include <sys/utime.h> and
6747         name space corrections for utime() and utim_buf #ifdef
6748         G_OS_WIN32
6750         * lib/libdia.def : export new sheet functions
6752         * lib/makefile.msc : added new files
6754         * lib/render.c : don't put draw_bezier_with_arrows() in
6755         the DrawLineWithArrowsFunc slot
6757         * objects/custom/custom_object.c : #include <gmodule.h>
6758         and export 'custom_type' via G_MODULE_EXPORT
6760         * objects/uml/class_dialog.c : removed 'incompatible 
6761         types' warnings. Some refactoring while making it fit
6762         on screen with 800x600 again.
6764         * plug-ins/python/pydia-cpoint.h : add PyDiaConnectionPoint_Check
6766         * plug-ins/python/pydia-handle.h : extra parameter to
6767         PyDiaHandle_New to store the owner of the handle
6768         * plug-ins/python/pydia-handle.c : store handle owner
6769         on construction and use it in new method .connect()
6770         * plug-ins/python/pydia-object.c plug-ins/python/pydia-diagram.c : 
6771         adapt to changed prototype
6773 2002-04-24  Lars Clausen  <lrclause@cs.uiuc.edu>
6775         * lib/text.c (text_calc_boundingbox): Will now return early if box
6776         passed is NULL.
6778         * objects/flowchart/box.c (box_update_data): Now updates text
6779         width info from update_data.
6781 2002-04-23  Steffen Macke <sdteffen@web.de>
6783         * plug-ins/xfig/xfig-import.c: fixed text import
6784         
6785 2002-04-22  Lars Clausen  <lrclause@cs.uiuc.edu>
6787         * app/export_png.c: Moved dialog functions to their own file.
6788         * app/dialogs.[ch]: New files with standard functions for creating
6789         small, transient dialogs (e.g. export options).
6790         * app/Makefile.am: Added dialogs.[ch]
6792 2002-04-19  Steffen Macke <sdteffen@web.de>
6794         * shapes/Misc/folder.*:
6795         * shapes/Misc/file.*:
6796         * shapes/Misc/Makefile.am:
6797         * shapes/Makefile.am:
6798         * sheets/Misc.sheet.in:
6799         * sheets/Makefile.am:
6800         * configure.in: added new Misc sheet containing filesystem shapes
6801         
6802 2002-04-18  Lars Clausen  <lrclause@cs.uiuc.edu>
6804         * app/lineprops_area.c: Arrow selector in toolbox changed to use
6805         standard arrowdraw code.  Line is thinner to make some arrowheads
6806         distinguishable. 
6808 2002-04-18  Steffen Macke <sdteffen@web.de>
6810         * sheets/network.sheet.in:
6811         * shapes/network/telephone.shape:
6812         * shapes/network/Makefile.am: added telephone shape
6813         
6814 2002-04-16  Steffen Macke <sdteffen@web.de>
6816         * sheets/EML.sheet.in: commented out unavailable shapes
6817         
6818 2002-04-15  M.C. Nelson <mcn@kobayashimaru.org>
6820         * app/sheets_dialog_callbacks.c:  Fixed segfault caused by mis-ordered
6821           variable assignment.
6822         
6823 2002-04-15  Steffen Macke <sdteffen@web.de>
6825         * plug-ins/dxf/dxf-import.c: text import works again
6826         * shapes/Pneumatic/Makefile.am: added compush shape
6827         * sheets/Pneumatic.sheet.in: commented out unavailable shapes dist33
6828         and dist53
6829         
6830 2002-04-11  M.C. Nelson <mcn@kobayashimaru.org>
6832         * All these modifications are for the 'Sheets and Objects' dialog
6833           (new feature):
6835         * app/pixmaps/line_break.xpm: new icon representing a line break.
6836         
6837         * app/pixmaps/n_a.xpm: new empty icon representing not available.
6839         * app/Makefile.am: added sheets_*.[ch] files to compile list.
6840         
6841         * app/menus.c: added GNOME and gtk menu items for 'Sheets and Objects'
6842         
6843         * app/sheets_dialog.c: [new file] definition of 'Sheets & Objects' dlgs
6845         * app/sheets_dialog.h: [new file] support for Sheets & Objects dlgs 
6846         
6847         * app/app_procs.c: added call to sheets_dialog_create() in app_init()
6848         
6849         * app/sheets_dialog_callbacks.c: [new file] callbacks for S & O dialogs
6851         * app/sheets_dialog_callbacks.h: [new file] support for " " "
6853         * app/interface.c: added 'interface_current_sheet_name' global to 
6854           fill_sheet_wbox(); made fill_sheet_menu() non-static
6856         * app/interface.h: added extern declaration for aboves.
6858         * app/sheets.c: [new file] instantiation and other funcs for S & O dlgs
6860         * app/sheets.h: [new file] declarations for backing store structures
6862         * lib/sheet.c: modification of new_sheet() parameters; introduction
6863           of USER and SYSTEM scope for sheets; procedure for sorting sheets;
6864           changes to load_register_sheet().
6866         * lib/sheet.h: added 'user_data_type' field to SheetObject structure;
6867           added 'has_icon_on_sheet' flag to SheetObject structure; added 
6868           'filename', 'scope', 'shadowing' fields to Sheet structure.
6870         * lib/plug-ins.c: moved _PluginInfo declaration to header file where
6871           it belongs.
6873         * lib/plug-isn.h: see above.
6875         * lib/object.c: added 'sheet.h' to include list; added several 
6876           functions
6877           to detect objects which are not found on any sheet (for future use)
6878           object_type_detect_nosheet_callback(), object_types_detect_nosheet(),
6879           object_type_get_sheet_name(), object_type_strip_sheet_from_name().
6881         * lib/object.h: added public declarations for above functions where
6882           necessary.
6884         * objects/custom/custom.c: made custom_object_load() non-static so we
6885           can load and interpret .shape files from the Sheets & Objects dialog
6887         * objects/custom/custom_object.c: made 'custom_type' non-static so 
6888           we can differentiate between SVG shapes and other types.a
6890 2002-04-07  Hans Breuer  <hans@breuer.org>
6892         * app/object_ops.c (object_list_align_v): Fix the 'Leak fix'
6893         from 2002-01-22 to not destroy diagram->data->selected. 
6894         Avoids to crash on Objects/Align/Vertical/Top
6896         * app/render_eps.c (draw_string) : un-const buffer
6897         It isn't at all const (g_malloc(), assignment, g_free()).
6898         Doesn't gcc catch such ?
6900         * lib/arrows.h : prototype calculate_arrow_point()
6902         * lib/font.c (font_get_suckfont) : no need to
6903         special case gdk_draw_string() with GTK_TALKS_UTF8,
6904         cause all the parameter differences are handled above
6906         * lib/libdia.def : updated externals
6908         * lib/makefile.msc : removed string_prerenderer, added render
6910         * lib/render.c (draw_rect) : don't pass a Point** if a Point*
6911         is expected. [Sometimes it's good to read compiler warnings.]
6913         * objects/standard/image.c : simplified by use of g_strconcat()
6915         * plug-ins/python/makefile.msc : updated for Python 2.2
6917 2002-04-03  Lars Clausen  <lrclause@cs.uiuc.edu>
6919         * objects/standard/zigzagline.c (zigzagline_draw): Fixed
6920         directionality problem for zero-length line segments.
6922 2002-03-28  Lars Clausen  <lrclause@cs.uiuc.edu>
6924         * app/diagram.c (diagram_ungroup_selected) 
6925         (diagram_update_menu_sensitivity): Now allows ungrouping of
6926         several groups at once.
6928 2002-03-15  Lars Clausen  <lrclause@cs.uiuc.edu>
6930         * lib/render.c, all renderers: Binary incompatibility, change to
6931         expandable renderops structure.
6933 2002-03-15  Steffen Macke <sdteffen@yahoo.com>
6935         * objects/standard/Makefile.am:
6936         * objects/network/Makefile.am:
6937         * objects/UML/Makefile.am:
6938         * objects/ER/Makefile.am:
6939         * objects/FS/Makefile.am:
6940         * objects/flowchart/Makefile.am:
6941         * objects/custom/Makefile.am:
6942         * objects/GRAFCET/Makefile.am:
6943         * objects/chronogram/Makefile.am:
6944         * objects/SADT/Makefile.am:
6945         * plug-ins/cgm/Makefile.am:
6946         * plug-ins/pstricks/Makefile.am:
6947         * plug-ins/hpgl/Makefile.am:
6948         * plug-ins/wpg/Makefile.am:
6949         * plug-ins/svg/Makefile.am:
6950         * plug-ins/shape/Makefile.am: added $(UNICODE_CFLAGS)
6951         
6952 2002-03-13  Lars Clausen  <lrclause@cs.uiuc.edu>
6954         * app/render_eps.c: Support for dumping TrueType fonts (taken from
6955         ttfps).
6957 2002-03-12  Lars Clausen  <lrclause@cs.uiuc.edu>
6959         * lib/render.c: New abstract super class for renderers.
6961 2002-03-07  Akira TAGOH  <tagoh@redhat.com>
6963         * objects/ER/attribute.c (attribute_save): save a font property.
6964         (attribute_load): load a font property, and if can't load it, it's
6965         initialized.
6967         * objects/ER/entity.c (entity_save): save a font property.
6968         (entity_load): load a font property, and if can't load it, it's
6969         initialized.
6971         * objects/ER/relationship.c (relationship_save): save a font property.
6972         (relationship_load): load a font property, and if can't load it, it's
6973         initialized.
6975         * objects/UML/class.c (fill_in_fontdata): don't replace if it already
6976         has a vaule.
6977         (umlclass_save): save the font and the font size properties.
6978         (umlclass_load): load the font and the font size properties.
6980 2002-03-05  Cyrille Chepelov  <cyrille@chepelov.org>
6982         * lib/string_prerenderer.[ch] (REMOVED):
6983         * lib/render.h:
6984         * lib/diagramdata.c:
6985         * lib/Makefile.am:
6986         * app/render_eps.c: got rid of the string-specific string
6987         prerenderer, transitioned its functionality towards Lars'
6988         two-phase rendering
6990 2002-03-05  Lars Clausen  <lrclause@cs.uiuc.edu>
6992         * configure.in: Using Freetypes own check for ver >= 1.0.5.  You
6993         may need to rerun aclocal.
6995 2002-03-04  Lars Clausen  <lrclause@cs.uiuc.edu>
6997         * lib/font.c: First attempt at Unicodeness for Freetype.
6999 2002-03-02  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7001         * lib/font.c (font_string_width): Fixed font_string_width for
7002         freetype.  BB is now almost right.
7004 2002-03-01  Lars Clausen  <lrclause@cs.uiuc.edu>
7006         * app/render_eps.h: 
7007         * app/paginate_psprint.c (paginate_psprint): 
7008         * lib/font.c: 
7009         * app/render_eps.c: Support for dumping postscript fonts into
7010         postscript files with freetype.  Fairly primitive, but works.
7011         Unicode version may have problems.
7013 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
7015         * objects/UML/class_dialog.c (class_read_from_dialog)
7016         (class_fill_in_dialog), (class_create_page): add the font selector and
7017         the font size selector.
7019         * objects/UML/class.c (umlclass_draw): uses each font_height.
7020         (umlclass_calculate_data): ditto.
7021         (fill_in_fontdata): add initial value of new font_height.
7022         (umlclass_copy): add new font_height.
7024 2002-02-27  Cyrille Chepelov  <chepelov@calixo.net>
7026         Patch from Geoff Gerrietts <ggerrietts@yahoo.com>:
7027         
7028         * lib/font.c: calculate font metrics properly and stop guessing at
7029         string widths.
7031 2002-02-28  Akira TAGOH  <tagoh@redhat.com>
7033         * configure.in: changed gtk_advancement value to dia_talks_utf8.
7034         right now Dia is working with UTF-8 internally. it means Dia probably
7035         support most languages also including the languages which heretofore
7036         didn't work correctly.
7038 2002-02-26  Akira TAGOH  <tagoh@redhat.com>
7040         * objects/FS/function.c: add related text properties.
7041         (function_get_props), (function_set_props): add handling attribute.
7043         * objects/FS/flow.c: add related text properties.
7044         (flow_get_props), (flow_set_props): add handling attribute.
7046         * objects/FS/flow-ortho.c: add related text properties.
7047         (orthflow_set_props), (orthflow_get_props): add handling attribute.
7049         * objects/ER/relationship.c: add PROP_STD_TEXT_FONT to property.
7051         * objects/ER/entity.c: ditto.
7053         * objects/ER/attribute.c: ditto.
7055 2002-02-26  Cyrille Chepelov  <cyrille@chepelov.org>
7057         Patch contributed by Geoff Gerrietts <ggerrietts@yahoo.com>:
7058         
7059         * autogen.sh: add a check for missing intltoolize.
7061 2002-02-20  Akira TAGOH  <tagoh@redhat.com>
7063         * lib/ps-utf8.c (unicode_to_ps_name): if this function calls with same
7064         charcode, it was registered the duplicate item to HashTable. fix.
7066         * app/render_gnomeprint.c (get_width_string): add new function.
7067         (draw_string): fix non-multibyte specific code.
7069 2002-02-19  Cyrille Chepelov  <cyrille@chepelov.org>
7071         Patch contributed by Matthieu Sozeau <mattam@netcourrier.com>:
7072         
7073         * lib/font.c: do not try to search paths that do not begin with
7074         '/', like X Font Server addresses.
7075         
7076         * objects/UML/message.c (message_draw): free mname when not 
7077         message->text but CREATE or DESTROY.
7078         
7079         * objects/UML/uml.h:
7080         * objects/UML/uml.c:
7081         * objects/UML/class_dialog.c: added code to handle a stereotype 
7082         attribute for operations.
7084 2002-02-19  Akira TAGOH  <tagoh@redhat.com>
7086         * lib/Makefile.am: add LIBART_CFLAGS.
7088 2002-02-15  Hans Breuer  <hans@breuer.org>
7090         * lib/font.c (font_get_suck_font): the black and white pixel values 
7091         need to be taken from a 1 bit colormap rather than the default colormap.
7092         (fixed again, last time was 2000-05-26)
7094         Also handle the case where GTK_TALKS_UTF8 and expects all strings
7095         passed in to be in this encoding.
7097         * lib/libdia.def : export suck_font_free()
7099         * lib/text.c (text_draw) : avoid circular dependency to ../app
7100         at least for the !USE_XIM case, where it is unnecessary.
7102 2002-02-15  Cyrille Chepelov  <cyrille@chepelov.org>
7104         Changes contributed by Matts Kivik <kivik@firstlinux.net>:
7105         
7106         * shapes/Circuit/microphone_de.(shape|xpm) (NEW):
7107         * sheets/Circuit.sheet.in: added new shape microphone
7108         * shapes/Circuit/speaker_de.shape: Added a connection point.
7109         
7110 2002-02-13  Akira TAGOH  <tagoh@redhat.com>
7112         * app/render_libart.c (draw_string): fixed build issue for Win32.
7114         * lib/font.c (font_get_suckfont): fixed typo. it could't build under
7115         Win32.
7117         * configure.in: fixed testing gtk_advancement.
7119         * app/render_gnomeprint.c (draw_string): uses utfchar instead of char.
7121 2002-02-12  Akira TAGOH  <tagoh@redhat.com>
7123         * lib/text.c (text_draw): fixed XIM position, when menubar is shown for
7124         diagram window.
7126 2002-02-11  Lars Clausen  <lrclause@cs.uiuc.edu>
7128         * app/group.c (group_copy): Made new object properly initialized
7129         before copy.
7131 2002-02-11  Steffen Macke <sdteffen@yahoo.com>
7133         * app/Makefile.am: added plug-ins to DIA_LIB_PATH in run_dia.sh
7134         
7135 2002-02-10  Akira TAGOH  <tagoh@redhat.com>
7137         * lib/text.c (text_draw): fixed XIM transaction.
7139         * app/interface.c (create_display_shell): add signal for
7140         size_allocate.
7142         * app/disp_callbacks.c (ddisplay_size_allocate): add new function for
7143         XIM transaction.
7144         (set_input_dialog): remove.
7145         (ddisplay_canvas_events): remove XIM transaction. it can't transact
7146         correctly on this function.
7148 2002-02-10  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7150         * app/app_procs.c:
7151         * app/export_png.c: Added checks for interactivity (maybe this
7152         should be a hook after all?).
7154         * app/filedlg.c (file_export_callback): Made export dialog add
7155         suffix when reopened.
7157         * app/export_png.c: Added dialog asking for export size.
7159 2002-02-09  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7161         * lib/widgets.c: Fixed font reselection problem and first font
7162         bogus warning.
7164         * objects/UML/actor.c (actor_update_data): Changed to have
7165         connection points below text.
7167 2002-02-08  Akira TAGOH  <tagoh@redhat.com>
7169         * lib/text.c (text_split_line): use g_strndup() instead of g_malloc()
7170         and memcpy().
7172 2002-02-07  Akira TAGOH  <tagoh@redhat.com>
7174         * lib/font.c (font_get_suckfont): rewrited. generating suckfont from
7175         strings which is given.
7176         (suck_font): remove. it's any longer needed.
7178         * app/render_libart.c (set_font): don't get suckfont.
7179         (draw_string): get suckfont only which is needed for now.
7181 2002-02-05  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7183         * lib/text.c: Fixes for misunderstood width functions.
7185 2002-02-05  Hans Breuer  <hans@breuer.org>
7187         * lib/dia_xml.c : use g_strconcat() instead of 
7188         malloc, strcpy, strcat dance
7189         * app/properties.c : same here and plug memory leak
7190         (gtk functions don't eat strings)
7192         * objects/UML/message.c : there is no g_sprintf()
7193         use g_strdup_printf() instead ...
7195 2002-02-05  Akira TAGOH  <tagoh@redhat.com>
7197         * lib/message.c (gtk_message_internal): doesn't need to convert to
7198         UTF-8.
7200         * app/render_libart.c (draw_string): fixed transaction for UTF-8
7201         support.
7202         (get_text_width): ditto.
7204         * app/Makefile.am (EXTRA_DIST):
7205         s/paginate_gdiprint.c/paginate_gdiprint.cpp/
7207         * app/render_gdk.c (gdk_freetype_copy_glyph): fixed build issue.
7208         This function needs ifdef HAVE_FREETYPE because don't use it for
7209         --disable-freetype
7211 2002-02-04  Cyrille Chepelov  <cyrille@chepelov.org>
7213         * NEWS: updated with the new dependencies.
7214         
7215         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
7217         * objects/UML/class.h:
7218         * objects/UML/class.c:  
7219         * objects/UML/class_dialog.c: added code to handle the UMLParameterKind
7220         property using a GtkMenu. Options are Undefined, In, Out, In & Out
7222 2002-02-04  Lars Clausen  <lrclause@cs.uiuc.edu>
7224         * app/render_libart.c: Slow but working libart freetype renderer,
7225         with color!
7227 2002-02-03  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7229         * app/render_gdk.c (draw_string): Fixed gc_function bug.
7231         * lib/widgets.c (dia_font_selector_init): Sorts the font list.
7233         * lib/font.c (freetype_render_string): 
7234         * lib/font.h:
7235         * app/render_gdk.c:
7236         * app/render_gdk.h: Changed freetype_render_string to use
7237         callback.  Rendering is broken.
7239 2002-02-03  Cyrille Chepelov  <cyrille@chepelov.org>
7241         Patch from Matthieu Sozeau <mattam@netcourrier.com>:
7243         * objects/UML/uml.h:    
7244         * objects/UML/uml.c: added UMLInheritanceType and isQuery
7245         (constant) UML Operation attributes. UMLInheritanceType is either
7246         UML_ABSTRACT or UML_POLYMORPHIC  or UML_LEAF.
7248         * objects/UML/class.h:
7249         * objects/UML/class.c:  
7250         * objetcs/UML/class_dialog.c: added code to handle new
7251         UMLOperation attributes via a GtkMenu and a checkbox.
7253 2002-02-03  Akira TAGOH  <tagoh@redhat.com>
7255         * app/disp_callbacks.c (ddisplay_realize): fixed XIM issue.
7256         several client doesn't work with previous codes.
7258 2002-02-01  Lars Clausen  <lrclause@cs.uiuc.edu>
7260         * lib/font.c (freetype_render_string): Kerning.  Very few fonts
7261         seem to use it.
7263 2002-02-02  Akira TAGOH  <tagoh@redhat.com>
7265         * app/disp_callbacks.c (ddisplay_canvas_events): fixed crashes,
7266         when doing the operation like invert the objects after active view is
7267         destroyed. when changes focus, it needs to set active_display.
7269         * app/layer_dialog.c (dia_layer_update_from_layer):
7270         (layer_dialog_edit_layer): need to convert to locale encoding
7271         if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
7272         (edit_layer_ok_callback):
7273         need to convert to UTF8 if GTK_DOESNT_TALK_UTF8_WE_DO is defined.
7275         * lib/diagramdata.c (new_diagram_data): ditto.
7277         * app/layer_dialog.c (layer_dialog_new_callback): ditto.
7279         * lib/diagramdata.c (new_layer): use utfchar instead of char for
7280         argument.
7282         * lib/widgets.c: if HAVE_FREETYPE isn't defined, it can't build. fixed.
7283         (dia_font_selector_set_styles): when HAVE_FREETYPE is defined only,
7284         it's needed for now. also this function needs prototype declaration.
7286 2002-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
7288         * lib/widgets.c: Style now functional on font selector.  Some leak
7289         possible, but doesn't show up under stress test.
7291 2002-01-31  Akira TAGOH  <tagoh@redhat.com>
7293         * app/plugin-manager.c (clist_select_row): name and description needs to
7294         convert to locale encoding, when GTK_DOESNT_TALK_UTF8_WE_DO is defined.
7295         (get_plugin_manager): ditto.
7297         * lib/plug-ins.c (dia_plugin_info_init): name needs to convert to UTF-8.
7299         * app/diagram_tree.c (get_object_name): fixed transaction for UTF-8
7300         support.
7302         * lib/prop_text.c (stringprop_reset_widget): fixed crashes,
7303         when prop->string_data is NULL.
7305 2002-01-30  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
7307         * lib/widgets.c: 
7308         * lib/widgets.h: New font selector separating font and style.
7309         Style not functional yet.
7311 2002-01-30  Lars Clausen  <lrclause@cs.uiuc.edu>
7313         * lib/text.c: 
7314         * app/render_gdk.c (draw_string): More freetype support, now
7315         renders text.  Still broken is font selection and exporting.
7317 2002-01-30  Akira TAGOH  <tagoh@redhat.com>
7319         * objects/chronogram/chronoref.c (chronoref_create): missing gettextize
7320         for font.
7322         * objects/chronogram/chronoline.c (chronoline_create): ditto.
7324         * objects/UML/usecase.c (usecase_create): ditto.
7326         * objects/UML/state.c (state_create): ditto.
7328         * objects/UML/object.c (objet_create): ditto.
7330         * objects/UML/node.c (node_create): ditto.
7332         * objects/UML/message.c (message_create): ditto.
7334         * objects/UML/component.c (component_create): ditto.
7336         * objects/UML/classicon.c (classicon_create): ditto.
7338         * objects/UML/actor.c (actor_create): ditto.
7340         * objects/SADT/box.c (sadtbox_create): ditto.
7342         * objects/SADT/annotation.c (annotation_create): ditto.
7344         * objects/GRAFCET/transition.c (TRANSITION_FONT): ditto.
7346         * objects/GRAFCET/step.c (STEP_FONT):
7347         * (step_create): ditto.
7349         * objects/GRAFCET/condition.c (CONDITION_FONT): ditto.
7351         * objects/GRAFCET/action.c (ACTION_FONT):
7352         (action_create): ditto.
7354         * objects/FS/function.c (function_create): ditto.
7356         * objects/FS/flow.c (flow_create):
7357         (flow_load): 
7358         (flow_apply_defaults): ditto.
7360         * objects/FS/flow-poly.c (flow_create):
7361         (flow_load):
7362         (flow_apply_defaults): ditto.
7364         * objects/FS/flow-ortho.c (orthflow_create):
7365         (orthflow_load):
7366         (orthflow_apply_defaults): ditto.
7368         * objects/ER/relationship.c: use utfchar instead of char for structure.
7369         (relationship_create): name needs to convert to UTF-8.
7371         * objects/ER/attribute.c: use utfchar instead of char for structure.
7372         (attribute_create): name needs to convert to UTF-8.
7374         * objects/ER/entity.c: use utfchar instead of char for structure.
7375         (entity_create): name needs to convert to UTF-8.
7377         * app/interface.c (fill_sheet_wbox): needs to convert UTF-8 to locale
7378         encoding for tooltips, if GTK_TALKS_UTF8 isn't defined.
7379         (fill_sheet_menu): needs to convert UTF-8 to locale encoding for menu
7380         items. if GTK_TALKS_UTF8 isn't defined.
7382 2002-01-29  Akira TAGOH  <tagoh@redhat.com>
7384         * objects/UML/class.c (umlclass_calculate_data): fixed malloc size.
7385         it was my careless mistake...
7387         * lib/attributes.c (attributes_set_default_font): temporarily gettextize
7388         a font name, because there are strings which isn't shown by "Courier".
7389         We need to consider a way to feel free to choose a font at runtime.
7391         * lib/render_object.c (render_object_load): ditto.
7393         * lib/text.c (data_text): ditto.
7395         * objects/EML/instantiation.c (instantiation_create): ditto.
7397         * objects/EML/interaction-ortho.c (interaction_ortho_create):
7398         (interaction_ortho_load): ditto.
7400         * objects/EML/interaction.c (interaction_create):
7401         (interaction_load): ditto.
7403         * objects/EML/process.c (fill_in_fontdata): ditto.
7405         * objects/ER/attribute.c (attribute_create): 
7406         (attribute_load): ditto.
7408         * objects/ER/entity.c (entity_create): 
7409         (entity_load): ditto.
7411         * objects/ER/relationship.c (relationship_create): 
7412         (relationship_load): ditto.
7414         * objects/UML/association.c (association_create): 
7415         (association_load): ditto.
7417         * objects/UML/class.c (fill_in_fontdata): ditto.
7419         * objects/UML/constraint.c (constraint_create): ditto.
7421         * objects/UML/dependency.c (dependency_create): ditto.
7423         * objects/UML/generalization.c (generalization_create): ditto.
7425         * objects/UML/implements.c (implements_create): ditto.
7427         * objects/UML/large_package.c (largepackage_create): ditto.
7429         * objects/UML/note.c (note_create): ditto.
7431         * objects/UML/realizes.c (realizes_create): ditto.
7433         * objects/UML/small_package.c (smallpackage_create): ditto.
7435         * objects/custom/shape_info.h (FONT_DEFAULT): ditto.
7437         * objects/custom/custom_object.c (custom_create): ditto.
7439         * objects/network/antenna.c (render_to_store): ditto.
7441         * objects/network/computer.c (render_to_store): ditto.
7443         * objects/network/disc.c (render_to_store): ditto.
7445         * objects/network/flash.c (render_to_store): ditto.
7447         * objects/network/hub.c (render_to_store): ditto.
7449         * objects/network/modem.c (render_to_store): ditto.
7451         * objects/network/modularswitch.c (render_to_store): ditto.
7453         * objects/network/monitor.c (render_to_store): ditto.
7455         * objects/network/printer.c (render_to_store): ditto.
7457         * objects/network/rj45plug.c (render_to_store): ditto.
7459         * objects/network/scead-plug.c (render_to_store): ditto.
7461         * objects/standard/textobj.c (textobj_load): ditto.
7463         * objects/sybase/client.c (render_to_store): ditto.
7465         * objects/sybase/dataserver.c (render_to_store): ditto.
7467         * objects/sybase/ltm.c (render_to_store): ditto.
7469         * objects/sybase/repserver.c (render_to_store): ditto.
7471         * objects/sybase/rsm.c (render_to_store): ditto.
7473         * objects/sybase/stableq.c (render_to_store): ditto.
7475         * plug-ins/dxf/dxf-import.c (read_entity_text_dxf): ditto.
7477         * objects/UML/uml.h (UML_STEREOTYPE_START):
7478         (UML_STEREOTYPE_END): changes default strings.
7480 2002-01-28  Akira TAGOH  <tagoh@redhat.com>
7482         * objects/UML/stereotype.c (string_to_bracketted): fixed transaction
7483         for UTF-8 support. if GTK+ and Dia don't handle UTF-8, all of characters
7484         which is given to arguments isn't UTF-8. so don't need to convert it.
7485         if GTK+ handle UTF-8, also don't need to convert it.
7486         (strend): remove.
7487         (bracketted_to_string): fixed transaction for UTF-8 support.
7488         also start/end bracket is not necessarily 1 character. so that when use
7489         strend(), it doesn't work correctly.
7490         (string_to_stereotype): use utfchar instead of char.
7491         (remove_stereotype_from_string): ditto.
7492         (stereotype_to_string): ditto.
7494         * objects/UML/stereotype.h: ditto.
7496         * objects/UML/message.c: use utfchar instead of char for structure.
7497         (MESSAGE_CREATE_LABEL, MESSAGE_DESTROY_LABEL): remove.
7499         * objects/UML/small_package.c: use utfchar instead of char for structure.
7501         * objects/UML/realizes.c: ditto.
7503         * objects/UML/object.c: ditto.
7505         * objects/UML/large_package.c: ditto.
7507         * objects/UML/implements.c: ditto.
7509         * objects/UML/generalization.c: ditto.
7511         * objects/UML/dependency.c: ditto.
7513         * objects/UML/constraint.c: ditto.
7515         * objects/UML/component.c: ditto.
7517         * objects/UML/class_dialog.c (attributes_get_current_values):
7518         (attributes_list_new_callback, attributes_fill_in_dialog):
7519         (parameters_set_values, parameters_get_values):
7520         (parameters_get_current_values, parameters_list_new_callback):
7521         (operations_set_values, operations_get_values):
7522         (operations_get_current_values, operations_list_new_callback):
7523         (operations_fill_in_dialog, templates_set_values):
7524         (templates_get_values, templates_get_current_values):
7525         (templates_list_new_callback, templates_fill_in_dialog):
7526         fixed transaction for UTF-8 support.
7528 2002-01-27  Akira TAGOH  <tagoh@redhat.com>
7530         * objects/UML/message.c (message_draw): fixed transaction for UTF-8 support.
7532         * objects/UML/class_dialog.c (class_read_from_dialog):
7533         (class_fill_in_dialog):
7534         (attributes_get_values): ditto.
7536         * objects/UML/actor.c (actor_create): ditto.
7538         * objects/UML/class.c (umlclass_calculate_data): ditto.
7540         * objects/UML/association.c (association_apply_properties):
7541         (fill_in_dialog): ditto.
7543         * objects/UML/uml.c (uml_get_attribute_string):
7544         (uml_get_operation_string):
7545         (uml_get_parameter_string):
7546         (uml_get_formalparameter_string): use utfchar instead of char.
7548         * objects/UML/uml.h: gettextize UML_STEREOTYPE_START and
7549         UML_STEREOTYPE_END.
7551         * objects/UML/class.h: use utfchar instead of char.
7553         * lib/dia_xml.c (data_add_string): ditto.
7555         * lib/text.c (text_insert_char): fixed characters# calculation
7556         when includes multibytes character in strings.
7558 2002-01-26  Steffen Macke  <sdteffen@yahoo.com>
7560         Patch from Richard Rowell <rwrowell@bellsouth.net>:
7562         * app/lineprops_area.c:
7563         * lib/arrows.h:
7564         * lib/arrows.c: 
7565         * lib/widgets.c: added crow foot arrow and cross arrow
7566         
7567         Patch from Frank Gevaerts <frank.gevaerts@fks.be>:
7568         
7569         * plug-ins/svg/render_svg.c: fixed arcs, fill and text alignment
7571 2002-01-26  Cyrille Chepelov  <cyrille@chepelov.org>
7573         * po/update.pl (REMOVED):
7574         * po/update.sh (REMOVED):
7575         * xml-i18n-merge.in.kg (REMOVED):
7576         * xml-i18n-update.in.kg (REMOVED):
7577         * sheets/Makefile.am:
7578         * Makefile.am:
7579         * autogen.sh:
7580         * configure.in: converted from xml-i18n-tools to intltools
7582         This looks like it fixes the build bugs of the snapshot tarballs, 
7583         and it supersedes #69611.       
7585 2002-01-25  Akira TAGOH  <tagoh@redhat.com>
7587         * lib/text.c (text_insert_char): fixed characters# calculation.
7588         it's not string length.
7590         * lib/plug-ins.c (dia_plugin_info_init): when GTK_DOESNT_TALK_UTF8_WE_DO
7591         is defined, needs to convert a description to UTF-8.
7593         * app/render_gdk.c (get_text_width): fixed transaction for
7594         UTF-8 support. also should uses gdk_text_width_wc() instead
7595         of gdk_text_width().
7597         * app/render_gdk.c (draw_string): when GTK_DOESNT_TALK_UTF8_WE_DO
7598         is defined, needs to convert to locale encoding for display.
7599         Also use utfchar instead of char for argument.
7601 2002-01-24  Hans Breuer  <hans@breuer.org>
7603         * app/commands.c(edit_paste_callback and more) : 
7604         call diagram_modified(ddisp->diagram) to fix #68083
7605         (help_menu_callback) : plug a DIR leak
7607         * app/disp_callbacks.c(ddisplay_canvas_events) : handle 
7608         GTK_TALKS_UTF8_WE_DONT
7610         * app/render_gdk.c(get_text_with) : it's a bad idea to use
7611         gdk_string_with() when GTK_TALKS_UTF8_WE_DONT instead of
7612         gdk_text_width(). The length value is still questionable ...
7614         * lib/charconv.c : use functions already available in early
7615         GLIB-1.3 days whiches API hasn't changed since, to avoid
7616         version problems with the win32 build
7618         * lib/font.c : finally fix #58045 and #68208
7620         * lib/dia_xml.c (xmlDiaSaveFile) : gzdopen in binary mode
7622 2002-01-24  Akira TAGOH  <tagoh@redhat.com>
7624         * app/disp_callbacks.c (ddisplay_canvas_events): when event returned
7625         no strings, fixed transaction.
7627         * lib/charconv.h: fixed typo.
7629         * app/menus.c: fixed typo.
7631         * lib/charconv.c (charconv_utf8_strchr): remove. use uni_strchr instead.
7633         * objects/UML/object.c: attrib's type uses utfchar instead of char.
7635         * app/disp_callbacks.c (ddisplay_canvas_events): forget g_free()
7637         * lib/text.c (text_create_change): use unichar instead of char.
7639         * lib/text.c (data_add_text, data_text, apply_textstr_properties):
7640         use utfchar instead of char.
7642         * lib/text.c (text_insert_char, text_key_event): fixed transaction for
7643         UTF-8 support.
7645         * lib/charconv.c (charconv_utf8_get_char): add new function.
7647 2002-01-23  Akira TAGOH  <tagoh@redhat.com>
7649         * lib/text.c (text_delete_forward, text_delete_backward,
7650         text_split_line): fixed transaction for UTF-8 support.
7652         * lib/text.c (text_copy): when UNICODE_WORK_IN_PROGRESS is defined,
7653         strlen[] has string length for UTF-8, so has to use alloclen[].
7655         * dia.pot: remove.
7657         * .cvsignore: add dia.pot.
7659 2002-01-24  Stanislav Visnovsky  <visnovsky@nenya.ms.mff.cuni.cz>
7661         * configure.in: Added "sk" to ALL_LINGUAS.
7663 2002-01-22  Akira TAGOH  <tagoh@redhat.com>
7665         * lib/text.c (text_set_string, new_text, text_copy,
7666         text_get_string_copy, text_join_lines): use utfchar instead of gchar
7667         for strings.
7669         * lib/text.c (set_string): use charconv_utf8_strchr() instead of
7670         strchr().
7672         * lib/charconv.c (charconv_utf8_strchr): add new function.
7674         * lib/charconv.c (charconv_keyval_to_unicode): ditto.
7676         * lib/charconv.c (charconv_utf8_from_gtk_event_key): ditto.
7678         * app/disp_callbacks.c (ddisplay_canvas_events): needs to convert
7679         strings to the appropriate encoding.
7681 2002-01-22  Lars Clausen  <lrclause@cs.uiuc.edu>
7683         * app/object_ops.c (object_list_align_[hv]): Leak fix.
7685         * lib/Makefile.am (INCLUDES): Added debug flags.
7687         * app/object_ops.c: Fixed ordering problem of align equi-distant &
7688         adjacent. 
7690 2002-01-21  Akira TAGOH  <tagoh@redhat.com>
7692         * lib/font.c (font_string_width): use gdk_text_width_wc() instead of
7693         gdk_string_width().
7695         * objects/GRAFCET/boolequation.c: fixed invalid comment.
7697         * objects/UML/stereotype.c (string_to_bracketted): fixed build problem
7698         when defined UNICODE_WORK_IN_PROGRESS.
7700         * lib/dia_xml.c (data_add_string): fixed typo.
7702 2002-01-20  Akira TAGOH  <tagoh@redhat.com>
7704         * configure.in: fixed test gtk_advancement.
7706 2002-01-019  Steffen Macke  <sdteffen@yahoo.com>
7708         * plug-ins/svg/render_svg.c: fix for #69053, alignment of text
7709         exported to SVG
7711         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>: 
7713         * app/recent_files.[ch]: reworked to support GNOME, accelerators,
7714         tool tips, preferences, and arbitrarily long ~/.dia/history
7716         * app/menus.c: made 'Plugins' consistantly spelled and accelerated;
7717         removed 'Open Recent'; added new separators for recent documents on
7718         File menu.
7720         * app/interface.[ch] (interface_get_toolbox_shell): new function
7722         * app/diagram.c: added new parameter to recent_file_history_add() call
7724         * app/preferences.[ch]: added new 'Recent documents list size'
7725         preferences item
7726         
7727 2002-01-18  Akira TAGOH  <tagoh@redhat.com>
7729         * lib/font.c (font_get_gdkfont_helper): use gdk_fontset_load ().
7730         if it failed, should be used gdk_font_load ().
7732         * lib/font.c (font_data): added the font entries for CJK.
7734 2002-01-17  Steffen Macke  <sdteffen@yahoo.com>
7736         Patch from M.C. Nelson <mcn@mani.kobayashimaru.org>:
7738         * app/menus.c: replaced GDK_F1 with "F1" to fix segfault on startup
7739         
7740 2002-01-04  Cyrille Chepelov  <cyrille@chepelov.org>
7742         Patch from Martin Cracauer <cracauer@cons.org>:
7743         
7744         * app/menus.c: add missing #include <gdk/gdkkeysyms.h> (useful in the
7745         non-GNOME case ?)
7747 2002-01-01  Hans Breuer  <hans@breuer.org>
7749         * app/command.c : optional use GDI printing on windoze
7751         * app/preferences.[hc] : add option 'prefer_psprint' to 
7752         select the print engine to use (could be used for Dia/Gnome
7753         as well)
7755         * app/paginate_gdiprint.(h|cpp) : new files, which interlink the
7756         wmf plug-in with the common win32 print api. Now printing
7757         should work almost as expected from a windows program :-)
7759         * app/diagram.c app/menus.[hc] : rename _UpdatableMenuItems.delete
7760         to .edit_delete to avoid clashes with C++
7762         * app/makefile.msc : updated for GDI printing
7764         * plug-ins/wmf/wmf.cpp : some small modifications to support
7765         GDI printing. Also swap R and B channel in draw_image()
7767         * app/makefile.am : added windows only files to EXTRA_DIST
7769         * objects/uml/class.c(umlclass_set_props) : force recalculation
7770         when applying properties
7772         * lib/charconv.c lib/dia_xml.c : temporary back-ported to
7773         glib-1.3.2 (for win32) IMHO causes recent cvs introduces too
7774         many incompatible changes (and would force a gtk update)
7776         * objects/makefile.msc : don't build C-Objects which are
7777         already available as 'pure shape'
7779         * plug-ins/makefile.msc : remove diaimport from build. It was
7780         only available via mailing-list and is broken since the
7781         StdProp overhaul.
7784         Patch from Jose A Ortega Ruiz  <jaortega@acm.org>
7786         * app/preferences.[hc] : tweaked preferences.c to make 
7787         PREF_STRING work. Use it for 'diagram_tree_hidden'. Also
7788         added some more DiagramTree prefererences and their own
7789         notebook page.
7791         * app/diagram_tree.[hc] : allow to sort by object type or name
7792         and hide by type ...
7793         * app/diagram_tree_menu.[hc] : ... add respective menu entries ...
7794         * app/diagram_tree_menu_callbacks.[hc] : ... and callbacks.
7796         * app/diagram_tree_window.c : handle hidden types and window
7797         size restoring.
7799 2001-12-20  Hans Breuer  <hans@breuer.org>
7801         * plug-ins/python/Makefile.am : patch from Peter Moulder 
7802         <pmoulder@csse.monash.edu.au> to make the python plug-in
7803         compile on *nix too.
7805 2001-12-03  Cyrille Chepelov  <chepelov@calixo.net>
7807         Patch from Alan <horkana@tcd.ie>:
7809         * app/menus.c: bind the F1 shortcut to the Help/_Manual function.
7811 2001-11-20  Hans Breuer  <hans@breuer.org>
7813         * app/makefile.msc : add new diagram_tree_menu(_callbacks).obj
7815 2001-11-18  Jose A Ortega Ruiz  <jaortega@acm.org>
7817         * app/diagram_tree.[hc] : Added new functions and types for
7818         sorting diagram and objects, and attaching the popup menus.
7820         * app/preferences.h: Added more diagram tree preferences, using a
7821         DiagramTreeConfig struct in DiaPreferences. The new prefs are the
7822         height and width of the diagram tree window and the default sort
7823         orders for diagrams and objects.
7825         * app/preferences.c (prefs_data): Added new entries for the new
7826         diagram tree preferences.
7828         * app/preferences.c (prefs_tabs): New tab for diagram tree
7829         preferences.
7831         * app/diagram_tree_window.[hc] (create_diagram_tree_window): 
7832         * app/diagram_tree_window.c (diagram_tree_window_new): 
7833         * app/interface.c (create_tree_window): The diagram tree window is
7834         initialised using the DiagramTreeConfig part of prefs.
7837 2001-11-14  Jose A Ortega Ruiz  <jaortega@acm.org>
7839         * app/diagram_tree_menu.[hc]: New files. Functions to create the
7840         diagram tree popup menus.
7842         * app/diagram_tree_menu_callbacks.[hc]: New files. Callbacks for
7843         the diagram tree popup menus.
7845         * app/Makefile.am (dia_core_files): diagram_tree_menu* files
7846         added.
7848 2001-11-13  Jose A Ortega Ruiz  <jaortega@acm.org>
7850         * app/diagram_tree.c (double_click_callback, diagram_tree_new):
7851         double-clicking a diagram tree node raises the diagram window
7852         to the foreground (and, if a object node was clicked, selects the
7853         object in the diagram).
7855         * app/diagram_tree.c (select_tree_widget): selecting an object
7856         node with single click simply updates it (no raise).
7858 2001-11-08  Jose A Ortega Ruiz  <jaortega@acm.org>
7859         These changes make the diagram tree lazy: it is not created unless
7860         the diagram tree window is requested.
7861         
7862         * app/diagram_tree_window.[hc] (create_diagram_tree_window): new
7863         function for creating the tree window.
7865         * app/interface.c (create_tree_window): call
7866         create_diagram_tree_window() instead of diagram_window().
7868         * app/diagram_tree.c (diagram_tree_add, diagram_tree_remove) 
7869         (diagram_tree_update, diagram_tree_update_name) 
7870         (diagram_tree_add_object, diagram_tree_add_objects) 
7871         (diagram_tree_remove_object, diagram_tree_remove_objects) 
7872         (diagram_tree_update_object): accept a NULL tree as a nominal
7873         argument (and do nothing in this case!), so that the diagram tree
7874         is not initialised if not used.
7876         * app/diagram_tree_window.c (diagram_tree): do not create the
7877         diagram tree until diagram_window() or diagtree_show_callback()
7878         are invoked.
7880 2001-10-31  Jose A Ortega Ruiz  <jaortega@acm.org>
7881         [slightly modified and applied from Hans Breuer <hans@breuer.org>]
7883         * app/diagram_tree_window.[hc] : (new files) implementation of 
7884         the diagram tree window, a container for a diagram tree. [Removed
7885         the horizontal scroll bar glitch by disableing it]
7887         * app/diagram_tree.[hc] : (new files) implementation of the 
7888         diagram tree widget. [Don't rely on the layers GPtrArray to be
7889         NULL terminated, but use its ->len field] 
7891         * app/Makefile.am (dia_core_files): added new files
7892         diagram_tree.[hc] and diagram_tree_window.[hc]
7894         * app/interface.[hc] : (create_tree_window): this function 
7895         creates the new diagram tree window widget
7897         * app/undo.c (delete_objects_apply) (delete_objects_revert) 
7898         (insert_objects_apply) (insert_objects_revert) (group_objects_apply) 
7899         (ungroup_objects_apply) (ungroup_objects_revert): 
7900         every time that an undoable command modifies a diagram 
7901         adding/removing/(un)grouping objects, a diagram_tree_something() is 
7902         invoked to keep the diagram tree window in sync
7904         * app/properties.c (properties_apply): call to
7905         diagram_object_modified(), which updates the diagram tree window
7906         when the properties of an object are modified
7908         * app/preferences.[hc] : new "show_diagram_tree" configuration option 
7909         (whether the diagram tree window should be shown on dia startup)
7911         * app/menus.c : added '<Toolbox>/File/Diagram Tree' entry
7913         * app/diagram.h (diagram_object_modified): callback notifying of a
7914         diagram object modification
7916         * app/diagram.c (diagram_load_into): added call to
7917         diagram_tree_add() to add newly loaded diagrams to the diagram
7918         tree window
7919         (diagram_destroy): call to diagram_tree_remove() to remove a
7920         destroyed diagram from the diagram tree window
7921         (diagram_add_object): call to diagram_tree_add_object() to add an
7922         object to the diagram tree window
7923         (diagram_add_object_list): as above, but with an object list
7924         (diagram_selected_break_external): deletion of objects from the
7925         diagram is detected here, and diagram_tree_remove_object() is
7926         invoked to remove the object from the diagram tree window (it
7927         would be nice to have a diagram_remove_object() in the Diagram
7928         interface)
7929         (diagram_set_filename): update the diagram tree window when a
7930         diagram's filename changes
7932         * app/commands.c (file_new_callback): added call to
7933         diagram_tree_add() to add newly created diagrams to the diagram
7934         tree window
7936         * app/app_procs.c (app_init): added call to create_tree_window()
7938         * app/makefile.msc : updated
7940 2001-10-28  Hans Breuer  <hans@breuer.org>
7942         * app/preferences.h (DiaPreferences): 
7943         * app/preferences.c (prefs_data): new "show_diagram_tree"
7944         configuration option (whether the diagram tree window should be
7945         shown on dia startup)
7947         * app/menus.c: added the new "<Toolbox>/View/Diagram tree" menu
7948         entry (both for GNOME and gtk)
7950         * app/diagram.h (diagram_object_modified): callback notifying of a
7951         diagram object modification
7953         * app/diagram.c (diagram_load_into): added call to
7954         diagram_tree_add() to add newly loaded diagrams to the diagram
7955         tree window
7956         (diagram_destroy): call to diagram_tree_remove() to remove a
7957         destroyed diagram from the diagram tree window
7958         (diagram_add_object): call to diagram_tree_add_object() to add an
7959         object to the diagram tree window
7960         (diagram_add_object_list): as above, but with an object list
7961         (diagram_selected_break_external): deletion of objects from the
7962         diagram is detected here, and diagram_tree_remove_object() is
7963         invoked to remove the object from the diagram tree window (it
7964         would be nice to have a diagram_remove_object() in the Diagram
7965         interface)
7966         (diagram_set_filename): update the diagram tree window when a
7967         diagram's filename changes
7969         * app/commands.c (file_new_callback): added call to
7970         diagram_tree_add() to add newly created diagrams to the diagram
7971         tree window
7973         * app/app_procs.c (app_init): added call to create_tree_window()
7975 2001-10-28  Hans Breuer  <hans@breuer.org>
7977         * plug-ins/python/pydia-property.c : apparently I missed
7978         to commit this last time. Now it has some more SetAttr
7979         support (apply from property)
7981         * plug-ins/python/pydia-properties.h : added PyDiaProperty_Check
7983         * plug-ins/python/pydia-text.[ch] : new files
7985 2001-10-14  Hans Breuer  <hans@breuer.org>
7987         * lib/charconv.c : g_locale_to_utf8() does not handle NULL
7988         strings. Use g_strdup() for these.
7990         libxml2 does not produce 'any extra indentation when saving a tree'
7991         [libxml2-2.4.2/doc/upgrade.html] anymore, which was the default with
7992         libxml(1). To get human readable XML some extra tweaking is required.
7993         It is enabled by setting 'pretty_formated_xml' to 'true' in 'diarc'.
7994         * lib/dia_xml.[hc] : provide and use 'DIAVAR pretty_formated_xml'
7995         * app/preferences.[ch] : initialize 'pretty_formated_xml'
7997         * lib/libdia.def : updated externals
7999         * lib/properties.h : add prototype for prop_list_from_single ()
8001         * plug-ins/makefile.msc : build metapost plug-in
8003         * plug-ins/metapost/render_metapost.c : msvc does not like
8004         switch labels without operation 'default: }'. Added a noop.
8006         * plug-ins/python/pydia-text.[hc] : (new files) wrap DiaText
8007         * plug-ins/python/diamodule.c : added PyDiaText 
8008         * plug-ins/python/makefile.msc : dito. Also added LIBXML_CFLAGS.
8009         Although the python plug-in does not use libxml at all, the
8010         headers are required to use the lib/prop*.h headers
8012         * plug-ins/python/pydia-diagramdata.c : added wrappers for
8013         update_extents and get_sorted_selected (should I duplicate
8014         more functions from PyDiaDiagram or should they be moved?)
8016         * plug-ins/python/pydia-properties.c : allow to set (some) properties
8017         through the dictionary api
8018         * plug-ins/python/pydia-property.h : declare PyDiaProperty_ApplyToObject
8019         * plug-ins/python/pydia-property.c : implement it (currently only
8020         string properties can be set)
8022         Reimplement PyDiaProperty_GetAttr by means of the new StdProp api.
8023         Quoting myself: 'Still not convinced that this is better than an 
8024          integral property->type and some casting ...
8025          It is trading a straightforward 40 lines switch statement to
8026          this nice 'type safe' function mapping (about 125 lines)'
8027         (But now it works again, better than changing the News file :)
8028         
8029 2001-10-14  Cyrille Chepelov  <chepelov@calixo.net>
8031         patch from <robert.young@dsto.defence.gov.au>: 
8032         * objects/UML/component.c: remember to set font in UML component
8033         object (fixes #62132)   
8035 2001-10-02  Lars Clausen  <lrclause@cs.uiuc.edu>
8037         * plug-ins/metapost/metapost.c: 
8038         * plug-ins/metapost/Makefile.am:
8039         * plug-ins/metapost/render_metapost.c:
8040         * plug-ins/metapost/render_metapost.h:
8041         Metapost renderer from Chris Sperandio
8043 2001-09-14  Hans Breuer  <hans@breuer.org>
8045         * app/render_gdk.c : reflect the fact, that GTK already talks
8046         UTF8 on win32, fixes #59982, #56100, (#55992 ?) ...
8048         * lib/font.c : 
8049         * app/render_libart.c : trying to fix #58045 but it appears
8050         to be an Gdk/win32, too. 
8052         * lib/charconv.c : handle utf8 conversion with the help of
8053         glib-1.3 even in the !HAVE_UNICODE case.
8055         * lib/dia_xml.c : reduce complaing about missing encoding, by
8056         detecting if the default (utf8) would break the file.
8058 2001-09-13  Cyrille Chepelov  <chepelov@calixo.net>
8060         * lib/charconv.c: (get_local_charset): at least please try to not 
8061         silently change the logic, while avoiding crashes. 
8063         * lib/font.c: (suck_font): put a #error, we have a nasty something
8064         to fix there before we switch to Gtk 2.0.
8065         
8066 2001-09-09  Hans Breuer  <hans@breuer.org>
8068         * **/makefile.mingw : Approach to compile Dia with mingw.
8069         Compiling mostly works but running does not (yet) ... 
8071         * lib/geometry.h : 
8072         - use G_OS_WIN32 instead of _MSC_VER to drag in isinf, etc. definitions. 
8073           Apparently mingw needs it too.
8074         - enable 'normalization' of a null verctor. Otherwise the beziergon
8075           bounding box calculation would be broken at least with msvc. What's
8076           the mathematical correct result of 0.0/0.0 ?
8078         * lib/dia_xml.c : isinf() for mingw too.
8080         * lib/dia_dirs.c : use MAX_PATH instead of _MAX_PATH (works for mingw 
8081         and msvc)
8083         * lib/charconv.c : still crashes if strcmp(NULL, "UTF-8"). 
8084         Please don't do it.
8086         * lib/font.c : Trying to reflect that GTK_TALKS_UTF8_WE_DONT
8088         * lib/libdia.def : updated externals. Apparently mingw needs
8089         them to produce the right mangling.
8091         * plug-ins/shape/shape-exports.c : get prototypes for xmlStrdup
8092         and xmlDiaSaveFile
8094 2001-09-08  Wang Jian  <lark@linux.net.cn>
8096         * configure.in(ALL_LINGUAS): Renamed zh_CN.GB2312 to zh_CN
8098 2001-09-07  Cyrille Chepelov  <chepelov@calixo.net>
8100         * lib/dia_xml_libxml.h:
8101         * lib/dia_xml.c: (data_add_string), (xmlDiaSaveFile): Duplicated
8102         libxml1's code, to rework the output file before it gets committed
8103         to disk. This is rubbish, and will be removed when libxml2
8104         switches from discouraged to mandatory. 
8105         All in all, this fixes #60152. 
8106         
8107         * lib/charconv.h: 
8108         * lib/charconv.c: (charconv_unichar_to_utf8):
8109         made the type of the input parameter explicitly an unsigned long.
8111         * configure.in: Added a check for libz (we must now include it
8112         explicitly, for xmlDiaSaveFile).
8113         
8114         * app/load_save.c: (diagram_data_save):
8115         * lib/plug-ins.c: (ensure_pluginrc), (info_fill_from_pluginrc),
8116         (dia_pluginrc_write):
8117         * plug-ins/shape/shape-export.c: (new_shape_renderer),
8118         (end_render), (draw_string):
8119         * plug-ins/svg/render_svg.c: (new_svg_renderer), (end_render),
8120         (draw_string):
8122         Made sure we always write UTF-8 XML files, and through
8123         xmlDiaSaveFile().
8125         * NEWS: documented that fact.
8126         
8127 2001-09-07  James Henstridge  <james@daa.com.au>
8129         * configure.in (found_libxml): refactor the check for libxml a
8130         little so that it handles finding both libxml1 and 2 better.
8132 2001-09-03  Cyrille Chepelov  <chepelov@calixo.net>
8134         * app/app_procs.c: removed a spurious } which caused a compilation
8135         error in the (!HAVE_GNOME && HAVE_POPT_H) case
8137         * lib/charconv.c: (get_local_charset): some versions of iconv(1)
8138         don't know what ANSI X3.4-1968 is. I didn't know until this day,
8139         but it's just plain old ASCII. Added a check to shield the poor
8140         XML library.
8142         Patches from <robert.young@dsto.defence.gov.au>:
8144         * lib/text.c: (text_calc_boundingbox) Bounding box now calculates the
8145         width and height of text before calculating bounds. Fixes #59928
8147         * app/preferences.c: Moved grid related items into Grid Tab.
8148         
8149 2001-09-02  Cyrille Chepelov  <chepelov@calixo.net>
8151         * app/interface.c: (create_zoom_widget): connected one more signal
8152         to the Zoom selector combo's list. Fixes #59879.
8154         * app/app_procs.[ch]: (app_init) (do_convert)
8155         (build_output_file_name): brought back into the main executable
8156         the rare useful bits of the ill-fated diaconv. This means we have
8157         one new feature : --export-to-format (-t), which should make
8158         writing conversion scripts easier, and a crude implementation of
8159         -t and -e for the poptless argument parsing, which means the Win32
8160         port should be able to take advantage of it (that should make
8161         resolving #58197 possible).
8163         * app/diaconv.c: kept the poor duck compiling (but that's about
8164         it).
8166         * plug-ins/svg/render_svg.c: updated the SVG DTD header (I hope
8167         I've got it right).
8169         * NEWS: updated about the new feature above, and documented the 
8170         "missing encoding specification" complaint. 
8171         
8172 2001-09-01  Abel Cheung  <maddog@linux.org.hk>
8174         * configure.in: Rename zh_TW.Big5 -> zh_TW in ALL_LINGUAS.
8176 2001-09-01  Cyrille Chepelov  <chepelov@calixo.net>
8178         * objects/standard/bezier.c: used g_new0 instead of g_new, to take
8179         care of #59837.
8181 2001-09-01  James Henstridge  <james@daa.com.au>
8183         * */Makefile.am: various changes to include missing files, and fix
8184         sheets dir to handle building with builddir != srcdir.
8186         * autogen.sh: unconditionally pass the --enable-maintainer-mode
8187         and --enable-db2html flags so that builds from CVS work correctly.
8189         * configure.in: increment version number.  Also add an
8190         --enable-db2html flag.  Without the flag, db2html won't be run (if
8191         the flag is passed and db2html is not present, do nothing).
8193 2001-08-30  Cyrille Chepelov  <chepelov@calixo.net>
8195         * lib/poly_conn.c: (polyconn_copy): it's a wonder this routine
8196         even compiled. It's really too bad there is no lint tool easily
8197         available (or a more cautious, pedandic, paranoid and verbose
8198         compiler). Anyway, this fixes #59662. (this didn't affect 0.88.x)
8200 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
8202         * app/load_save.c:
8203         * dia/lib/plug-ins.c: use g_strdup() instead of strdup(). Patch
8204         from <robert.young@dsto.defence.gov.au>. Fixes #59591.
8206         * app/menu.c: added ellipsis(...) to diagram properties menu item.
8207         * app/dia-props.c: diagram properties dialog contents did not
8208         represent current diagram settings.
8209         * app/dia-props.[ch]:
8210         * app/display.c: diagram properties contents now follows currently
8211         selected diagram.
8212         Patch also from <robert.young@dsto.defence.gov.au>, fixes #59409.
8214         * AUTHORS: added Robert Young.
8215         
8216 2001-08-27  Cyrille Chepelov  <chepelov@calixo.net>
8218         * app/modify_tool.c: (modify_button_release): Patch from
8219         <robert.young@dsto.defence.gov.au>. Fixes the remaining bit from
8220         #59090: if selection dragging was released outside of the window, 
8221         artifacts of the selection box remained.
8223 2001-08-25  Cyrille Chepelov  <chepelov@calixo.net>
8225         * Objects/custom/shape_info.c: added missing #include <xmlmemory.h>
8227 2001-08-19  Cyrille Chepelov  <chepelov@calixo.net>
8229         * configure.in:
8230         * sheets/Makefile.am: prepared the terrain for the Version of
8231         xml-i18n-tools Which Comes After 0.9 (and which will feature at
8232         last a sane behaviour with XML files). Some reasonible delay
8233         before enforcing that version *will* be given.
8235         * xml-i18n-merge.in.kg: included the current CVS xml-i18n-merge.in
8236         
8237         * lib/plug-ins.c: <xmlmemory.h> defines xmlFree(), otherwise it
8238         becomes a nonexistent symbol.
8239         
8240 2001-08-18  Hans Breuer  <hans@breuer.org>
8242         * app/app_procs.c : made it compile without ENABLE_NLS
8244         * app/diap_callbacks.c : strcmp isn't guaranteed to work
8245         with NULL pointers
8247         * app/load_save.c :
8248         * lib/plug-ins.c : 
8249         * objects/custom/shape_info.c : avoid mixing allocators and dealocators. 
8250         It has to be :
8251                 xmlGetProp, ... -> xmlFree
8252                 malloc, strdup -> free
8253                 g_new, g_malloc, g_strdup - > g_free
8255         * app/win32print.c : some more error checking, still not
8256         working on Win9x
8258         * lib/charconv.c : get_local_charset is used even with !HAVE_UNICODE
8260         * lib/dia_xml.c : msvc still has no unistd.h
8262         * lib/dia_xml.c :
8263         * lib/sheets.c : temporary resolved libxml include brokeness
8265         * plug-ins/python/pydia-*.c : reflect Font and StdProp api
8266         changes. Compiles again, but doesn't do anything useful anymore.
8267         (see THE_PROP_TYPE_IS_INTEGRAL)
8269         * **/makefile.msc : updated to use LIBXML2
8271         * lib/libdia.def : reflect api changes
8273 2001-08-17  Cyrille Chepelov  <chepelov@calixo.net>
8275         * config.h.win32: added defines telling that gtk speaks UTF8.
8276         Hans, I believe this reflects what GTK on Win32 does.
8278         * app/app_procs.c: if GTK talks UTF8, we'll feed it UTF8 localised
8279         strings.        
8280         * lib/prop_inttypes.c: 
8281         * lib/prop_text.c:
8282         * lib/prop_widgets.c: fixed typos in the GTK_TALKS_UTF8_WE_DONT
8283         code path.
8284         
8285         * lib/plug-ins.c: (dia_register_plugins_in_dir): If there is a
8286         trailing // (or whatever (G_DIR_SEPARATOR * 2) is), a recursive
8287         search for plug-ins is done.
8288         * app/Makefile.am: made app/run_dia.sh use the // capability. No
8289         need to update this anymore if we get a new plug-in library (or
8290         remove one).
8292         * lib/dia_xml.c: #include <unistd.h> was missing.
8293         
8294         * lib/properties.h: 
8295         * lib/proplist.c: (pdtpp_defaults): Added a new flag,
8296         PROP_FLAG_NO_DEFAULTS. Will be used in the "automatic defaults"
8297         support.        
8299 2001-08-16  Cyrille Chepelov  <chepelov@calixo.net>
8301         * sheets/civil.sheet: removed duplicate "Danish" entries.
8303         * autogen.sh:
8304         * configure.in: 
8305         * .cvsignore:
8306         * sheets/Makefile.am: 
8307         * po/POTFILES.in:
8308         * Makefile.am: applied the xml-i18n-tools README's instructions.
8310         * po/(da de fr hu nl nn no sl).po: merged the translations from
8311         the sheet files into the .po files. I hope I haven't mixed
8312         languages...
8313         * sheets/*.sheet (REMOVED):
8314         * sheets/*.sheet.in (NEW): moved the sheet files sans
8315         translations into .sheet.in files. 
8316         
8317         * sheets/xml-i18n-unicodify: (NEW) included from xml-i18n-tools,
8318         because we don't yet want to force all translators to work using
8319         UTF-8 editors. We'll want to do that sometime (sooner rather than
8320         later). Okay, I sing a slightly different tune in po/ChangeLog...
8322         * dia.desktop (REMOVED):
8323         * dia.desktop.in (NEW): used also the x18t infrastructure for
8324         this too.
8326         * xml-i18n-update.in.kg (NEW): This one will stay in CVS until an
8327         "official" version of x18t with support for .sheet files is available.
8328         * xml-i18n-merge.in.kg (NEW): This one will stay in CVS until an
8329         "official" version of x18t which doesn't corrupt UTF-8 data in XML
8330         is available.
8331         
8332         ** yes, we are now using xml-i18n-tools to manage the sheet
8333         translations. For the Win32 build, Nemo stores snapshots of
8334         translated strings next to the CVS snapshots. **
8336         * sheets/checktrans.py: suddenly, some sheets have lots of
8337         translations (objects which existed before sheets, mostly).
8338         Adapted the formatting.
8340         * po/README (REMOVED): this is obsolete ! It was ignored, anyway.
8342         * app/display.[ch]: (ddisplay_autoscroll), (ddisplay_scroll):
8343         * app/modify_tool.[ch]: (modify_motion): A (modified) patch from
8344         <robert.young@dsto.defence.gov.au>, to fix #59090.
8346         * app/display.c: (ddisplay_scroll): While at it, added some
8347         margin, so that autoscrolling can happen within a margin outside
8348         the diagram's extents.
8350         * app/tool.[ch]: 
8351         * app/interface.c:
8352         * app/disp_callbacks.c: Robert "forced" me to go when I usually
8353         don't, namely the app/ directory. So while I was there, I
8354         scratched a long-time itch. If no object has focus, pressing the
8355         space bar will select back the tool which was selected before the 
8356         current one (I find this especially useful with "reset after create" !)
8357         
8358         * lib/proplist.c: (prop_list_from_single): Renamed
8359         prop_list_singleton() to avoid confusion with the Singleton
8360         pattern (which it definitely is not).
8361         
8362         * lib/propobject.c: (object_prop_by_name_type),
8363         (object_prop_by_name): The "flags" parameter was not necessary.
8364         These don't return synthetic properties, but properties built from
8365         a real property description list; therefore, we don't call
8366         make_new_prop() but use the existing property descriptor, which
8367         has perfectly valid (and meaningful) flags.
8369         * lib/proplist.c: (pdtpp_synthetic), (pdtpp_from_object): These
8370         new predicates better reflect the reason why properties exist when
8371         they're created by make_new_prop() or object_prop_by_name().    
8373         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
8374         * lib/prop_basic.c: (make_new_prop): used the new reasons instead
8375         of pdtpp_true().
8377         * lib/properties.h: reflects all the above changes.
8379         * objects/SADT/arrow.c:
8380         * objects/SADT/annotation.c:
8381         * sheets/SADT.sheet: minor renamings to better match FIPS 183's
8382         IDEF0 terminology.
8383         
8384 2001-08-15  Cyrille Chepelov  <chepelov@calixo.net>
8386         * lib/properties.h:
8387         * lib/proplist.c: (prop_list_singleton):
8388         * lib/propobject.c: (object_prop_by_name_type), (object_prop_by_name):
8389         Added these, to simplify interactions of plug-ins with the StdProp
8390         core.
8392         * lib/Makefile.am:
8393         * lib/dia_xml.h:
8394         * lib/dia_xml_libxml.h (NEW): 
8395         * app/load_save.c:
8396         * lib/dia_xml.c:
8397         * lib/plug-ins.c:
8398         * lib/sheet.c:
8399         * objects/custom/shape_info.c: A few prototypes were causing
8400         #include hell, because we generally attempt to not pull the whole
8401         libxml header set when we include dia_xml.h. Moved those
8402         prototypes away for the rare cases they're necessary.
8403         
8404 2001-08-15  Hans Breuer  <hans@breuer.org>
8406         * lib/font.c : made LARS_TRACE_MESSAGES Standard C conform
8408         * lib/libdia.def : 
8409         * lib/makefile.msc : updated
8411         * lib/prop_basic.c : __FUNCTION__ is a gcc extension. Please
8412         use G_GNUC_FUNCTION instead.
8414         * lib/prop_inttypes.c : include <stdlib.h> for strtol()
8416         * objects/sadt/annotation.c : disable TEMPORARY_EVENT_TEST for
8417         msvc instead of cleaning missing includes
8419         * plug-ins/wmf/wmf.cpp :
8420         * plug-ins/wmf/wmf_gdi.h : fixed for Font to DiaFont renaming
8422 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
8424         * app/app_procs.c:
8425         * app/load_save.c:
8426         * lib/dia_xml.c:
8427         * lib/plug-ins.c:
8428         * lib/sheet.c:
8429         * objects/custom/shape_info.c:
8430         * plug-ins/shape/shape-export.c:
8431         * plug-ins/svg/render_svg.c: used the libxml1/libxml2
8432         compatibility macros as taught by http://xmlsoft.org/upgrade.html;
8433         removed xmlKeepBlanksDefault(0) in favour for proper
8434         xmlIsBlankNode() testing. Lots of other fixups to use the
8435         "libxml1.5" (libxml2 parser embedded in recent libxml1), and to
8436         make libxml1 output correct files.
8438         * configure.in: use libxml2 (>= 2.3.9) if it's found, or
8439         libxml1 (>= 1.8.14). Exactly one of these must be installed (devel
8440         packages). If both devel packages are found, the build will stop 
8441         (Fredrik: please add a Build-Conflicts: on libxml2-dev for the moment) 
8443         * lib/bezier_conn.c: (bezierconn_init): Lars, you forgot to
8444         allocate the first handle :-)
8445         
8446         * lib/object.c: (object_init): <gratuitous>g_new() used instead of
8447         a cast and a sizeof.</gratuitous>
8449         * objects/custom/custom_object.c: (custom_copy): don't call
8450         text_get_attrbutes if the shape has no text...
8451         (custom_update_data): The info->resize_with_text code was a bit
8452         directive; basically, the shape's bounding box was forced to be 
8453         proportional to the text's bounding box.... This fixes #57187.
8454         
8455         * objects/custom/shape_info.c: (load_shape_info): Set an obvious
8456         default for info->aspect_ratio; unobfuscated a line about
8457         info->resize_with_text;
8458         
8459 2001-08-15  Cyrille Chepelov <chepelov@calixo.net>
8461         * lib/properties.h: added comments next to the PROP_TYPEs to tell
8462         which C Property subclass to use.
8463         
8464         * plug-ins/dxf/dxf-import.c: (read_entity_line_dxf): Removed the
8465         cast-ridden form of setting properties in a list, in favour for
8466         the "local pointers" form. I'll take any better offer...
8468 2001-08-14  Cyrille Chepelov <chepelov@calixo.net>
8469         
8470         * lib/font.c: fprintf(...) --> fprintf(format...)
8472         * configure.in: added a disabled versioned test for glib.
8473         * lib/prop_geomtypes.c: (bezpointprop_load), (bezpointprop_save),
8474         (bezpointarrayprop_load), (bezpointarrayprop_save): replaced
8475         g_critical() with a simple g_error(). Proper fix is to implement
8476         that stuff. 
8478         * lib/properties.h: PROP_STD_TEXT is a PROP_TYPE_TEXT, not a
8479         PROP_TYPE_STRING.
8480         
8481         * lib/properties.h:     
8482         * lib/propdesc.c: (prop_desc_list_calculate_quarks):
8483         * lib/proplist.c: (find_prop_by_name_and_type):
8484         * lib/prop_basic.c: (make_new_prop), (initialize_property):
8485         * lib/propoffsets.c: (do_set_props_from_offsets),
8486         (do_get_props_from_offsets), (prop_offset_list_calculate_quarks):
8487         Added a type_quark member to PropDescription, Property and
8488         PropOffset. Used it to implement a safety in
8489         do_[sg]et_props_from_offsets().
8490                 
8491         * objects/flowchart/diamond.c: the diamond's text was not saved,
8492         and thus not even copied (c&p).
8493         * objects/standard/textobj.c: ditto.
8495         Most of the above changes thanks to Robert Young's testing. Thanks !
8496         
8497 2001-08-14  Kjartan Maraas  <kmaraas@gnome.org>
8499         * sheets/*.sheet: Added some Norwegian translations (both nynorsk
8500         and bokmÃ¥l).
8501         
8502 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
8504         * lib/proplist.c (prop_list_from_descs): added a call to
8505         prop_desc_list_calculate_quarks(). (find_prop_by_name_and_type):
8506         too embarrassing to tell.
8507         
8508         * lib/propdesc.c (prop_desc_list_calculate_quarks): converted the
8509         while loop to a for loop, for symmetry with
8510         prop_offset_list_calculate_quarks().
8512         * lib/geometry.h: new inline function, rectangle_equals.
8514         * lib/diagramdata.[ch]: refactored a bit the diagram extents
8515         computation logic, and changed it to always be the union of the
8516         visible layers' extents. This should close #58882 (Debian
8517         #107167), and fixes #55498.
8519         * app/display.c: made the initial visible box more coherent with
8520         the diagram being loaded's extents.
8522         * app/prop_attr.c: don't set the font (from offset) if font_data
8523         is NULL. Two brainos in colorprop_load() and fontprop_load().
8524         
8525 2001-08-13  Cyrille Chepelov  <chepelov@calixo.net>
8527         * lib/properties.[ch]: split in a lot of pieces: 
8529         * lib/prop_*.[ch] (NEW): all property types are now first-class
8530         objects, inheriting from the original abstract Property type.
8531         * lib/propdesc.c (NEW): property description handling routines
8532         * lib/propoffsets.c (NEW): property offset handling routines
8533         * lib/proplist.c (NEW): property list handling routines
8534         * lib/propobject.c (NEW): property list <-> object routines
8535         * lib/propregistry.c (NEW): holds the PropertyType-->PropertyOps
8536         relations.
8537         * lib/propinternals.h: prototypes for stuff not usually needed by 
8538         the outside of StdProps.
8539         * lib/Makefile.am: a lot of new files have been added...
8541         THE ABOVE CHANGES ARE MAJOR CHANGES AND AFFECT THE WHOLE TREE, IN
8542         BOTH INTERFACES AND RUN-TIME STABILITY.
8544         * lib/plug-ins.h: bumped up DIA_PLUGIN_API_VERSION
8545         
8546         * lib/object.h: removed the incestuous relationship with
8547         properties.h' contents. Now a Property list is a GPtrArray -->
8548         object interface change !
8550         * app/app_procs.c/app_init(): removed a disabled call to a
8551         non-existent routine. Added a call to stdprops_init().
8552         
8553         * objects/Makefile.am: disabled the construction of EML. I'm not
8554         touching these until a certain issue is solved (or this module
8555         removed).
8556         * app/group.c:  
8557         * objects/**/*.c except objects/EML/*: adapted all stdprop-using 
8558         objects to the interface changes.
8559         
8560         * app/disp_callbacks.c: killed a warning.
8561         * lib/dia_xml.[ch]: sprinkled "const" modifiers. 
8563         * app/commands.c: 
8564         The macros PROP_VALUE_* have disappeared. Adapted to using the new 
8565         interface.
8567         * plug-ins/dxf/dxf-import.c: 
8568         * plug-ins/xfig/xfig-import.c: 
8569         PROP_VALUE_* macros have been removed. Converted to the new API.
8571         * plug-ins/python/**/*: I gave up converting this; I can't
8572         compile --with-python (problems with object.h defined both by us
8573         and by Python). I'll gladly help whomever cares to fix it !
8574         (or, fix it myself if someone tells me how to compile it).
8575         
8576         * configure.in: added the UNICODE-related progress defines.
8577                 
8578         * configure.in:
8579         * lib/geometry.h: On Solaris and perhaps other systems, finite()
8580         is defined in ieeefp.h rather than in math.h. Patch from Andrew
8581         Halper <ashalper@acm.org> with further modifications, isinf() is
8582         provided by -lsunmath (sunmath.h).
8583         
8584         * lib/font.c: conditionally disabled Lars' debugging messages.
8585         Bracketed the definition of DiaFontFamily with #ifdef HAVE_FREETYPE.
8586         
8587 2001-08-11  Lars Clausen  <lrclause@cs.uiuc.edu>
8589         * lib/bezier_conn.h: 
8590         * objects/standard/bezier.c (bezierline_create): 
8591         * lib/bezier_conn.c (bezierconn_init): 
8592         Preparations for use of userdata for bezier lines.
8593         
8594         * objects/standard/polygon.c: 
8595         * objects/standard/create.h:
8596         * lib/polyshape.c:
8597         * lib/polyshape.h:
8598         * plug-ins/xfig/xfig-import.c:
8599         Use of user_data for polygon as well, including adding
8600         polyshape_set_points.  Include file for non-interactive 
8601         creation of standard objects, objects/standard/create.h
8603 2001-08-10  Lars Clausen  <lrclause@cs.uiuc.edu>
8605         * app/render_gdk.c: 
8606         * app/render_gdk.h: 
8607         * lib/font.c:
8608         * lib/font.h:
8609         * lib/widgets.c:
8610         More preliminary freetype support.  Not at all functional, crashes
8611         when rendering.
8613         * lib/poly_conn.h: 
8614         * lib/poly_conn.c: 
8615         * objects/standard/polyline.c: 
8616         Support for creating polyline objects with more than two points.
8617         This includes an extra function and a prototype change in the
8618         poly_conn lib object.
8620         * lib/object.c (object_copy): Fixed memory leak of handles and
8621         connections.
8623 2001-08-08  Abel Cheung  <maddog@linux.org.hk>
8625         * dia.desktop: added traditional Chinese strings
8627 2001-08-04  Cyrille Chepelov  <chepelov@calixo.net>
8629         * NEWS: updated to reflect build-time dependencies.
8631         * lib/properties.[ch]: wrote get_prop_descriptions() as a wrapper
8632         around obj->ops->describe_props(obj). Quarks are none of an
8633         object's business in the general case... 
8634         * lib/text.c: Added an apply_textattr_properties() function to
8635         factor out some common code related to applying a dialog's text
8636         attribute properties to a (Text *) which wasn't edited there. 
8637         Ditto for textstr, for the string part of an objet.
8639         * objects/GRAFCET/action.c:
8640         * objects/SADT/annotation.c:
8641         * objects/SADT/box.c: used apply_textattr_properties().
8642         
8643         * objects/UML/actor.c: 
8644         * objects/UML/branch.c:
8645         * objects/UML/component.c:
8646         * objects/UML/constraint.c:
8647         * objects/UML/small_package.c:
8648         * objects/UML/state.c:
8649         * objects/UML/usecase.c:
8650         * objects/UML/large_package.c:
8651         * objects/UML/note.c:
8652         * objects/UML/node.c:
8653         * objects/UML/message.c:
8654         * objects/UML/classicon.c:
8655         * objects/UML/object.c:
8656         * objects/UML/realizes.c:
8657         * objects/UML/dependency.c:
8658         * objects/UML/implements.c:
8659         slim-fast(tm) cure using more StdProps, and UTF-8 audit.
8660         (most objects were already using StdProps to some extent ; this
8661         systematises usage and removes some dead wood). 
8662         
8663         * objects/UML/stereotype.[ch]: use UTF-8 internally. const police work.
8664         * objects/UML/uml.[ch]: audited for UTF-8.
8666         * objects/UML/class.c: the UML_STEREOTYPE_* strings defined by
8667         uml.h can be in UTF-8... this code isn't yet ready. Duplicating a
8668         private (ISO-8859-1) definition.
8669         
8670         * lib/charconv.c: Added a warning if we didn't run
8671         nl_langinfo(CODESET) but rely instead on a hardcoded default.
8672         
8673 2001-08-02  Cyrille Chepelov  <chepelov@calixo.net>
8675         * lib/diamenu.h:
8676         * app/disp_callbacks.c: added a way for an object to cause an
8677         already realised menu to be destroyed (for instance if it changes
8678         too much).
8680         * objects/custom/custom_object.c: used the above to fix #55073.
8682 2001-08-01  Lars Clausen  <lrclause@cs.uiuc.edu>
8684         * configure.in: Remove 2.50 prereq.
8686 2001-07-30  Cyrille Chepelov  <chepelov@calixo.net>
8688         * po-checktrans.py: under some circumstances, there was one column 
8689         more than what was supposed to be, thus breaking the formatting.
8690         
8691 2001-07-29  Cyrille Chepelov  <chepelov@calixo.net>
8692         
8693         * objects/SADT/annotation.c: forgot to add a #include <stdlib.h>
8695         * NEWS: updated with new stuff since 0.88
8697         * shapes/network/antenna.shape: the text was misplaced ; fixed.
8699         * shapes/network/firewall.(shape|xpm) (NEW): a brick-wall looking
8700         firewall router (upon request from Cyril Lacoux
8701         <clacoux@easter-eggs.com>)
8703         * configure.in (didn't rename to configure.ac): autoconf 2.50
8704         constructs were used ; added an AC_PREREQ call to guard against
8705         older autoconfs.
8706         
8707 2001-07-27  Cyrille Chepelov  <chepelov@calixo.net>
8709         * lib/properties.c: minor clean-ups with the event delivery code.
8711         * EML/instantiation.c: brought this object back from stone and ice
8712         age.    
8714         * app/diaconv.c(NEW): added a command-line conversion tool. Still
8715         lacks a man page and correctness. In fact, it doesn't work. Please
8716         see #58196 if you want to finish it.
8717         
8718         * lib/message.[ch]: redefined things a little so that a different
8719         message_internal routine could be passed.
8720         applications can use that to fit themselves to the display model.
8722 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
8724         * objects/SADT/box.c: 
8725         * objects/GRAFCET/action.c: spelling in property descriptors (name
8726         field...)
8727         * objects/SADT/annotation.c: ditto, plus a temporary test of the
8728         event delivery code (try to click on the "click me !" button !).
8730         * app/group.c: 
8731         * lib/properties.[ch]: improved (fixed) support for group event 
8732         handlers. Fixed various things from yesterday's code to make it
8733         not too obviously crash.
8735 2001-07-26  Cyrille Chepelov  <chepelov@calixo.net>
8737         * app/group.c: added delivery of events to the first member of the
8738         group which is able to process it.
8740         * lib/properties.c(prop_desc_lists_intersection): properties
8741         don't match if they don't have identical event handler.
8742         * lib/properties.h: simplified the PropEventHandler signature.
8744         Event delivery code is still untested so far, but should be
8745         lurking harmless.
8746         
8747 2001-07-25  Cyrille Chepelov  <chepelov@calixo.net>
8749         * lib/properties.[ch]: Added (untested !) property event handler
8750         capability. Added a new PROP_TYPE_BUTTON, for the purpose of
8751         generating such events. This stuff compiles, and should lurk
8752         around silently as long as you don't declare property descriptors
8753         with events (AFAICT).
8754         In object_create_props_dialog() and friends:
8755         attached a single structure with lots of data instead of lots of
8756         little attachments of data to the dialog widget.
8757         
8758         * lib/object.h: fixed mild typedef breakage introduced by the above.
8760 2001-07-17  Lars Clausen  <lrclause@cs.uiuc.edu>
8762         * lots of files: Changed Font to DiaFont
8763         * */Makefile.am: Added FREETYPE_LIBS
8764         * plug-ins/xfig/xfig-export.c: Improved (working:) color handling
8766 2001-07-13  Kjartan Maraas  <kmaraas@gnome.org>
8768         * configure.in: Added "nn" to ALL_LINGUAS.
8769         
8770 2001-07-09  Alex Larsson  <alexl@redhat.com>
8772         * app/disp_callbacks.c:
8773         Add gdk_im_ready() calls to XIM code.
8775 2001-07-04  Cyrille Chepelov  <chepelov@calixo.net>
8777         * lib/properties.[ch]: splitted prop_get_widget() into
8778         prop_get_widget() (gives a widget but doesn't fill it) and 
8779         prop_reset_widget() (fills an existing widget with a property's value).
8781         * lib/widgets.[ch]: const enforcement police work.
8783         * shapes/network/antenna.shape: added a connection point at top,
8784         upon request from <Emmanuel.Quemener@cri.ens-cachan.fr>.
8785         
8786 2001-06-25  Cyrille Chepelov  <chepelov@calixo.net>
8788         * intl/*: tested with gettext-0.10.38
8789         * configure.in: moved a macro call around (AM_PROG_CC) to keep
8790         some of autogen.sh from complaining.
8791         * INSTALL: added a warning against gettext older than at least 0.10.36
8792         
8793 2001-06-19  Cyrille Chepelov  <chepelov@calixo.net>
8795         * configure.in: added explicit calls to AM_LANGINFO_CODESET and
8796         AM_ICONV (both provided by gettext)
8798 2001-06-14  Cyrille Chepelov  <chepelov@calixo.net>
8800         * lib/charconv.c: corrected the degraded mode for when
8801         !HAVE_UNICODE. Thanks to Ben A. Hetland for reporting this.     
8803         * objects/chronoline/chronoline_events.c: UTF8 compliance.
8804         
8805 2001-06-13  Cyrille Chepelov  <chepelov@calixo.net>
8807         * lib/properties.[ch]: convenience macros around PROP_NOTEBOOKS ;
8808         new "eye candy" properties: PROP_MULTICOL_(BEGIN|PAGE|END) to lay 
8809         widgets on several columns, PROP_FRAME_(BEGIN|END) to put widgets
8810         into a frame box.
8812         * objects/chronogram/chronoline.c:
8813         * objects/chronogram/chronoref.c: took advantage of the above to
8814         make nicer looking dialogs.
8816         * lib/charconv.[ch]: added charconv_unichar_to_utf8 ("inspired"
8817         from libunicode's internals).
8818         * lib/message.c: convert strings to local encoding prior to
8819         display (UNICODE_WORK_IN_PROGRESS)
8820         * lib/properties.[ch]: convert strings to local encoding prior to
8821         display, and back to UTF8 (UNICODE_WORK_IN_PROGRESS).
8822         * lib/render.h: tagged strings as (utfchar *) instead of (char *)
8823         * lib/stringprerenderer.[ch]: ditto
8825         (lib/text.c has been audited for UTF8, but the size of the changes
8826         make them inappropriate for commit before 0.89)
8827         
8828 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
8830         * objects/boolequation.h (<save|load>_boolequation): made the 
8831         prototypes for match the .c file.
8832         
8833         * samples/grafcet.dia: minor non-conformance with IEC-848
8834         fixed (in the transition from step 100 to step 101).
8836         * lib/properties.[ch]: added a flag (PROP_FLAG_DONT_MERGE) to
8837         disallow editing of properties if the object is part of a group.
8839         * objects/chronogram/chronoline.c: 
8840         * objects/SADT/annotation.c:
8841         * objects/SADT/box.c:
8842         * objects/GRAFCET/step.c:
8843         * objects/GRAFCET/transition.c:
8844         * objects/GRAFCET/condition.c: took advantage of PROP_FLAG_DONT_MERGE.
8845         
8846 2001-06-12  Hans Breuer  <hans@breuer.org>
8848         * lib/libdia.def : removed lazyprop exports
8849         * lib/makefile.msc : removed lazyprop.obj
8851         * objects/custom/custom_objects.c : use HAVE_UNISTD_H
8852         and avoid crashes by always creating a custom->text,
8853         when (custom->info->has_text) 
8855         * objects/makefile.msc : removed sybase from build
8857         * objects/GRAFCET/boolequation.c (<save|load>_boolequation) :
8858         ObjectNode is a pointer already, which is what we want
8859         instead of a pointer pointer.
8861         * plug-ins/wmf/wmf.cpp : fixed problem with arc scaling
8862         and implemented working export for images
8864         * shapes/network/zip-disk.shape : added connection points 
8866 2001-06-12  Cyrille Chepelov  <chepelov@calixo.net>
8868         * objects/SADT/box.c: removed lazyprops for standard props.
8869         * objects/chronograms/chronoline.c: removed lazyprops (phew !)
8870         * objects/chronograms/chronoref.c: ditto 
8872         * lib/Makefile.am:
8873         * lib/dummy_dep.h:
8874         * lib/connpoint_line.c:
8875         * lib/lazyprops.[ch] (DELETED): good riddance (closes #55895)
8876         * lib/properties.[ch]: new property types:
8877             - PROP_TYPE_STATIC: static text to be displayed in the dialog.
8878             - PROP_TYPE_MULTISTRING: same as string, but renders as a
8879             multi-line entry box.
8880             - PROP_TYPE_NOTEBOOK_BEGIN,_PAGE,_END: stuff to make dialogs
8881             in a tabbed-notebook style (this is a bit complicated to use; 
8882             see objects/chronograms/chronoline.c for an example).
8883                
8884 2001-06-11  Cyrille Chepelov  <chepelov@calixo.net>
8886         * objects/GRAFCET/boolequation.[ch]: zap lazyprops. Add standard props.
8887         * objects/GRAFCET/step.c: ditto.
8888         * objects/GRAFCET/vector.c: ditto.
8889         * objects/SADT/annotation.c: ditto.
8890         * objects/SADT/arrow.c: ditto (plus bounding box fixes).
8891         
8892         * lib/properties.[ch]: two more non-visible types
8893         (PROP_TYPE_ENUMARRAY and PROP_TYPE_INTARRAY).
8895         * lib/neworthconn.[ch]:
8896         * lib/orthconn.[ch]: added support for manipulation through
8897         standard properties.
8899         * configure.in: removed -fomit-frame-pointer, this seems to
8900         confuse recent gcc/gdb's, maybe we'll get better stack dumps in 
8901         bugzilla.
8903         * charconv.[ch]: more functions from unicode.h.
8904         get_local_charset() wasn't working properly, fixed now.
8905         A subtle crashbug in charconv_utf8_to_local8() nailed (thanks to 
8906         ElectricFence !)
8907         
8908         * objects/EML/process.h: pulled the bits of lazyprops.h it uses.
8909         * lib/lazyprops.[ch]: put a big fat warning in.
8911         * app/render_eps.c: one line mysteriously went away, causing a
8912         variable to be used uninitialised....
8914 2001-06-10  Cyrille Chepelov  <chepelov@calixo.net>
8916         * app/app_procs.c: commented out the call to
8917         bind_textdomain_codeset(): it's premature.
8918         
8919         * lib/connpoint_line.c: a NULL point can be given to
8920         connpointline_adjust_count(), in case there's not really a clicked
8921         point.
8923         * lib/textattr.h(NEW): moved the definition of TextAttributes to sort
8924         #include order troubles. #included by lib/text.h, so there is no 
8925         impact outside lib/.
8926         * lib/properties.[ch]: added support for CONNPOINT_LINE and
8927         (nonvisible) TEXT properties.
8929         * objects/GRAFCET/action.c:
8930         * objects/GRAFCET/vergent.c: dropped lazyprops for standard
8931         properties.
8932         
8933         * objects/UML/lifeline.c: pruned some legacy stuff (now pure
8934         standard properties code). Grafted a dynamic number of connection
8935         points (heavily inspired from what Vergent does). This is the real
8936         fix for #55863.
8938         * objects/GRAFCET/boolequation.[ch]: audited for UTF-8
8940         * lib/fonts.c: some hardening (mostly g_assert())
8941 2001-06-09  Cyrille Chepelov  <chepelov@calixo.net>
8943         * app/app_procs.c (app_init): added a call to
8944         bind_textdomain_codeset() so that gettext gives us UTF-8 strings
8945         (UNICODE_WORK_IN_PROGRESS).
8946         
8947 2001-06-08  Cyrille Chepelov  <chepelov@calixo.net>
8949         * plug-ins/xfig/xfig-import.c: corrected a typo (fixes #55910)
8951         * objects/UML/lifeline.c: patch from Marc <mrw@siemens.ch> 
8952         (fixes #55863) : some clean-ups in the handling of connection
8953         points. Now the total number of connection points is just a
8954         #define (the proper solution is to retrofit the GRAFCET Vergent's
8955         dynamic behaviour wrt connection points).
8956         
8957 2001-06-07  Cyrille Chepelov  <chepelov@calixo.net>
8959         * app/app_procs.c (app_init): added a call to unicode_init() (only
8960         if HAVE_UNICODE, of course).
8962         * lib/charconv.c: simplified the code which detects the local
8963         charset. No need to use <langinfo.h>, libunicode already takes the
8964         burden of figuring that out. Also, if local charset is utf8, no
8965         conversion will take place.
8966         Exposed a way to get the current charset (similar to
8967         unicode_get_charset() but actually working, hopefully).
8969         * lib/charconv.h: Added a partial non-UTF8 implementation of
8970         unicode.h if !HAVE_UNICODE (actually, all the time for the
8971         moment). The UTF8 implementation is just macros on libunicode (use
8972         the functions prefixed by uni_, as defined by charconv.h, not
8973         unicode_, unless that code is to be compiled only if HAVE_UNICODE).
8974         From now on, all strings which don't *need* to be ASCII should be
8975         utfchar *, not gchar *. Just include charconv.h, let it sort out
8976         the details (such as: "is libunicode available and enabled?") 
8978         * lib/ps-utf8.c: fixed a few name clashes. Used the charconv.h
8979         "API" instead of directly libunicode. Removed the now unnecessary
8980         speculative clustering of characters in encoding pages.
8982         * app/render_eps.c: made the local8->utf8 conversions dependent of
8983         !UNICODE_WORK_IN_PROGRESS (this is not where the local8/utf8
8984         boundary will be when this WIP is done).
8986         * lib/dia_xml.c (data_point): fixed a format string typo.
8988         * po/POTFILES.in: added all C files from lib/ 
8989         
8990 2001-06-06  Cyrille Chepelov  <chepelov@calixo.net>
8992         * app/disp_callbacks.c: make sure the objects' connected objects
8993         are updated when the objects' size changes after a keypress event
8994         (fixes #51222)
8996         * configure.in: added a big warning about the possible future
8997         non-optionality of --enable-unicode. 
8999         * TODO: removed entries which look like done ; added a few ones
9000         (Bugzilla "enhancement" bugs may be a better way to keep track of
9001         this)
9002         
9003 2001-06-05  Cyrille Chepelov  <chepelov@calixo.net>
9005         * objects/UML/message.c: got rid of #55564 and of message_copy()
9006         by using more standard properties (are the message_state_*()
9007         functions still necessary ?)
9009 2001-06-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
9011         * lib/plug-ins.c: 
9012         * objecs/custom/shape_info.c:
9013         * plug-ins/shape/shape-export.c:
9014         * plug-ins/svg/render_svg.c: patch from obecian <obecian@openbsd.org>
9015         use xmlChar instead of obsolete CHAR.
9017 2001-06-03  Hans Breuer  <hans@breuer.org>
9019         * app/diagram.h : added prototype for diagram_update_menu_sensitivity()
9020         * app/commands.c : give the right number of parameters
9021         to diagram_update_menu_sensitivity ()
9023         * app/preferences.c : do proper initialization for DiaPrefsData:
9024         render_bounding_boxes. It would be a real surprise if 'hidden'
9025         properties would have ever worked before.
9026         Don't try to access the widgets of hidden property, it does not
9027         have one.
9029         * lib/diagramdata.h : make render_bounding_boxes a DIAVAR, cause
9030         it is defined in libdia, but initialized from dia app, which 
9031         otherwise gave nice start-up crashes.
9033         * lib/diagramdata.c : initialize the color for rendering bounding 
9034         boxes in the Dia range (0 .. 1.0)
9036         * lib/libdia.def : added *_bbox functions for export
9038         * lib/makefile.msc : added new sources
9040         * objects/custom/custom_object.c : use HAVE_UNISTD_H
9042 2001-05-30  Cyrille Chepelov  <chepelov@calixo.net>
9044         * app/interface.c:
9045         * app/menus.c: patch from Hubert Figuiere <hfiguiere@teaser.fr> ;
9046         removes a translation of menus (in a place where there shouldn't
9047         have been), which gets rid of a waterfall of warnings if LANG!=C,
9048         and a fix to #55047.
9050 2001-05-29  Steffen Macke     <sdteffen@yahoo.com>
9052         * lib/charconv.c : added #include <errno.h>
9054         * app/dia_embedd.c : updated menus_get_item_from_path usage
9055         
9056 2001-05-27  Cyrille Chepelov  <chepelov@calixo.net>
9058         * lib/ps-utf8.c: Strings in Symbol fonts were incorrectly rendered.
9059         Added a special case for Symbol strings, so that they're not
9060         re-encoded using the LN encoding (we use the bare Adobe encoding
9061         instead).
9063         * objects/custom/custom_object.c: Now that #52912 is fixed,
9064         I could remove the ugly hack I wrote to squash the shape bounding box
9065         problem shown by Ben A. Hetland a few months ago, and fix it
9066         properly this time.
9067         
9068         * lib/text.c: enlarged a little the bounding box to account for
9069         the cursor in rightmost position.
9070         
9071         * lib/diagramdata.c: draw bounding boxes only if the relevant
9072         variable is set (as before), but also only if the rendere is
9073         interactive (ie, don't bother rendering bounding boxes on 
9074         Postscript...)
9075         Made the bounding box's line width a fixed value, 0.01
9076         
9077         * lib/boundingbox.c: fixed the "pointy corners" code for polylines
9078         and assymmetric control beziers. Implemented ellipse_bbox().
9079         
9080         * Makefile.am: incantations to get po/dia.pot build, as suggested
9081         by Hubert in #55075.
9082         
9083         * shapes/network/computer.shape: typo fixed.
9084         * shapes/network/antenna.shape: fixed #55074 (antenna is now
9085         properly translucent, except for its base where it makes sense. It
9086         doesn't look that ugly anymore if transparent mode is on).
9088         * configure.in: --enable-unicode is now the default. This
9089         still currently affects only printing.
9090         
9091 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
9093         * lib/boundingbox.c: fixed a minor logic error wrt closed shapes. 
9094         The overshoot code is buggy, and the bounding boxes for polyshapes
9095         looks a bit cheezy. To be done ASAP.
9097 2001-05-26  James Henstridge  <james@daa.com.au>
9099         * configure.in: call AM_PATH_PYTHON rather than AM_PATH_PYTHON_JH.
9100         This should clear up some of the build problems people have been
9101         having.
9103         * acinclude.m4: call AM_PATH_PYTHON_JH AM_PATH_PYTHON
9105 2001-05-26  Cyrille Chepelov  <chepelov@calixo.net>
9107         * lib/Makefile.am:
9108         * lib/boundingbox.[ch] (NEW): (some) refactoring of the bounding
9109         box code (beginning with lines, polylines and polybeziers), into a
9110         more generic facility. While at it, a better shot at correctly
9111         computing the bounding box of a Bezieroid (should take care of
9112         #53424, #51233 and of course is part 1 of #52912).
9114         * lib/diagramdata.c: turned the RENDER_BOUNDING_BOXES conditional
9115         into a hidden preference (set render_bounding_boxes in diarc).
9116         * app/preferences.[ch]: Added support for hidden preferences.
9118         * lib/geometry.[ch]: sprinkled with "const" modifiers.
9119         
9120         * lib/bezier_conn.[ch]:
9121         * lib/beziershape.[ch]:
9122         * lib/connection.[ch]:
9123         * lib/element.[ch]:
9124         * lib/poly_conn.[ch]:
9125         * lib/orth_conn.[ch]:
9126         * lib/neworth_conn.[ch]:
9127         * lib/polyshape.[ch]: adapted to take advantage of
9128         boundingbox.[ch] instead of relying on private (duplicate) code.
9130         * object/FS/flow.c:
9131         * object/GRAFCET/action.c:
9132         * objects/GRAFCET/condition.c:
9133         * objects/GRAFCET/vergent.c:
9134         * objects/GRAFCET/vector.c:
9135         * objects/SADT/annotation.c:
9136         * objects/SADT/arrow.c:
9137         * objects/ER/participation.c:
9138         * objects/UML/constraint.c:
9139         * objects/UML/implements.c:
9140         * objects/UML/lifeline.c:
9141         * objects/UML/message.c:
9142         * objects/UML/realizes.c:
9143         * objects/UML/generalization.c:
9144         * objects/UML/association.c:
9145         * objects/UML/dependency.c:
9146         * objects/FS/flow-ortho.c:
9147         * objects/network/bus.c:
9148         * objects/standard/arc.c:
9149         * objects/standard/bezier.c:
9150         * objects/standard/beziergon.c:
9151         * objects/standard/line.c:
9152         * objects/standard/polygon.c:
9153         * objects/standard/zigzagline.c:
9154         
9155         * objects/standard/polyline.c: Some *BBExtras structures changed
9156         names while moving to boundingbox.[ch]. A trivial mass-renaming.
9157         
9158 2001-05-20  Cyrille Chepelov  <chepelov@calixo.net>
9160         * app/disp_callbacks.c (ddisplay_canvas_events): Take into account
9161         wheel mouses for scrolling (from Patrick Sung <phsung@ualberta.ca>)
9163         * app/display.c (ddisplay_update_scrollbars): from Patrick's
9164         suggestion, remove the extra scrollable area (it was only visible
9165         to the scrollbars). This is experimental.
9166         
9167         * objects/custom/custom_object.c: If a shape's icon file doesn't 
9168         exist, warn and substitute a default icon, instead of crashing.
9169         (fixes #52913)
9170         
9171         * objects/network/network.c:
9172         * shapes/network/modularswitch.(shape|xpm) (NEW):
9173         * shapes/network/printer.(shape|xpm) (NEW):
9174         * shapes/network/genmonitor.(shape|xpm) (NEW):
9175         * shapes/network/computer.(shape|xpm) (NEW):
9176         * shapes/network/Makefile.am: four less objects, four more shapes.
9177         These were the last known RenderObjects. (phew !)
9179         * lib/Makefile.am:
9180         * lib/dummy_dep.h:
9181         * objects/sybase/Makefile.am: 
9182         * objects/network/Makefile.am: Removed the older Renderobjects
9183         from the build, and their infrastructure (not yet deleted,
9184         though).
9186         * shapes/network/sceadplug.shape:
9187         * shapes/network/antenna.shape:
9188         * shapes/network/modem.shape:
9189         * shapes/network/hub.shape:
9190         * shapes/network/rj45plug.shape:
9191         * shapes/sybase/client.shape:
9192         * shapes/sybase/dataserver.shape:
9193         * shapes/sybase/ltm.shape:
9194         * shapes/sybase/repserver.shape:
9195         * shapes/sybase/rsm.shape:
9196         * shapes/sybase/stableq.shape: Minor corrections (line widths were
9197         ten times too narrow).
9198         
9199 2001-05-19  Cyrille Chepelov  <chepelov@calixo.net>
9201         * objects/network/network.c:
9202         * shapes/network/sceadplug.(shape|xpm) (NEW):
9203         * shapes/network/antenna.(shape|xpm) (NEW):
9204         * shapes/network/modem.(shape|xpm) (NEW):
9205         * shapes/network/Makefile.am: four less objects, four more shapes.
9206         
9207         * lib/Makefile.am:
9208         * lib/diagramdata.c:
9209         * lib/render.h:
9210         * lib/string_prerenderer.[ch] (NEW):
9211         Add a new renderer primitive, predraw_string() (does nothing, to be
9212         used as a hook to optimise the character encodings if needed). 
9213         Added a string pre-renderer, which can be viewed as a filter
9214         renderer (to route draw_string() to predraw_string() and ignore
9215         the rest, in a first rendering pass)
9216         
9217         * app/render_eps.c: Took advantage of the above to make wholly
9218         optimised Postscript encoding page(s), even (especially) with 
9219         non-latin1 code (HAVE_UNICODE must be true).
9221         (#53512 in fact is wholly resolved).
9222         
9223 2001-05-18  Cyrille Chepelov  <chepelov@calixo.net>
9225         * lib/charconv.c: steps towards resolution of #53512 (inspired by
9226         Alexey Novodvorsky <aen@logic.ru>'s patch).
9228         * app/menus.c (dia_menu_signal_proxy): checked that the signal
9229         handler is not NULL before transferring control to it... (fixes #52836)
9231         * app/app_procs.c (app_init): removed non-constant initialiser
9232         (fixes #52950)
9234         * objects/custom/custom_object.c:
9235         * objects/custom/shape_info.[ch]:
9236         * objects/custom/test.xml: merged patch #53476 from Steven Hawkins 
9237         <skh@mathstar.com>. This add support for a <svg:text> shape
9238         element, and some related style properties (font, font height, 
9239         alignment)
9241         * doc/custom_shapes: a precision about the meaning of case in a
9242         SVG path (closes #52364)
9244         * lib/dummy_dep.h: fix for SGI IRIX 6.2 (#53053, reported and
9245         fixed by <drk@sgi.com>)
9246         
9247 2001-05-17  Cyrille Chepelov  <chepelov@calixo.net>
9249         * objects/network/network.c:
9250         * shapes/network/Makefile.am:
9251         * shapes/network/hub.(shape|xpm) (NEW):
9252         * shapes/network/flash.(shape|xpm) (NEW):
9253         * shapes/network/rj45plug.(shape|xpm) (NEW):
9254         More shapes, less renderobjects.
9256 2001-05-16  Cyrille Chepelov  <chepelov@calixo.net>
9257         
9258         * plug-ins/svg/render_svg.c: typo made exported ellipses
9259         corrupted (zero Y pseudo-radius).
9261         * objects/network/network.c:
9262         * objects/network/disc.c:
9263         * shapes/network/disc.(shape|xpm): Converted the first
9264         Renderobject into a shape. Normally, old diagrams should reload
9265         without problems (please check this against your diagrams). More
9266         flexibility should be gained that way. I intend to hunt and
9267         eradicate all renderobjects as I can commit cycles to that. 
9269         * objects/Makefile.am:
9270         * configure.in:
9271         * app/Makefile.am:
9272         * objects/sybase/sybase.c:
9273         * shapes/sybase/Makefile.am(NEW):
9274         * shapes/sybase/client.(xpm|shape) (NEW):
9275         * shapes/sybase/dataserver.(xpm|shape) (NEW):
9276         * shapes/sybase/ltm.(xpm|shape) (NEW):
9277         * shapes/sybase/repserver.(xpm|shape) (NEW):
9278         * shapes/sybase/rsm.(xpm|shape) (NEW):
9279         * shapes/sybase/stableq.(xpm|shape) (NEW): converted Sybase
9280         renderobjects into shapes. The Sybase objects are now not compiled
9281         anymore, and ready to be nuked if nobody objects in the next few weeks.
9282         
9283         * app/commands.c:
9284         * app/diagram.[ch]:
9285         * app/disp_callbacks.c:
9286         * app/display.[ch]:
9287         * app/interface.[ch]:
9288         * app/menus.[ch]:
9289         * app/modify_tool.c:
9290         * app/preferences.[ch]:
9291         * app/recent_files.c:
9292         * app/select.c: Added patch #52364 from Hubert Figuiere. This adds
9293         a menu bar reflecting the popup menu, to each display window. This
9294         is optional (changing the preference currently doesn't affect
9295         already opened windows; a few other rough edges to cut).
9297         * plug-ins/wpg/wpg.c:
9298         * plug-ins/xfig/xfig-import.c:
9299         * plug-ins/python/pydia-property.c:
9300         * plug-ins/python/pydia-properties.c:
9301         * plug-ins/python/pydia-geometry.c:
9302         * plug-ins/pstricks/render_pstricks.c:
9303         * lib/arrows.c:
9304         * objects/EML/dbox.c:
9305         * lib/ps-utf8.c: paleolithic C compilers choke on //. Should fix 
9306         #53054.
9308         * lib/ps-utf8.c: improved the clustering of alphabetic character
9309         definitions in custom encodings pages.
9310         
9311 2001-05-02  Hans Breuer  <hans@breuer.org>
9313         * lib/object.h : OBJECT_COMMON_PROPERTIES_OFFSETS correct type 
9314         of 'obj_bb' to PROP_TYPE_RECT
9316         * objects/custom/custom_object.c : take all quarks into account, 
9317         not only 4 as copy&paste suggests
9319         * objects/uml/objects.c : completed the implementation of the
9320         property api to avoid reading of totally bogus data. Removed
9321         the PROBABLY_DEAD_CODE. It actually was dead code, but not because
9322         there was too much but too less ...
9323   
9324         The above changes removed all known crashes (mentioned below) 
9325         from the Property API. Property access is still incomplete though.
9327         * objects/flowchart/box.c :
9328         * objects/flowchart/diamond.c :
9329         * objects/flowchart/ellipse.c :
9330         * objects/flowchart/parallelogram.c :
9331         * objects/uml/classicon.c :
9332         * objects/uml/state.c : calculate number of quarks from quark array 
9333         size instead of using hardcoded values for consistence and to avoid 
9334         future bugs like the above
9335         
9336         * objects/eml/nlist.c : include <string.h> for strcmp()
9338         * lib/dia_xml.c : relax g_warning for values, which
9339         appear to be too small. There is nothing which prevents
9340         them while saving
9342         * plug-ins/python/pydia-geometry.c : changed stringifying of
9343         geometry objects accept BezPoint back to %f, which does not
9344         crash anymore, because all the data is intialized now and it
9345         simply is more readable than %e ...
9347         * plug-ins/python/python-startup.py : removed dependency
9348         to PyGtk, because it isn't required here and probably won't
9349         in i.e.: export filters.
9351         * plug-ins/python/gtkcons.py : create the gtkoutfile even
9352         if sys.stderr.fileno() isn't supported
9354         * app/makefile.msc : make version 0.88
9355         * plug-ins/makefile.msc : make version 0.88 an added new
9356         xfig files to build
9358 2001-05-11  James Henstridge  <james@daa.com.au>
9360         * NEWS: remember to add news items this time.
9362         * dia.spec: update spec file for 0.88 release.
9364         * configure.in: up version number to 0.88
9366         * plug-ins/python/Makefile.am (EXTRA_DIST): fix up typo that was
9367         preventing any of the useful python scripts from being
9368         distributed.
9370         * sheets/Makefile.am (sheet-translation-report): fix bustage I
9371         introduced in my fixups for the 0.87 release :(
9373 2001-05-10  Lars Clausen  <lrclause@cs.uiuc.edu>
9375         * plug-ins/xfig/xfig-import.c: Finally got groups working.
9377 2001-05-09  Lars Clausen  <lrclause@cs.uiuc.edu>
9379         * plug-ins/xfig/xfig-import.c: Improvements to error handling and
9380         group manipulation.
9382 2001-05-09  Cyrille Chepelov  <chepelov@calixo.net>
9384         * lib/ps-utf8.[ch]:
9385         * lib/Makefile.am: fix makefile breakage which led to not
9386         including ps-utf8.[ch] in the released tarballs. 
9388 2001-05-09  James Henstridge  <james@daa.com.au>
9390         * Makefile.am (core-translation-report): dist scripts needed for
9391         this target, and change to $(srcdir) before running.
9393         * sheets/Makefile.am (EXTRA_DIST): actually dist the sheets.  DATA
9394         files aren't automatically included in the tarball by automake
9395         because they could be generated files.
9397         * objects/EML/Makefile.am (EXTRA_DIST): fix directory names.
9399         * doc/en/Makefile.am (install-data-hook): fix up where graphics
9400         are installed.
9402         * configure.in: up version number to 0.87
9404         * plug-ins/python/*.py: no longer necessary to explicitly set
9405         sys.argv, as python.c does it for us now (like it should).
9407         * plug-ins/python/gtkcons.py: fix up so it plays nicely as a dia
9408         python plugin.
9410         * plug-ins/python/python-startup.py: startup script that imports
9411         all modules in $(datadir)/dia/python and ~/.dia/python.
9413         * plug-ins/python/python.c (dia_plugin_init): change so that it
9414         only runs the $(datadir)/dia/python-startup.py script.  Make sure
9415         that sys.argv and __main__.__file__ are set when calling the
9416         startup script.
9418         * plug-ins/python/Makefile.am: update makefile.  Make it install
9419         gtkcons.py plugin.  I haven't set any other plugins to install, as
9420         they look like they are mainly for debugging purposes.
9422         * configure.in: add tests to detect if python is available, so we
9423         can build the python plugin.  Only run if --with-python passed to
9424         configure.
9426 2001-05-08  James Henstridge  <james@daa.com.au>
9428         * acinclude.m4: add macros for detecting python.
9430         * app/menus.c (dia_gnome_menu_get_widget): handle paths that point
9431         at GNOME_APP_UI_SUBTREE entries.
9432         (menus_add_path): function to add a menu item to the menubars.
9433         Uses a hash table to keep track of extra menu items it adds.  Also
9434         notifies the item factory about the entries so that accels can be
9435         saved for them.
9436         (menus_add_path): implement gtk only version.
9437         (menus_init): use menus_add_path() to add the menu.
9438         (plugin_callback): simplify.
9440 2001-05-08  Steffen Macke <sdteffen@yahoo.com>
9442         * app/menu.c: removed #ifndef GNOME; GNOME build was broken
9443         
9444 2001-05-08  Lars Clausen  <lrclause@cs.uiuc.edu>
9446         * plug-ins/xfig/xfig-export.c: 
9447         * plug-ins/xfig/xfig-common.c: 
9448         * plug-ins/xfig/xfig-import.c: 
9449         * plug-ins/xfig/xfig.c: 
9450         * plug-ins/xfig/xfig.h: 
9451         * app/Makefile.am: Added support for exporting to Fig format
9452         (except splits, which are less powerful in Fig).  Some refactoring
9453         along the way.
9455 2001-05-02  Hans Breuer  <hans@breuer.org>
9457         * plug-ins/python/debug_objects.py : added another
9458         test to get massive crashes from the Property API due
9459         to unintialized data.
9461         * app/menu.c : the callback_action wasn't incremented
9462         (should have checked my last optimization). Now more
9463         than one plug-in callback is supported again.
9465         * plug-ins/python/pydia-geometry.c : avoid crashes from
9466         glib, when trying to g_strdup_printf unintialized floats.
9468         * plug-ins/python/pydia-property.c : avoid crashes from
9469         because of string_data == NULL (PROP_TYPE_FILE, PROP_TYPE_STRING)
9471 2001-05-01  Hans Breuer  <hans@breuer.org>
9473         * objects/makefile.msc : added eml
9474         * objects/eml/instantiation.c : initialize 'inst' pointer
9475         before using, zero initialization for objects
9476         * objects/eml/interaction-ortho.c :
9477         * objects/eml/interaction.c : zero initialization for objects
9479         * app/menus.c : removed Gimp mru stuff which slipped in at
9480         2000-08-15, was never activated and will never be needed, 
9481         because of Steffens recent file list patch added at 2001-01-05.
9483         * objects/eml/*.c : some more zero initialization of objects
9484         to avoid infinite (uninitialized) bounding boxes
9486         Implemented a callback api which allows plug-ins to register
9487         menu call backs. Dia for Gnome should compile, but will need 
9488         some extra tweaking to make it work because I can't test it.
9490         * plug-ins/python/pydia-error.h :
9491         * plug-ins/python/pydia-render.c : moved Pxthon function return 
9492         value handling from pydia-render.c to pydia-error.h, to make it
9493         usable for
9494         * plug-ins/python/diamodule.c : implement callback function
9495         registration from and relaying to Python code
9497         * app/menus.c : register and use plug-in menu callbacks
9499         * lib/filter.[hc] : implement filter_register_callback() and
9500         filter_get_callbacks() for the above
9501         * lib/libdia.def : export them
9503         * plug-ins/python/debug_objects.py (new file): 
9504         sample using the above
9506 2001-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
9508         * plug-ins/shape/shape-export.c (new_shape_renderer): 
9509         The name of a shape is now taken from the dir, to conform with
9510         standard naming.
9512 2001-04-25  Lars Clausen  <lrclause@cs.uiuc.edu>
9514         * app/properties.c (properties_show): Added title containing
9515         object type, plus (hopefully) fix of the ghost properties dialog.
9517 2001-04-16  Cyrille Chepelov  <chepelov@calixo.net>
9519         * app/display.c: remove the display idle handler in case we
9520         destroy the ddisplay (caused crashes in ddd, probably random
9521         crashes elsewhere).
9523         * autogen.sh: 
9524         * configure.in:
9525         * Makefile.am: hack around gettext-0.10.36's new "features".
9526         
9527         * lib/properties.[ch]: added new function object_copy_props().
9528         Added new property type PROP_TYPE_ENDPOINTS
9530         * lib/connection.h: added support for load/saving through the
9531         properties interface.
9533         * lib/object.[ch]: object_load/save/copy_using_properties()
9534         support functions (code factorisations).
9535         
9536         * objects/GRAFCET/boolequation.c: check against null values in
9537         boolequation_set_value() and boolequation_destroy().
9539         * objects/GRAFCET/transition.c: Converted from lazyprops to
9540         standard properties. 31% less (x86) code !
9542         * objects/GRAFCET/condition.c: also converted from lazyprops to
9543         standard properties. Also killed lots of code.
9544         
9545 2001-04-13  Hans Breuer  <hans@breuer.org>
9547         * plug-ins/wmf/wmf.cpp : changed text conversion from
9548         g_utf8_utf16 to g_convert usage. The latter function is already
9549         available in tml's last "official" Gtk+ version (2000-12-26).
9550         This change allows to use recent Dia with either the official
9551         version or the latest cvs "gtk-1-3-win32-production"-branch.
9553 2001-04-14  Lars Clausen  <lrclause@cs.uiuc.edu>
9555         * Patch from David S. Thompson <dcthomp@mail.utexas.edu>:
9556         * app/disp_callbacks.c:
9557         - Allow submenus in DiaMenus.
9558         - Don't require DiaMenu.title to be non-null (so that
9559           submenus aren't required to have titles)
9561         * objects/FS/function.c:
9562         - object menu now has submenus, an almost complete list of
9563           standard-basis verbs, and a start on nouns.
9564         - box padding, dash length, and other visual attributes are
9565           scaled by the font size... eventually font height will be
9566           a function property.
9567         - draw functions with smaller font to make initial view hold
9568           a reasonable number of functions.
9569         
9570 2001-04-13  Cyrille Chepelov  <chepelov@calixo.net>
9572         * sheets/ER.sheet:
9573         * sheets/chronogram.sheet:
9574         * sheets/jigsaw.sheet:
9575         * sheets/sybase.sheet: Updated Dutch sheet translations from Dag
9576         Wieers <dag@wieers.com>
9578 2001-04-13  Hans Breuer  <hans@breuer.org>
9580         * app/app_procs.c (app_exit) : added g_return_if_fail (!app_exit_once)
9581         to ensure that all the deinitialization is only done once. Fixes
9582         recent app exit crash on win32
9584         * lib/dia_xml.c : provide isinf() replacement for msc which does only
9585         have _finite()
9587         * lib/libdia.def : updated
9589         * objects/makefile.msc : added wanlink.c 
9591         * objects/network/wanlink.c : added M_PI_2 definition for poor
9592         platforms which don't have one
9594         * objects/standard/arc.c :
9595         * objects/standard/zigzagline. c: part of ConectionBBExtras wasn't
9596         initialized which led to rather huge bounding boxes (try Ctrl^A on
9597         diagrams with Arcs or ZigZagLines).
9598         * objects/*/*.c : to avoid further bugs like the above changed all
9599         object initializations to g_malloc0 or g_new0
9602 2001-04-09  Cyrille Chepelov  <chepelov@calixo.net>
9604         * lib/paper.[ch]: get rid of "no previous prototype fo `foo'" by
9605         doing a s/T foo()/T foo(void)/ for all possible values of T and foo.
9607         * objects/UML/class.c: 
9608         * objects/UML/usecase.c:
9609         * objects/UML/large_package.c:
9610         * objects/UML/message.c:
9611         * objects/UML/object.c:
9612         * objects/UML/lifeline.c:
9613         * objects/FS/flow.c:
9614         * objects/FS/flow-ortho.c:
9615         * objects/FS/function.c:
9616         * objects/custom/custom_object.c:
9617         * objects/GRAFCET/vergent.c:
9618         * objects/chronogram/chronoref.c:
9619         * objects/SADT/box.c:
9620         * objects/SADT/annotation.c:
9621         * plug-ins/dxf/dxf-import.c:
9622         * plug-ins/xfig/xfig-import.c:
9623         * plug-ins/wpg/wpg.c:
9624         * app/command.c:
9625         * app/app_procs.c:
9626         * app/display.c: /* certainly more WIP than dead code there */
9627         Unused variables, unused static function definitions, forgotten or
9628         incomplete prototypes added or fixed, lack of const or unwanted const,
9629         etc. (mostly clean-ups of leftovers of the pre-properties era).
9630         Non-obvious cases bracketed by #define THIS_IS_PROBABLY_DEAD_CODE,
9631         please check these.
9633         * app/lineprops_area.c: More of the same. Missing prototypes
9634         added, and functions unused outside made static.
9636         * app/recent_files.c:
9637         * app/properties.c:
9638         * app/defaults.c: some variables are used only when doing a GNOME
9639         build.
9640         
9641         * app/magnify.c: missing #include <stdlib.h>.
9643         * app/paginate_gnomeprint.c: Unused variable; missing "message.h".
9645         These are a lot of clean-ups (by the way, this compiles and runs
9646         cleanly with "gcc-3.0 -O2 -Wall --std=gnu99" too !); please grep
9647         for DEAD_CODE, and if it's yours, judge it.
9648         
9649 2001-04-07  Cyrille Chepelov  <chepelov@calixo.net>
9651         * plug-ins/dxf-import.c: some progress with the arcs; still some
9652         clean-ups to do and line width scaling issues to figure out.
9654         * objects/standard/arc.c: start_point and end_point properties
9655         (duplicated from standard/line.c)
9657         * plug-ins/xfig/xfig-import.c: zip ! zap ! no more dead DXF import
9658         code there.
9659         
9660 2001-04-06  Cyrille Chepelov  <chepelov@calixo.net>
9662         * plug-ins/dxf-import.c: setlocale-related clean-ups and fixes ;
9663         preliminary support for arcs (doesn't work). Circles and ellipses are
9664         now transparent. Coordinate and width scaling are now a common 
9665         static constant (probably before morphing into a preference).
9666         
9667         * sheet/checktrans.py: improved error reporting. Made checktrans
9668         count lack of <name xml:lang="code"> as a lack of translation for
9669         language "code" (no, it's not a plot to bring down other
9670         language's scores !)
9671         
9672         * sheet/*.sheet: Ensured all sheets have an encoding="iso-8859-1"
9673         in the header, and have <name xml:lang="fr"> components.
9674         
9675 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
9677         * objects/custom/custom_object.c: temporary hack to fix the shape
9678         bounding box reported by Ben A. Hetland. Proper fix isn't .87
9679         material, see bugzilla #52912.
9681 2001-04-05  Lars Clausen  <lrclause@cs.uiuc.edu>
9683         * objects/standard/image.c (get_directory): Now uses
9684         G_SEPARATOR_CHAR_S instead of "/"
9686         * sheets/network.sheet: 
9687         * sheets/Logic.sheet:
9688         * sheets/Flowchart.sheet:
9689         * sheets/Electric.sheet:
9690         * sheets/Circuit.sheet:
9691         * sheets/ER.sheet:
9692         * sheets/Pneumatic.sheet:
9693         * sheets/SDL.sheet:
9694         * sheets/UML.sheet:
9695         * sheets/GRAFCET.sheet:
9696         * sheets/MSE.sheet:
9697         * sheets/chronogram.sheet:
9698         * sheets/civil.sheet:
9699         * sheets/network.sheet:
9700         Danish translations.
9701         
9702         * objects/standard/image.c (get_directory): Changed get_directory
9703         to use g_dirname to find the directory part.
9705 2001-04-05  Cyrille Chepelov  <chepelov@calixo.net>
9707         * sheets/ER.sheet:
9708         * sheets/Electric.sheet:
9709         * sheets/Flowchart.sheet:
9710         * sheets/Logic.sheet:
9711         * sheets/network.sheet: More Dutch translations from Dag Wieers.
9713 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
9715         * sheets/checktrans.py: now emits a warning when two descriptions
9716         for a single language code are found.
9718         * Makefile.am:
9719         * sheets/Makefile.am: -translation-reports now also depend on their
9720         checktrans.py
9721         
9722 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
9724         * sheets/Circuit.sheet:
9725         * sheets/Contact.sheet:
9726         * sheets/Logic.sheet:
9727         * sheets/chronogram.sheet:
9728         * sheets/sybase.sheet: 
9729         Dutch translations from Dag Wieers <dag@wieers.com>
9731 2001-04-04  Cyrille Chepelov  <chepelov@calixo.net>
9733         * po-checktrans.py: Now shows the detailed counts alongside the
9734         percentage of translations.
9735         
9736 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
9738         * Makefile.am:
9739         * po-checktrans (NEW):
9740         * po-checktrans.py (NEW): builds core-translation-report:
9741         percentages of core (gettext) translations done [Not placed into
9742         po/ where that should belong, because of integration fear^Wissues
9743         with gettextize]. 
9745         TO THE KIND ATTENTION OF PACKAGERS: core-translation-report and 
9746         sheets/sheet-translation-report probably ought to be copied on the 
9747         user's /usr/share/doc/dia (or equivalent) directory.
9749         * sheets/Makefile.am: sheet-translation-report now a simple
9750         EXTRA_DIST; make install won't install it by default. 
9751         
9752 2001-04-03  Cyrille Chepelov  <chepelov@calixo.net>
9754         * app/preferences.c: changed the default grid colour to something
9755         less intrusive. 
9757         * shapes/SDL/*.shape:
9758         * sheets/SDL.sheet: renamed all SDL shapes to conform to the
9759         "$LIBRARY - $NAME" convention. THIS REQUIRES FIXING THE EXISTING
9760         DIA FILES (well, for files using SDL), see the mailing list
9761         archive "SDL (ab)using the global shape namespace" for a script to
9762         do this conversion.
9764         * sheets/SDL.sheet: translated into French
9765         * sheets/network.sheet: fixed XML typos. Yay ! 100% :-)
9766         
9767 2001-04-02  Cyrille Chepelov  <chepelov@calixo.net>
9769         * lib/dia_xml.c: made data_point() more paranoid
9771         * sheets/Makefile.am:
9772         * sheets/checktrans (NEW):
9773         * sheets/checktrans.py: Made checktrans handle more gracefully the
9774         absence of python and python-xml packages, and made the error
9775         message more helpful.
9776         
9777 2001-04-01  Lars Clausen  <lrclause@cs.uiuc.edu>
9779         * lib/render_object.c (new_render_object): Made initial handles
9780         behave like on most other objects.
9782         * app/load_save.c (read_objects): Fixed premature free'ing ofr
9783         typestr causing garbage.
9785 2001-04-01  Lars Clausen  <lrclause@C194282.chmpgn1.il.home.com>
9787         * objects/FS/flow-ortho.c: Fixed a crashbug causes by not
9788         accouting for handle ordering through copy and save. (#51479)
9790 2001-03-31  Cyrille Chepelov  <chepelov@calixo.net>
9792         * sheets/Circuit.sheet: Norwegian translation mistagged to German.
9794 2001-03-31  Steffen Macke  <sdteffen@yahoo.com>
9796         * sheets/Circuit.sheet
9797         * sheets/UML.sheet
9798         * sheets/network.sheet: Updated German translations
9799         
9800 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
9801         * lib/arrows.[ch]:
9802         * lib/widgets.c:
9803         * app/lineprops_area.c: The return of the revenge of the arrow
9804         heads. Now all types covered by ISO 10303-201 should be covered.
9805         
9806 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
9808         * sheets/Flowchart.sheet: translations in probably Hungarian were
9809         a victim of cut-n-paste from the German one. Fixed (hopefully).
9810         * sheet/UML.sheet: translation in probably Norwegian was a victim
9811         of cut-n-paste from the French one. Fixed (hopefully).
9812         * sheets/Logic.sheet: French translation not tagged with
9813         xml:lang="fr".
9814         
9815         * sheets/checktrans.py:
9816         * sheets/Makefile.am: new file, sheet-translation-report, to be
9817         installed along the sheets, show how much of them has been
9818         translated into which language (I wish the result was prettier...)
9820         * po/README: most translators don't read this file, but anyway...
9822         * sheets/.cvsignore:
9823         * objects/network/.cvsignore: the usual negotiation with CVS.
9825 2001-03-30  Cyrille Chepelov  <chepelov@calixo.net>
9827         * sheets/*.sheet: French translations
9829 2001-03-28  Cyrille Chepelov  <chepelov@calixo.net>
9831         Added patch #52363 from Hubert Figuiere <hfiguiere@teaser.fr>:
9833         ** objects/network/network.c:
9834         ** objects/network/wanlink.c:
9835         ** objects/network/pixmaps/wanlink.c:
9836         ** sheets/network.sheet:
9837         ** objects/network/Makefile.am: a better object to use instead of
9838         the older WAN Connection.
9839         
9840         ** lib/geometry.[ch]: rotation matrix functions in geometry.c (derived from gimp)
9842         ** objects/GRAFCET/vector.c: renamed Vector to GRAFCETVector to avoid a
9843         name clash 
9845         * objects/GRAFCET/vector.c: Re-renamed GRAFCETVector into
9846         Arc; kept the C file name (because CVS wouldn't like it), and
9847         still registering the older object name (but advertising the newer
9848         one in sheets/GRAFCET.sheet).   
9850 2001-03-24  Hans Breuer  <hans@breuer.org>
9852         * app/dia.def : some plug-ins (currently only python, xfig) are using 
9853         functions from the dia executable. To get them working these functions 
9854         need to be explicit exported on win32. IMO the much cleaner way would
9855         be to move these functions to libdia, but that would require some
9856         long term restructuring ...
9858         * lib/libdia.def : updated
9860         * plug-ins/makefile.msc : build xfig plug-in
9862 2001-03-24  Hans Breuer  <hans@breuer.org>
9864         * app/diagram.c : g_strdup (dia->filename) because it will be
9865         g_free ()d
9867         * app/display.c : set ddisp->renderer to NULL after destruction.
9868         This may solve or help to identify erroneous access to it after
9869         destruction.
9871         * plug-ins/wmf/wmf.cpp : convert string from utf8 to wchar to
9872         get 'umlauts' working
9874 2001-03-22  Cyrille Chepelov  <chepelov@calixo.net>
9876         * object/chronogram/chronoline_event.c: stupid bug ; rises and falls
9877         were reversed... (look for the patch, and drink a beer to my
9878         stupidity)      
9879         
9880 2001-03-23  Hans Breuer  <hans@breuer.org>
9882         * app/app_procs.c : don't g_error () if the config directory
9883         can't be created (at least not on windoze) because it's quite
9884         common that the user don't read or understand the FAQ ...
9886         * app/cursor.c : use ddisplay_active () instead of active_display
9887         from app/display.c
9889         * app/display.[hc] : made active_display var static and provide
9890         an accessor funtion ddisplay_active_diagram ()
9892         * app/dia-props.c : don't store the active_diagram, but ask
9893         for it everytime it needed.
9895         * lib/properties.h : #include "intl.h"
9897         * lib/makefile.msc : need to take care of inclusion order to
9898         avoid clashes with gtk+2.0's gdk-pixbuf
9900         * objects/makefile.msc : added uml/stereotype.c to build
9902 2001-03-23  Lars Clausen  <lrclause@cs.uiuc.edu>
9904         * **/*.c: Added config.h to the remaining .c files, and changed
9905         all to be <config.h>.
9907 2001-03-22  Steffen Macke <sdteffen@yahoo.com>
9909         * lib/arrows.c
9910         * lib/arrows.h
9911         * lib/widgets.c
9912         * app/lineprops_area.c: added new arrow types with double
9913         heads
9914         
9915 2001-03-20  Steffen Macke <sdteffen@yahoo.com>
9917         * shapes/Civil/civil_gas_bottle.xpm
9918         * shapes/Civil/civil_gas_bottle.shape
9919         * sheets/civil.sheet
9920         * shapes/Civil/Makefile.am: Added gas bottle shape by Arne
9921         Battermann
9922         
9923 2001-03-20  Lars Clausen  <lrclause@cs.uiuc.edu>
9925         * objects/custom/shape_info.c (load_shape_info): 
9926         * objects/custom/shape_info.h: 
9927         * objects/custom/custom_object.c (custom_update_data): 
9928         Better support for text outside the box -- new attributes 'resize'
9929         and 'align' for text entity.  Align not fully supported yet.
9931         * lib/text.c (text_calc_boundingbox): Adding BB for cursor width.
9933 2001-03-20  James Henstridge  <james@daa.com.au>
9935         * app/interface.c (display_data_received_callback): comment out
9936         status message.
9938 2001-03-19  James Henstridge  <james@daa.com.au>
9940         * app/GNOME_Dia.oaf: rename from GNOME_Dia.oafinfo.
9942         * objects/UML/realizes.c: similar here.
9944         * objects/UML/implements.c: similar here.
9946         * objects/UML/component.c: similar here.
9948         * objects/UML/generalization.c: same here.
9950         * objects/UML/dependency.c: allow NULL for ->name and
9951         ->stereotype.  This fixes a number of problems in loading saved
9952         files.
9954         * lib/properties.c: various changes so that NULL string properties
9955         should work.
9957         * objects/standard/line.c (line_update_data):
9958         line->extra.start_long and line->extra.end_long were not being
9959         initialised.  This fixes potential problems with the bounding box
9960         of "Standard - Line" objects.
9962 2001-03-19  Hans Breuer  <hans@breuer.org>
9964         * app/commands.c : added win32 specific code to display a html
9965         file. #include "text.h" for text_delete_all prototype.
9967         * app/dia.ico :
9968         * app/dia.rc : (new) to give Dia win32 an icon
9970         * app/win32print.[ch] : new files to support direct postscript
9971         file printing on win32. Beware: it *requires* a ps-printer!
9973         * app/paginate_psprint.c : disable the signal code for win32 build
9974         and added small specific changes to support win32print.
9976         * app/makefile.msc : added win32print and linking shell32.lib
9978         * lib/libdia.def : updated
9980 2001-03-18  Kevin Breit <battery841@mediaone.net>
9982         * doc/en/dia-C.omf: Added file.  Dia should now list in the Nautilus
9983           Help tabs.
9985 2001-03-17  James Henstridge  <james@daa.com.au>
9987         * app/paginate_psprint.c (diagram_print_ps): add code that traps
9988         SIGPIPEs during printing.  This gets rid of a number of crashes
9989         caused by printing (eg. typing an incorrect print command).
9991         * dia.spec (%install): gzip the manpage.
9993         * lib/beziershape.c (beziershape_save): fix off by one error in
9994         beziershape save code, which was adding an extra segment to the
9995         object on save.
9997         * app/menus.c: add a separator in the gnome version of the help
9998         menu.
10000         * app/app_procs.c (app_init): add a --nosplash argument which
10001         disables the splash screen.
10003         * app/dia_embedd.c (main): don't leave the splash screen open for
10004         embeddable component.
10006         * app/splash.c (app_splash_init): the gtk_widget_show_now() call
10007         didn't seem to be showing the splash screen like expected, so I
10008         have replaced it with some code that calls gtk_main() until the
10009         first exposure of the window.
10011 2001-03-16  James Henstridge  <james@daa.com.au>
10013         * app/Makefile.am (EXTRA_DIST): add extra pixmaps.
10015         * objects/UML/Makefile.am (libuml_objects_la_SOURCES): add
10016         stereotype.h
10018         * lib/Makefile.am (libdia_a_SOURCES): add diavar.h here.
10020         * app/Makefile.am (dia_core_files): remove splash.h from file
10021         list, as it doesn't exist.
10023         * doc/en/Makefile.am (uninstall-local): remove the docdir on
10024         uninstall.
10026         * doc/Makefile.am (uninstall-local): target to remove the C
10027         symlink.
10029         * dia.spec (%files): include the documentation in the package.
10031         * app/menus.c (toolbox_menu_items): add menu item for manual,
10032         which calls help_manual_callback.
10034         * app/commands.c (help_manual_callback): find help file and load
10035         netscape to view it.
10037         * app/commands.h: add prototype for help_manual_callback()
10039         * doc/Makefile.am (helpdir): similar here.
10041         * doc/en/Makefile.am (helpdir): make the helpdir
10042         $(pkgdatadir)/help/en in the non gnome case.
10044         * configure.in (HAVE_GNOME): add conditional.
10046         * doc/en/Makefile.am: handle the graphics in a more general way,
10047         so it is easier for Kevin to add them to the build (just add them
10048         to the GRAPHICS var).
10050         * app/Makefile.am (embed_extra_print_files): make the case of
10051         building without gnome-print support but with bonobo support work.
10052         dia-embedd needs to be include the gnome-print
10054 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
10056         * samples/Makefile.am: included all samples in the distribution....
10057         
10058 2001-03-09  Cyrille Chepelov  <chepelov@calixo.net>
10060         * configure.in: removed premature test for DPS. Added -*- m4 -*-
10061         at the beginning. Made HAVE_UNICODE non-default. po/es_ES.po has
10062         vanished, removed it from ALL_LINGUAS.
10064         * lib/charconv.[ch] (NEW): a very small wrapper around
10065         unicode_iconv to convert strings between utf8 and local charset
10066         (actually, ISO-8859-1, though one can do
10067         CFLAGS="-DEFAULT_8BIT_CHARSET=\"ISO-8859-2\"" and the like).
10069         * lib/ps-utf8.[ch] (NEW): A PostScript Unicoder ; a smallish
10070         library to help build Postscript streams which use as many custom
10071         font encodings as necessary to correctly represent all characters
10072         used (testing from users with non-latin1 and/or more than 256
10073         characters in routine use *very* welcome).
10075         * app/Makefile.am, lib/Makefile.am: integrated these into the
10076         build process.
10078         * shapes/Logic/.cvsignore (NEW): .cvsignore
10079         
10080         * app/render_eps.h: forwarded some changes Lars forgot to include.
10081         * app/render_eps.c: turned off ASCII85 and FILTERS, as this
10082         doesn't yet build.
10084 2001-03-08  Kevin Breit <battery841@mediaone.net>
10086         * doc/en/home_network.png: Added file.
10087         * doc/en/line_props.png: Added file.
10088         * doc/en/usage-objects.sgml: Added two graphics to file.
10089         * doc/en/usage-quickstart.sgml: Added one graphic to file.
10091 2001-03-06  Kjartan Maraas  <kmaraas@gnome.org>
10093         * app/grid.h: Place comment around text after #endif.
10094         * lib/bezier_conn.c: #include <string.h>.
10095         * lib/beziershape.c: #include <string.h>.
10096         * lib/connpoint_line.h: Comment after #endif.
10097         * lib/dia_dirs.c: #include <string.h>.
10098         * lib/element.c: Same.
10099         * lib/lazyprops.c: #include <config.h> and "intl.h".
10100         * lib/lazyprops.h: Comment out text after #endif.
10101         * lib/neworth_conn.c: #include <string.h>
10102         * lib/orth_conn.c: Same here.
10103         * lib/poly_conn.c: Here too.
10104         * lib/polyshape.c: And here.
10105         * lib/properties.c: Remove #include "intl.h" from here and add
10106         an array of static strings to work around bug in gettext that
10107         makes it miss strings in a #define body.
10108         * objects/GRAFCET/action_text_draw.h: Comment out text after #endif.
10109         * objects/GRAFCET/boolequation.h: Same here.
10110         * objects/chronogram/chronoline_event.h: Add prototype for
10111         destroy_cle().
10112         
10113 2001-03-05  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
10115         * objects/FS/function.c: 
10116         * objects/FS/flow.c: 
10117         * objects/FS/flow-ortho.c: 
10118         Updated to use properties.
10120 2001-03-03  James Henstridge  <james@daa.com.au>
10122         * lib/lazyprops.c (__propdlg_build_enum): translate the radio
10123         button labels when creating them.
10125 2001-02-28  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
10127         * objects/UML/actor.c
10128         * objects/UML/realizes.c 
10129         * objects/UML/implements.c 
10130         * objects/UML/generalization.c 
10131         * objects/UML/dependency.c 
10132         * objects/UML/constraint.c
10133         Updated to use properties.
10134         
10135         * objects/UML/stereotype.c 
10136         * objects/UML/stereotype.h
10137         Generalized to any kind of bracketting.
10138         
10139 2001-02-28  James Henstridge  <james@daa.com.au>
10141         * app/menus.c: add help entry to the help menu.  Need to get this
10142         working for the non GNOME case as well (maybe put help under
10143         $(datadir)/dia/help for non GNOME?)
10145         * doc/en/topic.dat: add a topic.dat file for GNOME menus.
10147         * doc/en/dia-manual.sgml (legalnotice): add an id attribute to
10148         this element so that we get a meaningful filename in the html
10149         translation.
10151         * doc/Makefile.am, doc/en/Makefile.am: new makefiles to handle the
10152         documentation.
10154         * configure.in (DB2HTML): add a check for the db2html program, and
10155         set an automake conditional if it is found.
10157         * Makefile.am: remove EXTRA_DIST rules that cover doc/ directory,
10158         and descend into doc/ directory while building.
10160         * configure.in (AC_OUTPUT): add doc/ makefiles to output list, now
10161         we need more complex rules for building the docs.
10163 2001-02-25  Hans Breuer  <hans@breuer.org>
10165         * config.h.win32 : some cleanup
10167         * app/prefererences.c : g_scanner_(freeze|thaw)_symbol_table
10168         are deprecated since glib-1.3.2. Sorry needing to use them
10169         contionally, but there is no glib-1.2 for win32
10171         * app/recent_files.c : use g_strescape (params) conditionally
10173         * lib/connection.c : include string.h for memcpy
10175         * lib/geometry.h : added some stuff for compatibility with
10176         msvc, which previously came from included config.h
10178         * lib/libdia.def : updated
10180         * objects/makefile.msc : updated
10182         * objects/GRAFCET/action.c(490) : fixed warning C4700: local variable 
10183         'extra' used without having been initialized
10185         * objects/network/bus.c(658) : initialize 'extra'
10187         * plug-ins/makefile.msc : updated
10189         * plug-ins/cgm/cgm.c :
10190         * plug-ins/pstricks/render_pstricks.c : 
10191         g_free() memory allocated by dia_image_rgb_data(). Plugs possibly 
10192         huge memory leaks.
10194         * plug-ins/python/python.c : use HAVE_DIRENT_H
10196 2001-02-23  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
10198         * lib/connection.c (connection_update_boundingbox): 
10199         Made the BB shrink on right and lower sides, too.
10201 2001-02-23  Kjartan Maraas  <kmaraas@gnome.org>
10203         * */*.c: #incude <config.h> at the top.
10204         * */*.h: Remove include of "config.h" since it should only
10205         be included in .c files and at the very top for things to
10206         work.
10207         * sheets/*.sheet: Updated Norwegian translations.
10208         
10209 2001-02-22  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
10211         * objects/UML/small_package.c: 
10212         * objects/UML/class.c: 
10213         * objects/UML/node.c: 
10214         * objects/UML/usecase.c:
10215         * objects/UML/lifeline.c: 
10216         * objects/UML/message.c:
10217         Various cleanup of properties in particular.  Now much more use of
10218         standard properties.
10220         * lib/diagramdata.c (layer_render): Visualization of bounding
10221         boxes, for debugging purpoises.
10223 2001-02-22  Cyrille Chepelov  <chepelov@calixo.net>
10225         * lib/geometry.h:
10226         * lib/connection.[ch]:
10227         * lib/poly_conn.[ch]:
10228         * lib/polyshape.[ch]:
10229         * lib/bezier_conn.[ch]:
10230         * lib/beziershape.[ch]:
10231         * lib/orth_conn.[ch]:
10232         * lib/neworth_conn.[ch]:
10233         * lib/element.[ch]: Changed a bit the _update_boundingbox()
10234         interface. Now the parent elements have an extra_spacing
10235         structure, which child objects just need to fill, to take care of
10236         most arrow & line width extra space needs.
10238         * objects/**/*.c: updated all objects to the new interface.
10239         While at it, killed all instances of (Object *) downcasts (phew !)
10241         * objects/GRAFCET/condition.c: removed the arrowhead, which IEC848
10242         doesn't speak about.
10243         
10244 2001-02-21  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>
10246         * sheets/Logic.sheet: New sheet for Logic symbols.
10248 2001-02-21  James Henstridge  <james@daa.com.au>
10250         * app/menus.c (dia_gnome_menu_get_widget): new function to find a
10251         widget by its path name.  Walks the GnomeUIInfo heirachy rather
10252         than widget tree, compares untranslated label names and ignores
10253         underscores in the labels.
10254         (menus_get_item_from_path): use dia_gnome_menu_get_widget so that
10255         lookups are not dependent on the current locale, as with
10256         gnome_app_find_menu_pos.
10258         * acconfig.h: guard against multiple inclusion of config.h.
10260         * app/select.c (select_style_callback): simply set the selection
10261         style to the value of action.
10263         * app/menus.c (menus_init): simplify the item factory based menu
10264         code a bit.  It looks like it was using some code cut and pasted
10265         from the gimp, which looked a bit unnecessary.  Things work fine
10266         without it.
10267         (selectmenu): set the action to the type of selection mode
10268         requested.
10269         (display_menu_items): use the symbolic enumeration values for the
10270         action field.
10272         * app/plugin-manager.c: 
10273         * app/plugin-manager.h: 
10274         * app/filedlg.c:
10275         * app/filedlg.h: 
10276         * app/select.c:
10277         * app/select.h: change prototypes.
10279         * app/commands.c: update all callback prototypes, and get rid of
10280         some #ifdef GNOME's.
10282         * app/commands.h: change function prototypes.
10284         * app/dia_embedd.c (save_fn):
10285         s/ex_Bonobo_IOError/ex_BonoboStorage_IOError/
10287         * app/menus.c (menus_init): for gnome menus, use
10288         gnome_app_fill_menu_custom and pass in a GnomeUIBuilderData
10289         structure that proxies the callbacks to have the same signature as
10290         GtkItemFactory type 1 callbacks.
10291         (menus_init): for GTK menus, change from callback type 2 to type
10292         1.
10293         (display_menu_items): add back tearoffs.  I don't know who removed
10294         these for the gtk menu case.
10296 2001-02-20  Kevin Breit <battery841@mediaone.net>
10298         * doc/en/usage-objects-special.sgml: Fixed a few of the special
10299         object descriptions.  More to come in the next few days.
10301 2001-02-20  Lars Clausen  <lrclause@cs.uiuc.edu>
10303         * app/render_eps.c: Fixed for internationalized floating point
10304         output. 
10306         * objects/UML/note.c: Fixed properties -- was missing
10307         Get/ApplyPropertiesFunc.  Also improved update to recalculate text
10308         position. 
10310 2001-02-19  Lars Clausen  <lrclause@cs.uiuc.edu>
10312         * plug-ins/xfig/xfig-import.c: 
10313         File added importing xfig files.  Still very rough, but good
10314         enough to let others hack on it.
10316 2001-02-07  Cyrille Chepelov  <chepelov@calixo.net>
10318         * app/interface.c:
10319         * app/linewidth_area.c:
10320         * lib/lazyprops.c:
10321         * lib/properties.c:
10322         * lib/widgets.c:
10323         * objects/ER/attribute.c:
10324         * objects/ER/entity.c:
10325         * objects/ER/relationship.c:
10326         * objects/custom/custom_object.c:
10327         * objects/flowchart/box.c:
10328         * objects/flowchart/diamond.c:
10329         * objects/flowchart/ellipse.c:
10330         * objects/flowchart/parallelogram.c:
10331         * objects/standard/box.c:
10332         * objects/standard/textobj.c: per Vlad Harchev's request, made
10333         page sizes of gtk_adjustments different than their step sizes.
10334         When sensible values of page size weren't found (overwhelming
10335         majority of cases), page sizes were set to 10.0 * respective step
10336         size.   
10338 2001-02-07  Lars Clausen  <lrclause@cs.uiuc.edu>
10340         * objects/network/hub.c: 
10341         Patch from Hubert Figuiere applied, adding connection points.
10343 2001-02-02  James Henstridge  <james@daa.com.au>
10345         * app/display.c (new_display): set update id to 0 here.
10346         (ddisplay_update_handler): rename from ddisplay_flush, and set
10347         update_id to 0 at end of processing.
10348         (ddisplay_flush): new implementation that simply sets an idle
10349         handler to perform the actual drawing.
10351         * app/display.h: add structure member to hold the redraw idle
10352         handler id.
10354 2001-01-31  Lars Clausen  <lrclause@cs.uiuc.edu>
10356         * objects/standard/ellipse.c (ellipse_copy): 
10357         * objects/standard/zigzagline.c (zigzagline_copy): 
10358         Fix of copying provided by Martin Hawlisch.
10360 2001-01-23  Kevin Breit <battery841@mediaone.net>
10362         * doc/en/graphics/: added directory
10364         * doc/en/graphics/greendots.png: added file
10366         * doc/en/*sgml: made minor and some major changes to prepare for 1.4
10367         release.
10369 2001-01-23  Kevin Breit <battery841@mediaone.net>
10371         * doc/en/*sgml: made some grammar changes and fixed a few markup bugs.
10372                         thanks to John Fleck!
10374 2001-01-21  Kevin Breit <battery841@mediaone.net>
10376         * doc/en/*sgml: made just minor changes to a few lines; nothing major.
10378 2001-01-12  Michael Meeks  <michael@helixcode.com>
10380         * app/dia_embedd.c (init_server_factory): do a bonobo_activate
10381         so our POA gets setup properly.
10383         * app/paginate_gnomeprint.c (paginate_gnomeprint): g_free
10384         things we g_malloc.
10386         * configure.in: Use bonobox_print.
10388         * app/dia_embedd.c (embeddable_factory): add print interface.
10389         (object_print): impl.
10391 2001-01-11  Michael Meeks  <michael@helixcode.com>
10393         * app/dia_embedd.c (embeddable_factory): aggregate PersistFile.
10394         (load_fn, save_fn): impl.
10395         (view_factory): hide modified status bar, & use activate fn.
10396         (refresh_view): force redraws of the views.
10397         (view_show_hide): split from
10398         (dia_view_activate): here.
10400         * app/diagram.c (diagram_load_into): split from diagram_load.
10401         (new_diagram): simplify bu splittin stuff into
10402         (diagram_init): here.
10404 2001-01-10  Steffen Macke <sdteffen@yahoo.com>
10406         * shapes/jigsaw/*.shape: replaced #000000 with foreground
10407         and #ffffff with background
10408         
10409 2001-01-08  Steffen Macke <sdteffen@yahoo.com>
10411         *configure.in: GTK+-build was broken due to missing
10412         have_bonobo=no
10413         
10414 2001-01-06  Michael Meeks  <michael@helixcode.com>
10416         * app/dia_embedd.c (main): add running context support.
10417         (dia_embeddable_destroy): remove old running object counting.
10418         (embeddable_factory): ditto.
10419         (view_factory): comment out menu path hiding.
10421         * lib/sheet.c (load_register_sheet): use free to free
10422         stuff from libxml not g_free.
10424         * acconfig.h: kill cover for USE_BONOBOX and USE_OAF
10426         * configure.in: remove USE_OAF checks, check for a precice
10427         Bonobo version >= 0.31, revamp bits.
10429         * app/dia_embedd.c (init_server_factory): upd.
10430         (init_dia_factory): remove OAF conditionals, everything uses
10431         oaf now.
10433         * app/GNOME_Dia.oafinfo: rename OAFIIDs
10435         * app/Makefile.am: remove ancient gnorba code.
10436         rename dia.oafinfo to GNOME_Dia.oafinfo
10438 2001-01-07  Hans Breuer <Hans@Breuer.Org>
10440         * config.h.win32
10441         * install.win32
10442         * readme.win32 : some more files required or useful to build 
10443         Dia on win32
10445         * plug-ins/wmf/wmf.cpp : fixed open issues like fill_arc and
10446         fill_bezier implementation, boundary drawing in fill mode, etc.
10447         Next one complaining gets the source, uncommented ...
10449         * shapes/network/router-symbol.xpm 
10450         * shapes/network/switch-atm-symbol.xpm 
10451         * shapes/network/switch-symbol.xpm : removed "-*- picture -*- "
10452         from /* XPM */ header, cause it stopped Dia/gdk_pixbuf to detect 
10453         the files as XPMs. Maybe the X versions of these functions are more
10454         tolerant ...
10456 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
10458         * plug-ins/python/Makefile.am: added libart path
10460         * plug-ins/python/python.c: added dirent.h
10462         * configure.in: added es_ES and pt_BR to ALL_LINGUAS
10463         
10464 2001-01-06  Hans Breuer <Hans@Breuer.Org>
10466         * objects/uml/actor.c
10467         * objects/uml/branch.c
10468         * objects/uml/class.c
10469         * objects/uml/classicon.c
10470         * objects/uml/component.c
10471         * objects/uml/large_package.c
10472         * objects/uml/node.c
10473         * objects/uml/note.c
10474         * objects/uml/object.c
10475         * objects/uml/small_package.c
10476         * objects/uml/state.c
10477         * objects/uml/usecase.c : started to implement the generic property
10478         interface for the uml objects. Would appreciate some help on how
10479         to implement properties which are list of properties themselves,
10480         e.g. member functions and their parameters of UMLClass.
10482 2001-01-06  Hans Breuer <Hans@Breuer.Org>
10484         * plug-ins/python/diamodule.c : finally ported to win32.
10485         Added new objects and implemented register_export function.
10487         * plug-ins/python/pydia-object.h
10488         * plug-ins/python/pydia-display.c
10489         * plug-ins/python/pydia-handle.c
10490         PyObject_HEAD_INIT needs some tweakink on win32. Done in
10491         pydia-object.h; others files simply using it.
10493         * plug-ins/python/pydia-layer.c : reflect 
10494         layer_find_closest_connection(_)point renaming
10496         * plug-ins/python/pydia-object.c : add property properties.
10497         Also change bounding_box to DiaRectangle.
10499         * plug-ins/python/python.c : extended error reporting; use
10500         all *.py files from Dia's plug-in dir instead of hardcoded
10501         test.py. This sollution should be fine with Win32, but on
10502         Unix it may need some tweaking (dunno) ...
10504         * plug-ins/python/export-object.py
10505         * plug-ins/python/export-render.py : test and documentation 
10506         implementations for export filter implementations in Python
10508         * plug-ins/python/pydia-color.[hc]
10509         * plug-ins/python/pydia-diagramdata.[hc]
10510         * plug-ins/python/pydia-error.[hc]
10511         * plug-ins/python/pydia-export.[hc]
10512         * plug-ins/python/pydia-font.[hc]
10513         * plug-ins/python/pydia-geometry.[hc]
10514         * plug-ins/python/pydia-image.[hc]
10515         * plug-ins/python/pydia-properties.[hc]
10516         * plug-ins/python/pydia-property.c
10517         * plug-ins/python/pydia-render.c : new objects in new files 
10519         * plug-ins/python/makefile.am : added new files but can't test it
10521         * plug-ins/python/pydia.def
10522         * plug-ins/python/makefile.msc : for win32 build
10524         * plug-ins/cgm/cgm.c
10525         * plug-ins/dxf/dxf-import.c
10526         * plug-ins/dxf/dxf-export.c
10527         * plug-ins/hpgl/hpgl.c : reflect export API change
10529         * plug-ins/shape/shape-export.c : reflect export API change
10530         and check for libart (better the availibility of a png exporter) 
10531         at run-time instead of compile-time. 
10533 2001-01-06  Steffen Macke <sdteffen@yahoo.com>
10535         * app/recent_files.h was missing from Hans's commit
10537         * plug-ins/shape/shape_export.c: shape export was broken
10538         due to interface changes
10539         
10540 2001-01-05  Hans Breuer <Hans@Breuer.Org>
10542         Applied Steffen's recent file list patch :
10543         * app/Makefile.am : added recent_files.[hc]
10544         * app/diagram.c : add files to recent file list
10545         * app/menus.c : add recent file menu
10546         * app/app_procs.c : changed initialization order to
10547         make recent file list work with command line processing.
10549         The Filter export()/import() functions have got an additional 
10550         parameter to allow multiple filters via one C callback (required
10551         for Python bindings)
10553         * app/commands.[hc] : corrected the signature for gtk menu callback
10554         functions, which actually use the second or third parameter. This
10555         is the absolute minimum change to make these functions/menu entries
10556         work again. Using the other possible gtk menu callback signature
10557         would have required one more function to change. (see mailing list
10558         thread "Objects/Align/Equal Distance" for more information.
10560         * app/disp_callbacks.c : applied Gustavo J.A.M. Carneiro's
10561         zoom-combo focus patch
10563         * app/display.c
10564         * app/interface.c : wrapped the Zoom Combo code into 
10565         #ifndef WITHOUT_ZOOM_COMBO because IHMO it isn't an useabilty
10566         improvement but cluttering the user interface. Also it wasn't
10567         compiling on Win32 anyway. The win32 version does define 
10568         WITHOUT_ZOOM_COMBO to keep the old look. 
10569         There are plans to use the statusbar to display size and placement
10570         of selected objects, whereas the Zoom Combo would need to get out
10571         of the way as well.
10573         Added "Save Changes?" to diagram close dialog. Hopefuly the
10574         Yes/No/Cancel option isn't too much windoze like. IHMO this is
10575         an useability improvement.
10577         * app/export_png.c
10578         * app/filedlg.c
10579         * app/load_save.c
10580         * app/layer_dialog.c
10581         * app/paginate_psprint.c
10582         * app/render_eps.c
10583         - reflect signature changing of filter->export function
10584         - replaced '/' with G_DIR_SEPARARTOR where appropriate
10586         * app/diaunitspinner.c
10587         * app/render_libart.c
10588         added misssing headers like <string.h>
10590         * app/object_ops.c : fixed copy&paste bug in dialog string
10592         * app/splash.c : gdk_widget_show_now () does not ensure actual
10593         drawing of the splash screen, at least not on win32. Reuse the
10594         previous implementation with gtk_main_iteration() again.
10596         * */makefile.msc : make use of the build module (available in
10597         gnome-cvs/build. Updated for other source changes
10599         * lib/filter.h : added an user_data pointer to <ex/im>port()
10600         function signature and Dia<Im/Ex>portFilter to allow different
10601         filters to reuse the same callback function
10603         * lib/font.c : #include <string.h>
10605         * lib/orth_conn.c 
10606         * lib/poly_conn.c 
10607         * lib/poly_shape.c 
10608         * lib/neworth_conn.c
10609         * lib/text.c : don't mix allocator functions (g_)realloc, free, ...
10611         * */*.def : export function definition files required by win32 build
10613         * objects/custom/custom.c : #include <string.h>
10615         * plug-ins/pstricks/render_pstricks.c
10616         * plug-ins/shape/shape_export.c
10617         * plug-ins/svg/render_svg.c
10618         reflect changes to filter export function signature
10620         * plug-ins/wmf/wmf.cpp : fixed indent and scaling. It now should
10621         mostly work as expected
10622         * plug-ins/wmf/wmf_gdi.[hc] : Updated comment. Still not used
10623         to build the wmf plug-in because on the one hand the GDI emulation 
10624         isn't finished and on the other hand it isn't required when building
10625         for win32. Is there anybody out there, who wants to save WMF on non
10626         windoze platforms ?
10628         * plug-ins/wpg/wpg.cpp : fixed scaling to take axis dependent
10629         offset into account.
10631 2001-01-02  Steffen Macke <sdteffen@yahoo.com>
10633         * app/Makefile.am: added missing plug-ins to run_dia.sh
10635         * lib/paper.c: added paper sizes A0, A1, A2
10637         * objects/UML/class.c
10638         objects/UML/class.h
10639         objects/UML/class_dialog.c: added support for colored UML
10640         classes
10641         
10642 2000-12-30  Kevin Breit <battery841@mediaone.net>
10644         * doc/en/usage-customization.sgml: added more content
10646 2000-12-24  Kevin Breit <battery841@mediaone.net>
10648         * doc/en/usage-layers.sgml: added file, contributed by Remypsb
10649         <remy.viard@laposte.net>
10651 2000-12-24  Steffen Macke <sdteffen@yahoo.com>
10653         * added limiting lines to Civil Engineering sheet,
10654         fixed vertical pump icon
10655         
10656 2000-12-20  Steffen Macke <sdteffen@yahoo.com>
10658         * updated/additional Civil Engineering shapes: better icons,
10659         shapes use foreground/background colors now and are filled
10660         
10661 2000-12-03  Kevin Breit  <battery841@mediaone.net>
10663         * doc/en/dia-manual.sgml Integrated a few diffs.  New section should be
10664         the selection <sect1>
10666 2000-11-29  Fredrik Hallenberg  <hallon@lysator.liu.se>
10668         * app/load_save.c (diagram_data_save): avoid using obsoleted
10669         libxml calls (only matters when compiling with libxml2)
10671 2000-11-25  James Henstridge  <james@daa.com.au>
10673         * app/disp_callbacks.c (ddisplay_drop_object): add a function to
10674         handle the tool drops on the canvas.
10676         * app/interface.c (display_data_received_callback): do the check
10677         to make sure that the drag is from a local toolbox here as well.
10679         * app/interface.c (create_tools): unref the pixmap/mask after
10680         creating the GtkPixmap.
10681         (tool_setup_drag_source): function to set up a drag source for
10682         create object tool buttons.
10683         (create_tools): setup drag source for CREATE_OBJECT_TOOL's.
10684         (fill_sheet_wbox): same here.
10685         (create_display_shell): set up the display canvas as a drag
10686         destination.
10687         (display_drop_callback, display_data_received_callback): functions
10688         to handle drops of tool buttons.
10690         * app/menus.c (menus_init): don't use gnome_popup_menu_new().  It
10691         does weird shit to the user_data pointer for a menu item.  Object
10692         alignment should work again now.
10694         * app/splash.c (get_logo_pixmap): don't unref the bitmap if it is
10695         NULL, and mark this function static.
10696         (app_splash_init): use gtk_widget_show_now() instead of the
10697         gtk_main_iteration loop.
10698         (app_splash_init): connecting gtk_widget_destroy to the destroy
10699         signal of a widget seems pretty useless.
10701 2000-11-23  Kevin Breit <battery841@users.sourceforge.net>
10703         * doc/en/dia-manual.sgml:
10704                 Added sect1 for advanced object types.  Starting development
10705                 on that part.
10707 2000-11-18  Kevin Breit <battery841@mediaone.net>
10709         * doc/en/dia-manual.sgml:
10710                 Stupid spelling fixes.
10712 2000-11-18  Kevin Breit <battery841@mediaone.net>
10714         * doc/en/dia-manual.sgml:
10715                 Just some small changes I made.  Props to Greg LeBlanc on the
10716                 recommendations.
10718 2000-11-17  Alexander Larsson  <alla@lysator.liu.se>
10720         * app/display.c:
10721         (ddisplay_add_display_area): Clip input rectangle to
10722         the visible part of the display.
10723         (ddisplay_scroll): Optimization, don't scroll and
10724         redraw if moving to the same position as before.
10726         * app/render_libart.c (renderer_libart_copy_to_window):
10727         Removed sanity check. Now moved to ddisplay_add_display_area().
10729         * lib/diavar.h:
10730         Added return at end of file.
10731         
10732 2000-11-13 Kevin Breit <battery841@mypad.com>
10733         * doc/en/dia-manual.sgml
10734                 Commited manual changes from Henry House <hajhouse@houseag.com>
10736 2000-10-21 Hans Breuer <Hans@Breuer.Org>
10737         * lib/beziershape.c :
10738                 The previous code was accessing unowned memory due to IHMO
10739                 wrong index calculation. Now it appears to be fixed.
10740                 *Please Review!*
10742         * lib/makefile.msc
10743         * plug-ins/makefile.msc
10744         * objects/makefile.msc
10745         * app/makefile.msc: (new files)
10746                 Makefiles for Dia on Win32, Micro$oft VC only.
10748         * plug-ins/pstricks/render_pstricks.c
10749         * plug-ins/dxf/dxf-import.c
10750         * plug-ins/shape/shape-export.c
10751         * plug-ins/svg/render_svg.c
10752         * app/commands.c
10753         * app/filedlg.c
10754         * app/preferences.c
10755         * app/render_eps.c
10756         * lib/sheet.c
10757         * lib/plug-ins.c
10758         * objects/custom/custom.c
10759         * objects/standard/image.c
10760                 portability (not only win32): use HAVE_UNISTD_H, HAVE_DIRENT_H 
10761                 where   appropriate, add missing prototypes like <string.h>
10763         * plug-ins/wmf/wmf_gdi.cpp
10764         * plug-ins/wmf/wmf_gdi.h:
10765                 start of wmf write functions for non Win32 platform. Not 
10766                 finished yet. The other way to get it working maybe to
10767                 link the plug-in against wine libs.
10768                 
10769         * plug-ins/wpg/wpg.c : add missing brace
10771         * app/load_save.c :
10772                 Handling for unknown objects at load time. Previously Dia
10773                 was crashing, if you try to load a file referencing objects
10774                 whiches plug-ins aren't installed/available. Now it spits out 
10775                 a warning and ignores the unknown objects.
10777         * app/interface.c
10778                 toolbox DND support for files like The Gimp does it.
10780         * app/main.c
10781         * app/app_procs.h
10782                 Simple splash screen support and usage.
10784         * app/app_procs.c
10785                 Splash screen, portability fixes, dont' g_error if there is
10786                 g_get_homedir return NULL. This may remove the one and only
10787                 FAQ for Win32.
10789         * app/menus.c :
10790                 Make it compile without ENABLE_NLS
10792         * app/render_libart.c :
10793                 Sanity check to avoid calling libart with wrong window coordinates.
10794                 They come from the update handler. Direct Gdk is dealing nicely
10795                 with coordinates out of range, libart does access un-owned memory
10796                 in this case, mostly causing crashes.
10798         * app/winmain.c: (new file) Export the Win32 Gui version of the
10799                 main function. This file is only required for Windoze.
10801         * app/splash.c: (new file) splash screen implementation
10803         * lib/color.h
10804         * lib/font.h
10805         * lib/diavar.h: (new file)
10806                 moved special variable export code to diavar.h, because it is
10807                 needed in color.h and font.h
10809         * lib/paper.c :
10810                 M$VC cann't export inlined functions. Quick hack to let it
10811                 link again. Probably the glib mechanics should be used here?
10813         * objects/UML/lifeline.c : initialize var before usage
10815         * objects/GRAFCET/step.c : removed unused var
10817 2000-10-14  James Henstridge  <james@daa.com.au>
10819         * app/render_gnomeprint.c (draw_image): change code so images
10820         don't get flipped when printing.
10822         * app/paginate_gnomeprint.c (diagram_print_gnome): check to make
10823         sure that the return value of
10824         gnome_print_context_new_with_paper_size is not NULL.
10826         * app/render_gnomeprint.c (draw_arc): add code to convert arcs
10827         into a series of bezier segments.
10828         (fill_arc): similar code to handle filled arc segments.
10830 2000-10-12  Fredrik Hallenberg  <hallon@lysator.liu.se>
10832         * app/app_procs.c
10833         * app/commands.c
10834         * app/dia-props.c
10835         * app/diagram.c
10836         * app/diagram.h
10837         * app/disp_callbacks.c
10838         * app/display.c
10839         * app/linewidth_area.c
10840         * app/paginate_psprint.c
10841         * app/preferences.c
10842         * app/undo.c
10843         * app/font.c
10844         * app/message.c
10845         * app/neworth_conn.c
10846         * app/orth_conn.c
10847         * objects/standard/box.c: various small changes to get rid of 
10848         annoying warnings (eg faulty prototypes and unused variables)
10850         * app/disp_callbacks.c
10851         * app/cursor.h
10852         * app/magnify.c
10853         * app/magnify.h: update magnify tool icon when pressing/releasing
10854         shift. I will try to make something more general so that similar
10855         things can be used by other tools.
10857         * shapes/SDL/inout.shape
10858         * shapes/SDL/return.shape: fixed some typos
10860 2000-10-09  James Henstridge  <james@daa.com.au>
10862         * objects/custom/shape_info.c (parse_path): apply patch from
10863         Robert Young <robertdotyoung@dsto.defence.gov.au> to fix bug
10864         #25221
10866 2000-10-08  James Henstridge  <james@daa.com.au>
10868         * objects/standard/image.c (image_set_props): if the file could not
10869         be loaded, show the broken image icon.
10871         * plug-ins/Makefile.am (SUBDIRS): add shape to the subdirs list.
10873         * plug-ins/shape/*: the shape export plugin by Steffen Macke.
10875         * app/interface.c (fill_sheet_wbox): use gdk-pixbuf to load the
10876         object icon when loading from a file.  This allows you to have PNG
10877         icon files for shapes.
10879 2000-10-07  James Henstridge  <james@daa.com.au>
10881         * app/Makefile.am (dia_LDADD): remove GDK_IMLIB_LIBS reference.
10883         * lib/Makefile.am, app/Makefile.am (INCLUDES): remove
10884         GDK_IMLIB_CFLAGS reference.
10886         * app/commands.c (help_about_callback): remove imlib code.
10888         * lib/dia_image.c: only include the pixbuf version of the image
10889         routines.
10891         * acconfig.h: remove the HAVE_GDK_PIXBUF flag from here.
10893         * configure.in (CPPFLAGS): remove the check for imlib, as we now
10894         require gdk-pixbuf.
10896         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer):
10897         conditionally define \setfont as well.
10899 2000-10-05  James Henstridge  <james@daa.com.au>
10901         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer): fix
10902         preamble so that we define \setlinejoinmode and \setlinecaps
10903         commands conditionally on them being undefined.  This way, the
10904         pstricks output files should work without modification, and will
10905         support the commands when they are implemented in pstricks.
10907 2000-10-05  Szabolcs Ban  <shooby@gnome.hu>
10909         * dia.desktop: added hungarian translations to dia.desktop
10911 2000-10-04  James Henstridge  <james@daa.com.au>
10913         * sheets/UML.sheet: fix typo.
10915         * objects/custom/shape_info.c: use strtod instead of g_strtod.
10916         (parse_path): actually call setlocale around strtod calls.
10918         * lib/dia_xml.c: use strtod rather than g_strtod.  We wrap each
10919         call in setlocale(LC_NUMERIC, "C"), so there is no reason to call
10920         the g_strtod wrapper.
10922         * shapes/SDL/: add SDL shapes from Rubens Ramos
10923         <rubens_ramos@yahoo.com>
10925         * acinclude.m4 (DIA_CHECK_CFLAG): fix up macro.
10927         * sheets/Makefile.am (SHEETS): add SDL.sheet to list.
10929         * shapes/MSE/: add Mobile Subscriber Equipment shapes from
10930         W. Michael Petullo <mike@flyn.org>.
10932         * sheets/Makefile.am (SHEETS): add civil.sheet (which got missed
10933         from the 0.86 tarball) and jigsaw.sheet.
10935         * configure.in: add shapes/jigsaw/Makefile to list of generated files.
10937         * shapes/jigsaw/: jigsaw shapes from Martin Hawlisch.
10939         * shapes/network/: add network-additional shapes here.
10941         * sheets/network.sheet: add the network-additional shapes from
10942         Martin Hawlisch <Martin.Hawlisch@bflow.com> to the main network
10943         sheet.
10945 2000-09-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
10947         * configure.in: Updated ALL_LINGUAS
10949         * po/nl.po: Removed newline from translation
10951 2000-09-17  Asbjorn Pettersen  <asbjornP@dualog.no>
10953         * app/commands.c (help_about_callback): Use G_DIR_SEPARATOR_S in 
10954         logo filename generation. 
10956         * lib/dia_dirs.c (dia_get_data_directory): Handle empty subdir better.
10957         Avoiding "//dia_logo.png".
10959 2000-09-16  Asbjorn Pettersen  <asbjornP@dualog.no>
10961         * app/filedlg.c: add include <sys/types.h> to
10962         remove warning. (OS/2)
10964 2000-09-13  Cyrille Chepelov <chepelov@calixo.net>
10966         * objects/chronogram/chronoline_event.c (reparse_clevent):
10967         the __checksum routine was simply bogus. Redone it in a slightly
10968         saner way (reported by Michael Farr <mfarr@cs.latrobe.edu.au>).
10970 2000-09-10  Asbjorn Pettersen  <asbjornP@dualog.no>
10972         * app/create_object.c (create_object_button_press): 
10973         * app/modify_tool.c (click_select_object): 
10974         * lib/object.h: select renamed to selectf to prevent
10975         compiler problems with function select().  OS/2 version.
10977 2000-09-08  Karsten Weiss  <knweiss@gmx.de>
10979         * po/de.po: Updated.
10981 2000-09-07  Karsten Weiss  <knweiss@gmx.de>
10983         * dia.desktop: Added German translation
10984         * app/menus.c: "Diagram Propeties..." -> "Diagram Properties..."
10986 2000-08-29  Manuel de Vega Barreiro <barreiro@arrakis.es>
10988         * configure.in (ALL_LINGUAS): added "es"
10990 2000-08-28  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
10992         * app/magnify.c:
10993         * app/cursor.h:
10994         * app/cursor.c:
10995         * app/scroll_tool.c:
10996         Standardized cursor function get_cursor().  Magnify now has
10997         looking-glass cursor with + and -.
10999         * app/create_object.c (create_object_button_press): 
11000         Newly created connections now snap to connection points even when
11001         off the grid. 
11003 2000-08-17  Daniel Egger  <egger@suse.de>
11005         * app/menus.c: #ifdef'ed some code for the none GNOME
11006         case.
11007         * app/dia_embedd.c: Changed obvious hackery. Can anyone
11008         please have a look at the GNOME UI menu creation? The
11009         gnome-app-helper code is ages old and plainly broken!
11011 2000-08-15  Daniel Egger  <egger@suse.de>
11013         * app/commands.c:
11014         * app/commands.h:
11015         * app/diagram.c:
11016         * app/display.c:
11017         * app/menus.c:
11018         * app/select.c: First big patch to get the menus
11019         working again in the international version. Copied
11020         some code written by Sven and me from GIMP and
11021         thus implemented automatic tearoffmenu creation and
11022         proper translation. I also removed that pseudo
11023         radiomenu hack and cleaned up several translation
11024         hacks which have never really worked. All in all
11025         this is part I of the big menu patch. Enjoy and tell
11026         me if you detect any problems.
11028 2000-08-14  Daniel Egger  <egger@suse.de>
11030         * sheets/UML.sheet: Changed one German translation as
11031         suggested by Heribert Schuetz <hs@heribert-schuetz.de>.
11033 2000-08-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
11035         * app/diapagelayout.c:
11036         * lib/diagramdata.c:
11037         * lib/diagramdata.h:
11038         * lib/Makefile.am:
11039         * lib/paper.c:
11040         * lib/paper.h: honour PAPERCONF env variable and /etc/papersize when
11041         selecting paper size for a new diagram. TODO: Use libpaper if 
11042         available and use gnome_paper-stuff if using GNOME.
11044         * sheets/Electric.sheet: fixed typo.
11045         
11046 2000-08-08  James Henstridge  <james@daa.com.au>
11048         * po/README: added a readme file to tell translators to translate
11049         the .sheet files as well.
11051         * app/commands.c (help_about_callback): fix small bug where we tried
11052         to gdk_bitmap_unref() the mask for the about box image, even though
11053         it was NULL.  Now check for a NULL mask.
11055 2000-08-07  Daniel Egger  <egger@suse.de>
11057         * sheets/*.sheet: Added translations for the name
11058         in the toolbar tab. Brushed up some descriptions 
11059         and some translations a bit.
11061 2000-08-06  James Henstridge  <james@daa.com.au>
11063         * plug-ins/svg/render_svg.c (new_svg_renderer): update public
11064         identifier and dtd url for SVG output.
11065         (new_svg_renderer): fix the output of the viewBox output.  The
11066         second two numbers are the width and height -- not the right
11067         and bottom sides of the box.
11069         * shapes/*/*.shape: update svg namespace URI.
11071         * objects/custom/shape_info.c (load_shape_info): change the
11072         namespace URI for custom shapes yet again to match the Candidate
11073         Recommedation.  It looks like this one will probably be the final
11074         one.
11076         * app/display.c (new_display): remove the code that sets ic and
11077         ic_attr members to NULL, as one of the previous function calls
11078         causes the display to be realised.  This means that the ic gets
11079         lost.  Thanks to Yukihiro Nakai <ynakai@redhat.com> for finding
11080         this one.
11082 2000-08-06  James Henstridge  <james@daa.com.au>
11084         * shapes/Makefile.am (SUBDIRS): add Civil back to list.
11086         * NEWS: fixed date in NEWS file, as I will release today.
11088         * README: updated the README a little.  Added note that Dia is now
11089         a GNU program.
11091         * dia.spec: fix up spec file.
11093         * plug-ins/wpg/wpg.c: changed DIAG_NOTE stuff here as well.
11095         * plug-ins/hpgl/hpgl.c: change Hans's DIAG_NOTE stuff so that we don't
11096         get heaps of warnings when you turn off debugging.
11097         Also made a few other warning fixes.
11099 2000-08-02  James Henstridge  <james@daa.com.au>
11101         * plug-ins/svg/Makefile.am (INCLUDES): add XML_CFLAGS to INCLUDES.
11103         * configure.in: update version number.
11105 2000-08-01  James Henstridge  <james@daa.com.au>
11107         * app/commands.c (help_about_callback): add Hans to about dialog.
11109         * doc/shape.dtd: dtd for shape file format.
11111         * doc/custom-shapes: update doc file about creating custom shapes.
11113         * shapes/*/*.shape: change namespace URI for the SVG portion to the
11114         one for the latest draft.
11116         * shapes/*/*.shape: fix up rect definitions.
11118         * objects/custom/shape_info.c (load_shape_info): recognise newer
11119         namespace tag for SVG.
11120         (parse_svg_node): the rect element should take attributes x, y, width
11121         and height -- not x1,y1,x2,y2.
11123         * plug-ins/svg/render_svg.c (new_svg_renderer): updated doctype
11124         output to use the newest draft DTD.
11126         * plug-ins/svg/svg.c: initialisation code for plugin.
11128         * plug-ins/svg/render_svg.c: move svg export code to a plugin.
11130         * plug-ins/svg/Makefile.am: makefile for svg plugin.
11132         * app/app_procs.c (internal_plugin_init): don't register the svg
11133         export filter here.
11135         * app/Makefile.am (dia_core_files): don't compile in render_svg.[ch]
11137 2000-07-31  James Henstridge  <james@daa.com.au>
11139         * objects/standard/textobj.c (textobj_get_defaults): 
11140         * objects/standard/polygon.c (polygon_get_defaults): 
11141         * objects/standard/image.c (image_get_defaults): 
11142         * objects/standard/ellipse.c (ellipse_get_defaults): 
11143         * objects/standard/box.c (box_get_defaults): 
11144         * objects/standard/beziergon.c (beziergon_get_defaults): 
11145         * objects/flowchart/parallelogram.c (pgram_get_defaults): 
11146         * objects/flowchart/ellipse.c (ellipse_get_defaults): 
11147         * objects/flowchart/diamond.c (diamond_get_defaults): 
11148         * objects/flowchart/box.c (box_get_defaults): 
11149         * objects/custom/custom_object.c (custom_get_defaults): 
11150         * objects/FS/flow.c (flow_get_defaults): 
11151         * objects/FS/flow-poly.c (flow_get_defaults): 
11152         * objects/FS/flow-ortho.c (orthflow_get_defaults): ref and sink the
11153         defaults widget.
11155         * app/defaults.c (defaults_show): don't keep on ref'ing the defaults
11156         widgets for various object types.
11157         (create_dialog): ref and sink the no_defaults_dialog.
11159         * app/preferences.c (prefs_create_dialog): change
11160         gtk_container_border_width call to gtk_container_set_border_width.
11162 2000-07-29  James Henstridge  <james@daa.com.au>
11164         * app/commands.c (view_aa_callback): show a warning dialog if
11165         you start AA mode.
11167         * app/interface.c (fill_sheet_menu): don't add a menu item for
11168         empty sheets.
11170 2000-07-26  James Henstridge  <james@daa.com.au>
11172         * plug-ins/dxf/dxf-export.c: updates from Steffen to fix bug #18677
11174         * app/menus.c: remove edit grid menu item.
11176         * app/commands.[ch] (view_edit_grid_callback): removed.
11178         * app/display.c (new_display): don't initialise removed Grid members.
11180         * app/grid.c: remove unused functions.
11182         * app/grid.h: remove dialog related stuff from Grid structure.
11183         Remove prototypes for dialog functions.
11185         * app/menus.c: add to menus
11186         
11187         * app/commands.[ch] (view_diagram_properties_callback): new command
11188         for showing the diagram properties dialog.
11190         * app/dia-props.[ch]: a new diagram properties dialog.  To replace
11191         the edit grid dialog.
11193 2000-07-25  James Henstridge  <james@daa.com.au>
11195         * app/grid.c (grid_x_update): 
11196         (grid_y_update): as the grid setting is stored with the diagram,
11197         update all displays when a change is made.
11199         * app/modify_tool.c (modify_motion): use new snap_to_grid sig.
11201         * app/create_object.c (create_object_button_press): 
11202         (create_object_motion): use new snap_to_grid signature.
11204         * app/grid.c (grid_draw): use the grid settings in the DiagramData,
11205         and handle invisible grid lines.
11206         (snap_to_grid): use new grid settings.  Also changed signature to
11207         take a DDisplay rather than Grid pointer.
11208         (grid_show_dialog): get the defaults from the correct place.
11210         * app/display.c (new_display): do not set ddisp->grid.width_[xy].
11212         * app/diagram.c (new_diagram): set the grid size defaults from the
11213         user preferences.
11215         * app/load_save.c (diagram_data_save): save grid and guide info to
11216         diagram file.
11217         (diagram_data_load): add guide and grid load support.
11219         * lib/diagramdata.c (new_diagram_data): set the new DiagramData
11220         members.
11222         * lib/diagramdata.h: add members to DiagramData for grid and guide
11223         settings.
11225         * configure.in (BONOBO_LIBS): update configure scripts
11227         * app/dia.oafinfo: oafinfo file for dia embeddables.
11229         * app/dia_embedd.c: add OAF support.
11231 2000-07-24  James Henstridge  <james@daa.com.au>
11233         * plug-ins/wpg/Makefile.am: 
11234         * plug-ins/pstricks/Makefile.am: 
11235         * plug-ins/hpgl/Makefile.am: 
11236         * plug-ins/dxf/Makefile.am: same here.
11238         * plug-ins/cgm/Makefile.am: remove LIBADD.  Dia already links with
11239         the required libraries, and the link line was causing libtool not
11240         to build a shared library on some systems :(
11242         * plug-ins/cgm/cgm.c (write_real): the initial if statement should
11243         be checking x, not n.
11245 2000-07-23  James Henstridge  <james@daa.com.au>
11247         * app/preferences.c (prefs_data): set the "reset tools after
11248         create" preference to true by default.  That seems to be what most
11249         people expect.
11251         * app/interface.c (create_sheets): instead of a notebook, use an
11252         option menu that updates the sheet tools.  The notebook tabs were
11253         getting a bit unwieldly, so the option menu should fix that.  This
11254         also reduces the number of widgets in the tools radio button
11255         group, which should make the UI a little more responsive.
11257 2000-07-19  Fatih Demir <kabalak@gmx.net>
11258         
11259         * configure.in: Added tr to ALL_LINGUAS.
11260                 [ Yeah, we're now having a Turkish translation,
11261                    too. ]
11262         
11263         * dia.desktop: Added the Turkish entries.
11265 2000-07-02  Fredrik Hallenberg  <hallon@lysator.liu.se>
11267         * doc/diagram.dtd: changed string-element so it conforms to the
11268         output from dia.
11270 2000-06-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
11272         * configure.in: added chinese. 
11273         Use AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL.
11275         * app/app_procs.c:
11276           app/load_save.c:
11277           app/render_svg.c:
11278           lib/dia_xml.c:
11279           lib/plug-ins.c:
11280           lib/sheet.c:
11281           objects/custom/shape_info.c: 
11282           shapes/Circuit/npn.shape:
11283           shapes/Circuit/pnp.shape:
11284           sheets/*.sheet: dia now works with libxml2.
11285         Libxml2 is a bit more picky when parsing xml and reported errors on all 
11286         sheet files because they use non ascii characters (added 
11287         encoding="iso-8859-1"). Also "xml:lang=en@layman" is not proper xml so 
11288         I commented out these.
11290 2000-06-30  Christopher R. Gabriel  <cgabriel@linux.it>
11292         * configure.in (ALL_LINGUAS): added Italian
11294 2000-06-27  Sung-Hyun Nam  <namsh@lgic.co.kr>
11296         * configure.in (ALL_LINGUAS): added Korean
11298 2000-06-25  James Henstridge  <james@daa.com.au>
11300         * objects/flowchart/parallelogram.c (pgram_create): use default font
11301         and add properties interface support.
11303         * objects/flowchart/ellipse.c (ellipse_create): use default font and
11304         add properties interface support.
11306         * objects/flowchart/diamond.c (diamond_create): use default font and
11307         add properties interface code.
11309         * objects/flowchart/box.c (box_create): use default font.
11311         * objects/custom/custom_object.c (custom_create): use default font
11312         here too.
11314         * objects/standard/textobj.c (textobj_create): update to use default
11315         font.
11317         * lib/attributes.c: add implementations.
11319         * lib/attributes.h (attributes_[gs]et_default_font): add function
11320         prototypes for setting/getting a default font.
11322 2000-06-24  James Henstridge  <james@daa.com.au>
11324         * app/paginate_gnomeprint.h: updated prototype.
11326         * app/paginate_gnomeprint.c (paginate_gnomeprint): update to use
11327         diagram page settings.
11329         * objects/standard/beziergon.c (beziergon_copy): same here.
11331         * objects/standard/polygon.c (polygon_copy): copy the fill colour
11332         as well.
11334         * app/undo.h: 
11335         * app/tool.h (tool_options_dialog_show): 
11336         * app/scroll_tool.h (free_scroll_tool): 
11337         * app/render_svg.h: 
11338         * app/render_libart.h (renderer_libart_copy_to_window): 
11339         * app/render_gdk.h (renderer_gdk_copy_to_window): 
11340         * app/properties.h (properties_hide_if_shown): 
11341         * app/preferences.h (prefs_load): 
11342         * app/object_ops.h: 
11343         * app/modify_tool.h (free_modify_tool): 
11344         * app/magnify.h (free_magnify_tool): 
11345         * app/linewidth_area.h (linewidth_area_create): 
11346         * app/layer_dialog.h: 
11347         * app/handle_ops.h (handle_is_clicked): 
11348         * app/group.h: 
11349         * app/grid.h (grid_destroy_dialog): 
11350         * app/defaults.h (defaults_show): 
11351         * app/cut_n_paste.h (cnp_exist_stored_objects): 
11352         * app/create_object.h (free_create_object_tool): 
11353         * app/connectionpoint_ops.h (diagram_unconnect_selected): 
11354         * app/commands.h: 
11355         * app/color_area.h (color_area_create): 
11356         * app/app_procs.h (app_is_embedded): remove extern keyword from
11357         function prototypes.
11359         * lib/text.h: 
11360         * lib/sheet.h (load_all_sheets): 
11361         * lib/render_store.h: 
11362         * lib/render_object.h (render_object_load): 
11363         * lib/polyshape.h (polyshape_closest_segment): 
11364         * lib/poly_conn.h (polyconn_closest_segment): 
11365         * lib/orth_conn.h: 
11366         * lib/object.h: 
11367         * lib/objchange.h (new_object_state_change): 
11368         * lib/neworth_conn.h (neworthconn_add_segment): 
11369         * lib/message.h (message_error): 
11370         * lib/lazyprops.h: 
11371         * lib/geometry.h: 
11372         * lib/font.h (font_descent): 
11373         * lib/focus.h (remove_focus): 
11374         * lib/element.h: 
11375         * lib/diagramdata.h: 
11376         * lib/dia_xml.h (data_add_composite): 
11377         * lib/dia_image.h: 
11378         * lib/connpoint_line.h: 
11379         * lib/connection.h (connection_move_handle): 
11380         * lib/color.h: 
11381         * lib/attributes.h (attributes_set_default_line_style): 
11382         * lib/arrows.h (arrow_draw): remove extern keyword from function
11383         definitions.  It is not required for functions.
11385         * plug-ins/dxf/Makefile.am (INCLUDES): 
11386         * plug-ins/pstricks/Makefile.am (INCLUDES): 
11387         * plug-ins/cgm/Makefile.am (INCLUDES): 
11388         * objects/SADT/Makefile.am (INCLUDES): 
11389         * objects/chronogram/Makefile.am (INCLUDES): 
11390         * objects/GRAFCET/Makefile.am (INCLUDES): 
11391         * objects/flowchart/Makefile.am (INCLUDES): 
11392         * objects/sybase/Makefile.am (INCLUDES): 
11393         * objects/FS/Makefile.am (INCLUDES): 
11394         * objects/standard/Makefile.am (INCLUDES): 
11395         * objects/network/Makefile.am (INCLUDES):
11396         * objects/UML/Makefile.am (INCLUDES): same here.
11398         * objects/ER/Makefile.am: changed inclusion of some macros to
11399         variables.
11401         * lib/plug-ins.c (dia_register_plugins_in_dir): use a few defines to
11402         handle the plug in extension, rather than have all the #ifdef's in
11403         the code.
11405         * plug-ins/Makefile.am: add renderer.inc to dist.
11407         * plug-ins/dxf/dxf-import.c: Updates from Steffen Macke.
11409 2000-06-11  Asbjorn Pettersen  <asbjornP@dualog.no>
11411         * lib/plug-ins.c: Handle OS/2 dll's too.
11413 2000-06-07  James Henstridge  <james@daa.com.au>
11415         * app/plugin-manager.c (get_plugin_manager): set some table
11416         packing options to make it look a little nicer.
11418         * plug-ins/hpgl/Makefile.am, plug-ins/wpg/Makefile.am: added
11419         makefiles for these plug-ins.
11421         * plug-ins/{hpgl,wmf,wpg}/*: removed dos style cariage returns.
11423         * configure.in: added hpgl and wpg directories to build.  Added
11424         note about whether gnome-print support was enabled, and noted that
11425         it is not recommended.
11427 2000-06-06  James Henstridge  <james@daa.com.au>
11429         * plug-ins/{hpgl,wmf,wpg}/*: Hans Breuer's plug-ins.  They still need
11430         a little work, but I am checking them in so I don't lose them.
11432 2000-06-01  James Henstridge  <james@daa.com.au>
11434         * objects/standard/arc.c: added extra properties.
11436         * lib/beziershape.c (beziershape_closest_handle): fix a bug where I
11437         was using the wrong index into the handles array.  This gets corner
11438         type changing working correctly.
11440         * lib/properties.[ch]: add support for BezPoint's and BezPoint arrays
11441         to properties code (no editing or loading yet though).  Also added
11442         support for point array manipulation through the offsets interfaces.
11444         * lib/Makefile.am (INCLUDES): added include of gdk-pixbuf 
11446         * app/interface.c (origin_button_press): changes so the origin
11447         button doesn't grab the pointer when we pop up the menu.
11449         * app/commands.c (help_about_callback): fix small memory leak in
11450         about box code.
11452         * app/menus.c (menus_init): fixed breakage I introduced in the non
11453         gnome menus when I was doing the menu changes.  The tearoffs work
11454         really nicely in plain gtk mode as well.
11456         * objects/standard/beziergon.c (beziergon_create): changed the
11457         returned handles to match the handle numbering changes.  Now
11458         segment addition and removal works correctly with undo!
11460         * lib/beziershape.c: various changes to the code.  Changed the
11461         numbering of handles, and fixed the segment removal code.
11463 2000-05-31  James Henstridge  <james@daa.com.au>
11465         * objects/standard/beziergon.c: remove connection point handling.
11466         There is still a bit of work to be done to get adding and removing
11467         of segments working correctly.
11469         * lib/beziershape.c: add connection point handling to beziershape.
11470         I set it for two connection points per segment.
11472 2000-05-30  James Henstridge  <james@daa.com.au>
11474         * objects/standard/polygon.c: don't do connectionpoint handling.
11476         * lib/polyshape.c: changed to handle connection points internally.
11477         Also, don't worry about connections to handles on polyshape, as
11478         all handles are non connectable.
11480 2000-05-30 Ville Hautamaki <villeh@cs.joensuu.fi>
11482         * configure.in: Added finnish
11483         
11484 2000-05-30  James Henstridge  <james@daa.com.au>
11486         * sheets/*.sheet: translation updates to the .sheet files.
11488         * po/fr.po: updated po file from Christophe Merlet.
11490         * menus.h: removed prototypes for functions which have been removed.
11492 2000-05-29  James Henstridge  <james@daa.com.au>
11494         * app/layer_dialog.c (layer_dialog_set_diagram): set the selected
11495         item in the option menu when changing selected diagram.
11497         * app/dia_embedd.c (view_factory): fix up function to work with new
11498         menus API.
11500         * app/disp_callbacks.c (ddisplay_realize): remove call to
11501         display_set_active from here.
11502         (ddisplay_canvas_events): move call here.  This gets rid of all the
11503         warnings, as the renderer has been fully set up correctly at this
11504         point.
11506         * app/menus.c (menus_init): add the tearoff item to the start of the
11507         right click menu.
11509         * app/app_procs.c (create_user_dirs): we don't need to create the
11510         menus directory anymore.
11512         * app/disp_callbacks.c (ddisplay_popup_menu): it should not be
11513         necessary to update the menu state here, as it was done when the
11514         active display was set.
11516         * app/display.c (display_set_active): update the menu state when
11517         changing active displays.
11519         * app/interface.c (origin_button_press): set the display as active
11520         when a click is made on the menu button.
11522         * app/menus.c (menus_init): set up a quit function to save the accels
11523         at exit.
11524         Add tearoff items for the non GNOME menus, add accelerators for
11525         several GNOME menus.
11527         * app/disp_callbacks.c (ddisplay_popup_menu): get the menu with
11528         menus_get_image_menu().
11530         * app/menus.c (menus_get_item_from_path): use display_menus here
11531         rather than ddisp->popup.
11533         * app/display.h: remove the popup member in the DDisplay structure.
11535         * app/interface.c: remove option of not using wrap box.
11536         (create_toolbox): change to always use menus_get_toolbox_menubar
11537         even when using gnome menus.
11538         (create_display_shell): use menus_get_image_menu to load accelerators
11539         only -- not the actual popup menu.
11541         * app/menus.c (menus_init): new function to create the menus.
11542         (menus_get_toolbox_menubar): use this function whether gnome is
11543         in use or not.  Changed to use menus_init.
11544         (menus_get_image_menu): same here.  Also, now this function always
11545         returns the same menu, rather than a new one each time.
11546         (menus_init): read a menurc file to load accelerators here.
11548 2000-05-28  James Henstridge  <james@daa.com.au>
11550         * app/display.c (ddisplay_really_destroy): unset active display if
11551         active display is destroyed.
11552         (ddisplay_active): simplify function to return active_display as set
11553         by display_set_active.  This allows using a pinned menu with any
11554         display -- not just the one it was popped up from.
11555         (display_set_active): notify the layer dialog of change of diagrams
11556         when active diagram changes.
11558         * app/disp_callbacks.c (ddisplay_canvas_events): set active display
11559         on button and key presses.
11560         (ddisplay_realize): set active display on realize.
11562         * app/display.c (display_set_active): simple implementation of this
11563         function.
11565         * app/display.h (display_set_active): add prototype for setting
11566         the active display.
11568         * app/interface.c (create_display_shell): don't give focus to the
11569         menu button.
11571         * app/menus.c: fix up menus for Beziergon.
11573         * app/interface.c (create_display_shell): make the widget in the
11574         top left corner a button that can be used to pop up the right click
11575         menu, like in gimp and sketch.
11577         * app/disp_callbacks.c (ddisplay_popup_menu): new function to popup
11578         the display menu.
11580         * objects/standard/beziergon.c (beziergon_set_corner_type_callback):
11581         add code to set corner types for beziergon.
11583         * lib/beziershape.c (beziershape_set_corner_type): fix up corner type
11584         setting code.
11585         (beziershape_move_handle): use the previous corner type for right
11586         controls.
11588         * app/interface.c (tool_data): add beziergon to toolbox.
11590         * objects/standard/standard.c (dia_plugin_init): initialise the new
11591         Beziergon object type.
11593         * objects/standard/beziergon.c: an object based on BezierShape.
11595         * lib/dummy_dep.h (dummy_dep): added to dummy_dep.
11597         * lib/beziershape.[ch]: new files implementing a bezier shape.
11599 2000-05-26  James Henstridge  <james@daa.com.au>
11601         * lib/text.c (text_key_event): handle multibyte inserts.
11602         (text_key_event): also add home and end keybindings.
11604         * app/interface.c (create_display_shell): connect handlers for
11605         focus_in_event, focus_out_event, realize and unrealize signals.
11607         * app/display.[ch] (new_display): initialise input context members.
11609         * app/disp_callbacks.[ch]: added XIM support here.
11611         * lib/font.c (suck_font): the black and white pixel values should be
11612         taken from a 1 bit colormap rather than the default colormap.
11614         Hans Breuer's Windows patches ...
11616         * lib/font.c: use Courier New for fixed width font on windows
11617         machines.
11619         * lib/dia_image.h: change to "struct _DiaImage".
11621         * lib/dia_image.c: change "struct DiaImage" to "struct _DiaImage"
11623         * app/disp_callbacks.c (ddisplay_canvas_events): allow ctrl+right
11624         mouse button for object menu.  This will make two button mouse owners
11625         happier.
11627 2000-05-25  James Henstridge  <james@daa.com.au>
11629         * app/filedlg.c (file_open_ok_callback): use diagram_load here.
11631         * app/app_procs.c (app_init): add extra NULL argument to call of
11632         diagram_load.
11634         * app/load_save.h: remove prototype.
11636         * app/load_save.c: remove diagram_data function here.
11638         * app/diagram.h: added prototype.
11640         * app/diagram.c (diagram_load): new function here, which uses import
11641         filters.
11643         * plug-ins/dxf/dxf.c: register the import filter as well.
11645         * plug-ins/dxf/dxf-import.c: added (unfinished) DXF import filter from
11646         Steffen Macke <macke@heini.fbbwu.fh-lueneburg.de>
11648         * objects/standard/line.c: add start_point and end_point properties
11649         to standard line object.
11651 2000-05-21  James Henstridge  <james@daa.com.au>
11653         * app/paginate_psprint.c: added missing include of locale.h.
11655         * objects/custom/custom_object.c (custom_draw): use fabs rather than
11656         abs for scaling factors.
11657         (custom_distance_from): same here.
11659         * dia.spec: make sure rpm doesn't bomb out when LINGUAS isn't set.
11661 2000-05-18  James Henstridge  <james@daa.com.au>
11663         * po/POTFILES.in: updated POTFILES.in.
11665         * dia.spec: incremented version number in spec file.
11667         * NEWS: added (lots of) news items for the 0.85 release.
11669         * app/preferences.c (prefs_save): set LC_NUMERIC to C while writing
11670         the config file.
11672         * configure.in: updated version number here.
11674         * app/Makefile.am (run_dia.sh): include plug-ins in the lib path.
11676 2000-05-17  James Henstridge  <james@daa.com.au>
11678         * app/app_procs.c (internal_plugin_init): register the native import
11679         filter.
11681         * app/load_save.c (diagram_data_load, diagram_load): split this
11682         function into two -- one that does all the work on the DiagramData
11683         structure, and the other that provides compatibility with the old
11684         function.
11685         (dia_import_filter): use diagram_data_load to define an import
11686         filter.
11688         * app/diagram.h (new_diagram): added const to prototype.
11690         * app/filedlg.c (file_open_callback): change to use new import filter
11691         code.
11693         * lib/filter.c: added import filter management functions.
11695         * lib/filter.h: added prototypes for import filter interface.
11697         * app/commands.c (help_about_callback): updated about dialog to
11698         contain a few more names.
11700 2000-05-16  James Henstridge  <james@daa.com.au>
11702         * configure.in (Configuration): added a status message to the end of
11703         the configure script to give the user some idea of what was
11704         configured.
11706         * plug-ins/dxf/Makefile.am: Makefile for new plugin.
11708         * plug-ins/dxf/dxf.c (dia_plugin_init): added file to initialise the
11709         plugin.
11711         * plug-ins/dxf/dxf-export.c: new file -- Steffen Macke's DXF export
11712         filter for dia.
11714         * configure.in (AM_PATH_LIBART): use the check function provided
11715         with libart rather than our own code.  It is more reliable, and
11716         it only requires that people who build out of CVS have libart.m4
11717         installed (not necessarily all of libart).
11718         (AM_PATH_GDK_PIXBUF): same here for gdk-pixbuf.
11720 2000-05-12  Andreas Hyden  <a.hyden@cyberpoint.se>
11722         * dia.desktop: Added Swedish translation.
11724 2000-05-09  James Henstridge  <james@daa.com.au>
11726         * lib/dia_xml.c: you can't free a const pointer, so remove const
11727         from variable definitions.
11729         Explicitely set LC_NUMERIC where needed, as sometimes it isn't
11730         initialised correctly.
11732         * app/render_svg.c (export_svg): set locale to C.
11734         * app/paginate_psprint.c (paginate_psprint): set locale to C.
11736         * app/render_eps.c (export_eps): set locale to C for EPS export.
11738         * lib/dia_xml.c (data_add_real): change to C locale for snprintf call.
11739         (data_add_point): same here.
11740         (data_add_rectangle): same here.
11741         (data_real): use g_strtod to convert strings to real numbers, so that
11742         locales are taken into account.
11743         (data_point): same here.
11744         (data_rectangle): same here.
11746         * AUTHORS: added Henk and Jacek to authors file.
11748         Daniel Egger's code cleanups.
11750         * app/select.c (select_invert_callback): remove unused variable.
11752         * app/plugin-manager.c (get_plugin_manager): fix typo.
11754         * app/load_save.c (read_connections, write_objects): 
11755         (write_connections): made some functions static.
11757         * app/interface.c (toolbox_delete, toolbox_destroy): made some
11758         functions static.
11760         * app/filedlg.c (file_export_callback): remove unused variable.
11762         * app/app_procs.c: various warning fixes.
11764         Integrating Jacek Pliszka's pstricks export filter.
11766         * plug-ins/pstricks/pstricks.c: code to initialise the plugin.
11768         * plug-ins/pstricks/render_pstricks.[ch]: Jacek Pliszka's pstricks
11769         renderer (with a few small modifications by me).
11771         * plug-ins/pstricks/Makefile.am: new makefile for pstricks plug-in.
11773         * plug-ins/Makefile.am (SUBDIRS): add pstricks subdirectory.
11775 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
11777         * configure.in:
11778         * sheets/Makefile.am:
11779         * shapes/Makefile.am:
11780         * shapes/Civil/Makefile.am:
11781         * sheets/civil.sheet:
11782         * shapes/Civil/*:
11783         Added civil/hydraulic/structural engineering objects from
11784         sdteffen <macke@heini.fbbwu.fh-lueneburg.de>.
11785         
11786 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
11788         * objects/FS/flow-poly.c:
11789         * objects/FS/flow.c:
11790         Fix division by zero in point_normalize().
11791         Patch by David Thompson <dcthomp@mail.utexas.edu>
11793 2000-04-27  Lars Clausen  <lrclause@cs.uiuc.edu>
11795         * lib/arrows.c:
11796         * lib/bezier_conn.c:
11797         * lib/connpoint_line.c:
11798         Added checks for zero-length lines before calls to point_normalize.
11800 2000-04-24  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11802         * app/preferences.c (prefs_data): Changed
11803         reversed_dragging_intersects to not make the dialog ridiculously
11804         wide.
11805         
11806 2000-04-22  James Henstridge  <james@daa.com.au>
11808         Hans's win32 patches:
11810         * app/export_png.c: include message.h
11811         * app/interface.c: include dia_dirs.h
11812         * app/linewidth_area.c: check for rint
11813         * app/main.c: include interface.h
11814         * app/paginate_psprint.c: remove unused variable.
11815         * app/preferences.c: include message.h
11816         * app/render_svg.c: include stdlib.h
11817         * app/select.c: include object_ops.h
11818         * lib/dia_dirs.c: miscelaneous fixes for win32.
11819         * lib/dia_image.c: include string.h
11820         * lib/plug-ins.c: look for .dll files rather than .la files on win32.
11821         * lib/properties.c: include stdlib.h
11822         * lib/properties.h: define extra data for standard properties as
11823         static variables on win32 (to get around dynamic linker problems).
11824         * objects/standard/polygon.c: polygon_create_change missing return
11825         statement.
11827 2000-04-18  Pablo Saratxaga <pablo@mandrakesoft.com>
11829         * configure.in (ALL_LINGUAS): added Catalan
11831 2000-04-18  James Henstridge  <james@daa.com.au>
11833         * objects/standard/bezier.c (bezierline_get_object_menu): add a
11834         separator to the object menu between the add/remove segment items
11835         and the corner type items.
11836         (bezierline_get_object_menu): add code to disable the menu item for
11837         the current corner type.  Really just a cosmetic change.
11839         * app/disp_callbacks.c (create_object_menu): handle DiaMenuItems with
11840         a NULL for the label or with no associated callback.
11842         * objects/standard/bezier.c (bezierline_menu_items): use the
11843         enumeration values rather than numeric values for the corner types.
11845         * lib/bezier_conn.[ch]: added a corner_types member to the BezierConn
11846         structure, and add code to handle it.  Also, don't save the corner
11847         types inline in the bez_points node.  The way it is conditionally
11848         including the element just feels like it will break.
11850         * lib/geometry.h (BezPoint): removed the corner_type stuff from
11851         BezPoint.  The corner type stuff is a user interface level idea rather
11852         than something required by the renderer, so should be taken care of
11853         at the object level.
11855 2000-04-17  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11857         * configure.in: Fixed some problems with the gdk-pixbuf/imlib
11858         checks.  Weren't able to reproduce original bug, tough.
11860 2000-04-16  Cyrille Chepelov  <chepelov@calixo.net>
11862         * sheets/Electric.sheet:
11863         * sheets/Contact.sheet:
11864         * sheets/Pneumatic.sheet:
11865         * sheets/Circuit.sheet: sprayed some <br/>'s around.
11866         (added a few French translations in the last file)
11867         
11868 2000-04-16  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11870         * lib/geometry.h: 
11871         * lib/bezier_conn.h: 
11872         * objects/standard/bezier.c: 
11873         * lib/bezier_conn.c: Support for cuspy, smooth and symmetric
11874         bezier points.  Only one minor problem known:  Menus are active
11875         for endpoints minor handles.
11876         11:28: Save and load now works, too.
11877         (bezierconn_closest_major_handle): 12:03: New function to get the
11878         non-control point handle associated with the nearest control
11879         point.  
11880         Also fixed the menu activation problem, and made remove_segment
11881         not remove the endpoint.
11883 2000-04-15  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11885         * configure.in: Added check for gdk-pixbuf being >= 0.7.0 since
11886         new API is in use.
11888 2000-04-15  Asbjorn Pettersen  <asbjornP@dualog.no>
11890         * lib/plug-ins.c: Added <sys/types.h> and moved <fcntl.h> below
11891         <sys/stat.h>.   OS/2 patch.
11893 2000-04-15  James Henstridge  <james@daa.com.au>
11895         * objects/FS/flow-ortho.c, objects/FS/function.c: Applied David
11896         Thompson's patch that adds undo support to the function structure
11897         diagram objects.
11899 2000-04-14  James Henstridge  <james@daa.com.au>
11901         * objects/custom/custom_object.c (custom_distance_from): new
11902         implementation of distance algorithm that actually takes the
11903         display list into account when calculating the distance.  Much nicer
11904         than a simple bounding box.
11906 2000-04-13  Lars Clausen  <lrclause@cs.uiuc.edu>>
11908         * lib/geometry.c (line_crosses_ray): Fixed division by zero bug
11910 2000-04-12  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11912         * objects/standard/polygon.c: Start of polygons own changes (for
11913         connectionpoints).  Need to do seperate changes in polyshape, too,
11914         rather than reuse the bezier changes.
11916 2000-04-13  James Henstridge  <james@daa.com.au>
11918         * lib/dia_image.c (dia_image_draw): use the new enumeration values
11919         from after the gdk-pixbuf cleanup.
11921         * lib/geometry.c (bez_point_distance_and_ray_crosses): fix up limit
11922         on for loop.  Last set of coefficients were not beeing calculated,
11923         which caused a bit of breakage.
11925         * lib/bezier_conn.c (bezierconn_closest_segment): use the new
11926         functions in geometry.c for calculating the closest segment.
11927         (bezierconn_distance_from): use distance_bez_line_point to calculate
11928         the distance.
11930         * lib/geometry.c (distance_bez_line_point): new function to calculate
11931         the distance from an open bezier line to a point.
11932         (distance_bez_shape_point): new function to calculate the distance
11933         from a closed bezier shape.
11934         (distance_ellipse_point): new function to calculate the distance from
11935         a filled ellipse to a point.
11937         * lib/geometry.h (BezPoint): moved this structure here from render.h
11939 2000-04-12  James Henstridge  <james@daa.com.au>
11941         * lib/geometry.c (distance_bez_seg_point): new function to calculate
11942         the distance from a bezier segment.
11944         * lib/polyshape.c (polyshape_distance_from): use distance_polygon_point
11945         to calculate the distance from the object.
11947         * lib/geometry.c (distance_polygon_point): function for calculating
11948         the distance from a polygon to a point.
11950 2000-04-12  Cyrille Chepelov  <chepelov@calixo.net>
11952         * app/interface.c:
11953         * lib/sheet.[ch]: added a <br/> tag in sheet files, so that line 
11954         breaks can be inserted in the tool box. 
11956         * doc/sheet.dtd: updated the DTD
11957         * sheets/GRAFCET.sheet: tried <br/> on that sheet (more to come).
11958         
11959 2000-04-12  James Henstridge  <james@daa.com.au>
11961         * app/plugin-manager.c (get_plugin_manager): use the GTK_DIALOG
11962         macro if the dialog is a GtkDialog :(
11964 2000-04-11  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
11966         * objects/standard/polygon.c: Connectionpoints now properly
11967         managed in a GList.  As far as I can tell, this will not dieturb
11968         the order (but I have the nagging doubt...)
11970         * lib/polyshape.c: No longer knows about connectionpoints.
11972 2000-04-11  James Henstridge  <james@daa.com.au>
11974         * app/Makefile.am: fix makefile for bonobo build.
11976         * configure.in: fix checks for bonobo.
11978         * app/menus.c: added entries for the plugin manager.
11980         * app/Makefile.am (dia_core_files): added plugin manager to files
11981         list.
11983         * app/plugin-manager.[ch]: the plugin manager dialog.
11985         * app/display.c (display_update_menu_state): set the antialiased
11986         menu entry to the correct value.
11988 2000-04-11  Cyrille Chepelov  <chepelov@calixo.net>
11990         * objects/custom/custom_object.c: not all renderers like ellipses with
11991         negative dimensions. This could cause ellipses to disappear when using
11992         the flip_h and flip_v functions.
11994         * samples/grafcet.dia: fixed speling and correctness.
11995         
11996 2000-04-11  James Henstridge  <james@daa.com.au>
11998         * lib/plug-ins.[ch]: added more accessors for use by a plugins dialog.
11999         exposed the dia_plugin_load and dia_plugin_unload functions.
12001         * lib/plug-ins.c (plugin_load): change plugin_load to work on an
12002         already created PluginInfo structure.
12004         * app/app_procs.c (app_exit): call dia_pluginrc_write() to write
12005         the pluginrc file.
12007         * lib/sheet.c: fix up call to dia_config_filename.
12009         * lib/plug-ins.[ch]: started writing code for handling a pluginrc
12010         file.  This would save information such as which plugins not to
12011         load during startup.
12013 2000-04-09  James Henstridge  <james@daa.com.au>
12015         * lib/sheet.c: use dia_config_filename to resolve file in ~/.dia.
12017 2000-04-10  Alexander Larsson  <alla@lysator.liu.se>
12019         * lib/plug-ins.c (dia_register_plugins):
12020         Don't free the value returned from g_getenv.
12022 2000-04-09  Anders Carlsson  <andersca@gnu.org>
12024         * app/preferences.h: Add reverse_rubberbanding_intersects preference variable.
12026         * app/preferences.c (prefs_data): Add reverse_rubberbanding_intersects preference data.
12028         * app/modify_tool.c (modify_button_release): If rubberbanding is done from 
12029         right to left, select objects that intersect the rubberbanding rectangle
12030         instead of selecting objects that are in the rectangle.
12032         * lib/diagramdata.c (layer_find_objects_intersecting_rectangle): Add function.
12034         * lib/diagramdata.h: Likewise.
12037 2000-04-09  James Henstridge  <james@daa.com.au>
12039         * lib/plug-ins.[ch]: add copyright messages to files.
12041         * plug-ins/cgm/cgm.c (dia_plugin_init): convert plugin over to new
12042         plugin interface.
12044         * objects/sybase/sybase.c (dia_plugin_init): 
12045         * objects/network/network.c (dia_plugin_init): 
12046         * objects/flowchart/flowchart.c (dia_plugin_init): 
12047         * objects/custom/custom.c (dia_plugin_init): 
12048         * objects/chronogram/chronogram.c (dia_plugin_init): 
12049         * objects/UML/uml.c (dia_plugin_init): 
12050         * objects/SADT/sadt.c (dia_plugin_init): 
12051         * objects/GRAFCET/grafcet.c (dia_plugin_init): 
12052         * objects/FS/fs.c (dia_plugin_init): 
12053         * objects/ER/er.c (dia_plugin_init): updated plugin load code for
12054         object libraries.
12056         * objects/standard/standard.c (dia_plugin_init): change over to new
12057         plugin interface.
12059         * lib/plug-ins.h (DIA_PLUGIN_CHECK_INIT): added a macro to define
12060         the version checker for plugins.
12062         * app/app_procs.c: remove plugin loading code from here, and use
12063         code from plug-ins.[ch].  Also move registration of internal
12064         objects/filters to a `builtin' plugin.
12066         * lib/Makefile.am (libdia_a_SOURCES): added plug-ins.[ch] to library.
12068         * configure.in: use AC_PROG_LIBTOOL rather than AM_PROG_LIBTOOL.
12070         * app/Makefile.am (EXTRA_DIST): you can't include a conditionally
12071         defined variable in EXTRA_DIST.
12073         * app/preferences.h: removed dia_config_filename from header.
12075         * app/preferences.c: removed dia_config_filename function.
12077         * lib/dia_dirs.c (dia_config_filename): moved function over to this
12078         file.  Also changed implementation slightly so that it should work
12079         on the win32 port correctly (and use NT home directories).
12081         * lib/dia_dirs.h (dia_config_filename): move dia_config_filename where
12082         it should have been.
12084         * lib/plug-ins.[ch]: new plugin loading code.
12086 2000-04-08  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12088         * objects/standard/polygon.c: Fixed startup crash bug (do'h!).
12090         * lib/polyshape.c: Fix closest segment finding, exposes deeper
12091         bugs in adding corners to 'wraparound' segment.
12093         * objects/standard/polygon.c: Added connection points (fixed so
12094         far), set menu sensitivity.
12096         * lib/polyshape.c: Changed to box-style handles, fixed for start
12097         and ends not being special, added initial connections,
12099         * lib/dummy_dep.h: Added polyshape (gotcha!)
12101         * objects/standard/pixmaps/ellipse.xpm: 
12102         * objects/standard/pixmaps/box.xpm: 
12103         Filled element pixmaps with white.
12105         * lib/polyshape.c: 
12106         * objects/standard/polygon.c: 
12107         * lib/polyshape.h: 
12108         * objects/standard/standard.c: 
12109         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
12110         * lib/Makefile.am (libdia_a_SOURCES): 
12111         * app/menus.c: 
12112         * app/interface.c (tool_data): 
12113         Added Standard/Polygon object and PolyShape lib object.  Still
12114         needs inside grab and connection points.
12116         * app/commands.c (help_about_callback): Now uses gdk-pixbuf if
12117         available. 
12119         * configure.in: Made imlib a fallback if gdk-pixbuf is absent or
12120         not wanted.
12122         * app/app_procs.c (app_init): Moved gtk_init outside #ifdef, moved
12123         if (argv) outside ifdefs.
12125 2000-04-04  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12127         * objects/standard/image.c (image_set_props): 
12128         Aspect ratio is back in town.
12130         * app/Makefile.am (dia_LDADD): 
12131         * acconfig.h: 
12132         * configure.in: 
12133         Check for gdk_pixbuf (by default disabled, for now)
12135         * app/render_eps.c (draw_image): 
12136         * app/render_libart.c (draw_image): 
12137         * app/render_gnomeprint.c (draw_image): 
12138         Support for alpha mask in rendering.  Color postscript, too.
12140         * lib/dia_image.c: 
12141         * lib/dia_image.h: 
12142         Support for gdk_pixbuf and proper masking for exports.
12144 2000-04-01  Kjartan Maraas  <kmaraas@online.no>
12146         * sheets/*.sheets: Updated Norwegian translations.
12147         
12148 2000-03-30  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
12150         * lib/text.c (text_insert_char): 
12151         * lib/render_store.c (add_data): 
12152         Made realloc double the alloced space rather than add
12153         a fixed amount, to reduce memory stress.
12155         * app/select.c: Added new select method 'Transitive'
12156         that select every reachable (by connections) object.
12158 2000-03-27  Kjartan Maraas  <kmaraas@online.no>
12160         * dia.desktop: Added Norwegian translation.
12161         
12162 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
12164         * app/render_eps.c:
12165         * app/render_svg.c:
12166         Don't dereference NULL pointer if the renderer
12167         couldn't open the file. Fix by Lars Clausen.
12168         Bug reported by Martin Chisholm <b1mt@unb.ca>
12169         
12170 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
12172         * dia.desktop:
12173         * po/pt.po:
12174         Updated pt translation from Pedro Morais <pmmm@rnl.ist.utl.pt>
12176 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
12178         * app/dia.gnorba (location_info):
12179         Changed to correct executable name.
12181 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
12183         * app/app_procs.c:
12184         Don't do any argument parsing or initialization
12185         if argv==NULL.
12187         * app/dia_embedd.c:
12188         Call init_server_factroy before app_init.
12189         Call app_init with argv==NULL
12190         Now we don't get any critical error on startup.
12192         * configure.in:
12193         Add Electric and Pneumatic to makefile list.
12194         
12195 2000-03-24  Cyrille Chepelov <chepelov@calixo.net>
12197         * shapes/Electric/*:
12198         * sheets/Electric.sheet:
12199         Add some Electric circuit shapes.
12201         * shapes/Pneumatic/*:
12202         * sheets/Pneumatic.sheet:
12203         Add some Pneumatic & Hydraulic circuit shapes
12204         (both sheets are still incomplete, though feature enough 
12205         things for basic circuits).
12207         * shapes/Contact/l_*.(xpm|shape):
12208         * sheets/Contact.sheet
12209         * shapes/Contact/Makefile.am
12210         made the older electric circuit shapes in Contact obsolete (disabled
12211         them in the sheet, made that sheet Ladder only). Fixed the makefile
12212         for forgotten items.
12213         
12214 2000-03-24  Alexander Larsson  <alla@lysator.liu.se>
12216         * app/Makefile.am:
12217         Add support for Dia bonobo component.
12218         Currently a bit raw, so it's commented out.
12219         
12220         * app/dia_embedd.c:
12221         * app/dia.gnorba:
12222         New files for embedding dia.
12223         The menu disabling hack is a bit gross. Esp. for GNOME.
12225         * app/app_procs.h:
12226         Add new function app_is_embedded();
12228         * app/diagram.c:
12229         Don't destroy diagram when last display is destroyed if embedded.
12230         
12231         * app/display.c:
12232         Change initialization of display so it works with embedding.
12234         * app/display.h:
12235         Clarify comment about display destruction.
12237         * app/interface.[ch]:
12238         Added top_level_window argument to create_display_shell.
12239         Don't open a top-level window if embedding.
12240         Don't quit app if trying to close toolbox window when embedding.
12241         Add toolbox_show() and toolbox_hide().
12243         * app/main.c:
12244         Added app_is_embedded() function (just returns false).
12245         Added toolbox_show() call in main().
12247         * app/menus.c:
12248         Added code for getting toolbox menus. This is used to
12249         hide some menu items when running embedded.
12250         
12251         * app/app_procs.c:
12252         Include sheet.h to remove warning.
12254         * objects/UML/association.c:
12255         Clarify association direction text.
12256         
12257 2000-03-16  Fredrik Hallenberg  <hallon@lysator.liu.se>
12259         * dia.1
12260         Fixed man page so whatis parsing works.
12262 2000-03-12  Alexander Larsson  <alla@lysator.liu.se>
12264         * app/render_libart.c (new_libart_renderer):
12265         Fix from segg <segg@infonet.ca> to compile without libart.
12266         I forgot to change the stub for new_libart_renderer when doing
12267         the interactive renderer stuff for libart.
12269 2000-03-11  Alastair McKinstry  <mckinstry@computer.org>
12271         * dia.desktop: Added Irish translation.
12272         
12273         * configure.in (ALL_LINGUAS): Added Irish (ga) translation.
12275 2000-03-07  Asbjorn Pettersen  <asbjornP@dualog.no>
12277         * app/load_save.c (fchmod): OS/2 defines only.
12279 2000-03-07  James Henstridge  <james@daa.com.au>
12281         * lib/properties.c (prop_get_widget): set the position in the option
12282         menu correctly.
12284 2000-03-06  Alexander Larsson  <alla@lysator.liu.se>
12286         * app/display.c:
12287         * app/export_png.c:
12288         * app/render_libart.[ch]:
12289         Don't export png:s with an interactive libart renderer.
12291 2000-03-03  Asbjorn Pettersen  <asbjornP@dualog.no>
12293         * lib/arrows.c (finite): define finite(d) isfinite(d)  for OS/2
12295 2000-03-02  James Henstridge  <james@daa.com.au>
12297         * dia.spec (%build): unset LINGUAS before running configure.  This
12298         ensures that all translations get included in the RPM.
12300         * lib/properties.c (object_create_props_dialog): put in a check for
12301         a NULL return from the describe_props() object method.
12302         (prop_desc_lists_union): make sure that the returned array is not
12303         NULL.
12304         (prop_desc_lists_intersection): same here.
12306 2000-02-29  Alexander Larsson  <alla@lysator.liu.se>
12308         * objects/ER/Makefile.am:
12309         * objects/FS/Makefile.am:
12310         * objects/UML/Makefile.am:
12311         Don't link object libs with gtk.
12313 2000-02-29  James Henstridge  <james@daa.com.au>
12315         * app/preferences.c (prefs_save): check to see if the file could
12316         be opened before writing the prefs.
12318         * app/disp_callbacks.c (popup_object_menu): pass the button event
12319         to gtk_menu_popup.  This allows you to click and release to open
12320         the object menu.
12321         (ddisplay_canvas_events): same here.
12322         (create_object_menu): set the object type menu item in the object
12323         menu to be insensitive.
12325         * app/render_svg.c (draw_string): call xmlEncodeEntitiesReentrant,
12326         as we are now requiring a new version of libxml.
12328         * dia.spec: updated version number.  Added requirement for
12329         libxml >= 1.8.5
12331         * configure.in: incremented version number to 0.84.
12332         Added check for libxml >= 1.8.5.  This will prevent some of the
12333         problems people have had with broken libxml versions.
12335         * NEWS: added news items.
12337         * app/interface.c (create_color_area): removed call to realize parent
12338         widget.  Segg <segg@infonet.ca> reported that it caused a warning,
12339         but I haven't seen it on my copy of dia.
12341 2000-02-28  James Henstridge  <james@daa.com.au>
12343         * app/export_png.c: added copyright notice, and made the band height
12344         a constant.
12346 2000-02-27  Alexander Larsson  <alla@lysator.liu.se>
12348         * lib/font.c (suck_font):
12349         Fixed off-by one bug in font pixmap height.
12350         Fixes the problem with garbage at the bottom of some text in aa mode
12351         and in png exported files.
12353 2000-02-27  James Henstridge  <james@daa.com.au>
12355         * app/app_procs.c: add the png export filter if it was compiled in.
12357         * app/export_png.c (export_png): new PNG export filter.  This requires
12358         the libart renderer to work as it needs a renderer that renders to a
12359         pixel buffer.
12361         * configure.in: add check for libpng.
12363         * lib/message.c (message_internal): use a GNOME dialog here as well.
12365         * app/display.c (ddisplay_close): use a GNOME dialog here.
12367         * app/render_eps.c (create_eps_renderer): use diagram scaling factor
12368         when exporting to EPS.  This is because some people said the EPS
12369         output was too large
12371 2000-02-26  James Henstridge  <james@daa.com.au>
12373         * app/defaults.c (create_dialog): use a GNOME dialog for the defaults
12374         window.
12376         * app/app_procs.c (app_exit): use a GNOME dialog here.
12378         * app/preferences.c (prefs_create_dialog): if GNOME support is
12379         enabled, show a GNOME dialog.
12381         * app/grid.c (grid_draw): use preferences when drawing page break
12382         lines.
12384         * app/preferences.c: add page break preferences to dialog.
12386         * app/preferences.h: added page break preferences.
12388 2000-02-25  James Henstridge  <james@daa.com.au>
12390         * sheets/UML.sheet: added new objects.
12392         * objects/UML/uml.c: link in the two new objects.
12394         * objects/UML/node.c: 
12395         * objects/UML/branch.c: new UML objects from Stfan Seefeld
12396         <seefelds@magellan.umontreal.ca>.
12398 2000-02-24  James Henstridge  <james@daa.com.au>
12400         * objects/custom/custom_object.c: converted to use the properties
12401         interface.  In the future, it would be nice to add support for
12402         defining custom properties for custom objects, but that can wait.
12404 2000-02-22  James Henstridge  <james@daa.com.au>
12406         * sheets/Circuit.sheet: added new circuit shapes to sheet.
12408         * plug-ins/cgm/cgm.c: cgm plugin updates from Henk Jan Priester
12409         <hj@justcroft.com>.  Fixes number encoding, colour encoding, fonts
12410         and adds a few new features.
12412 2000-02-21  Daniel Egger  <egger@suse.de>
12414         * sheets/*.sheets: Added German translations and made some
12415         corrections to the others.
12416         
12417 2000-02-21  James Henstridge  <james@daa.com.au>
12419         * shapes/Circuit/Makefile.am (SHAPES): added new shapes to list.
12421         * shapes/Circuit/...: added new shapes from Erik Janssens.
12423 2000-02-20  James Henstridge  <james@daa.com.au>
12425         * app/interface.c (create_color_area): realize the parent window
12426         first.
12428         * objects/standard/image.c: properties patch for standard image
12429         object, from Lars Clausen.
12431         * lib/properties.c: support for PROP_TYPE_FILE from Lars Clausen.
12433         * lib/properties.h (PropType): added file property type.
12435         * shapes/Circuit/speaker_de.xpm: changed size of pixmap to match
12436         other shapes.
12438         * app/interface.c: use wrap box for toolbox.
12440         * app/Makefile.am: added new files.
12442         * app/gtk*wrapbox.[ch]: added wrap box widget.
12444 2000-02-19  James Henstridge  <james@daa.com.au>
12446         * sheets/network.sheet: added extra shapes to networks sheet.
12448         * configure.in (AC_OUTPUT): added shapes/network/Makefile
12450         * shapes/network/*: added shapes that were posted to the list a while
12451         back.
12452         
12453         * shapes/Makefile.am (SUBDIRS): added network subdirectory
12455         * app/menus.c (toolbox_menu_items): don't right justify help menu for
12456         gtk+ version of menus.
12458         * app/properties.c (create_dialog): use a GnomeDialog if we happen
12459         to be using gnome.
12461 2000-02-18  James Henstridge  <james@daa.com.au>
12463         * objects/flowchart/box.c: set extra data for corner radius and text
12464         padding properties.
12466         * objects/standard/box.c: set extra data for corner radius property.
12468         * lib/properties.h: set extra data in some standard properties.
12470         * lib/properties.c (prop_get_widget): look at the extra data for
12471         int, real and enum property types.  They now use GtkSpinButton and
12472         GtkOptionMenu respectively.
12474         * lib/properties.h: extra data members for creating property setting
12475         widgets.
12477 2000-02-17  James Henstridge  <james@daa.com.au>
12479         * objects/flowchart/box.c: reverted load/save functions back to
12480         previous implementations.  Made box use standard property names.
12482         * plug-ins/cgm/cgm.c (set_linestyle): was missing a */
12484         * app/grid.c: add more digits to the grid edit dialog.  This patch
12485         was also from Lars Clausen.
12487         * objects/standard/zigzagline.c: 
12488         * objects/standard/textobj.c:
12489         * objects/standard/polyline.c:
12490         * objects/standard/line.c:
12491         * objects/standard/ellipse.c:
12492         * objects/standard/box.c: 
12493         * objects/standard/bezier.c: 
12494         * objects/standard/arc.c: patches to add properties code to standard
12495         objects.  Based on patches from Lars Clausen.  I have also removed
12496         some dead code from the files.
12498         * lib/properties.h (PROP_STD_*): define a number of standard
12499         properties.  Where appropriate, objects should include these
12500         properties in their PropDescription list.  This way, the intersection
12501         of properties of two different shapes will be greater.
12503 2000-02-14  James Henstridge  <james@daa.com.au>
12505         * objects/flowchart/box.c (box_load, box_save): use property save
12506         routines.  Make sure that any props not handled by object_load_props
12507         are loaded before calling object_load_props, or we get errors because
12508         update_data is called.
12510         * lib/properties.c (object_get_props_from_offsets): fixed an indexing
12511         error that could cause properties to be loaded incorrectly.
12512         (object_set_props_from_offsets): similar here.
12514         * lib/properties.[ch] (prop_{load,save}): functions for loading
12515         or saving a property in Dia's XML file format.
12516         (object_{load,save}_props): load or save some properties of an
12517         object.  These functions should help simplify the load/save methods
12518         of objects that implement the properties interface.
12520 2000-02-13  James Henstridge  <james@daa.com.au>
12522         * objects/flowchart/box.c: use offset code to simplify property
12523         get/set routines.
12525         * lib/element.h (ELEMENT_COMMON_PROPERTIES): standard element
12526         properties.
12527         (ELEMENT_COMMON_PROPERTIES_OFFSETS): offsets.
12529         * lib/object.h (OBJECT_COMMON_PROPERTIES): list of standard object
12530         properties.
12531         (OBJECT_COMMON_PROPERTIES_OFFSETS): the offsets of the properties.
12533         * lib/properties.[ch] (object_{get,set}_props_from_offsets): new
12534         functions 
12536 2000-02-12  Alexander Larsson  <alla@lysator.liu.se>
12538         * app/Makefile.am:
12539         Add the custom object to DIA_LIB_PATH in run_dia.sh
12541 2000-02-10  Cyrille Chepelov  <chepelov@calixo.net>
12543         * sheets/Circuit.sheet:
12544         * shapes/l_sout* (NEW):
12545         * shapes/l_outj.* (NEW): added new outputs : jump, and the power-saved
12546         variants of simple, inverted, set and reset outputs.
12547         Still to do: all Schneider/Telemecanique TSX *7 function blocks ; 
12548         probably a split of Contact and Ladder sheets. And then a major 
12549         revamping of the Contact sheet.
12551 2000-02-10  James Henstridge  <james@daa.com.au>
12553         * app/Makefile.am (dia_LDADD): don't link with libcustom_objects.
12555         * app/app_procs.c (register_all_objects): don't explicitely
12556         register the custom objects library -- let it be loaded by the
12557         normal plugin loading methods.
12559         * lib/Makefile.am (libdia_a_SOURCES): don't include custom.h here.
12561         * objects/custom/Makefile.am: build libcustom_objects as a shared
12562         library again.
12564         * objects/custom/shape_info.[ch]: don't read the description field
12565         of custom shapes.  It makes more sense to have these in the sheet
12566         file to localise the parts of dia that translators have to deal
12567         with.
12569         * objects/custom/custom_object.c (custom_object_new): do not
12570         create the sheet object for the new custom shape -- this is
12571         handled by the custom sheet code.
12573         * objects/custom/custom.c: change over to being a normal plug-in
12574         rather than being linked with the main dia executable.
12576 2000-02-09  James Henstridge  <james@daa.com.au>
12578         * sheets/Circuit.sheet: 
12579         * sheets/Flowchart.sheet: 
12580         * sheets/Contact.sheet: fixed up sheets.
12582         * objects/custom/custom_object.c (custom_object_new): set the
12583         extra ObjectType fields.
12585         * lib/sheet.c: use extra ObjectType fields when creating sheet
12586         objects.  Give a warning if <shape> tags are found in a sheet
12587         file.  Now the custom sheet code does not know about custom
12588         shapes -- they look like any other object type.
12590         * lib/object.h (ObjectType): added extra members
12592 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
12594         * app/linewidth_area.c:
12595         Added code to set arbitrary line width.
12596         Patch by Lars Clausen <lrclause@cs.uiuc.edu>
12598 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
12600         * app/linewidth_area.c: 
12601         * lib/font.[ch]:
12602         Add support for font-sucking.
12603         Implementation borrowed from gnome-canvas.
12604         
12605         * app/render_libart.[ch]:
12606         Implement text rendering.
12608 2000-02-07  Alexander Larsson  <alla@lysator.liu.se>
12610         * app/properties.c (create_dialog):
12611         ref and sink no_properties_dialog.
12613 2000-02-07  James Henstridge  <james@daa.com.au>
12615         * app/group.c (group_describe_props): new function.  Return the
12616         intersection of the properties of the contained objects that
12617         implement the describe_props interface.
12618         (group_get_props): implement by iterating through contained objects
12619         and calling their get_props method until all properties have been
12620         set.  Maybe this should go through all objects all the time??
12621         (group_set_props): implement by calling set_props method on all
12622         contained objects.
12623         (group_ops): use standard props dialog creation routines.
12625         * lib/properties.c (prop_desc_lists_intersection): fix implementation
12626         of intersection -- I was using i++ instead of i-- in a for loop :(
12628         * objects/custom/custom.c (custom_register_objects): fix usage
12629         of dia_get_data_directory again.
12631         * lib/sheet.c: fix up use of dia_get_data_directory, so that we
12632         actually read the sheets.
12634 2000-02-06  Alexander Larsson  <alla@lysator.liu.se>
12636         Win32 port by Hans Breuer <Hans@Breuer.org>
12638         * app/Makefile.am:
12639         Remove DATADIR and LIBDIR defines.
12641         * lib/Makefile.am:
12642         Add dia_dirs.c and dia_dirs.h
12643         Added DATADIR and LIBDIR defines.
12645         * lib/dia_dirs.[ch]:
12646         New files for handling special directories.
12648         * app/app_procs.c:
12649         * app/commands.c:
12650         * lib/sheet.c:
12651         * objects/custom/custom.c:
12652         Fix warnings.  Use directory functions.
12654         * app/diagram.h:
12655         Add prototype for diagram_redraw_all.
12657         * app/diaunitspinner.c:
12658         * app/filedlg.c:
12659         * app/interface.c:
12660         * app/preferences.c:
12661         Fix warning.
12663         * app/load_save.c:
12664         Win32 doesn't have mkstemp and fchmod.
12666         * app/paginate_psprint.c:
12667         Win32 calls popen _popen and pclose _pclose.
12668         
12669         * app/arrow.c:
12670         Win32 calls finite _finite.
12672         * lib/color.h:
12673         Win32 needs to dllexport the color vars.
12675         * objects/GRAFCET/step.c:
12676         * objects/chronogram/chronoref.c:
12677         snprintf -> g_snprintf
12679 2000-02-05  James Henstridge  <james@daa.com.au>
12681         * lib/properties.c: more fixes so that it doesn't crash when using
12682         properties.  The undo/redo stuff also works!!
12684         * objects/flowchart/box.c (box_{describe, get, set}_props): test
12685         object where I have implemented the new properties interface
12686         complete with automatic properties dialog generation.
12688         * lib/properties.c (object_apply_props): fixed stupid error when
12689         creating the old_props array.  Also, it no longer frees the props
12690         array -- you will have to do that yourself.
12692 2000-02-04  James Henstridge  <james@daa.com.au>
12694         * app/properties.c (properties_apply): pass object_part to
12695         apply_properties.
12697         * lib/object.h (ApplyPropertiesFunc): added widget argument.
12699         * lib/lazyprops.h (PROPDLG_CREATE): ref and sink properties dialogs
12700         created this way as well.
12702         * objects/*/*.c: ref and sink the properties dialog window for each
12703         widget.  It can't rely on ref count being incremented by
12704         properties_show anymore.
12706         * app/properties.c (properties_show): don't ref the widget before
12707         removing it, or its ref count will increase each time you open the
12708         properties dialog.  Don't unparent the widget, as container_remove
12709         does that for us.
12711         * lib/object.h: fixed up prototypes for new object methods.
12713         * lib/properties.[ch]: added functions for automatically creating
12714         a properties dialog from the output of describe_props, get_props and
12715         set_props.
12716         (object_apply_props): apply properties and return an ObjectChange
12717         structure that can be used for undo.
12719 2000-02-03  Cyrille Chepelov  <chepelov@calixo.net>
12721         * objects/GRAFCET/transition.c: minor leak plugged.
12723         * sheets/GRAFCET.sheet:
12724         * objects/GRAFCET/pixmaps/condition.xpm: (NEW)
12725         * objects/GRAFCET/condition.c: (NEW) added a new object type, action 
12726         conditions.
12727         * objects/GRAFCET/Makefile.am: fixed incorrect dependencies, added
12728         new ones (for condition.c).
12729         * objects/GRAFCET/action.c: added connection points for the conditions.
12730         * samples/grafcet.dia: updated the sample to improve conformance to
12731         IEC 848 and take advantage of dia's new features.
12732         
12733         * lib/geometry.h: (point_get_normed) fixed a typo.
12735 2000-02-02  James Henstridge  <james@daa.com.au>
12737         * lib/object.h: added object functions describe_props, get_props and
12738         set_props.  Do type definitions so that object.h doesn't need to
12739         include properties.h, since properties.h includes object.h.
12741         * lib/properties.[ch]: more hacking.
12743         * po/de.po: updated po file.
12745 2000-01-30  James Henstridge  <james@daa.com.au>
12747         * configure.in: don't add flags to CFLAGS unconditionally.  Instead,
12748         check to see if the C compiler accepts the flag beforehand.
12750         * lib/properties.[ch]: start of properties code.
12752         * shapes/Contact/Makefile.am (SHAPES): fix up makefile.
12754 2000-01-30  Cyrille Chepelov  <chepelov@calixo.net>
12755         
12756         * sheets/GRAFCET.sheet:
12757         * sheets/GRAFCET/etapemc.xpm: (NEW)
12758         * sheets/GRAFCET/etapesp.xpm: (NEW)
12759         * objects/GRAFCET/step.c: Added the macro and
12760         sub-program call step types.
12762         * objects/GRAFCET/receptivity.[ch]: renamed to 
12763         objects/GRAFCET/boolequation.[ch]. 
12764         * objects/GRAFCET/transition.c: changed (Receptivity *) to 
12765         (BoolEquation *)
12767         * lib/connpoint_line.[ch]: 
12768         * objects/chronogram/chronoline.c:
12769         * objects/chronogram/chronoref.c:
12770         * objects/GRAFCET/vergent.c:
12771         * objects/standard/line.c:
12772         * objects/SADT/box.c: Minor CPL interface changes, factored out the
12773         point count adjustment code into the CPL object.
12774         
12775 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
12777         * app/render_libart.c:
12778         Added support for images and bezier curves.
12779         Only text/fonts missing now.
12781         * app/render_gdk.c:
12782         Removed old erronous comment.
12784 2000-01-29  Cyrille Chepelov <chepelov@calixo.net>
12786         * objects/chronogram/chronoline_event.c: removed references to
12787         lround(). Please don't insist, I'm already red of shame.
12788         
12789 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
12791         * app/render_libart.[ch]:
12792         * app/Makefile.am:
12793         Non-finished libart renderer.
12795         * acconfig.h:
12796         Added HAVE_LIBART flag
12798         * configure.in:
12799         Added libart probe
12801         * app/app_procs.c:
12802         Call gdk_rbg_init().
12804         * app/connectionpoint_ops.c:
12805         * app/disp_callbacks.c:
12806         * app/grid.c:
12807         * app/handle_ops.c:
12808         * app/magnify.c:
12809         * app/modify_tool.c:
12810         Change ddisp->renderer type from RendererGdk * to Renderer *
12811         Draw zoom and select rects in ddisp->canvas->window instead
12812         of ddisp->renderer->renderer->pixmap.
12814         * app/display.[ch]:
12815         Add aa_renderer to DDisplay, and  support for it.
12816         New function ddisplay_set_renderer() for changing renderer.
12817         Add ddisplay_transform_coords_double() function, used by aa renderer.
12818         Change ddisp->renderer type from RendererGdk * to Renderer *
12820         * app/menus.c:
12821         Add antialias to menu.
12822         
12823         * app/commands.[ch]:
12824         add view_aa_callback function
12825         Change ddisp->renderer type from RendererGdk * to Renderer *
12827         * lib/geometry.[ch]:
12828         Added IntRectangle and int_rectangle_union.
12830 2000-01-28  James Henstridge  <james@daa.com.au>
12832         * app/commands.h: removed prototypes.
12834         * app/commands.c: removed the functions that have been moved to
12835         filedlg.c.
12837         * app/filedlg.h: added new prototypes.
12839         * app/filedlg.c (file_open_callback): move open dialog to this
12840         file.  This implementation should remember the current directory
12841         between file loads.
12842         (file_save_as_callback): moved this dialog as well.
12843         (file_save_callback): moved this function here.
12845         * app/paginate_psprint.c (paginate_psprint): if not in fit to mode,
12846         align page boundaries to the origin.
12848         * app/diagram.c (diagram_update_extents): redraw the diagram if the
12849         scaling factor changes while updating the extents.  This is so the
12850         page breaks get redrawn correctly.
12852         * app/pagesetup.c (pagesetup_apply): added diagram_flush call when
12853         applying changes.
12855         * app/grid.c (grid_draw): draw page breaks as well as grid lines.
12856         For normal mode, use (0,0) as the origin.  For `fit to' mode, use
12857         the corner of the bounding box.
12859         * app/pagesetup.c (create_page_setup_dlg): load new paper attributes
12860         into page setup dialog.
12861         (pagesetup_apply): apply new `fit to' attributes to the diagram.
12863         * app/load_save.c (diagram_load): load new paper `fit to' attributes.
12864         (diagram_data_save): save `fit to' data.
12866         * lib/diagramdata.c (new_diagram_data): initialise `fit to' members.
12867         (data_update_extents): when in `fit to' mode, update scale factor
12868         when we update the extents.
12870         * lib/diagramdata.h (PaperInfo): added `fit to' members to PaperInfo
12871         structure.
12873         * .../.cvsignore: added some cvsignore files to quieten cvs.
12874         
12875         * app/pagesetup.c (pagesetup_changed): added code to change the
12876         scaling/fit to values as you change the options in the page setup
12877         dialog.  I haven't added code so that the fit to options are saved
12878         though.
12880         * app/diapagelayout.[ch]: changed the scaling portion of the widget
12881         to make it easier to set a `fit to' style scaling factor.
12883 2000-01-27 Cyrille Chepelov <chepelov@calixo.net>
12884         * lib/neworth_conn.[ch]: (NEW) Temporary (hopefully) fork of orth_conn,
12885         but connpoint_line-based, so that there's a connection point at the 
12886         middle of each segment. Currently only the SADT arrow uses this.
12888         * objects/SADT/* (NEW): SADT (both idf0 and idf1) support.
12889         
12890 2000-01-26 Cyrille Chepelov <chepelov@calixo.net>
12891         * lib/lazyprops.[ch]:(NEW) Added a bunch of macros for loading, 
12892         saving and editing of properties (and default properties). 
12893         See the new objects (GRAFCET, SADT, chonograms) for examples.
12894         For already too hairy stuff, see objects/chronogram/chronoline.c.
12896         * lib/connpoint_line.[ch] (NEW): This subobject manages a line of 
12897         evenly spaced connection points, which the user can add or remove at
12898         will. An object can own several connection point lines. See the SADT
12899         Box, or the GRAFCET vergents for examples.
12901         * lib/dummy_dep.h: added dependencies to new files. Told gcc to keep 
12902         quiet about unused stuff.
12904         * objects/GRAFCET (NEW):
12905         * samples/grafcet.dia (NEW):
12906         Added support for GRAFCET charts. 
12908         * objects/chronogram (NEW):
12909         * samples/chronograms.dia (NEW):
12910         Added support for chronograms (feature requested by Ronald L. Chichest;
12911         I found I'd use it often, too).
12913         * objects/standard/line.c: Replace the middle connectionpoint by 
12914         a whole connection point line, which defaults to one point (hint, 
12915         hint). New Line object menu to take advantage of this. 
12916         "Bothwards" compatibility is preserved (although you may loose 
12917         connections if you load a newer file in a older dia).
12919         * app/lineprops_area.c:
12920         * lib/arrows.[ch]:
12921         * lib/widgets.c: Added hollow and filled ellipse arrow head type. 
12922         (feature requested by Benjamin Kahn).
12923         Merged in Steffen Macke's slashed arrow head type.
12925         * app/Makefile.am (app/run_dia.sh actually):
12926         Added $DEBUGGER in front of dia's invocation, so that
12927         you can call "DEBUGGER=ddd app/run_dia.sh" (maybe naive, but useful).
12928         Added $(EFENCE) to app/dia's LDFLAGS, so that you can do 
12929         "EFENCE=-lefence" to link with Electric Fence.
12931         * configure.in: Made gcc do more aggressive optimisations on i386, and
12932         enabled warnings.
12933         
12934 2000-01-24  James Henstridge  <james@daa.com.au>
12936         * lib/geometry.[ch]: added inline versions of functions.  Used
12937         glib's G_INLINE_FUNC stuff, so it should still work on systems
12938         without inline funcs.
12940         * plug-ins/cgm/cgm.c (draw_ellipse, fill_ellipse): fixed up so that
12941         it outputs the correct element id for the ellipse objects.
12943 2000-01-24 Cyrille Chepelov <chepelov@calixo.net>
12945         * lib/object.[ch]: added object_add_connectionpoint_at, similar to
12946         object_add_handle_at. Message typo fixed.
12947         
12948         * lib/sheet.c (load_register_sheet):
12949         potential bug fixed (warning hunt).
12951         * objects/custom/custom.c (custom_object_load): disabled an assertion
12952         which made dia abort upon failure to load a shape file. Fixed a
12953         subsequent crash. 
12955         * objects/custom/shape_info.c (load_shape_info): Made the custom 
12956         shape load code ignore XML comments between <?xml ...?> and the 
12957         root object (mostly useful to put the emacs magic comments).
12958         
12959         * app/load_save.c: Made dia do backup copies of files when saving,
12960         and complain in case of failure.
12962 2000-01-24  Cyrille Chepelov  <chepelov@calixo.net>
12964         * AUTHORS: fixed my address (ISP thought it was a great idea to change
12965         the domain name)
12966         
12967         * configure.in:
12968         * shapes/Contact:
12969         * shapes/Contact/*:
12970         * sheets/Contact.sheet:
12971         * sheets/Makefile.am:
12972         Added support for Contact and LADDER charts.
12974         * dia.desktop: Added a French translation.
12975         
12976 2000-01-23  James Henstridge  <james@daa.com.au>
12978         * app/commands.c (help_about_callback): don't die if can't load
12979         logo image.
12981         * app/render_gdk.c (bezier_add_lines): sanity check to try to weed
12982         out NaN's when performing bezier curve subdivision.
12984         * objects/custom/custom_object.c: initialise memory of Custom structs
12985         to zero.
12987         * app/render_svg.c (draw_image): added image support to the XML
12988         output filter.  The image is just referenced, rather than being
12989         included inline, so if you copy the SVG file somewhere else, you
12990         may need to move the images or fix up the links.
12992         * plug-ins/cgm/cgm.c (draw_string): output a text colour element,
12993         so the text is not just displayed in black all the time.
12995 2000-01-15  Fredrik Hallenberg  <hallon@lysator.liu.se>
12997         * configure.in: fixed libpopt test so we wont try to build with
12998         too old libpopt.
13000 1999-12-18  Yuri Syrota  <rasta@renome.rovno.ua>
13002         * configure.in: Added "uk" to ALL_LINGUAS.
13004 1999-12-24  James Henstridge  <james@daa.com.au>
13006         * po/ru.po: updated russian translation from Valek Filippov.
13007         
13008         * app/render_svg.c (new_svg_renderer): make output use 19991203
13009         version of SVG DTD.  Use viewBox to set the extents of the view.
13011         * INSTALL (FONTS): updated locations of gnome-xml and imlib.  List
13012         ftp.gnome.org as the download.
13014         * TODO (TODO): weeded out completed todo items and added a few extra.
13016         * Makefile.am (EXTRA_DIST): added documentation to EXTRA_DIST.
13018         * doc/sheet.dtd: first stab at a DTD for the sheet files.  It would
13019         be good to get rid of the object/shape distinction and separate
13020         the custom shape code out from the main application.
13022         * objects/custom/README, diagram.dtd: moved to new doc directory.
13023         Renamed the custom shapes README to custom-shapes.  Also updated
13024         custom shape docs a bit and removed the section on sheet files, as
13025         that has changed a bit.
13027         * plug-ins/cgm/cgm.c (draw_image): give an error if the row length
13028         of the image data is larger than the maximum cell array.  I should
13029         add code to break scan lines down further in this case, but for now
13030         an error message is better than an infinite loop.
13032         * app/filedlg.c (file_export_ok_callback): show a dialog if we
13033         couldn't determine the export filter to use.
13035         * app/commands.c (help_about_callback): fixed up about box logo
13036         expose bug.  Now just use a GtkPixmap widget rather than a
13037         GtkDrawingArea and calling gdk_imlib_paste_image.
13039         * app/Makefile.am (EXTRA_DIST): added print stuff to extra dist,
13040         because automake does not always get things right.
13042         * configure.in: updated version number to 0.83.
13044         * app/preferences.c (prefs_save): 
13045         * app/render_svg.c (new_svg_renderer): "wt" is not a valid flag string
13046         for fopen.  Text is the default file mode anyway.
13048         * app/commands.c (file_save_as_dialog_ok_callback, file_new_callback): 
13049         * app/grid.c (grid_x_update, grid_y_update, grid_show_dialog): 
13050         * app/load_save.c (write_objects, write_connections): 
13051         * app/filedlg.c (file_export_ok_callback): 
13052         * lib/dia_xml.c (data_add_int, data_add_enum, data_add_real): 
13053         * lib/dia_xml.c (data_add_point, data_add_rectangle): 
13054         * lib/font.c (init_x11_font, font_get_gdkfont): changed calls to
13055         snprintf to calls to g_snprintf.
13057         * plug-ins/cgm/cgm.c (export_cgm): write the original dia file name
13058         as the picture name.
13060 1999-12-23  James Henstridge  <james@daa.com.au>
13062         * plug-ins/cgm/cgm.c (write_int32, write_int16): fixed up output of
13063         negative numbers.  This fixes the upside down text problem I was
13064         having previously.
13065         (draw_image): implemented the image code.  It will try to split the
13066         image data up into bands if it is too big to fit into a single
13067         cgm cell array element.  It will have problems if you try to insert
13068         an image wider than about 10,000 pixels though.
13070         * Makefile.am: use gnomedatadir for the files that need to be
13071         installed in gnome's datadir.  This is mainly to help people doing
13072         packages for weird setups.
13074 1999-12-22  James Henstridge  <james@daa.com.au>
13076         * plug-ins/cgm/cgm.c: added support for text.  Now only images and
13077         beziers are left to do.  The text seems to be the wrong way up
13078         still.  This is probably a problem with character orientation
13079         element, but I have used what the settings given in the standard.
13080         Other than this, the CGMs dia produces are readable (and displayable)
13081         by ralcgm and corel draw.
13082         (draw_string): subtract from the X coord rather than the Y coord for
13083         center and right aligned text.
13085         * plug-ins/cgm/cgm.c: a few fixups for the output.  Use REALSIZE as
13086         the size of a real number, and changed name of write_double to
13087         write_real.  Consider changing to fixed real encoding.  Also, now
13088         all element headers are correct.  Once the real number encoding is
13089         fixed, only text, beziers and images are left to do.
13091 1999-12-21  James Henstridge  <james@daa.com.au>
13093         * Makefile.am (SUBDIRS): recurse into plug-ins.
13095         * configure.in: add plug-ins directory makefiles to list.
13097         * plug-ins/cgm/cgm.c: start of cgm export filter.  Beziers and text
13098         not done yet.  Also, the output files are not quite correct.
13100         * app/render_eps.c (print_reencode_font): don't reencode the Symbol
13101         font.  It doesn't work if you do.
13103 1999-12-20  James Henstridge  <james@daa.com.au>
13105         * app/app_procs.c (app_init): don't use diagram_export_to_eps to
13106         export the files.  Instead, use filter_guess_export_filter to
13107         guess the correct format to save in and use the appropriate filter.
13108         It defaults to postscript for compatibility.
13110         * app/diagram.[ch] (diagram_export_to_eps): removed export to eps
13111         function.
13113         * app/commands.[ch]: removed export to eps functions.
13115         * app/menus.c: removed export to eps menu items.
13117         * app/app_procs.c: register new export filters.
13119         * app/load_save.[ch]: define dia native export filter.
13121         * app/render_eps.[ch]: define eps export filter.
13123         * lib/filter.h: added diafilename argument to the DiaExportFunc
13124         prototype.  This is useful for putting the source of the diagram
13125         into the output file for instance.
13127         * app/app_procs.c (app_init): register the SVG export filter.  Have
13128         to get EPS code converted to this API, and maybe also allow saving in
13129         DIA's native format from the export dialog.  In fact, it is now
13130         possible to load an export filter from a shared library and it will
13131         integrate into the interface correctly.
13133         * app/menus.c: removed references to the SVG renderer.
13135         * app/commands.[ch]: removed svg stuff.
13137         * app/diagram.[ch]: removed diagram_export_to_svg function.
13139         * app/render_svg.[ch]: added a DiaExportFilter structure for this
13140         renderer.
13142         * app/filedlg.[ch]: code for the new export diagram dialog.  Will
13143         probably move the open/save dialogs to this file as well.
13145 1999-12-19  James Henstridge  <james@daa.com.au>
13147         * lib/filter.[ch]: start of interface for generalised handling of
13148         filters.  I have only done code for export filters so far.  I still
13149         need to do the gui for this, and convert the current SVG and EPS
13150         filters to the new API.
13152         * lib/bezier_conn.c (bezierconn_copy): fix up copy operation.  We
13153         weren't setting the last handle correctly.  It was actually assigning
13154         to the wrong position in the handles array, so the last handle was
13155         left as NULL, which caused the segfault.
13157         * objects/standard/image.c (image_copy): modified routine so that
13158         it just adds a reference to the DiaImage structure in the new image
13159         object.  This seems to have cleared up the problems with copying
13160         image objects.
13162         * dia.spec: spec file additions from John Gotts.
13164 1999-12-12  James Henstridge  <james@daa.com.au>
13166         * configure.in (GNOME_LIBS): updated version number to 0.82.  0.82
13167         has not been released yet though.
13169         * Makefile.am (EXTRA_DIST): distribute diagram.dtd.
13171         
13172         The following based on a patch from Lars Clausen:
13173         
13174         * objects/standard/bezier.c (bezierline_move_handle): when performing
13175         the initial drag of the bezierline, move the control points to keep
13176         the line straight.
13178         * lib/bezier_conn.c (bezierconn_add_segment): when adding a segment,
13179         make the new control points a bit closer to the major point.
13181         * app/create_object.c (create_object_motion): use HANDLE_MOVE_CREATE
13182         as the reason for the move.
13183         (create_object_button_release): use HANDLE_MOVE_CREATE_FINAL as the
13184         move reason.
13186         * lib/handle.h: new handle move reasons.
13188 1999-12-09  James Henstridge  <james@daa.com.au>
13190         * dia.spec: include the new files in RPMs.
13192         * Makefile.am: install these new files.
13194         * dia.keys.in: file describing actions and icon for dia diagrams for
13195         use in the gnome file manager.
13196         
13197         * dia.mime: a file defining the application/x-dia-diagram mime type.
13198         
13199         * dia-diagram.png: an icon for dia diagrams.
13201 1999-12-08  James Henstridge  <james@daa.com.au>
13203         * plug-ins/python/pydia-diagram.c: added heaps of new methods.
13205         * plug-ins/python/pydia-display.[ch]: wrapper for display.
13207         * objects/standard/ellipse.c: applied Lars's patch to optionally not
13208         draw the background of the ellipse.
13210         * app/load_save.c (read_connections): do some sanity checking on the
13211         handle and connection point numbers before performing the object
13212         connection.
13214         * lib/bezier_conn.c (bezierconn_load): give the correct number of
13215         handles when loading a BezierConn.
13217 1999-12-07  Kjartan Maraas  <kmaraas@online.no>
13219         * sheets/*.sheet: Finished Norwegian translations.
13220         
13221 1999-12-07  James Henstridge  <james@daa.com.au>
13223         * plug-ins/python/diamodule.c (PyDia_Load): load diagram function.
13224         (PyDia_GetObjectType): find object type function.
13226         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_Save): added a save
13227         method for diagrams.
13229         * plug-ins/python/pydia-object.c: added methods for DiaObject and
13230         DiaObjectType.
13232         * AUTHORS: added Lars and Cyrille to the authors file.
13234         * objects/standard/bezier.c (bezierline_add_segment_callback): place
13235         new point correctly.
13237         * lib/bezier_conn.h (bezierconn_closest_segment): fixed prototype.
13239         * lib/bezier_conn.c: applied Lars's patch for placement of the new
13240         point when adding a segment to a BezierConn.
13242 1999-12-06  James Henstridge  <james@daa.com.au>
13244         * plug-ins/python/test.py: test script for the python plug-in.
13246         * plug-ins/python/python.c: this file contains the plug-in startup
13247         code for the python plugin.  Right now, it just initialises the
13248         dia module and executes a script.
13250         * objects/standard/polyline.c (polyline_draw): fix start arrow size.
13252         * objects/standard/bezier.c (bezierline_draw): draw control lines for
13253         bezier curve if we are using an interactive renderer (ie. only if
13254         displaying to the screen).
13256         * lib/bezier_conn.[ch] (bezierconn_draw_control_lines): function
13257         to draw control lines on to a bezier curve.  Based on implementation
13258         from Lars.
13260         * objects/standard/bezier.c (bezierline_delete_segment_callback):
13261         calculate segment number using closest_segment rather than
13262         closest_handle.  Sometimes the closest handle is part of a different
13263         segment.
13264         (bezierline_draw): use correct size for start arrow.
13266         The next few entries are from Peter Moulder <reiter@netspace.net.au>:
13267         * lib/geometry.c (distance_line_point): added notes to documentation
13268         in comment.
13269         * app/object_ops.c (object_list_align_v): 
13270         (object_list_align_h): fix of by one error when calculating free space
13271         for equal distance alignment.
13272         * app/menus.c (objects_align_h, objects_align_v): include align
13273         adjacent menu items in the gnome version of the menus.
13274         * app/diagram.c (diagram_update_menu_sensitivity): set sensitivity on
13275         align adjacent menu items correctly.
13278         * lib/dummy_dep.h (dummy_dep): added bezierconn to dummy dependency
13279         table.
13281         * objects/standard/bezier.c: converted bezierline to use BezierConn.
13282         Still a few bugs.  It crashes on deleting line segments.
13284         * lib/Makefile.am (libdia_a_SOURCES): added BezierConn to libdia.
13286 1999-12-05  James Henstridge  <james@daa.com.au>
13288         * lib/bezier_conn.[ch]: start of BezierConn object
13290         * app/interface.c: add bezierline to toolbox.
13292         * objects/standard/standard.c: initialise bezierline.
13294         * objects/standard/bezier.c: new object from Lars R. Clausen.  I have
13295         made a few modifications to get it working nicely.  It still needs
13296         a bit of work though.  Maybe create a BezierConn object in lib.
13298 1999-12-02  James Henstridge  <james@daa.com.au>
13300         * plug-ins/python/pydia-*.c: fixed compile errors in these files.
13301         
13302         * plug-ins/python/Makefile.am: tried building everything.  It is
13303         building as a library at the moment.  I will have to convert it
13304         to a libtool library and add some initialisation code.
13305         
13306         * plug-ins/python/diamodule.c: start of the dia module, using the
13307         other object wrappers.  Not complete.
13309 1999-12-01  James Henstridge  <james@daa.com.au>
13311         * plug-ins/python/pydia-object.c (PyDiaObject_GetAttr): implement
13312         the handles and connections attributes.
13314         * plug-ins/python/pydia-layer.c: added functions that use
13315         ConnectionPoint's.
13317         * plug-ins/python/pydia-handle.[ch]: wrapper for Handle's.
13319         * plug-ins/python/pydia-cpoint.[ch]: wrapper for ConnectionPoint's.
13321         * plug-ins/python/pydia-*.[ch]: starts of python scripting plug-in.
13322         I am currently wrapping the basic elements in the diagram in python
13323         objects -- nothing to see or play with yet.
13325 1999-11-30  Alexander Larsson  <alla@lysator.liu.se>
13327         * AUTHORS:
13328         * HACKING:
13329         James Henstridge <james@daa.com.au> is now the maintainer of Dia.
13331 1999-11-29  Alexander Larsson  <alla@lysator.liu.se>
13333         * configure.in:
13334         * po/ru.po:
13335         Added russian translation from Valek Filippov <frob@df.ru>
13337 1999-11-24  James Henstridge  <james@daa.com.au>
13339         * sheets/UML/*: 
13340         * sheet/ER/*: moved extra sheet pixmaps back to separate dirs as
13341         discussed with Alex.  Also added extra makefiles so that make install
13342         works correctly.
13344 1999-11-23  Alexander Larsson  <alla@lysator.liu.se>
13346         * app/preferences.[ch]:
13347         * app/display.c:
13348         Added snap to grid preference.
13349         Patch from Michael Leslie <mles@springboardwireless.com>
13351 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
13353         * app/load_save.c:
13354         * lib/dia_xml.c:
13355         * lib/sheet.c:
13356         * lib/text.c:
13357         * objects/custom/shape_info.c:
13358         All strings returned by libxml must be freed with free, not
13359         g_free, or there will be problems if you use memory debugging
13360         in glib.
13361         
13362 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
13364         * app/create_object.[ch]:
13365         * app/menus.c:
13366         * app/tool.[ch]:
13367         * app/commands.[ch]:
13368         * app/pixmaps.h:
13369         * app/interface.[ch]:
13370         Reverted the tool menu patch. It has some 'issues'.
13371         I liked it though, so it'll probably return.
13373 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
13375         Fixed a lot of memory leaks. Thanks to Bruce Mitchener
13376         <bruce@cybersight.com> for some purify runs and analysis.
13377         Also a great thank you to Owen Taylor for creating MemProf, a
13378         free memory leak detector that was used to find and verify a
13379         lot of these fixes.
13380         
13381         * app/diagram.c:
13382         * app/paginate_psprint.c:
13383         * app/render_eps.[ch]:
13384         * app/render_svg.[ch]:
13385         Free renderers.
13387         * app/interface.c:
13388         Don't add a reference to ddisp->shell. Why was this done in
13389         the first place?
13391         * app/load_save.c:
13392         * lib/dia_xml.c:
13393         * lib/sheet.c:
13394         * lib/text.c:
13395         Free all strings returned from xmlGetProp
13397         * app/modify_tool.c:
13398         Plug leak.
13400         * objects/custom/custom.c:
13401         Use closedir() after opendir().
13403         * objects/custom/shape_info.c:
13404         User g_free() instead of "if (tmp) free(tmp)".
13406         * sheets/ER.sheet:
13407         Add newline at end of file.
13408         
13410 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
13412         Based on patch from Patrick Reynolds <reynolds@cs.duke.edu>
13413         Adds tool menu and keyboard shortcuts.
13415         * app/create_object.[ch]:
13416         Use tool_set() instead of tool_reset().
13417         create_create_object_tool() takes extra type argument
13419         * menus.c:
13420         Add tools menu.
13421         
13422         * tool.[ch]:
13423         Moved tool_data here, export it.
13424         Add separate tool type for all create objects tools.
13425         new functions tool_set().
13427         * commands.[ch]:
13428         New callback tool_set_callback.
13430         * pixmaps.h:
13431         Moved some pixmaps to interface.c.
13432         
13433         * interface.[ch]:
13434         Remove tool_data array (moved to tool.c).
13435         Use the tool_data from tool.c.
13436         Remove modify_tool_button global var.
13437         
13438 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
13440         Patch from Patrick Reynolds <reynolds@cs.duke.edu>
13441         
13442         * app/app_procs.c:
13443         Interprets command-line arguments as files to open even when
13444         HAVE_POPT is not defined.
13446         * app/magnify.c:        
13447         Shift-clicking when zooming zooms out, like the Gimp.
13449         * app/menus.c:
13450         Has hotkeys for zoom-100% and snap-to-grid.
13452 1999-11-17  James Henstridge  <james@daa.com.au>
13454         * app/scroll_tool.c (scroll_motion): fixed shift style scrolling so
13455         that it is not jumpy.
13457         * app/Makefile.am (EXTRA_DIST): added extra files to extra dist list.
13459         * app/scroll_tool.c (scroll_motion): added `grabbing hand' type
13460         scrolling by pressing the shift key when using the scroll tool.
13462         * sheets/Makefile.am: fixed makefile so that install actually works
13463         if the directories $(pkgdatadir)/sheets/UML and $(pkgdatadir)/sheets/ER
13464         don't exist.
13465         (SHEETS): install Circuit.sheet
13467 1999-11-15  Alexander Larsson  <alla@lysator.liu.se>
13468         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
13470         * sheets/Circuit.sheet:
13471         * sheets/ER.sheet:
13472         * sheets/FS.sheet:
13473         * sheets/Flowchart.sheet:
13474         * sheets/UML.sheet:
13475         * sheets/network.sheet:
13476         * sheets/sybase.sheet:
13477         Changed name space
13479         * sheets/Circuit.sheet:
13480         added some missing French translations
13482         * lib/sheet.c:
13483         killed the temporary sheet namespace
13485         * objects/custom/custom.c:
13486         obsolete comment cleaned up
13488 1999-11-12  Alexander Larsson  <alla@lysator.liu.se>
13490         * configure.in:
13491         * po/pt.po:
13492         Added portugese translation from Pedro Morais
13493         <pmmm@rnl.ist.utl.pt>
13495 1999-11-11  Alexander Larsson  <alla@lysator.liu.se>
13497         Changed all sheets to be specified in xml.
13498         All sheet objects removed from the C code.
13499         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
13500         
13501         * Makefile.am:
13502         * configure.in:
13503         Adding shapes dir.
13504         Updated version to 0.81cvs.
13505         
13506         * app/Makefile.am:
13507         Update run_dia.sh with sheet-dir.
13508         
13509         * app/app_procs.c:
13510         Load all sheets on startup.
13511         Create sheet directory first time.
13512         Don't call custom_register_sheets().
13514         * lib/Makefile.am:
13515         Add sheetdir define
13517         * lib/custom.h:
13518         Remove custom_register_sheets().
13520         * lib/sheet.[ch]:
13521         Add sheet loading code.
13523         * sheet/Circuit.sheet:
13524         * sheet/ER.sheet:
13525         * sheet/FS.sheet:
13526         * sheet/Flowchart.sheet:
13527         * sheet/UML.sheet:
13528         * sheet/network.sheet:
13529         * sheet/sybase.sheet:
13530         Added sheet files.
13532         * sheet/ER/weakentity.xpm:
13533         * sheet/UML/aggregation.xpm
13534         * sheet/UML/umlclass_template.xpm
13535         Added sheet pixmaps.
13536         These are moved from their old places.
13538         * sheet/.cvsignore:
13539         Shut up cvs.
13541         * objects/*/*.c:
13542         Removed sheet objects and sheet registration.
13543         
13544         * objects/ER/Makefile.am:
13545         * objects/ER/pixmaps/weakentity.xpm:
13546         * objects/UML/Makefile.am:
13547         * objects/UML/pixmaps/aggregation.xpm:
13548         * objects/UML/pixmaps/umlclass_template.xpm:
13549         Removed alternative pixmaps. (Moved to sheet).
13551         * objects/custom/Makefile.am:
13552         * objects/custom/load_sheet.[ch]:
13553         Removed old sheet loading code.
13554         
13555         * objects/custom/custom.c:
13556         Load all shapes instead of sheets.
13557         Removed custom_register_sheets().
13559         * objects/custom/custom_object.c:
13560         Added debug code.
13562         * objects/custom/shape_info.[ch]:
13563         Added shape_info_getbyname().
13565         * objects/flowchart/Makefile.am:
13566         * objects/flowchart/collate.shape            
13567         * objects/flowchart/delay.shape              
13568         * objects/flowchart/display.shape            
13569         * objects/flowchart/document.shape           
13570         * objects/flowchart/extract.shape            
13571         * objects/flowchart/flowchart.c              
13572         * objects/flowchart/intstorage.shape         
13573         * objects/flowchart/magdisk.shape            
13574         * objects/flowchart/magdrum.shape            
13575         * objects/flowchart/magtape.shape            
13576         * objects/flowchart/manualinput.shape        
13577         * objects/flowchart/manualop.shape           
13578         * objects/flowchart/merge.shape              
13579         * objects/flowchart/offlinestore.shape       
13580         * objects/flowchart/offpageconn.shape        
13581         * objects/flowchart/or.shape                 
13582         * objects/flowchart/predefdproc.shape        
13583         * objects/flowchart/preparation.shape        
13584         * objects/flowchart/punchedcard.shape        
13585         * objects/flowchart/punchedtape.shape        
13586         * objects/flowchart/sort.shape               
13587         * objects/flowchart/sumjunction.shape        
13588         * objects/flowchart/terminal.shape           
13589         * objects/flowchart/transaction.shape        
13590         * objects/flowchart/transmittape.shape       
13591         * objects/flowchart/pixmaps/collate.xpm      
13592         * objects/flowchart/pixmaps/delay.xpm        
13593         * objects/flowchart/pixmaps/display.xpm      
13594         * objects/flowchart/pixmaps/document.xpm     
13595         * objects/flowchart/pixmaps/extract.xpm      
13596         * objects/flowchart/pixmaps/intstorage.xpm   
13597         * objects/flowchart/pixmaps/magdisk.xpm      
13598         * objects/flowchart/pixmaps/magdrum.xpm      
13599         * objects/flowchart/pixmaps/magtape.xpm      
13600         * objects/flowchart/pixmaps/manualinput.xpm  
13601         * objects/flowchart/pixmaps/manualop.xpm     
13602         * objects/flowchart/pixmaps/merge.xpm        
13603         * objects/flowchart/pixmaps/offlinestore.xpm 
13604         * objects/flowchart/pixmaps/offpageconn.xpm  
13605         * objects/flowchart/pixmaps/or.xpm           
13606         * objects/flowchart/pixmaps/predefdproc.xpm  
13607         * objects/flowchart/pixmaps/preparation.xpm  
13608         * objects/flowchart/pixmaps/punchedcard.xpm  
13609         * objects/flowchart/pixmaps/punchedtape.xpm  
13610         * objects/flowchart/pixmaps/sort.xpm         
13611         * objects/flowchart/pixmaps/sumjunction.xpm  
13612         * objects/flowchart/pixmaps/terminal.xpm     
13613         * objects/flowchart/pixmaps/transaction.xpm  
13614         * objects/flowchart/pixmaps/transmittape.xpm 
13615         Moved shapes and their pixmaps to shapes/flowchart
13617         * shapes/Circuit/Makefile.am:
13618         * shapes/Circuit/index.sheet:
13619         Removed index.sheet.
13620         
13621         * shapes/Makefile.am:
13622         * shapes/flowchart/Makefile.am:
13623         * shapes/flowchart/*.shape:
13624         * shapes/flowchart/*.xpm:
13625         Added flowchart shapes. (Moved from objects/flowchart)
13626         
13628 1999-11-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
13630         * app/app_procs.c: Fixed popt stuff.
13632 1999-11-01  James Henstridge  <james@daa.com.au>
13634         * shapes/Circuit/[hv]led_de.{shape,xpm}: new circuit shapes from
13635         Andreas Scherf.
13637 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
13639         * dia.spec:
13640         * configure.in:
13641         Update version to 0.81.
13642         
13643         * NEWS:
13644         Update with news for 0.81.
13645         
13646         * shapes/Circuit/*:
13647         * shapes/Circuit_eu/*:
13648         Moved european circuit objects to Circuit sheet.
13650 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
13651         
13652         * lib/diagramdata.[ch]:
13653         Added layer_set_object_list() function.
13655         * app/undo.[ch]:
13656         Added support for undo of reordered objects.
13657         Fix the undo of delete to keep the right order on undo.
13658         
13659         * app/diagram.c:
13660         changed loop to object_add_updates_list() calls.
13661         Added undo support to bring to front/back.
13663         * app/disp_callbacks.c:
13664         * app/paginate_psprint.c:
13665         Remove warnings.
13667 1999-10-30  Alexander Larsson  <alla@lysator.liu.se>
13669         This plugs some leaks. Thanks to
13670         Bruce Mitchener <bruce@cybersight.com> for running
13671         Dia through purify for me.
13672         
13673         * app/app_procs.c:
13674         Free displays and diagrams on exit.
13676         * app/modify_tool.c:
13677         Free gc when freeing tool.
13679         * lib/diagramdata.c:
13680         Free layer name.
13681         
13682         * app/display.c:
13683         Free update and display lists when destroying display.
13684         
13685         * lib/diagramdata.c:
13686         Don't leak layer name.
13688         * objects/custom/load_sheet.c: 
13689         * objects/custom/shape_info.c:
13690         Free loaded xml documents.
13692 1999-10-28  Alexander Larsson  <alla@lysator.liu.se>
13694         * app/commands.c:
13695         * app/object_ops.[ch]:
13696         Add undo handling to alignment ops.
13697         Based partially on patch by Dan Cohn <dan@internap.com>.
13699         * objects/standard/image.c (image_move_handle):
13700         Don't divide by zero for small images.
13701         Patch by Dan Cohn <dan@internap.com>.
13703         * objects/UML/class.c (umlclass_destroy): 
13704         * objects/custom/custom_object.c (custom_destroy):
13705         Don't free connectionpoints before calling element_destroy
13706         which unconnects them.
13708 1999-10-26  Alexander Larsson  <alla@lysator.liu.se>
13710         * objects/custom/custom_object.c: 
13711         Load and save padding too. Fixes strange load crashes.
13713         * app/group.c (group_destroy):
13714         Don't unconnect already freed connectionpoints when
13715         destroying group. Probably fixes bug reported by
13716         Elliot Lee <sopwith@redhat.com>.
13718         * app/render_gdk.c:
13719         Don't crash on zero-size (broken) bezier curves.
13720         Different sort of fix. This should work on closed bezier curves
13721         too.
13723         * objects/standard/textobj.c:
13724         Activate default properties dialog for Text objects.
13726         * app/render_eps.c: 
13727         * app/load_save.c:
13728         * app/preferences.c:
13729         * app/render_svg.c:
13730         fopen files in binary or text mode.
13732 1999-10-26  Alexander Larsson  <alex@cendio.se>
13734         * app/render_gdk.c (bezier_add_lines):
13735         Don't crash on zero-size (broken) bezier curves.
13736         Fixes a crashing bug.
13738 1999-10-25  James Henstridge  <james@daa.com.au>
13740         * app/Makefile.am (run_dia.sh): allow dia to find internal shape files
13741         before it is installed.
13743         * objects/flowchart/flowchart.c: use relative paths to find shapes.
13745         * objects/custom/custom.c (custom_object_load): take file names
13746         relative to $(pkgdatadir)/shape-internal, and check an environment
13747         variable for an alternative directory.
13749         * app/...: added copyright messages to the top of my new code.
13751         * app/paginate_psprint.c: some general clean ups.  Also, give an error
13752         dialog if we can't open the command or output file for writing.
13754         * app/diapagelayout.c (dia_page_layout_set_orientation): fixed
13755         function so it would set orientation to landscape correctly.
13757         * app/paginate_psprint.c: use the paper settings that come with
13758         the diagram.  Also implemented landscape printing.
13760         * app/render_eps.c (new_psprint_renderer): use diagram paper metrics
13761         in PS header.
13763         * app/commands.[ch] (file_pagesetup_callback): added callback for
13764         the page setup dialog.
13766         * app/menus.c: added page setup menu item.
13768         * app/pagesetup.[ch]: implementation of the page setup dialog.
13770         * app/diapagelayout.[ch]: added accessors for the scaling factor.
13771         
13772         * app/load_save.c (diagram_load): load paper information from save
13773         file.
13774         (diagram_save): save the paper info.
13776         * lib/diagramdata.c (new_diagram_data): initialise paper info section
13777         of DiagramData structure.
13778         (diagram_data_destroy): free the paper name.
13780         * lib/diagramdata.h: added a paper member to the DiagramData structure
13781         that holds the page layout info for a diagram.
13783 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
13785         * objects/flowchart/box.c:
13786         * objects/flowchart/ellipse.c:
13787         * objects/flowchart/diamond.c:
13788         * objects/flowchart/parallelogram.c:
13789         Load and save padding too. Fixes strange load crashes.
13791 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
13793         * app/app_procs.c (name_is_lib):
13794         .dll, .sl and .so.0.0.0 are also libraries.
13796 1999-10-20  James Henstridge  <james@daa.com.au>
13798         * configure.in: added extra makefile.
13799         
13800         * shapes/Circuit_eu/*: a new set of european circuit shapes from
13801         Andreas Scherf <scherfa@fh-trier.de>.  Made a few small modifications
13802         (added fuses to makefile, fill the area of some of the components).
13804 1999-10-19  Alexander Larsson  <alla@lysator.liu.se>
13806         * lib/Makefile.am:
13807         * app/Makefile.am: 
13808         Add GDK_IMLIB_CFLAGS to includes.
13809         Changed --export-dynamic to -export-dynamic
13811         * lib/widgets.c:
13812         * objects/UML/message.c:
13813         Removed c++ comment.
13815         * lib/render_store.[ch]:
13816         Don't use empty structure. That is not Ansi C.
13818 1999-10-19  James Henstridge  <james@daa.com.au>
13820         * app/diapagelayout.c (dia_page_layout_init): use DiaUnitSpinner's for
13821         the margin entries, as they allow interpretation of units.
13822         (paper_size_change): display the current page dimensions.
13824         * app/diaunitspinner.[ch]: a widget derived from the standard
13825         GtkSpinButton that tries to take units into account.  So if you enter
13826         "1in" into the entry, it will convert it to 2.54cm.
13828 1999-10-18  Alexander Larsson  <alla@lysator.liu.se>
13830         * app/app_procs.c:
13831         Removed include of dlfcn.h
13833 1999-10-18  James Henstridge  <james@daa.com.au>
13835         * app/diapagelayout.c (paper_size_change, orient_changed): set upper
13836         bound on margin widths.  It is set to the paper width/height.
13838         * objects/flowchart/diamond.c (diamond_distance_from): fixed distance
13839         routine for the diamond.  This bug was found and fixed by Daniel Wang
13840         <danwang@CS.Princeton.EDU>
13842 Sun Oct 17 19:46:36 1999  ape@gandalf.spacetec.no  (Asbjorn Pettersen)
13844         * app/commands.c: Add <sys/types.h> before <sys/stat.h> to
13845         remove warning (OS/2 version).
13847 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
13849         * README:
13850         Put a pointer to objects/custom/README.
13851         
13852 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
13854         * dia.spec:
13855         Updated version to 0.80
13857         * configure.in:
13858         Updated version to 0.80cvs
13860 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
13862         * Released Dia 0.80
13863         Tag called DIA_0_80
13864         
13865 1999-10-17  Fredrik Hallenberg  <hallon@lysator.liu.se>
13867         * app/Makefile.am
13868         * lib/Makefile.am
13869         * objects/UML/Makefile.am
13870         * objects/ER/Makefile.am
13871         * objects/network/Makefile.am
13872         * objects/standard/Makefile.am
13873         * objects/FS/Makefile.am
13874         * objects/sybase/Makefile.am
13875         * objects/flowchart/Makefile.am
13876         * objects/custom/Makefile.am
13877         Added -I$(top_srcdir)/intl which is needed for
13878         --with-included-gettext.
13880         * POTFILES.in
13881         Updated.
13882         
13883         * po/sv.po
13884         Updated swedish translation.
13886 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
13888         * configure.in:
13889         Updated version number to 0.80.
13891         * KNOWN_BUGS:
13892         New file.
13894         * TODO:
13895         Updated. Moved bugs to KNOWN_BUGS.
13897         * NEWS:
13898         Updated with 0.80 release notes.
13899         
13900 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
13901         
13902         * lib/orth_conn.c:
13903         For backwards compatibility, make sure handle 0 and 1 are the
13904         first and last handle. Fixes compatibility with 0.41, breaks
13905         compatibility with cvs version.
13906         Fixed bug in undo/redo of adding deleting endpoint segments
13907         when the endpoint was connected.
13908         Start OrthConn objects with three segments.
13910 1999-10-16  James Henstridge  <james@daa.com.au>
13912         * objects/custom/custom_object.c (custom_update_data): changed
13913         resizing behaviour a bit so that shapes don't grow huge when you try
13914         to resize them to smaller than the size required by the text box.
13915         Also, now shapes will not grow with fixed aspect ratio when you enter
13916         text into them unless the shape has the fixed aspect ratio flag set.
13918 1999-10-15  James Henstridge  <james@daa.com.au>
13920         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
13922         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
13924         * objects/flowchart/magdrum.shape: 
13925         * objects/flowchart/offlinestore.shape: 
13926         * objects/flowchart/punchedtape.shape: 
13927         * objects/flowchart/transmittape.shape: 
13928         * objects/flowchart/punchedcard.shape: new shapes.
13930         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
13932         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
13934         * objects/flowchart/collate.shape:
13935         * objects/flowchart/delay.shape:
13936         * objects/flowchart/extract.shape:
13937         * objects/flowchart/intstorage.shape:
13938         * objects/flowchart/magdisk.shape:
13939         * objects/flowchart/magtape.shape:
13940         * objects/flowchart/merge.shape:
13941         * objects/flowchart/or.shape:
13942         * objects/flowchart/sort.shape:
13943         * objects/flowchart/sumjunction.shape: new shapes.
13945 1999-10-15  Alexander Larsson  <alla@lysator.liu.se>
13947         * TODO (BUGS):
13948         Added bug:
13949         Entering an erronous command as print command
13950         crashes dia.
13952         * app/paginate_psprint.c:
13953         Save all print dialog values for next time.
13954         
13955         * app/Makefile.am:
13956         Remove custom lib from DIA_LIB_PATH.
13958 1999-10-14  James Henstridge  <james@daa.com.au>
13960         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
13962         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
13963         
13964         * objects/flowchart/offpageconn.shape: 
13965         * objects/flowchart/manualop.shape: 
13966         * objects/flowchart/preparation.shape: 
13967         * objects/flowchart/manualinput.shape: 
13968         * objects/flowchart/predefdproc.shape: 
13969         * objects/flowchart/terminal.shape: new shapes in the flowchart sheet.
13971 1999-10-13  James Henstridge  <james@daa.com.au>
13973         * app/diapagelayout.[ch]: added accessors to paper information.  The
13974         widget should be just about complete now.
13976         * app/diapagelayout.[ch]: fleshed out the page setup widget a bit more.
13977         It actually does something now.
13979 1999-10-12  James Henstridge  <james@daa.com.au>
13981         * app/pixmaps/portrait.xpm, app/pixmaps/landscape.xpm: support pixmaps
13982         for the page layout widget.
13984         * app/diapagelayout.[ch]: start of page layout widget.  Not actually
13985         built yet as it is not complete.
13987         * objects/flowchart/flowchart.c: added new shapes to sheet.
13989         * objects/flowchart/display.shape:
13990         * objects/flowchart/transaction.shape: new shapes.
13992         * AUTHORS: added my name to the spec file.
13994         * dia.spec: include the dia desktop entry to the spec file.
13996         * Makefile.am: install the dia.desktop file.
13998         * dia.desktop: added a gnome desktop entry so you can start dia
13999         from the gnome panel menu.
14001 1999-10-11  James Henstridge  <james@daa.com.au>
14003         * objects/custom/custom_object.c:
14004         * objects/custom/shape_info.c: warning fixes.
14006         * objects/flowchart/document.shape: a shape file for the `document'
14007         flowchart shape.
14009         * lib/custom.h: new header with the custom shape prototypes.
14011         * app/app_procs.c: register custom objects as well.
14012         (register_objects_in): close shared libraries if they don't load
14013         correctly, and call g_module_make_resident on libraries that load
14014         correctly.
14016         * app/Makefile.am (dia_LDADD): added libcustom_objects.a to link list.
14018         * objects/custom/custom.c: removed get_version, added custom_ prefix
14019         to register_objects and register_sheets.
14021         * objects/custom/Makefile.am: converted to a normal library.
14023 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
14025         * app/lineprops_area.c:
14026         * app/render_svg.c:
14027         * lib/objchange.c:
14028         * objects/custom/shape_info.c:
14029         * objects/flowchart/box.c:
14030         * objects/flowchart/diamond.c:
14031         * objects/flowchart/ellipse.c:
14032         * objects/flowchart/parallelogram.c:
14033         * objects/network/flash.c:
14034         * objects/network/scead-plug.c:
14035         * objects/sybase/client.c:
14036         Removed -Wall warnings.
14037         
14038         * objects/network/bus.c:
14039         Removed unused functions.
14041         * objects/FS/flow-ortho.c:
14042         * objects/FS/flow-poly.c:
14043         * objects/FS/flow.c:
14044         * objects/FS/function.c:
14045         
14046         Implemented "non-implemented" undo for FS objects.
14047         Now at least it won't crash.
14048         
14049 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
14051         * objects/network/bus.c:
14052         Implemented undo.
14053         Handles are now added and removed using the object menu.
14054         Default to 6 handles instead of 10.
14055         Changed name from "Standard - Bus" to "Network - Bus". Kept old
14056         name for backwards compatibility.
14058         * objects/network/network.c:
14059         Changed name from "Standard - Bus" to "Network - Bus". Kept old
14060         name for backwards compatibility.
14062         * app/properties.[ch]:
14063         * app/undo.c:
14064         Update properties in properties dialog if the shown object
14065         is part of and ObjectChange (undo or redo).
14067         * lib/poly_conn.c:
14068         Remove old known bugs list.
14070         * objects/UML/class_dialog.c:
14071         Removed debug printf's.
14073 1999-10-10  James Henstridge  <james@daa.com.au>
14075         * objects/custom/custom.c (custom_object_load): new function that
14076         provides a nice entry point to the custom shape code for when it
14077         gets used by other libraries.
14079         * configure.in: removed 11 makefiles from AC_OUTPUT list.  This
14080         speeds builds up a bit.
14082         * */Makefile.am (EXTRA_DIST): include pixmaps in distribution.
14083         (SUBDIRS): do not descend into pixmaps subdirs.
14085         * */pixmaps/Makefile.am: removed -- incorporate into parent makefiles.
14086         This speeds up build process.
14088         * objects/custom/custom.c (sheets): made variable static.
14090         * objects/custom/custom_util.[ch] (custom_get_relative_filename):
14091         renamed function.
14093         * objects/custom/load_sheet.[ch] (custom_sheet_load): renamed function.
14095         * objects/custom/custom.c: look in ~/.shapes instead of
14096         ~/.dia_shapes as the per-user shapes directory.
14098         * app/preferences.c (prefs_save): save config to ~/.diarc.
14099         (prefs_load): load configuration from ~/.diarc.  If the file
14100         does not exist, fallback on the old ~/.diarc location.
14102         * app/app_procs.c (create_user_dirs): create the ~/.dia directory
14103         on startup.
14104         (register_all_objects): look for user specific objects in
14105         ~/.objects rather than ~/.dia_libs.
14107 1999-10-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
14109         * configure.in:
14110         * app_procs.c:
14111         * objects/flowchart/box.c
14112         * objects/flowchart/ellipse.c
14113         * objects/flowchart/flowchart.c 
14114         Use gmodule for dynamic linking. As gmodule is using
14115         RTLD_GLOBAL i had to change flowchart box and ellipse
14116         so the typenames doesn't conflict with the standard
14117         box and ellipse.
14119         * message.c
14120         * commands.c
14121         Use button box to make dialogs look better.
14123 1999-10-09  Alexander Larsson  <alla@lysator.liu.se>
14125         * objects/UML/class_dialog.c:
14126         * objects/UML/class.h:
14127         Implemented undo for "UML - Class" objects.
14128         Not 100% tested yet.
14130         * objects/UML/classicon.c:
14131         * objects/UML/constraint.c:
14132         * objects/UML/dependency.c:
14133         * objects/UML/generalization.c:
14134         * objects/UML/implements.c:
14135         * objects/UML/large_package.c:
14136         * objects/UML/lifeline.c:
14137         * objects/UML/message.c:
14138         * objects/UML/object.c:
14139         * objects/UML/realizes.c:
14140         * objects/UML/state.c:
14141         * objects/UML/usecase.c:
14142         Removed warnings.
14143         
14144         * lib/connectionpoint.h:
14145         Fixed typo.
14146         
14147 1999-10-09  James Henstridge  <james@daa.com.au>
14149         * objects/custom/*.[ch]: added copyright notices to custom object
14150         files.
14152         * shapes/Circuit/hdiode.shape:
14153         * shapes/Circuit/hzener.shape: 
14154         * shapes/Circuit/opamp.shape:
14155         * shapes/Circuit/vdiode.shape:
14156         * shapes/Circuit/vzener.shape: made adjustments to make the circuit
14157         shapes look nice after the custom shape code changes.
14159         * objects/custom/README: updated docs to cover changes to drawing
14160         code.
14162         * objects/custom/custom_object.c (custom_draw): honour the line
14163         properties when drawing the shape.
14165         * objects/custom/shape_info.[ch]: added support for setting line
14166         properties for individual drawing elements in a custom shape.  You
14167         can set the dash style, dash length, cap style and join style.
14169 1999-10-07  James Henstridge  <james@daa.com.au>
14171         * objects/custom/shape_info.c (parse_style): added a few extra synonyms
14172         for foreground and background.
14174         * objects/custom/custom_object.c (custom_draw): use the new style
14175         information when drawing the object.
14177         * objects/custom/shape_info.[ch]: store all shape style info in the
14178         GraphicStyle structure.  This makes adding support for extra CSS
14179         attributes easier -- we don't have to keep adding extra arguments to
14180         a lot of functions.
14182 1999-10-05  James Henstridge  <james@daa.com.au>
14184         * lib/intl.c (unalias_lang): merged in changes from the i18n code
14185         swiped from gnome-libs.
14187 1999-10-03  Alexander Larsson  <alla@lysator.liu.se>
14189         * objects/standard/image.c (get_directory):
14190         Fix memleak. Found by Kjartan Maraas <kmaraas@online.no>
14192 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
14194         * lib/poly_conn.c (polyconn_destroy):
14195         Fix bug. Access of freed memory.
14196         Rememeber, you can't free the handles of an object
14197         before calling object_destroy(), as it unconnects the handles
14198         therefore referencing them.
14200 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
14202         * app/undo.c:
14203         undo_clear() didn't set stack->depth to zero.
14204         This made other undo functions crash after this had been called
14205         on a "full" stack.
14206         
14207         * dia.xpm:
14208         Slightly modified by Chris Love <clove@exactis.com>
14210 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
14212         * objects/UML/class.h: 
14213         * objects/UML/class_dialog.c:
14214         Retrun NULL ObjectChange on class property change.
14215         This means no crashes, but "UML - Class" doesn't support undo yet.
14216         
14217 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
14218         
14219         * lib/text.c:
14220         Indentation fix.
14222         * objects/UML/classicon.c:
14223         * objects/UML/dependency.c:
14224         * objects/UML/generalization.c:
14225         * objects/UML/implements.c:
14226         * objects/UML/large_package.c:
14227         * objects/UML/lifeline.c:
14228         * objects/UML/message.c:
14229         * objects/UML/object.c:
14230         * objects/UML/realizes.c:
14231         * objects/UML/state.c:
14232         * objects/UML/usecase.c:
14233         Update to new undo (w. get/set_state).
14234         Add object menu to add/delete segments.
14236 1999-09-17  Alexander Larsson  <alla@lysator.liu.se>
14238         * app/menus.c:
14239         Add equal distance alignment.
14241         * app/object_ops.c:
14242         Add equal distance alignment.
14243         Fix bug in adjacent alignment.
14245 1999-09-16  Alexander Larsson  <alla@lysator.liu.se>
14247         * objects/UML/constraint.c: 
14248         Update to new undo (w. get/set_state).
14250 1999-09-15  Alexander Larsson  <alla@lysator.liu.se>
14252         * app/paginate_psprint.c:
14253         Save (parts, more todo) of the info in the print dialog to the
14254         next time it's opened.
14255         Patch from Yo Ric Dude <ricdude@toad.net>
14257 1999-09-14  Alexander Larsson  <alla@lysator.liu.se>
14259         * configure.in:
14260         Updated version string to 0.41cvs.
14262         * objects/UML/assocition.c:
14263         Update to new undo (w. get/set_state).
14264         Add object menu to add/delete segments.
14266         * app/app_procs.c:
14267         Added function debug_break() and called it after all
14268         objects and sheets are loaded. Place a breakpoint here if you
14269         want to debug objects. All symbols should be loaded.
14271 1999-09-12  James Henstridge  <james@daa.com.au>
14273         * app/menus.c (display_menu_items): added print menu item.
14274         (filemenu): always add print menu item -- even if gnome-print is
14275         not installed.
14277         * app/commands.h, app/commands.c (file_print_callback): the print
14278         menu item is now available for both gnome-print and non gnome-print
14279         setups.
14281         * app/paginate_psprint.c (diagram_print_ps): show a dialog to let you
14282         print with the non gnome-print driver.
14284 1999-09-11  James Henstridge  <james@daa.com.au>
14286         * app/paginate_gnomeprint.c (diagram_print_gnome): moved the gnome
14287         printer dialog code out of commands.c.
14289         * app/paginate_psprint.c: new file containing the pagination code for
14290         psprint.
14292         * app/render_eps.c: made a few modifications so as well as producing
14293         EPS files, this renderer can be set up to do postscript printing.
14294         This basically entailed adding an extra function to create a RenderEPS
14295         renderer which did not bother setting the viewport for the document.
14296         That was left for the pagination code.
14298 1999-09-10  James Henstridge  <james@daa.com.au>
14300         * app/render_gnomeprint.c (draw_ellipse, fill_ellipse): since
14301         gnome-print does not support elliptic arcs at the moment, approximate
14302         the ellipse with eight bezier curves.  This gives a pretty good
14303         match to a true ellipse.
14305 1999-09-09  James Henstridge  <james@daa.com.au>
14307         * app/commands.c (file_gnome_print_callback): added support for
14308         scaling the diagram.  Also fixed a few other bugs.
14310         * app/paginate_gnomeprint.c (print_page): added ability to scale
14311         document.  Fixed up test to see if the page has no objects on it.
14312         This should prevent some blank pages being printed.  Non square
14313         objects such as lines could still cause problems.
14315 1999-09-08  James Henstridge  <james@daa.com.au>
14317         * app/commands.c (file_gnome_print_callback): changed from using the
14318         standard printer selection dialog to one that also has a paper size
14319         selector as well.
14321         * commands.[ch]: added callbacks for the print menu item.  Currently
14322         it only does A4 output.  I will make it configurable soon.
14323         
14324         * app/menus.c: add a print diagram menu item if gnome-print support
14325         is enabled.
14326         
14327         * app/paginate_gnomeprint.c, app/paginate_gnomeprint.h: this is a
14328         bit higher level than the gnome-print renderer.  It splits the
14329         diagram into page size chunks and then renders them.  For each
14330         page, it only renders the objects whose bounding box intersects
14331         the page, and it sets the clip mask so that the diagram does not
14332         overlap the margins.
14333         
14334         * app/render_gnomeprint.c, app/render_gnomeprint.h: added a renderer
14335         that uses gnome-print as its back end.
14336         
14337         * configure.in: added a check for gnome-print.  It is disabled by
14338         default because the code is not really working correctly yet.
14340         * app/menus.c: the delete object menu item was missing from the
14341         GnomeUIInfo style menus.
14343 1999-09-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
14345         * configure.in
14346         Added japanese to ALL_LINGUAS.
14347         Fix for Linux on Alpha.
14349 1999-09-07  Alexander Larsson  <alla@lysator.liu.se>
14351         * app/create_object.c (create_object_button_press):
14352         Always initialize tool->obj. Otherwise we store a null
14353         in the undo Change.
14355         * lib/text.c:
14356         Set linestyle before drawing cursor.
14357         Fix undo of backwards delete.
14359 1999-09-05  James Henstridge  <james@daa.com.au>
14361         * dia.spec: updated spec file to distribute $(prefix)/share/dia.
14363         * app/render_svg.c (draw_image): some fixes so that the appropriate
14364         style attributes are set.  Before it was setting line styles on
14365         fill_* functions.  Now it only does this for the draw_* variants.
14367         * app/Makefile.am (run_dia.sh): set the DIA_SHAPE_PATH environment
14368         variable so that custom shapes can be loaded.
14370         * shapes/: new directory for custom shapes.  The Circuit sheet has
14371         been moved here.
14373 1999-09-02  James Henstridge  <james@daa.com.au>
14375         * TODO: removed a few todo items that have been implemented.
14377         * app/interface.c (create_sheets): enabled the popup page menu to the
14378         notebook.  This can make it easier to select different sheets.
14380         * object/custom/Circuit/: added diode, zener diode, ground point and
14381         operational amplifier shapes.
14382         
14383         * objects/custom/Makefile.am: added a note about adding DEBUG_CUSTOM
14384         if you want the output.
14386         * objects/custom/shape_info.c (parse_path): same here.
14388         * objects/custom/load_sheet.c (load_with_readdir): don't print so
14389         much debugging output.  To get the previous level of output, define
14390         DEBUG_CUSTOM.
14392         * objects/custom/shape_info.c (parse_svg_node): polygons were being
14393         recorded as polylines in the ShapeInfo structure.
14395         * objects/custom/README: some notes on writing new custom shapes.
14396         
14397 1999-09-01  James Henstridge  <james@daa.com.au>
14399         * objects/custom/Circuit/hinductor.*:
14400         * objects/custom/Circuit/vinductor.*: added inductor shapes that
14401         also test out the bezier curve and SVG path support.
14402         
14403         * objects/custom/custom_object.c (custom_draw): added support for
14404         drawing bezier paths and filled shapes.
14406         * objects/custom/shape_info.c (parse_path): new function to parse
14407         SVG path elements.  It does not do quadratic beziers or elliptic
14408         arcs though.  Only moves, lines and cubic beziers.
14409         (*): added support for paths.
14411 1999-08-31  James Henstridge  <james@daa.com.au>
14413         * objects/sybase/ltm.c (render_to_store): use the newer bezier API.
14415         * app/render_svg.c (draw_bezier, fill_bezier): updated renderer
14416         interface
14418         * app/render_eps.c (draw_bezier, fill_bezier): updated renderer
14419         interface
14421         * app/render_gdk.c (draw_bezier, fill_bezier): updated renderer
14422         interface.
14424         * lib/render_store.[ch]: use newer bezier functions.
14426         * lib/render.h: changed the bezier drawing functions to use an array
14427         of BezPoint structures instead of normal Point structures to allow
14428         lineto's mixed in with the curveto's.
14429         
14430         * objects/custom/Circuit/pnp.*: added pnp transistor shape.
14431         
14432         * objects/custom/Circuit/Makefile.am (SHAPES): added index.sheet and
14433         xpm images for different shapes to Makefile.
14435         * objects/custom/custom_object.c (custom_object_new): set the icon
14436         for the sheet button if there is one.  Otherwise fall back on the
14437         default custom object icon.
14439         * objects/custom/shape_info.c (load_shape_info): read the sheet
14440         icon name from the shape file.
14442         * app/interface.c (create_sheet_page): if sheet_obj->pixmap == NULL,
14443         check the pixmap_file field for the name of a pixmap file to load
14444         for the tool.
14446         * lib/sheet.h (SheetObj): added pixmap_file field to structure.  It is
14447         at the end of the structure, and it isn't used if the pixmap field
14448         is non NULL, so it should not break binary compatibility.
14450         * objects/custom/load_sheet.[ch]: moved sheet loading code here.  Also
14451         added support for the use of an index.sheet file so you can specify
14452         the ordering of the shapes in the sheet, and also internationalise
14453         the sheet name and actually be able to give a description.  The old
14454         readdir based sheet loading code acts as a fallback if an index.sheet
14455         file can not be found.
14457         * objects/custom/custom_util.[ch]: new file containing useful routines
14458         needed by the custom object code.  Currently only contains a simple
14459         routine for resolving relative paths.
14461         * objects/custom/custom_object.c (custom_draw): fixed problem with
14462         drawing rectangles if the shape has been flipped.
14464 1999-08-30  James Henstridge  <james@daa.com.au>
14466         * objects/custom/custom_object.c (custom_get_object_menu): allow
14467         flipping of custom shapes.  This uses the miggle click object
14468         menu.
14470         * objects/custom/Circuit/npn.shape: fix aspect ratio.
14472         * objects/custom/custom_object.c (custom_update_data): honour the
14473         aspect ratio constraints.
14475         * objects/custom/shape_info.c (load_shape_info): updated aspect ratio
14476         tag parsing, so you can specify a free, fixed or a range for aspect
14477         ratios for the shape.
14479 1999-08-29  James Henstridge  <james@daa.com.au>
14481         * objects/custom/test.xml, objects/custom/Circuit/*.shape: fixed
14482         up shape namespace tag.
14484         * objects/custom/shape_info.c (load_shape_info): check xml:lang
14485         attribute on <description> elements to support i18n for custom
14486         shape descriptions.
14487         Also changed the shape namespace for custom shapes to something
14488         a little more sensible.
14490         * lib/dummy_dep.h (dummy_dep): added extra dummy dependency.
14492         * lib/intl.c: new file containing some functions for i18n stuff.
14494         * app/layer_dialog.c (create_button_box): fixed a warning.
14496         * objects/custom/custom_object.c: use current line style.  Save dash
14497         length.
14499         * objects/flowchart/diamond.c: use current line style.  Save dash
14500         length.
14502         * objects/flowchart/parallelogram.c: use current line style.  Save
14503         dash length.
14505         * objects/flowchart/ellipse.c: use current line style.  Save dash
14506         length.
14508         * objects/flowchart/box.c: use current line style.  Save dash length.
14510         * objects/standard/ellipse.c: make ellipse use current line style.
14512         * objects/standard/box.c: use the line style set in the toolbox for
14513         new boxes, and remember the dash length.
14515         * app/commands.c (view_toggle_rulers_callback): fix reshowing of
14516         rulers.
14518 1999-08-24  James Henstridge  <james@daa.com.au>
14520         * objects/flowchart/ellipse.c (ellipse_update_data): made some changes
14521         to try to stop ellipse to get infinite width/height when we resize,
14522         while trying to keep the text inside the ellipse.
14524         * objects/flowchart/box.c, objects/flowchart/parallelogram.c,
14525         * objects/flowchart/diamond.c, objects/flowchart/ellipse.c: fixed
14526         resizing behaviour, so that you can't push objects round the screen
14527         with the resize handles.
14529         * app/lineprops_area.c (dia_arrow_chooser_init, dia_line_chooser_init):
14530         get the OK buttons in the dialogs to take default clicks.
14532         * objects/custom/custom_object.c: added code so that resizing the
14533         shape does not end up pushing it round the screen.
14535 1999-08-23  Alexander Larsson  <alla@lysator.liu.se>
14537         * app/display.[ch]:
14538         Generate rectangle with the union of the damaged regions.
14539         This is used to optimize the grid paint and the object rendering.
14540         display_render_pixmap passes this info to grid_draw() and data_render().
14542         * app/grid.[ch]:
14543         grid_draw doesn't draw grid lines outside of damaged rectangle.
14544         Sets dashlength when drawing non-solid grid.
14545         
14546         * lib/diagramdata.[ch]:
14547         data_render() and layer_render() takes an optional damaged rectangle
14548         argument. No objects not intersecting this are drawn.
14550         * app/diagram.c:
14551         Fix warning.
14552         Call data_render with NULL update rectangle.
14553         
14554 1999-08-23  James Henstridge  <james@daa.com.au>
14556         * objects/custom/custom_object.c (custom_update_data): if the aspect
14557         ratio is fixed, make sure the shape is not distorted.
14559         * object/custom/shape_info.h, objects/custom/shape_info.c: notice if
14560         a <fixaspectratio/> tag is given in the shape file.
14562         * objects/custom/shape_info.[ch], objects/custom/custom_object.c:
14563         added support for stroke-width, stroke and fill CSS attributes
14564         specified in style attributes of the SVG elements.  The line width
14565         is relative to the user specified line width.  The stroke and fill
14566         attributes can only be used to swap the foreground/background
14567         colours.
14569         * lib/widgets.c (dia_line_style_selector_set_linestyle): set the
14570         sensitivity on the dash length selector when this function is called.
14572         * objects/standard/arc.c: same.  Also handle dash length.
14573         * objects/standard/zigzagline.c: same.
14574         * objects/standard/polyline.c: same.  Also handle dash length.
14575         * objects/standard/line.c: use default arrow/line styles.
14577         * app/interface.c: added callbacks to set the default attributes.
14579         * lib/attributes.c: added implementations of these functions.
14581         * lib/attributes.h: added extra prototypes for the new line properties
14582         area in the toolbox.
14584         * app/interface.c (create_lineprops_area): added line properties
14585         area to bottom of toolbox.
14587         * app/lineprops_area.h: a header exporting a few routines of the
14588         line properties area widgets.
14590         * app/lineprops_area.c: new file containing a selector for arrows
14591         and line styles to go in the main toolbox.
14593 1999-08-22  Alexander Larsson  <alla@lysator.liu.se>
14595         * HACKING:
14596         Update Gtk+ 1.0.5 comment to 1.2.0.
14598         * INSTALL:
14599         Demand libtool 1.3
14601         * acconfig.h:
14602         Add HAVE_LIBPOPT
14604         * configure.in:
14605         Make sure we don't propagate -ldl and -lpopt to all LIBS
14606         by adding new var APP_LIBS that only app/dia links with.
14607                 
14608         * app/Makefile.am:
14609         Update run_dia.sh to load custom and flowchart objects.
14611         * objects/ER/Makefile.am:
14612         * objects/FS/Makefile.am:
14613         * objects/UML/Makefile.am:
14614         * objects/network/Makefile.am:
14615         * objects/standard/Makefile.am:
14616         * objects/sybase/Makefile.am:
14617         Don't build versioned libs.     
14618         
14619 1999-08-22  James Henstridge  <james@daa.com.au>
14621         * configure.in: added objects/custom/Circuit/Makefile to AC_OUTPUT
14622         list.
14624         * objects/Makefile.am (SUBDIRS): added custom to subdir list -- it
14625         should actually work a bit now.
14627         * objects/custom/Circuit/*: a test sheet for the custom shape code.
14628         It is a small collection of circuit elements.
14630         * objects/custom/shape_info.c: fixed up loading of polylines and
14631         polygons.  Before it was removing negative signs :(
14633         * objects/custom/pixmaps/custom.xpm: drew the custom shape icon.  A
14634         placeholder was here before.  I still need to work out how to set
14635         icons for individual custom shapes.
14636         
14637         * objects/custom/custom.c: added code to load the shapes into sheets
14638         properly.  The shape files should be arranged into directories, and
14639         each directory represents a different sheet in the toolbox.  This
14640         will make it very easy to distribute a collection of dia shapes as
14641         a tarball.  I still need to work out internationalisation, and maybe
14642         also shape ordering in the sheet.
14644         * objects/custom/custom_object.c: fixed up dialogs for these objects.
14645         (custom_create): fix for objects without text areas.
14647         * objects/custom/shape_info.h, objects/custom/custom_object.c: loading
14648         and saving of custom object works correctly now.
14650 1999-08-21  James Henstridge  <james@daa.com.au>
14652         * objects/flowchart/ellipse.c: 
14653         * objects/flowchart/diamond.c: 
14654         * objects/flowchart/parallelogram.c: 
14655         * objects/flowchart/box.c: Fixed up a few bugs in these objects when
14656         copying or loading these object types.  Not all the connection
14657         points would be initialised correctly.
14659         * objects/flowchart/Makefile.am (libflowchart_objects_la_LDFLAGS):
14660         similar here.
14662         * objects/custom/Makefile.am (libcustom_objects_la_LDFLAGS): do not
14663         build a versioned library.  It will only ever be dlopen'd, so this
14664         is not a problem.
14666         * objects/custom/custom_object.c (custom_distance_from): allow
14667         selecting the object by clicking on the text.  This fixes problems
14668         where the text box is outside the graphic.
14670         * objects/custom/shape_info.c (load_shape_info): fixed up reading
14671         of connections points.  It should be possible to add connections
14672         to custom objects now.
14674         * objects/custom/custom_object.c (custom_update_data): fixed resizing
14675         due to changes to text.
14677         * configure.in: added extra makefiles.
14678         
14679         * objects/custom/shape_info.[ch]:
14680         * objects/custom/custom_object.c:
14681         * objects/custom/custom.c: the starts of custom shape support in dia.
14682         This is not built by default at the moment, since it is not quite
14683         complete.  When it is, it will let you create more shapes for dia
14684         without writing a line of C.  Its implementation includes buzzwords
14685         such as XML and SVG, so it must be good :)
14687 1999-08-19  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
14689         * app/app_procs.c (app_exit): Use button labels "Quit" and
14690         "Cancel" instead of "Yes" and "No".
14691         Set default action to "Cancel" instead of "Quit".
14693 1999-08-19  James Henstridge  <james@daa.com.au>
14695         * objects/flowchart/flowchart.c: added ellipse object.
14696         
14697         * objects/flowchart/ellipse.c: a new shape for the flowchart toolbox.
14699 1999-08-18  James Henstridge  <james@daa.com.au>d
14701         * app/color_area.c (color_area_edit): small fix to prevent dia from
14702         segfaulting when you try to change the default foreground/background.
14704 1999-08-17  Alexander Larsson  <alla@lysator.liu.se>
14706         * app/diagram.[ch] (diagram_redraw_all):
14707         Added function that redraws all diagrams.
14709         * app/preferences.c (prefs_apply):
14710         Call diagram_redraw_all when prefs are changed.
14712         * app/render_svg.c:
14713         Don't use xmlEncodeEntitiesReentrant(). It doesn't exist on
14714         older libxml's, and the old version works good enought here.
14715         
14716 1999-08-17  James Henstridge  <james@daa.com.au>
14718         * lib/widgets.c: changed handlers that were connected to the GtkButton
14719         "pressed" signal to connect to the "clicked" signal.  This removes the
14720         problem where dialogs are inactive until you click a mouse button
14721         after using a colour selector.
14723         * configure.in: added extra makefiles to AC_OUTPUT list.
14724         
14725         * objects/Makefile.am (SUBDIRS): added flowchart module
14727         * objects/flowchart/*: a collection of shapes for use in flowcharts.
14729         * app/color_area.c (color_area_events): similar here.
14731         * app/linewidth_area.c (linewidth_area_events): sometimes a configure
14732         event is recieved with event->width == 0, which causes a warning if we
14733         try to create a pixmap of that width.
14735         * app/preferences.c, app/preferences.h, app/grid.c: added code to
14736         allow you to configure the colour of the grid, and also lets you
14737         set the grid to use dotted lines instead of solid ones.
14738         
14739         * app/commands.c, app/commands.h, app/diagram.c, app/diagram.h,
14740         app/menus.c, app/Makefile.am: added menu entry for exporting SVG files.
14741         
14742         * app/render_svg.h, app/render_svg.c: an SVG (Scalable Vector Graphics)
14743         export filter.  It is not quite complete, but for most shapes it
14744         works as expected.  Fonts still need a bit of work.
14746 1999-08-11  Robert Brady  <rwb197@ecs.soton.ac.uk>
14748         * configure.in: Added "en_GB" to ALL_LINGUAS.
14750 1999-08-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
14752         * menus.c
14753         Added Undo and Redo to GNOME menus.
14754         
14755         * objects/ER/attribute.c:
14756         * objects/ER/entity.c:
14757         * objects/ER/participation.c:
14758         * objects/ER/relationship.c:
14759         Added get/set_state functions.
14761         * objects/ER/participation.c:
14762         Added add/delete segment.
14764         * po/sv.po
14765         Updated Swedish translation.
14767 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
14769         * app/preferences.[hc]:
14770         Added undo_depth pref.
14771         
14772         * app/undo.[ch]:
14773         Never grow stack larger than pref.undo_depth.
14774         undo_depth == 0 means unlimited.
14775         Converted printfs to conditionally compiled DEBUG_PRINTFs.
14776         
14777 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
14779         * app/diagram.c:
14780         * app/group.c:
14781         * lib/object.h:
14782         * lib/render_object.c:
14783         * objects/ER/attribute.c:
14784         * objects/ER/entity.c:
14785         * objects/ER/participation.c:
14786         * objects/ER/relationship.c:
14787         * objects/FS/flow-ortho.c:
14788         * objects/FS/flow-poly.c:
14789         * objects/FS/flow.c:
14790         * objects/FS/function.c:
14791         * objects/UML/actor.c:
14792         * objects/UML/association.c:
14793         * objects/UML/class.c:
14794         * objects/UML/classicon.c:
14795         * objects/UML/component.c:
14796         * objects/UML/constraint.c:
14797         * objects/UML/dependency.c:
14798         * objects/UML/generalization.c:
14799         * objects/UML/implements.c:
14800         * objects/UML/large_package.c:
14801         * objects/UML/lifeline.c:
14802         * objects/UML/message.c:
14803         * objects/UML/note.c:
14804         * objects/UML/object.c:
14805         * objects/UML/realizes.c:
14806         * objects/UML/small_package.c:
14807         * objects/UML/state.c:
14808         * objects/UML/usecase.c:
14809         * objects/network/bus.c:
14810         * objects/standard/arc.c:
14811         * objects/standard/box.c:
14812         * objects/standard/ellipse.c:
14813         * objects/standard/image.c:
14814         * objects/standard/line.c:
14815         * objects/standard/polyline.c:
14816         * objects/standard/textobj.c:
14817         * objects/standard/zigzagline.c:
14818         Removed all traces of is_empty(). It doesn't work in an
14819         Undo/Redo world.
14821 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
14823         * app/diagram.c:
14824         * app/group.[ch]:
14825         * app/undo.[ch]:
14826         Undoable grouping and ungrouping.
14828         * app/layer_dialog.c:
14829         * lib/diagramdata.[ch]:
14830         Undoable layer ops.
14832         * app/modify_tool.c:
14833         Undoable unconnect on handle move.
14835         * lib/orth_conn.[ch]:
14836         Working undoable add/remove segment.
14837         Removed endpoint_handles from OrthConn, renamed
14838         midpoint_handles to handles and put the endpoint
14839         handles there.
14841         * objects/standard/zigzagline.c:
14842         * objects/ER/participation.c:
14843         * objects/UML/association.c:
14844         * objects/UML/dependency.c:
14845         * objects/UML/generalization.c:
14846         * objects/UML/realizes.c:
14847         Update for the changes in OrthConn
14848         
14849 1999-07-23  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
14851         * configure.in: Added "de" to ALL_LINGUAS.
14853 1999-07-17  Alexander Larsson  <alla@lysator.liu.se>
14855         * dia.1:
14856         Fixed typo.
14858         * app/display.c:
14859         * po/da.po:
14860         * po/fr.po:
14861         * po/hu.po:
14862         * po/no.po:
14863         * po/pl.po:
14864         * po/sv.po:
14865         Don't have the <Display> etc part of the menu strings
14866         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
14868         * app/diagram.c:
14869         Don't have the <Display> etc part of the menu strings
14870         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
14871         Don't remove is_empty() objects, that don't work with undo.
14873         * lib/objchange.[ch]:
14874         New files.
14875         Definition of ObjectChange. This is essentially an Change
14876         exported to the object libs. It encapsulates a change made
14877         to an objects internals. It can be applied, reverted and freed.
14878         There are also utility functions for doing ObjectChanges that
14879         only get/set the whole state of an object to store the change.
14880         This cannot be used when the object change deletes or adds a
14881         object which has references from other objects, eg. Handles which
14882         might be connected.
14884         * lib/Makefile.am:
14885         Added objchange.c and objchange.h.
14887         * lib/dia_image.c:
14888         Return NULL when loading fails.
14890         * lib/diamenu.h:
14891         Menu callbacks return an ObjectChange.
14893         * lib/dummy_dep.h:
14894         Reference objchange.o
14896         * lib/focus.h:
14897         Key events return ObjectChange if they modify the object.
14899         
14900         * lib/object.h:
14901         Added object_add_handle_at() function.
14902         Apply properties returns an ObjectChange.
14903         Remove ObjectState and the get/set state functions, these
14904         don't always work. Use the new ObjectChange instead.
14905         
14906         * lib/object.c:
14907         Added object_add_handle_at() function implementation.
14908         
14909         * lib/orth_conn.[ch]:
14910         Use ObjectChange. Not finished yet.
14911         Removed get/set/free state functions
14913         * lib/poly_conn.[ch]:
14914         Use ObjectChange.
14915         Don't remove segments that are small.
14916         Removed get/set/free state functions
14918         * lib/text.[ch]:
14919         Use ObjectChange.
14920         Added functions to get/set all text attributes.
14922         * objects/standard/arc.c:
14923         * objects/standard/box.c:
14924         * objects/standard/ellipse.c:
14925         * objects/standard/image.c:
14926         * objects/standard/line.c:
14927         * objects/standard/polyline.c:
14928         * objects/standard/textobj.c:
14929         * objects/standard/zigzagline.c:
14930         Use ObjectChange.
14931         fixed bug in image_set_state.
14932         zigzagline.c not finished yet.
14934         * app/disp_callbacks.c:
14935         Use ObjectChange that are returned from menu callbacks and
14936         key_events for undo.
14938         * app/properties.c:
14939         Use ObjectChange that are returned from properties apply
14940         for undo.
14942         * app/undo.c:
14943         * app/undo.h:
14944         New undo type: ObjectChangeChange. This wraps a change to the
14945         internals of an object (and ObjectChange) in code that does
14946         app specific stuff (object_add_updates etc.)
14948 1999-07-11  Alexander Larsson  <alla@lysator.liu.se>
14950         * lib/orth_conn.[ch]:
14951         Added code for add/delete segment.
14953         * objects/standard/zigzagline.c:
14954         Use the new orth_conn code.
14955         
14957 1999-07-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
14959         * objects/FS/Makefile.am
14960         Removed fs.h from sources.
14962         * Makefile.am
14963         * dia.1
14964         Added man page.
14966 1999-07-07  Alexander Larsson  <alla@lysator.liu.se>
14968         * app/disp_callbacks.c (ddisplay_canvas_events):
14969         Fix for bug. Every other arrow-key press got lost.
14970         patch from Mr. Data Esq. <data@r47h102.res.gatech.edu>
14972         * INSTALL:
14973         change automake.sh to autogen.sh
14974         
14975 1999-06-24  Alexander Larsson  <alla@lysator.liu.se>
14977         * app/diagram.c:
14978         Don't remove 'empty' objects.
14979         This violent destruction of objects won't work
14980         with the new undo framework.
14982         * app/disp_callbacks.c:
14983         Save undo info for object menu calls and key_events.
14985         * app/properties.c:
14986         Save undo info on properties apply.
14988         * lib/dia_image.[ch]:
14989         Add refcounting for images.
14991         * app/render_eps.c:
14992         * app/render_gdk.c:
14993         * lib/render.h:
14994         DiaImage * -> DiaImage
14996         * app/undo.[ch]:
14997         Add undo functions for object state changes.
14999         * lib/focus.h:
15000         * lib/text.c:
15001         change of semntics for focus->key_event.
15002         Now returns TRUE if the object recieving the event
15003         was changed.
15005         * lib/object.h:
15006         Comment changes.
15008         * lib/orth_conn.[ch]:
15009         Don't automatically create and delete segments when
15010         handles are moved. This is incompatible with undo.
15011         Added state get, set and free functions.
15013         * lib/orth_conn.[ch]:
15014         Added state get, set and free functions.
15016         * objects/UML/object.c:
15017         * objects/UML/uml.c:
15018         Fixed typo "UML - Objet" -> "UML - Object".
15019         Saved old for backwards compatibility.
15021         * objects/standard/arc.c:
15022         * objects/standard/box.c:
15023         * objects/standard/ellipse.c:
15024         * objects/standard/image.c:
15025         * objects/standard/line.c:
15026         * objects/standard/polyline.c:
15027         * objects/standard/textobj.c:
15028         * objects/standard/zigzagline.c:
15029         Added get/set state functions.
15030         Textobj has a redo crash-bug.
15031         Zigzagline needs object menus to add segments.
15032         
15034 1999-06-20  Alexander Larsson  <alla@lysator.liu.se>
15036         * app/render_eps.c (set_dashlength):
15037         Don't generate eps files with zero dash-length.
15039 1999-06-16  Alexander Larsson  <alla@lysator.liu.se>
15041         * app/commands.c:
15042         * app/create_object.c:
15043         * app/undo.[ch]:
15044         Finished undo for create and paste.
15045         
15046         * lib/object.h:
15047         Started properties undo.
15049 1999-06-14  Alexander Larsson  <alla@lysator.liu.se>
15051         * TODO:
15052         Added resizeable groups.
15054         * app/app_procs.c:
15055         Removed unused variable.
15057         * app/commands.c:
15058         * app/undo.[ch]:
15059         Undo/redo for cut/delete done.
15061         * app/create_object.c:
15062         * app/modify_tool.c:
15063         * lib/diagramdata.[ch]:
15064         * app/diagram.[ch]:
15065         renamed diagram_add_selected -> diagram_select
15066         renamed diagram_remove_selected -> diagram_unselect
15067         
15068         * app/properties.[ch]:
15069         Added properties_hide_if_shown() function.
15071 1999-06-13  Alexander Larsson  <alla@lysator.liu.se>
15073         * app/undo.[ch]:
15074         * app/Makefile.am:
15075         Undo functions.
15076         
15077         * app/commands.[ch]
15078         * app/modify_tool.[ch]
15079         * app/object_ops.[ch]
15080         * app/connectionpoint_ops.c
15081         * app/menus.c
15082         Use undo functions.
15083         WARNING: Not finished. Will break.
15084         Finished: move object, move handle.
15086         * app/diagram.[ch]
15087         Added diagram_selected_break_external() function.
15088         It removes all connections between selected objects
15089         and non-selected.
15090         Add undo stack to Diagram.
15091         
15092         * lib/diagramdata.[ch]
15093         Added layer_remove_objects() function
15094         
15095 1999-06-11  Fredrik Hallenberg  <hallon@lysator.liu.se>
15097         * objects/FS/Makefile.am
15098         * objects/sybase/Makefile.am
15099         Now uses GNOME_CFLAGS.
15101         * app/app_procs.c
15102         Now compiles with GNOME even if popt.h isn't available.
15104 1999-06-10  Alexander Larsson  <alla@lysator.liu.se>
15106         * configure.in
15107         * objects/Makefile.am
15108         * objects/sybase/*
15109         First version of sybase objects from
15110         Brian Bruns <camber@umcc.ais.org>
15112 1999-06-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
15114         * configure.in
15115         Added fr to ALL_LINGUAS
15117 1999-06-09  Fredrik Hallenberg  <hallon@lysator.liu.se>
15119         * configure.in
15120         * app/app_procs.c
15121         Popt-code is activated if popt is available.
15123 1999-06-08  Alexander Larsson  <alla@lysator.liu.se>
15125         This is a patch from David Thompson <dcthomp@mail.utexas.edu>
15126         
15127         * lib/orth_conn.[ch]:
15128         Added orthconn_get_middle_handle()
15130         * lib/text.[ch]:
15131         Added text_set_cursor_at_end()
15132         
15133         * objects/FS/*
15134         Added first version of functions structure diagrams.
15135         
15136 1999-05-24  Alexander Larsson  <alla@lysator.liu.se>
15138         * app/modify_tool.c:
15139         Include math.h to remove warning.
15141         * app/commands.c (dialogs_properties_callback):
15142         Bring up correct properties dialog when selected
15143         from menu.
15144         From Dan Cohn <dan@internap.com>
15146 1999-05-20  Alexander Larsson  <alla@lysator.liu.se>
15148         Patch from Lars R. Clausen 
15149         
15150         * app/modify_tool.c:
15151         Changed abs to fabs.
15153 1999-05-19  Alexander Larsson  <alla@lysator.liu.se>
15155         * INSTALL: 
15156         * configure.in:
15157         Require Gtk+ 1.2.0
15159 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
15161         Patches from Dan Cohn <dan@internap.com>
15162         
15163         * app/commands.[ch]: 
15164         * app/display.[ch]: 
15165         * app/menus.c:
15166         * app/preferences.[ch]:
15167         Implements ability to turn on/off connection points in
15168         current drawing and in global prefs.
15170 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
15172         * lib/widgets.c (dia_line_style_selector_init): 
15173         Fixed warnings.
15174         
15175         * lib/diagramdata.c (layer_update_extents):
15176         Fixed uninitialized variable error.
15178 1999-05-17  Alexander Larsson  <alla@lysator.liu.se>
15180         * lib/dia_image.c:
15181         Made some changes to the gdk_imlib visual+colormap setup.
15183 1999-05-17  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15185         * objects/UML/usecase.c: 
15186        * objects/UML/lifeline.c
15187         Fine tunning.
15189         * objects/UML/object.c: 
15190         * objects/UML/message.c: 
15191         Changed font from Courier to Helvetica.
15193         * lib/widgets.c: 
15194         * lib/widgets.h:
15195         Added dash lenth to the LineStyle widget.
15196         
15197         * objects/standard/ellipse.c :
15198         * objects/standard/zigzagline.c: 
15199         * objects/standard/line.c: 
15200         Added dash lenght property.
15202 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
15204         * app/render_eps.c:
15205         First shot at latin1 encoded eps files.
15206         Works, but the eps files get a bit large.
15207         
15208 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
15210         * objects/UML/class.[ch]: 
15211         * objects/UML/uml.[ch]:
15212         Reverted the line wrap changes.
15213         Some day this might return, but it has to be selectable and
15214         default to off for loaded objects, otherwise it breaks file
15215         format compatibility.
15216         There was also some complains about how it looked, so a making it
15217         selectable is good for this too.
15219 1999-05-15  Alexander Larsson  <alla@lysator.liu.se>
15221         * objects/UML/class.[ch]:
15222         Some indentation cleanup.
15223         Added wrap_lines variable to class.
15224         I'll fix the line break stuff tomorrow.
15226 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
15228         * lib/dummy_dep.h:
15229         Added ref to poly_conn.o.
15231         * objects/standard/polyline.c (polyline_draw): 
15232         * objects/standard/zigzagline.c (zigzagline_draw): 
15233         * objects/standard/arc.c (arc_draw): 
15234         * objects/standard/line.c (line_draw):
15235         Draw lines before arrows. This makes hollow arrows not
15236         show the line.
15238 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
15240         Changes from Kim Peasley <kpeasley@ior.com> 
15241                 
15242         * objects/UML/class.c:
15243         Break lines with long operations so classes won't be
15244         so wide.
15246         * objects/UML/uml.[ch]:
15247         Helperfunctions for the above.
15248         
15249         * objects/UML/objects.c:
15250         Fix bug that duplicated the text in the attributes
15251         textwidget each time the object was selected.
15252         
15253 1999-05-12  Alexander Larsson  <alla@lysator.liu.se>
15255         Changes from Lars R. Clausen <lrclause@cs.uiuc.edu>
15256         
15257         * app/modify_tool.c:
15258         * app/modify_tool.h:
15259         Control-drag is restricted to vertical/horizontal movement
15260         
15261         * lib/object.h:
15262         ModifierKeys argument added to object_move_handle
15264         * app/connectionpoint_ops.c:
15265         * app/create_object.c:
15266         * app/object_ops.c:
15267         * objects/ER/attribute.c:
15268         * objects/ER/entity.c:
15269         * objects/ER/participation.c:
15270         * objects/ER/relationship.c:
15271         * objects/UML/actor.c:
15272         * objects/UML/association.c:
15273         * objects/UML/class.c:
15274         * objects/UML/classicon.c:
15275         * objects/UML/component.c:
15276         * objects/UML/constraint.c:
15277         * objects/UML/dependency.c:
15278         * objects/UML/generalization.c:
15279         * objects/UML/implements.c:
15280         * objects/UML/large_package.c:
15281         * objects/UML/lifeline.c:
15282         * objects/UML/message.c:
15283         * objects/UML/note.c:
15284         * objects/UML/object.c:
15285         * objects/UML/realizes.c:
15286         * objects/UML/small_package.c:
15287         * objects/UML/state.c:
15288         * objects/UML/usecase.c:
15289         * objects/network/bus.c:
15290         * objects/standard/arc.c:
15291         * objects/standard/box.c:
15292         * objects/standard/ellipse.c:
15293         * objects/standard/image.c:
15294         * objects/standard/line.c:
15295         * objects/standard/polyline.c:
15296         * objects/standard/textobj.c:
15297         * objects/standard/zigzagline.c:
15298         Changed calls to move_handle to pass the new argument.
15299         
15300         * lib/widgets.c:
15301         * lib/widgets.h:
15302         Default line width, color etc #define'd
15303         
15304         * po/da.po:
15305         Updates of danish menus
15307 1999-05-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
15309         * dia.xpm
15310         * dia_gnome_icon.png
15311         * dia_gnome_menu_icon.png
15312         * dia_logo.png
15313         Graphics by Toussaint Frédéric <ftoussin@club-internet.fr>.
15315         * app/commands.c
15316         About dialog shows dia_logo.png. Removed the GNOME about dialog.
15318         * Makefile.am
15319         Distribute the icons and install logo in pkgdatadir.
15320         
15321         * app/Makefile.am
15322         Added DATADIR-define.
15323         
15324 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
15325         Patches from Enrico Scholz <enrico.scholz@wirtschaft.tu-chemnitz.de>
15327         * dia.spec:
15328         Updated version number, made setup quiet, can build from cvs,
15329         --enable-gnome, now using automake 1.4 DESTDIR feature, install-strip
15331         * lib/Makefile.am
15332         * objects/ER/Makefile.am
15333         * objects/UML/Makefile.am
15334         * objects/network/Makefile.am
15335         * objects/standard/Makefile.am
15336         now builds better with gnome
15338         * objects/UML/class_dialog.c
15339         Fixed typo -> po files must be updated too!!
15340         
15341 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
15343         * lib/dummy_dep.h:
15344         Added reference so that widgets.o gets linked to the app.
15346 1999-04-23  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15348         * objects/UML/classicon.c: 
15349         Added object mode.
15351         * objects/UML/actor.c: 
15352         Changed position of 'snap-to-grid' so connection points are
15353         in the grid.
15355 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
15357         * objects/UML/classicon.c:
15358         Changed position of 'snap-to-grid'.
15359         By Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
15360         
15361 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
15363         * objects/network/antenna.c
15364         * objects/network/flash.c
15365         * objects/network/hub.c
15366         * objects/network/modem.c
15367         * objects/network/modularswitch.c
15368         * objects/network/rj45plug.c
15369         * objects/network/scead-plug.c
15370         * objects/network/network.c
15371         * objects/network/Makefile.am
15372         * objects/network/pixmaps/antenna.xpm
15373         * objects/network/pixmaps/flash.xpm
15374         * objects/network/pixmaps/hub.xpm
15375         * objects/network/pixmaps/modem.xpm
15376         * objects/network/pixmaps/modularswitch.xpm
15377         * objects/network/pixmaps/rj45plug.xpm
15378         * objects/network/pixmaps/sceadplug.xpm
15379         * objects/network/pixmaps/Makefile.am
15380         Lots of new network objects from
15381         Roland Steinbach <roland@support-system.com>.
15383 1999-04-15  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15385         * objects/UML/classicon.c: 
15386         Fixed connection positions, saved type as int (it has 3 states),
15387         and other small fixes.
15388         
15389 1999-04-14  Alexander Larsson  <alla@lysator.liu.se>
15391         * app/preferences.c:
15392         * app/load_save.c:
15393         Added preference compress_save. It lets dia save uncompressed
15394         xml files.
15396         * objects/UML/class.c:
15397         Fixed bug with size calculation on methods that had class scope.
15398         
15399 1999-04-13  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15401         * objects/UML/usecase.c: 
15402         Added collaboration mode
15403         Fixed connection points with text > ellipse bug and other 
15404         small things
15406         * objects/UML/state.c:
15407         Fixed bug of bad position of text after being either end
15408         or begin, moved and returned to text
15410 1999-04-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
15412         * app/preferences.c: Add prototype declaration for prefs_apply.
15414 1999-04-11  Alexander Larsson  <alla@lysator.liu.se>
15416         * app/preferences.c:
15417         Added 'ok' button.
15418         Apply don't hide window.
15420         * app/properties.c:
15421         Add 'ok' button.
15423         * objects/UML/object.c:
15424         * objdcts/UML/state.c:
15425         Some data was not copied on copy.
15427         This patch is from
15428         Ben Hochstedler <benh@eeyore.moneng.mei.com>
15430 1999-04-09  Alexander Larsson  <alla@lysator.liu.se>
15432         * app/Makefile.am:
15433         Changed link order between X and libxml.
15434         Some people had problems with an old libz in their
15435         x11 directory.  
15437 1999-04-09  Kjartan Maraas  <kmaraas@online.no>
15439         * po/no.po: updated translation.
15440         
15441 1999-04-08  Lars R. Clausen <lrclause@cs.uiuc.edu>
15443         * lib/message.c (message_error):
15444         Fixed small error.
15446         * app/commands.[ch]:
15447         * app/diagram.[ch]:
15448         Added begining of xfig importing
15450 1999-04-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15452         * objects/UML/pixmaps/state.xpm: 
15453         * objects/UML/state.c: 
15454         New UML object state machine.
15456         * objects/UML/uml.c:
15457         * objects/UML/Makefile.am:
15458         * objects/UML/pixmaps/Makefile.am:
15459         Added the state object.
15460         
15461 1999-04-08  Alejandro Aguilar Sierra  <ale@bucefalo>
15463         * objects/UML/usecase.c: 
15464         Added dialog to allow move text outside the ellipse.
15466 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
15468         * Released Dia 0.41
15469         Tag called DIA_0_41
15471         * NEWS:
15472         Updates for 0.41.
15473         
15474 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
15476         * configure.in:
15477         Updated version number to 0.41
15479         * po/*.po:
15480         Update po-files
15482 1999-04-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
15484         * app/app_procs.c
15485         Changed errormessage for --export-to-ps. Removed call to 
15486         g_log_set_always_fatal().
15488         * app/diagram.c
15489         * app/disp_callbacks.c
15490         * app/load_save.c
15491         (i18n) Removed gettext from some debugmessages.
15493         * app/menus.c
15494         Small fix in GNOME-menus. Added warning that will help track
15495         problems with translations.
15497         * po/sv.po
15498         (i18n) Updated swedish translation.
15500 1999-04-02  Alexander Larsson  <alla@lysator.liu.se>
15502         * po/da.po:
15503         New updates
15505 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
15507         * po/da.po:
15508         * po/no.po:
15509         Some fixes.
15510         
15511 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
15513         * po/da.po:
15514         (i18n) Updated the danish translation.
15515         From Lars R. Clausen.
15517 1999-04-01  Fredrik Hallenberg  <hallon@lysator.liu.se>
15519         * app/menus.c
15520         (i18n) The popup menu is translated now.
15522         * po/sv.po
15523         (i18n) Updated swedish translation.
15525 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
15527         * Released Dia 0.40
15528         Tag called DIA_0_40
15530         * NEWS:
15531         Updated for new release
15532         
15533 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
15535         * objects/network/bus.c:
15536         Added initialization of properties dialog to NULL.
15538         * app/commands.c (edit_cut_callback):
15539         Update menu sensitivity when cut object.
15541         * app/modify_tool.c (click_select_object):
15542         * app/modify_tool.c (modify_button_release): 
15543         Call diagram_update_menu_sensitivity() when
15544         selecting objects to update stuff that depends
15545         on selected/not selected.
15547 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
15549         * Makefile.am:
15550         Change order of subdir so that libintl.a builds.
15551         Now passed make distcheck.
15553 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
15555         * lib/font.c (init_x11_font):
15556         Stupid bug fixed.
15558 1999-03-28  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15560         * objects/UML/pixmaps/classicon.xpm: 
15561         * objects/UML/classicon.c:
15562         * objects/UML/uml.c:
15563         Added the class stereotype icon objects.
15565         * app/commands.c:
15566         Changed default ps extension from .ps to .eps.
15567         
15568 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
15570         * lib/Makefile.am:
15571         Added diamenu.h and intl.h
15573         * lib/font.c:
15574         Stupid typo fix.
15575         
15576         * objects/UML/pixmaps/Makefile.am:
15577         Added message.xpm
15579         * objects/standard/pixmaps/Makefile.am:
15580         Added image.xpm
15582 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
15584         * lib/font.c:
15585         Use a scalable font before fixed when real font not found.
15587         * app/commands.c:
15588         Removed warning.
15590         * objects/standard/image.c:
15591         Better handling of loading/saving of images.
15593         * INSTALL:
15594         Added some text about cvs, fonts and rewrote some parts.
15596         * TODO:
15597         Updated with new stuff.
15598         
15599         * configure.in:
15600         Bump up version number to 0.40.
15601         
15602 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
15604         * app/display.c:
15605         Moved diagram_add_ddisplay() call into new_display().
15606         Fixed new_display to not use uninitialized variables
15607         causing loaded files to show up as black (or garbage).
15608         
15609         * app/commands.c:
15610         * app/app_procs.c:
15611         Removed unneeded calls to diagram_add_ddisplay().
15612         
15613 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
15615         * objects/UML/lifeline.c:
15616         Fixed bug in copy.
15617         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
15619         * objects/UML/message.c:
15620         Fixed bug loading messages with null-text.
15621         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
15623 1999-03-27  Fredrik Hallenberg  <hallon@lysator.liu.se>
15625         * po/sv.po
15626         Updated swedish translation.
15628         * app/menus.c
15629         (GNOME) Removed help-browser from help menu. Fixed typo.
15631         * app/interface.c
15632         (GNOME) Accelerators in diagrams should work now. 
15634 1999-03-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
15636         * app/app_procs.c
15637         * app/commands.c
15638         * app/defaults.c
15639         * app/disp_callbacks.c
15640         * app/display.c
15641         * app/interface.c
15642         * app/menus.c
15643         * app/preferences.c
15644         * app/render_eps.c
15645         * lib/diagramdata.c
15646         * lib/font.c
15647         * lib/message.c
15648         * lib/widgets.c
15649         * objects/ER/*.c
15650         * objects/UML/*.c
15651         * objects/network/*.c
15652         * objects/standard/*.c
15653         * po/update_pofiles_in.sh
15654         * po/POFILES.in
15655         More i18n. All strings (expect rare debug messages) can be
15656         translated now. Moved intl.h from app to lib. Updated
15657         update_pofiles_in.sh to check all .c-files.
15659 1999-03-23  Alexander Larsson  <alla@lysator.liu.se>
15661         * app/disp_callbacks.c (ddisplay_canvas_events):
15662         Don't drop keys while num-lock, scroll-lock etc is on.
15664 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
15666         * app/render_eps.c (draw_image):
15667         Fixed exporting of images.
15668         Still not perfect, but not outright buggy.
15669         
15670 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
15672         * configure.in:
15673         * po/hu.po:
15674         Added hungarian translation. By Shooby Ban <bansz@szif.hu>.
15676         * app/Makefile.am:
15677         Added $* to the dia call in run_dia.sh
15679 1999-03-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
15680         
15681         * lib/color.[ch]:
15682         Added color_equals() call.
15684         * objects/standard/arc.c:
15685         * objects/standard/line.c:
15686         Don't save unneccesary data.
15687         
15688         * objects/standard/box.c:
15689         * objects/standard/ellipse.c:
15690         * objects/standard/image.c:
15691         * objects/standard/polyline.c:
15692         * objects/standard/zigzagline.c:
15693         Share properties dialog.
15694         Don't save unneccesary data.
15695         
15696 1999-03-22  Seth Alves  <alves@hungry.com>
15698         * app/menus.c:
15699         * app/diagram.c:
15700         * app/display.c:
15701         small changes so that gnome menus aren't broken
15702         
15703 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
15705         * po/da.po:
15706         Added danish translation from lrclause@cs.uiuc.edu.
15708         * po/POFILES.in:
15709         Updated file.
15711         * po/update_pofiles_in.sh:
15712         Added script that updates POFILES.in.
15713         This should probably be run automatically from somewhere.
15715 1999-03-19  Alexander Larsson  <alla@lysator.liu.se>
15717         * app/diagram.[ch]:
15718         Added function diagram_update_menu_sensitivity() which
15719         sets the sensitivity of some menu items. This function
15720         is called at each diagram state change (from diagram_modified()).
15721         This is needed  because otherwise the keyboard accelerators
15722         don't work correctly.
15724         * app/display.[ch]:
15725         Changed display_set_menu_sensitivity() to display_update_menu_state().
15726         Moved lots of code to diagram_update_menu_sensitivity() in
15727         diagram.c. Optimized to only look up menu-items from path:s once.
15728         
15729         * app/disp_callbacks.c:
15730         * app/interface.c:
15731         When we get a GDK_FOCUS_CHANGE, update menu sensitivity.
15732         Need to set GDK_FOCUS_CHANGE_MASK.
15733         
15734         * app/create_object.c:
15735         Call diagram_modified when an object has been created and
15736         selected so that the menu sensitivity is updated. 
15738         * app/menus.[ch]:
15739         removed menus_set_sensitive() and menus_set_state(). Exported
15740         renamed function menus_get_item_from_path().
15742 1999-03-15  Alexander Larsson  <alla@lysator.liu.se>
15744         * app/disp_callbacks.c:
15745         Show (empty) object menus on object that has none.
15746         Show title on object menus.
15748         * app/display.c:
15749         Set zoom factor correctly when opening new displays.
15750         Better setting of scrollbars.
15752         * app/grid.c:
15753         * app/menus.h:
15754         Some reformating cleanup.
15756         * lib/diamenu.h:
15757         Added title to object menus.
15759         * objects/*/*.c:
15760         Added object menu method (NULL-valued) to all objects.
15762         * objects/standard/polyline.c:
15763         Added title to object menu.
15765 1999-03-14  Alexander Larsson  <alla@lysator.liu.se>
15767         * app/preferences.[ch]:
15768         New files. Implements the preferences dialog and
15769         loading/saving of ~/.diarc.
15771         * app/Makefile.am:
15772         Added preferences.[ch].
15774         * app/app_procs.c:
15775         Load preferences on startup.
15777         * app/commands.[ch]:
15778         Added file_preferences_callback to show the preferences dialog.
15780         * app/create_object.c:
15781         Update extents when creating object.
15782         Use the reset_tools_after_create preferences setting.
15784         * app/display.c:
15785         Use preferences when creating new display.
15787         * app/menus.c:
15788         Add preferences to menu.
15790         * app/defaults.c:
15791         * app/layer_dialog.c:
15792         * app/properties.c:
15793         Don't allow shrinking of dialog.
15794         Add i18n of some strings.
15796 1999-03-11  Kjartan Maraas  <kmaraas@fib.hl.no>
15797         * po/no.po:
15798         Norwegian translation added.
15799         
15800 1999-03-11  Alexander Larsson  <alla@lysator.liu.se>
15802         * objects/standard/line.c: 
15803         * objects/standard/arc.c: 
15804         * objects/standard/polyline.c: 
15805         * objects/standard/zigzagline.c:
15806         Loading of arrow data fixed.
15808 1999-03-09  Alexander Larsson  <alla@lysator.liu.se>
15810         * app/commands.c:
15811         Update extents when saving and exporting to postscript.
15812         Fixes a bug with postscript bounding-box being wrong.
15814         * app/defaults.c:
15815         Changed border width from 5 to 2.
15817         * app/group.c:
15818         Move grouped objects by the move-point of the first object.
15819         Fixes bug that made all objects in the group be off-grid
15820         when moving the group, even though all objects was on-grid.
15822         * app/layer_dialog.c:
15823         Update extents when changing layer.
15825 1999-03-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15827        * objects/UML/uml.c: 
15828        * objects/UML/component.c: 
15829        * objects/UML/pixmaps/component.xpm: 
15830        Added the UML component object
15831         
15832 1999-03-04  Seth Alves  <alves@hungry.com>
15834         * objects/UML/generalization.c (generalization_create): avoid
15835         math on uninitialized genlz->text_width (NaN causes sigfpe)
15836         
15837         * objects/UML/realizes.c (realizes_create): same
15839         * objects/UML/dependency.c (dependency_create): same
15841 1999-03-01  Seth Alves  <alves@hungry.com>
15843         * app/display.c (ddisplay_active): don't fly a warning panel
15844         if ddisplay_active is called when no views are open.
15846         * app/commands.c (set_default_file_selection_directory): set
15847         file selector's default directory if there is already
15848         a document open.
15850 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
15852         * INSTALL:
15853         New info about imlib requirements.
15855         * Configure.in:
15856         Added lib/pixmaps/Makefile to created makefiles.
15858         * app/app_procs.c:
15859         * app/commands.c:
15860         Change from obsoleted to newer gtk calls.
15861         
15862         * load_save.c:
15863         Pass filename of the diagram when loading and saving.
15864         This creates better oportunities to handle filename saving.
15866         * lib/object.h:
15867         Pass filenames to load and save methods.
15868         
15869         * lib/dia_image.[ch]:
15870         Added dia_image_get_broken() call that returns a image which
15871         is used for 'broken' images.
15872         
15873         * lib/pixmaps/.cvsignore:
15874         * lib/pixmaps/Makefile.am:
15875         * lib/pixmaps/broken.xpm:
15876         New files for the broken image bitmap.
15878         * lib/widgets.c:
15879         Fixed bug with double destroyed filedialog.
15881         * objects/*/*.c:
15882         Updated load and save prototypes to use the new filename argument.
15884         * objects/image.c:
15885         Render broken image instead of line when got no image.
15886         Use the new filename in load and save to save (if possible)
15887         relative pathnames and to better try to find loaded images.
15889 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
15891         * TODO:
15892         Some updates to the todo file.
15893         
15894         * app/menus.c:
15895         * app/display.c:
15896         Place over/place over => sent to back/bring to front.
15897         Added some keyboard shortcuts to menus.
15898         
15899 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
15901         * lib/dia_xml.c:
15902         Changed string saving/loading to a new method. This should
15903         be much better att handling &,<,> and whitespaces.
15904         Loading strings of the old kind is still supported for backwards
15905         compatibility.
15907         * samples/ER-demo.dia:
15908         * samples/UML-demo.dia:
15909         Updated to use the new strings.
15910         
15911         * app/load_save.c:
15912         statusbar modified update fix.
15914 1999-02-27  Seth Alves  <alves@hungry.com>
15916         * app/app_procs.c (app_init): added a --export-to-ps option
15917         which will cause dia to load a dia file and save it as ps
15918         and then exit.  this is a little bogus, because it still
15919         pops up a window.  this option only shows up if --enable-gnome
15920         is used
15922         * app/display.c (display_set_menu_sensitivity): no Edit/Delete
15923         menu when built with --enable-gnome
15925         * app/interface.c (create_display_shell): build status bar
15926         even if --enable-gnome is used
15928         * app/menus.c: menu fixes for --enable-gnome
15930         * app/commands.c (file_open_dialog_ok_callback): fixed up
15931         menus when --enable-gnome is used
15932         (file_export_to_eps_callback): set a default file name
15933         when dialog is created
15935 1999-02-27  Alexander Larsson  <alex@c125.ryd.student.liu.se>
15937         * objects/UML/association.c (association_create):
15938         Fixed usage of not initialized variable.
15939         Pointed out by Seth Alves <alves@hungry.com>.
15941 1999-02-24  Alexander Larsson  <alex@c125.ryd.student.liu.se>
15943         * configure.in:
15944         Fixed detection of gnome-xml.
15945         From Valtteri Vuorikoski <vuori@k.notcom.org>.
15946         
15947         * app/app_procs.c:
15948         Fixed error detection on dlsym calls. 
15949         From Valtteri Vuorikoski <vuori@k.notcom.org>.
15951 1999-02-23  Alexander Larsson  <alla@lysator.liu.se>
15953         * objects/UML/message.c (fill_in_dialog):
15954         Fixed warnings.
15956 1999-02-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
15958         * objects/standard/zigzagline.c:
15959         * objects/standard/polyline.c:
15960         * objects/standard/line.c:
15961         * objects/standard/arc.c:
15962         * lib/widgets.h:
15963         * lib/arrows.h:
15964         * lib/widgets.c:
15965         Support for sizeable arrows. 
15967         * objects/standard/box.c:
15968         * objects/standard/ellipse.c:
15969         * objects/standard/image.c:
15970         Changed creation handle to lower-right.
15971         Transparent box/ellipse.
15972         
15973         * objects/standard/image.c:
15974         Better layout of properties boxes.
15976 1999-02-20  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
15978         * objects/UML/message.c (fill_in_dialog): 
15979         Fixed dialog fill in. Common dialog for all messages.
15981         * objects/UML/object.c: 
15982         Added multiple instance. Dialog related bugs fixed.
15983         Common dialog for all instances. Completed copy and destroy.
15985         * objects/UML/lifeline.c (lifeline_load): 
15986         Conn initialization bug fixed and few bad loading prevention flags.
15987         Common dialog for all lifeline objects.
15988         
15989 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
15991         * lib/dia_image.[ch]:
15992         More work on the DiaImage abstraction.
15993         
15994         * app/app_procs.c:
15995         * app/render_eps.c:
15996         * app/render_gdk.c:
15997         * objects/standard/image.c:
15998         Use the new DiaImage calls.
16000 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
16002         * app/menus.c:
16003         * app/display.c:
16004         Reversed the meaning of align horizontal/vertical.
16006 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
16008         * app/load_save.c (diagram_load):
16009         Statusbar update fix.
16011 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
16013         * app/interface.c (create_display_shell):
16014         Fixed status bar size.
16015         
16016 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
16018         * lib/dia_image.[ch]:
16019         Added extern declaration for dia_image_release.
16020         Removed dia_image_draw, as it's not neseccary.
16022 1999-02-14  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
16023         
16024         * app/object_ops.c: 
16025         * app/menus.c: 
16026         Added equal distance alignment both vertical and horizontal.
16027         
16028         * objects/UML/object.c: 
16029         Added a couple of attributes to load/read that were missing.
16031         * objects/UML/lifeline.c: 
16032         Better handling of handles. Fixed another bug I forgot to add
16033         to my last patch.
16034         
16035 1999-02-13  Alexander Larsson  <alla@lysator.liu.se>
16037         Patch from Lars Clausen <lrclause@shasta.cs.uiuc.edu>
16038         
16039         * lib/dia_image.[ch]:
16040         * lib/Makefile.am:
16041         New files. DiaImage wraps the GdkImlibImage.
16043         * lib/render.h:
16044         * app/render_eps.c:
16045         * app/render_gdk.c:
16046         * lib/render_store.[ch]:
16047         * objects/standard/image.c:
16048         Use the new DiaImagetype.
16050         * lib/widgets.c:
16051         Removed unused variable to eliminate  warning.
16053 1999-02-11  Alexander Larsson  <alla@lysator.liu.se>
16055         * objects/standard/box.c:
16056         Added rounded corners on the box object.
16058         * lib/widgets.[ch]:
16059         Updated the DiaFileSelector widget.
16060         
16061 1999-02-09  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
16063         * objects/UML/object.c (objet_draw): 
16064         Completed underlining of all object name lines. 
16066         * objects/UML/message.c (fill_in_dialog): 
16067         Fixed a bug that filled incorrectly the message's dialog.
16069         * objects/UML/lifeline.c (lifeline_load): 
16070         Some cleanning and fixed a couple of bugs that caused
16071         crashes after reading diagrams with lifelines.
16073         * lib/text.c: 
16074         Added flags to prevent crash with void strings
16076 1999-02-07  Matthias Köster <Matthias.Koester@Informatik.Uni-Oldenburg.DE>
16077         * app/display.[ch]:
16078         Added statusbar to the display widget. Currently shows the zoom
16079         factor and modified flag of the viewed diagram. The statusbar is
16080         updated upon calls to ddisplay_zoom and ddisplay_update_statusbar.
16081         This caused the following additions:
16082         
16083         * app/diagram.[ch]:
16084         Added function diagram_set_modified. Calls
16085         ddisplay_update_statusbar for all displays showing the modified diagram.
16086         Changed diagram_modified to call diagram_set_modified.
16087         
16088         * app/interface.c:
16089         Added the creation of the statusbar.
16090         
16091         * app/load_save.c:
16092         diagram_save now calls diagram_set_modified instead of setting
16093         dia->modified. Needed to force call to display_update_statusbar
16094         
16095         * app/commands.c:
16096         Changed the way view_show_all works. Now calls ddisplay_zoom
16097         instead of directly setting the zoom_factor, so the zoom factor is
16098         correctly shown in the statusbar.
16100         * app/magnify.c:
16101         Fixed rubberband zoom to use ddisplay_zoom().
16102         
16103 1999-02-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
16105         * app/app_procs.c
16106         Rudimentary GNOME session management.
16107         
16108         * app/disp_callbacks.c
16109         * app/interface.c
16110         * app/menus.c
16111         * app/menus.h
16112         GNOME menus. Problems: 
16113         Callbacks doesn't get user_data.
16114         Weird warnings when creating popup menus.
16115         menus_set_sensitive(), menus_set_state() doesn't work.
16117 1999-02-05  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
16119         * configure.in:
16120         Add AM_PATH_GDK_IMLIB() call.
16122         * app/Makefile.am:
16123         Add gdk_imlib to linking flags.
16125         * app/app_procs.c:
16126         Init gdk_imlib.
16127         Print library-loading error messages on stdout too.
16129         * app/interface.c:
16130         Add standard image to toolbox.
16131         
16132         * app/render_eps.c: 
16133         Set a more reasonable dot length.  Fixed
16134         missing initialization of dot length.
16135         Added draw_image methods.
16137         * app/render_gdk.c (new_gdk_renderer): 
16138         Dot a bit wider.  Looks good in normal mode now.
16140         * objects/standard/image.c:
16141         * objects/standard/pixmaps/image.xpm:
16142         New files. Standard object for images.
16143         
16144         * app/render_eps.c (set_linestyle):
16145         * app/render_gdk.c (set_linestyle):
16146         * lib/widgets.c (dia_line_style_selector_init): 
16147         * lib/render.h: 
16148         New line style DOTTED.
16150         * lib/render.h:
16151         * lib/render_store.c:
16152         Change DrawImage call to use gdk_imlib.
16154         * lib/widgets.[ch]:
16155         Added widgets for selecting files.
16156         Added dotted to the linestyle selector.
16158 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
16160         * objects/network/printer.c:
16161         * objects/network/network.c:
16162         * objects/network/pixmaps/printer.xpm:
16163         * objects/network/.cvsignore:
16164         * objects/network/Makefile.am:
16165         * objects/network/pixmaps/Makefile.am:
16166         New printer object in network.
16167         From Martin Hawlisch <hawlisch@roxi.rz.fh-mannheim.de>
16169         * TODO:
16170         Added known XML bug.
16171         
16172 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
16174         * app/load_save.c:
16175         * lib/dia_xml.c:
16176         Reverted back from #include <gnome-xml/tree.h> to
16177         #include <tree.h> as this is fixed by the xml-config program.
16178         The former way broke for some people.
16179         Reported by blizzard@redhat.com.
16181         * objects/UML/lifeline.c:
16182         * objects/UML/message.c:
16183         * objects/UML/object.c:
16184         Removed some warnings.
16185         
16186 1999-02-04  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
16188         * objects/UML/lifeline.c: 
16189         Fixed connection points over the life line when the focus of
16190         control is not drawn.
16192         * objects/UML/message.c: 
16193         Now a recursive message can be freely resized using the handles.
16195 1999-02-02  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
16197         * objects/UML/lifeline.c:
16198         Added connection points.
16199         Added properties dialog with the option to draw/hide focus of control
16200         box and destruction mark.
16202         * objects/UML/object.c: 
16203         Added properties dialog and stereotype, explicit state and attributes. 
16204         It's also possible to mark the object as active.
16206         * objects/UML/pixmaps/object.xpm: 
16207         Cosmetic change.
16209         * objects/UML/message.c:
16210         Added "recursive" message type (was not necessary to use OrthConn).
16212 1999-02-02  Alexander Larsson  <alla@lysator.liu.se>
16214         * objects/standard/arc.c:
16215         Removed old debug code. Fixes a visual bug. From lrclause@cs.uiuc.edu.
16217 1999-02-01  Alexander Larsson  <alla@lysator.liu.se>
16219         Patch from Lars R. Clausen <lrclause@cs.uiuc.edu>
16220         
16221         * app/load_save.c:
16222         * lib/dia_xml.c:
16223         Update xml includes to gnome-xml/*.h.
16225         * objects/standard/arc.c:
16226         Only one property dialog per type.
16227         Fix arrows directions.
16229         * objects/standard/box.c:
16230         * objects/standard/ellipse.c:
16231         * objects/standard/textobj.c
16232         Added default properties dialog.
16233         
16235 1999-01-31  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
16237         * objects/UML/Makefile.am: 
16238         * objects/UML/uml.c:
16239         * objects/UML/lifeline.c: 
16240         * objects/UML/object.c: 
16241         * objects/UML/message.c:
16242         * objects/UML/pixmaps/lifeline.xpm: 
16243         * objects/UML/pixmaps/object.xpm: 
16244         * objects/UML/pixmaps/message.xpm:
16245         Added 3 new UML objects for dynamic modeling. To avoid internal 
16246         conflicts, the name "objet" is used for object "object".        
16248         * lib/arrows.[ch]: 
16249         Added ARROW_HALF_HEAD arrow type to allow drawing asynchronous
16250         UML messages.
16251         
16252 1999-01-30  Alexander Larsson  <alla@lysator.liu.se>
16254         * app/display.[ch]:
16255         * app/modify_tool.c:
16256         Added autoscrolling while doing rubber-band select.
16257         This patch from Matthias Köster
16258         (Matthias.Koester@Informatik.Uni-Oldenburg.DE)
16259         
16261 1999-01-28  Alexander Larsson  <alla@lysator.liu.se>
16263         * app/defaults.[ch]:
16264         New files, deals with default properties dialog.
16266         * lib/diamenu.h:
16267         New file. Contains definitions for the new object menu.
16269         * lib/poly_conn.[ch]:
16270         New file. Base class for poly-line like objects.
16272         * objects/standard/polyline.c:
16273         * objects/standard/pixmaps/polyline.xpm:
16274         New files. Polyline object.
16276         * app/app_procs.c:
16277         Fixed bug with infinite loop when registering sheets.
16278         
16279         * app/commands.c:
16280         Removed unneccesary stuff.
16282         * app/disp_callbacks.c:
16283         Support for object menus.
16285         * app/interface.c:
16286         Added polyline to toolbox.
16287         Added call to tool_options_dialog_show() when double clicking on
16288         tool.
16290         * app/tool.[ch]:
16291         New function tool_options_dialog_show() for tool properties.
16293         * lib/arrows.[ch]:
16294         Added ARROW_NONE.
16296         * lib/object.h:
16297         Added ObjectType methods for handling object default dialogs.
16298         Added Object method for handling object_menu.
16299         Added unused methods to ObjectTypeOps for future binary
16300         compatibility.
16302         * lib/widgets.[ch]:
16303         Added DiaArrowTypeSelector widget.
16305         * objects/standard/arc.c:
16306         * objects/standard/zigzagline.c:
16307         Added support for default properties.
16309         * objects/standard/line.c:
16310         Added support for default properties.
16311         Just use one properties dialog for all line objects. NOTE: This
16312         seems to have a bug. We're working on it.
16314         * standard/standard.c:
16315         Add the polyline object.
16317 1999-01-27  Alexander Larsson  <alla@lysator.liu.se>
16319         * app/modify_tool.c:
16320         Commented out buggy transitive select function. It wasn't really
16321         meant to go into cvs.
16322         
16324 1999-01-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
16326         * autogen.sh:
16327         * acconfig.h:
16328         * configure.in:
16329         * Makefile.am:
16330         * app/Makefile.am:
16331         * po/POTFILES.in:
16332         * app/intl.h
16333         i18n-support.
16335         * po/sv.po:
16336         Swedish translation. Not completed.
16337         
16338         * configure.in:
16339         * acconfig.h:
16340         Added possibility to enable GNOME specific code with configure.
16342         * configure.in:
16343         Added possibility to set debug level with configure.
16345         * commands.[hc]:
16346         Added about dialog.
16348         * app_procs.c
16349         * commands.c
16350         * interface.c
16351         * menus.c
16352         Added some GNOME specific code. Not ready for use.
16354 1999-01-24  Alexander Larsson  <alla@lysator.liu.se>
16356         * INSTALL:
16357         Added text about needing gtk 1.1.13 and gnome-xml.
16358         
16359         * NEWS:
16360         Described changes since last version (0.20).
16362         Released version 0.30, tagged DIA_0_30.
16364 1999-01-22  Alexander Larsson  <alla@lysator.liu.se>
16366         * app/magnify.c (magnify_button_release):
16367         Fixed a problem when zooming in on a very small box would
16368         not release the grabbed pointer-focus.
16370 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
16372         * app/load_save.c (diagram_load):
16373         Be somewhat more robust when loading files that
16374         are not diagrams.
16375         
16376 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
16378         * app/app_procs.c:
16379         * objects/ER/er.c:
16380         * objects/UML/uml.c:
16381         * objects/network/network.c:
16382         * objects/standard/standard.c:
16383         Added versioning of object libraries.
16385         * app/create_object.c:
16386         Don't change tool when an object is created.
16387         
16388         * objects/network/network.c:
16390         * TODO:
16391         Update
16393 1999-01-19  Alexander Larsson  <alla@lysator.liu.se>
16395         * configure.in:
16396         Updated gtk requirement to Gtk+ 1.1.13.
16398         * app/display.c:
16399         Always add one screenful of scrolling space on
16400         each side of a diagram window.
16402 1999-01-19  Jeff Garzik  <jgarzik@pobox.com>
16404         * autogen.sh:
16405         Tell automake to auto-install missing files.
16407         * app/menus.c:
16408         Renamed deprecated Gtk+ function.
16410 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
16412         * Makefile.am:
16413         * configure.in:
16414         * samples/Makefile.am:
16415         * samples/ER-demo.dia:
16416         * samples/UML-demo.dia:
16417         Added samples directory.
16418         Added samples for ER and UML.
16419         
16420         * app/commands.c:
16421         * app/disp_callbacks.c:
16422         * app/menus.c:
16423         Zoom is done by sqrt(2) instead of 2.
16424         Lots of more zoom options in the menu.
16426         * objects/ER/relationship.c:
16427         Relationships have 8 connectionpoints instead of 4.
16429         * objects/UML/class.c:
16430         UML class name font a bit smaller.
16431         Fixed stupid bug in the copy operation.
16432         
16433         * app/display.c:
16434         Displays are opened at 500x400 instead of 256x256.
16436         * app/load_save.c:
16437         Fixup of internal error message.
16439         * app/color_area.c:
16440         * app/diagram.c:
16441         * app/modify_tool.c:
16442         * lib/object.c:
16443         Removed debug printf's.
16444         
16445         * TODO (BUGS):
16446         Added new known bug.
16448 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
16450         * app/interface.c:
16451         * app/menus.c:
16452         Fixed so accelerator groups work in all windows.
16453         Updated to new gtk function names.
16455         * TODO (BUGS):
16456         Removed fixed bug.
16458         * app/display.c:
16459         Updated to new gtk function names.
16460         Set sensitivity of the align menu items.        
16462         * objects/ER/pixmaps/Makefile.am:
16463         * objects/UML/pixmaps/Makefile.am:
16464         * objects/network/pixmaps/Makefile.am:
16465         Fix so that make dist works.
16467         * app/app_procs.c:
16468         * app/color_area.c:
16469         * app/commands.c:
16470         * app/diagram.c:
16471         * app/grid.c:
16472         * app/layer_dialog.c:
16473         * app/load_save.c:
16474         * app/object_ops.c:
16475         * app/properties.c:
16476         * lib/diagramdata.[ch]: 
16477         * lib/message.c:
16478         * lib/objects/ER/attribute.c:
16479         * lib/objects/ER/entity.c:
16480         * lib/objects/ER/participation.c:
16481         * lib/objects/ER/relationship.c:
16482         * lib/objects/ER/.c:
16483         * objects/UML/actor.c:
16484         * objects/UML/association.c:
16485         * objects/UML/class_dialog.c:
16486         * objects/UML/dependency.c:
16487         * objects/UML/generalization.c:
16488         * objects/UML/large_package.c:
16489         * objects/UML/realizes.c:
16490         * objects/UML/.c:
16491         * objects/UML/.c:
16492         Updated to new gtk function names.
16493         Removed warnings.
16495 1999-01-15  Alexander Larsson  <alla@lysator.liu.se>
16497         * TODO:
16498         Update TODO.
16500         * app/app_procs.c:
16501         Fixed loading of diagrams specified as arguments.
16503         * objects/ER/attribute.c:
16504         * objects/ER/entity.c:
16505         * objects/ER/er.c:
16506         * objects/ER/participation.c:
16507         * objects/ER/relationship.c:
16508         Updated the ER objects.
16509         
16511 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
16513         * configure.in:
16514         * app/Makefile.am:
16515         * objects/Makefile.am:
16516         * objects/ER/attribute.c:
16517         * objects/ER/entity.c:
16518         * objects/ER/er.c:
16519         * objects/ER/participation.c:
16520         * objects/ER/relationship.c:
16521         * objects/ER/pixmaps/Makefile.am:
16522         * objects/ER/pixmaps/attribute.xpm:
16523         * objects/ER/pixmaps/entity.xpm:
16524         * objects/ER/pixmaps/participation.xpm:
16525         * objects/ER/pixmaps/relationship.xpm:
16526         * objects/ER/pixmaps/weakentity.xpm:
16527         First commit of entity relationship objects.
16528         These were done by hallon@lysator.liu.se.
16529         There are still stuff to do on these.
16530         
16531 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
16533         * TODO:
16534         Updates.
16536         * app/diagram.[ch]:
16537         Change diagram_remove_all_selected to take new argument
16538         delete_empty. Empty objects are deleted only if it is TRUE.
16539         Removed call to close_eps_renderer. This is now done in end_render
16540         in the eps renderer.
16542         * app/create_object.c:
16543         * app/layer_dialog.c:
16544         Update calls to diagram_remove_all_selected.
16546         * app/commands.c:
16547         Update calls to diagram_remove_all_selected.
16548         Some code reformating.
16549         Changed order of adding updates i align_h and align_v.
16551         * app/modify_tool.c:
16552         Update calls to diagram_remove_all_selected.
16553         Added pointer grab when doing rubber-band selection, this fixes
16554         the bug when draging the box over to another window.
16556         * app/connectionpoint_ops.[ch]:
16557         diagram_update_connections_object changed to take an argument
16558         update_nonmoved. This lets connections that has not moved, but
16559         the stuff they're connected to has been moved work.
16560         Update calls to the new diagram_update_connections_object.
16562         * app/properties.c:
16563         Update calls to the new diagram_update_connections_object.
16564         Update extents when properties are applied.
16565         
16566         * app/disp_callbacks.c:
16567         Added support for zooming with the '+' and '-' keys.
16569         * app/menus.c:
16570         Removed old keyboard shortcuts for zoom.
16572         * lib/render.h:
16573         Added calls begin_render and end_render to renderer.
16574         These can be used for setup and cleanup.
16576         * lib/diagramdata.c:
16577         Added calls to begin_render and end_render in data_render.
16579         * app/render_gdk.c:
16580         Added begin_render and end_render.
16582         * app/render_eps.[ch]:
16583         Added begin_render and end_render.
16584         Moved close_eps_renderer code to end_render.
16585         Various fixes to the generated eps code. This fixes importing
16586         generated eps into LYX.
16587         
16588 1999-01-12  Alexander Larsson  <alla@lysator.liu.se>
16590         * TODO:
16591         Update of todo.
16592         
16593         * app/menus.c:
16594         Menus for alignment updated.
16596         * app/object_ops.[ch]:
16597         Functions for object alignment updated.
16599         * app/commands.[ch]:
16600         Object alignment callbacks updated.
16601         New diagrams are called Untitled-<nr>.
16603         * app/layer_dialog.c:
16604         Active layer selected when showing layers from new
16605         diagram.
16607         * app/load_save.c:
16608         Compress xml files when saving.
16609         Use xml namespace 'dia'.
16611         * lib/object.h:
16612         Minor comment update.
16614         * objects/UML/class_dialog.c:
16615         Cleanup of the gkt_list_item moving code.
16616         Fixed bug with update of operation when moving parameters.
16618 1999-01-10  Alexander Larsson  <alla@lysator.liu.se>
16620         * app/layer_dialog.[ch]:
16621         Fixed the rest of the layers dialog.
16623         * app/dialog.c:
16624         Added call to redo layer dialogs diagram list when changing
16625         diagram name.
16627         * lib/diagramdata.[ch]:
16628         Added data_raise_layer and data_lower_layer functions for
16629         raising/lowering layers. Added data_add_layer_at for adding a
16630         layer at a specified index.
16632 1999-01-05  Alexander Larsson  <alla@lysator.liu.se>
16634         This is the asierra-990105 patch done by asierra@servidor.unam.mx.
16635                 
16636         * app/app_procs.c:
16637         Added support for reading diagrams from the command line.
16639 1998-12-21  Alexander Larsson  <alla@lysator.liu.se>
16641         This is the asierra-981220 patch done by asierra@servidor.unam.mx.
16642                 
16643         * app/commands.[ch]:
16644         Added objects_align_callback().
16646         * app/menus.c:
16647         Added align objects to menu.
16649         * app/object_ops.[ch]:
16650         Add object_list_align().
16651         
16652 1998-12-17  Alexander Larsson  <alla@lysator.liu.se>
16653         * app/layer_dialog.[ch]:
16654         New files. Handles the layers dialog. Needs a bugfix for glib to
16655         work. Sent patch to gtk-list.
16656         
16657         * app/pixmaps/new.xpm:
16658         * app/pixmaps/eye.xbm:
16659         * app/pixmaps/lower.xpm:
16660         * app/pixmaps/raise.xpm:
16661         * app/pixmaps/delete.xpm:
16662         New files. Images for the layer dialog buttons.
16663         
16664         * lib/diagramdata.h
16665         * lib/diagramdata.c
16666         New files for the DiagramData and Layer structures and functions.
16667         
16668         * app/app_procs.c:
16669         Added call to create_layer_dialog() on startup.
16670         
16671         * app/commands.[ch]:
16672         New callbacks for showing the properties and layout dialog.
16673         Changes for the new DiagramData structure.
16675         * app/connectionpoint_ops.c:
16676         * app/cut_n_paste.c:
16677         * app/diagram.[ch]:
16678         * app/display.[ch]:
16679         * app/group.c:
16680         * app/modify_tool.c:
16681         * app/object_ops.[ch]:
16682         * app/render_eps.c:
16683         * lib/object.[ch]:
16684         Changes for the new DiagramData structure.
16686         * app/interface.c:
16687         * app/properties.c:
16688         Set correct wmclasses.
16690         * app/load_save.c:
16691         Fix load and save of layers.
16693         * diagram.dtd:
16694         Update DTD for layers.
16695         
16696         * app/menus.c:
16697         New menus for dialogs.
16699         
16700         * TODO:
16701         Some updates.
16702         
16703 1998-12-06  Alexander Larsson  <alla@lysator.liu.se>
16705         * TODO:
16706         Removed the gtk 1.1.5 stuff.
16708         * configure.in:
16709         Updated gtk check to version 1.1.5.
16710         Updated version from 0.20 to 0.30
16712         * app/commands.[ch]:
16713         Updated some callbacks to be of type GtkItemFactoryCallback1.
16714         Not all are done yet, but it works anyway.
16716         * app/display.h:
16717         Removed Gtk 1.0.0 GtkAcceleratorTable references.
16718         
16719         * app/interface.c:
16720         * app/menus.[ch]:
16721         Update to Gtk 1.1.x functions.
16722         Use ItemFactory instead of MenuFactory.
16723         
16724         * app/render_gdk.c:
16725         Removed Gtk 1.0.0 references.
16727         * objects/UML/class_dialog.c:
16728         Scrolled window updates for Gtk 1.1.5.
16729         
16730         * lib/dia_xml.c:
16731         Removed ugly fix for gnome-xml bug. Make sure you get the
16732         newest version of gnome-xml from CVS.
16733         
16734 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
16736         * TODO:
16737         Removed the xml load/save line.
16739         * lib/files.[ch]:
16740         Removed files.
16741         
16742         * lib/Makefile.am:
16743         Removed building of files.c
16745         * app/load_save.c:
16746         * lib/connection.c:
16747         * lib/element.c:
16748         * lib/object.c:
16749         * lib/orth_conn.c:
16750         * lib/render_object.c:
16751         * objects/UML/actor.c:
16752         * objects/UML/association.c:
16753         * objects/UML/class.c:
16754         * objects/UML/constraint.c:
16755         * objects/UML/dependency.c:
16756         * objects/UML/generalization.c:
16757         * objects/UML/implements.c:
16758         * objects/UML/large_package.c:
16759         * objects/UML/note.c:
16760         * objects/UML/realizes.c:
16761         * objects/UML/small_package.c:
16762         * objects/UML/uml.c:
16763         * objects/UML/usecase.c:
16764         * objects/network/bus.c:
16765         * objects/standard/arc.c:
16766         * objects/standard/box.c:
16767         * objects/standard/ellipse.c:
16768         * objects/standard/line.c:
16769         * objects/standard/textobj.c:
16770         * objects/standard/zigzagline.c:
16771         Removed all includes of files.h
16773         
16774 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
16776         * dialog.dtd:
16777         Made the val property of string be implied.
16778         This makes it possible to save strings that
16779         are NULL. Just leave out val.
16781         * objects/lib/dia_xml.c:
16782         Fixed string so that it is possible to save strings
16783         that are NULL. Also made an ugly workaround of a
16784         bug in gnome-xml which removes empty properties.
16785         
16786         * objects/lib/orth_conn.c:
16787         Fixed a bug in saving. Forgot to step through the
16788         directions.
16789         
16790         * objects/UML/association.c: 
16791         * objects/UML/class.c: 
16792         * objects/UML/constraint.c: 
16793         * objects/UML/dependency.c: 
16794         * objects/UML/generalization.c: 
16795         * objects/UML/implements.c: 
16796         * objects/UML/large_package.c: 
16797         * objects/UML/note.c: 
16798         * objects/UML/small_package.c:
16799         * objects/UML/realizes.c:
16800         * objects/UML/usecase.c: 
16801         * objects/UML/actor.c: 
16802         Fixed UML objects to save as xml.
16803         The last two were done by asierra@servidor.unam.mx (asierra-981204)
16804         
16805         * objects/UML/uml.[ch]:
16806         Updated *_write() and *_read() functions to use xml.
16808         * objects/network/bus.c: 
16809         * objects/network/computer.c: 
16810         * objects/network/disc.c: 
16811         * objects/network/monitor.c:
16812         Updated network diagrams to use xml.
16814 1998-12-02  Alexander Larsson  <alla@lysator.liu.se>
16816         * dialog.dtd:
16817         New file. DTD that describes the xml file format
16818         dia uses.
16820         * lib/dia_xml.[ch]:
16821         New files. Support for saving object to xml files.
16823         * configure.in:
16824         * app/Makefile.am:
16825         * lib/Makefile.am:
16826         Added check for and usage of gnome-xml library.
16828         * app/load_save.c:
16829         Major chages. Now saves/loads diagrams as xml.
16831         * lib/object.[ch]:
16832         * lib/element.[ch]:
16833         * lib/connection.[ch]:
16834         * lib/orth_conn.[ch]:
16835         * lib/render_object.[ch]:
16836         * lib/text.[ch]:
16837         Updated object support load/save functions for xml:
16839         * object/standard/arc.c:
16840         * object/standard/box.c:
16841         * object/standard/ellipse.c:
16842         * object/standard/line.c:
16843         * object/standard/textobj.c:
16844         * object/standard/zigzagline.c:
16845         Updated all standard objects to use xml.
16846         
16847         NOTE NOTE NOTE
16848         Only the standard objects are converted right now, don't
16849         save or load uml or network diagrams yet. Also, since this
16850         is new code it is deemed a bit unstable.
16851         
16852         * TODO
16853         Added a know bug.
16855 1998-12-01  Alexander Larsson  <alla@lysator.liu.se>
16857         * objects/UML/class.c:
16858         Changed classname font to Helvetica.
16859         Added more space above the classname
16861         * objects/UML/usecase.c:
16862         Correct placements of connectionpoints on ellipse.
16863         Better algorithm for deciding aspect ration on
16864         ellipse.
16866         These changes were made by Alejandro Aguilar Sierra
16867         <asierra@servidor.unam.mx>. (asierra-981201)
16869 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
16871         * objects/UML/actor.c:
16872         Changed the extents and alignment of the element
16873         and the text.
16875         * objects/UML/.cvsignore:
16876         Added usecase.lo and actor.lo.
16878 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
16880         * objects/UML/actor.c:
16881         * objects/UML/usecase.c:
16882         * objects/UML/pixmaps/actor.xpm:
16883         * objects/UML/pixmaps/case.xpm:
16884         New files. Implements usecase and actor UML objects.
16885         These objects are done by Alejandro Aguilar Sierra
16886         <asierra@servidor.unam.mx>.
16887         
16888         * objects/UML/Makefile.am:
16889         * objects/UML/pixmaps/Makefile.am:
16890         Added usecase and actor to makefile.
16891         
16892         * AUTHORS:
16893         Added Alejandro and Jerome to autors list.
16894         
16895 1998-11-25  Alexander Larsson  <alla@lysator.liu.se>
16897         * objects/UML/class.c (umlclass_load):
16898         Fixed typo. Reported by Jerome.Abela@solsoft.fr
16900 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
16902         * app/properties.c:
16903         Update connections when doing apply in the properties window.
16905         * objects/UML/uml.[ch]:
16906         * objects/UML/class.[ch]:
16907         * objects/UML/class_dialog.c:
16908         Added connection points on both sides of attributes and
16909         operations in UML classes.
16910         Based on idea from Jerome.Abela@solsoft.fr
16911         
16912 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
16914         * README:
16915         Some new documentation about handles and connectionpoints.
16916         
16917         * lib/object.[ch]:
16918         Added functions object_add_connectionpoint and
16919         object_remove_connectionpoint for handling a dynamic
16920         number of connectionpoints.
16922         * objects/UML/class.c:
16923         Only reserve space for stereotype when it is shown.
16925         These changes are from Jerome Abela <Jerome.Abela@solsoft.fr>
16927 1998-11-08  Alexander Larsson  <alla@lysator.liu.se>
16929         * app/connectionpoint_ops.c:
16930         * app/commands.c:
16931         * app/disp_callbacks.c:
16932         * app/display.[ch]:
16933         * app/grid.c:
16934         * app/handle_ops.c:
16935         * app/magnify.c:
16936         * app/modify_tool.c:
16937         * app/render_gdk.[ch]:
16938         * lib/render.h:
16939         Huge cleanup of internal rendering system.
16940         Moved a lot of data (pixmap, width, height & gc) into the GdkRenderer.
16941         This gives a few new methods for Interactive Renderers for setting
16942         clipping regions and drawing pixel based lines and rects.
16943         Updated the rest of the code to use the new stuff.
16944         
16945         * app/render_eps.c:
16946         Fixed warning.
16948         * lib/widgets.c:
16949         * objects/standard/zigzagline.c
16950         Fixed unused variable warnings.
16952         * lib/font.c:
16953         Fixedbug with stringwidth where width==0.
16955         * TODO:
16956         Added known bug.
16958 1998-11-02  Alexander Larsson  <alla@lysator.liu.se>
16960         * lib/widgets.[ch]:
16961         Added suppot for setting the font of a
16962         DiaFontSelector widget.
16963         Also fixed some typos in the header.
16965         * lib/object.h: 
16966         Added a comment about the GetPRoperties method call.
16967         You have to make sure to update widget state when
16968         this method is called. (Not all objects do this yet,
16969         to be fixed.)
16971         * TODO:
16972         Some small updates
16974 1998-11-01  Alexander Larsson  <alla@lysator.liu.se>
16976         * lib/font.c
16977         Fixed problem with height of ascent and descent for fonts.
16978         It didn't use the whole height (==ascent+descent) when calculatine
16979         ascent_ratio and descent_ratio.
16981         * objects/standard/textobj.c:
16982         * objects/standard/box.c:
16983         * objects/standard/ellipse.c:
16984         * objects/standard/line.c:
16985         * objects/standard/arc.c:
16986         Updated and added property dialogs for these objects.
16987         Also added line width/color/style to those objects
16988         that didn't have it.
16989         This change breaks fileformat compatibility for these objects.
16990         
16991         * objects/standard/zigzagline.c:
16992         Changed zigzagline to be based on OrthConn, much nicer.
16993         Also added line style and color to properties.
16994         This change breaks fileformat compatibility for zigzagline.
16996         * lib/message.c:
16997         Fixed bug in message(). Forgot a pair of '&'.
16999 1998-10-29  Alexander Larsson  <alla@lysator.liu.se>
17001         * lib/widgets.[ch]:
17002         Added DiaColorSelector widget.
17003         This is a colored button that pops up a color selection
17004         dialog when pressed.
17006 1998-10-28  Alexander Larsson  <alla@lysator.liu.se>
17008         * lib/widgets.[ch]:
17009         * lib/Makefile.am:
17010         New files, added widgets for selecting fonts, alignment
17011         and line-style. Will be used later.
17013 1998-10-12  Alexander Larsson  <alla@lysator.liu.se>
17015         * app/Makefile.am:
17016         * lib/Makefile.am:
17017         * objects/UML/Makefile.am:
17018         * objects/network/Makefile.am:
17019         * objects/standard/Makefile.am:
17020         Changed "CFLAGS = -Wall -g" to "CFLAGS = @CFLAGS@"
17021         in all Makefile.am.
17023 1998-10-03  Alexander Larsson  <alla@lysator.liu.se>
17025         * app/handle_ops.c (handle_draw):
17026         connected HANDLE_MINOR_CONTROL also becomes red.
17028 1998-10-02  Alexander Larsson  <alla@lysator.liu.se>
17030         * Makefile.am:
17031         removed -ldl from linking. This is added if needed by configure.
17033         * app/app_procs.c:
17034         Open dlls with RTLD_LAZY if it is defined.
17035         Some cleanups: char *error -> const char *error
17036         Added fprintf()'s to where we exited because of errors.
17038         * lib/files.c:
17039         Include <sys/types.h>
17041 1998-10-01  Alexander Larsson  <alla@lysator.liu.se>
17043         * acconfig.h:
17044         * configure.in:
17045         * app/app_procs.c:
17046         Detect dlopen better.
17047         Detect wether dlopen needs an underscore in the identifier.
17048         This code was mostly borrowed from guile.
17050         * lib/sheet.[ch]:
17051         * app/app_procs.c:
17052         * objects/standard/standard.c:
17053         * objects/network/network.c:
17054         * objects/UML/uml.c:
17055         * most objects:
17056         Changed the way sheets reference objects to use just the
17057         name. Changed module loading to a two stage model:
17058         First register_objects() is called for all modules.
17059         Then register_sheets() is called. This means that
17060         sheets can safely include objects from other modules.
17061         
17063 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
17065         * objects/network/bus.c:
17066         * objects/network/network.c:
17067         * objects/network/Makefile.am:
17068         New file bus.c. Added new object: Ethernet bus.
17070         * objects/standard/box.c:
17071         Added call to gtk_spin_button_set_numeric for linewidth spinner
17072         in property dialog.
17074 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
17076         * app/connectionpoint_ops.c:
17077         * app/create_object.c:
17078         * app/group.c:
17079         * app/handle_ops.c:
17080         * app/modify_tool.c:
17081         * lib/connection.c:
17082         * lib/element.c:
17083         * lib/handle.h:
17084         * lib/object.c:
17085         * lib/orth_conn.c:
17086         * loads of objects:
17087         Changed handle->connectable to handle->connect_type.
17088         Now handles can be HANDLE_CONNECTABLE_NOBREAK, which means
17089         that their connections don't break when moving objects.
17091         * app/diagram.c:
17092         Always select the last handle in an object that has
17093         the closest distance.
17094         
17095         * lib/geometry.[ch]:
17096         Added rectangle_add_point function.
17097         
17099 1998-09-27  Alexander Larsson  <alla@lysator.liu.se>
17101         * app/properties.[ch]: New files. Handles the new properties
17102         dialog.
17104         * app/modify_tool.c: Changed to use new properties dialog.
17106         * app/object_ops.[ch]: Removed object_changed_callback, as it's
17107         not needed anymore. This is now handled differently in
17108         properties.c
17110         * lib/object.[ch]:
17111         Changed the properties ops for objects. Removed typedefs
17112         ChangedObjectTime and ObjectChangedFunc needed for the old way.
17113         Added object_return_null function.
17114         
17115         * app/group.c:
17116         * lib/render_object.c:
17117         * objects/*/*.c:
17118         Changed objects to use the new properties dialog.
17119         
17121 1998-09-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
17123         * */Makefile.am (INCLUDES): Changes to work with srcdir !=
17124         builddir.
17126         * autogen.sh: New file. Copied from gtk and added a call to
17127         libtoolize. Anyone knows why this isn't done in gtk?
17129         * Removed autogenerated files.
17131 1998-09-12  Alexander Larsson  <alla@lysator.liu.se>
17133         * Added call setlocale(LC_NUMERIC, "C") so that formating of
17134           floating-point numbers in postscript output will be correct.
17135         * Did some cleanup of generated postscript files.