*** empty log message ***
[dia.git] / ChangeLog
blob48e63d82ebf442c9085b58526f0d947bd3e866d1
1 2001-01-02  Steffen Macke <sdteffen@yahoo.com>
3         * app/Makefile.am: added missing plug-ins to run_dia.sh
5         * lib/paper.c: added paper sizes A0, A1, A2
7         * objects/UML/class.c
8         objects/UML/class.h
9         objects/UML/class_dialog.c: added support for colored UML
10         classes
11         
12 2000-12-30  Kevin Breit <battery841@mediaone.net>
14         * doc/en/usage-customization.sgml: added more content
16 2000-12-24  Kevin Breit <battery841@mediaone.net>
18         * doc/en/usage-layers.sgml: added file, contributed by Remypsb
19         <remy.viard@laposte.net>
21 2000-12-24  Steffen Macke <sdteffen@yahoo.com>
23         * added limiting lines to Civil Engineering sheet,
24         fixed vertical pump icon
25         
26 2000-12-20  Steffen Macke <sdteffen@yahoo.com>
28         * updated/additional Civil Engineering shapes: better icons,
29         shapes use foreground/background colors now and are filled
30         
31 2000-12-03  Kevin Breit  <battery841@mediaone.net>
33         * doc/en/dia-manual.sgml Integrated a few diffs.  New section should be
34         the selection <sect1>
36 2000-11-29  Fredrik Hallenberg  <hallon@lysator.liu.se>
38         * app/load_save.c (diagram_data_save): avoid using obsoleted
39         libxml calls (only matters when compiling with libxml2)
41 2000-11-25  James Henstridge  <james@daa.com.au>
43         * app/disp_callbacks.c (ddisplay_drop_object): add a function to
44         handle the tool drops on the canvas.
46         * app/interface.c (display_data_received_callback): do the check
47         to make sure that the drag is from a local toolbox here as well.
49         * app/interface.c (create_tools): unref the pixmap/mask after
50         creating the GtkPixmap.
51         (tool_setup_drag_source): function to set up a drag source for
52         create object tool buttons.
53         (create_tools): setup drag source for CREATE_OBJECT_TOOL's.
54         (fill_sheet_wbox): same here.
55         (create_display_shell): set up the display canvas as a drag
56         destination.
57         (display_drop_callback, display_data_received_callback): functions
58         to handle drops of tool buttons.
60         * app/menus.c (menus_init): don't use gnome_popup_menu_new().  It
61         does weird shit to the user_data pointer for a menu item.  Object
62         alignment should work again now.
64         * app/splash.c (get_logo_pixmap): don't unref the bitmap if it is
65         NULL, and mark this function static.
66         (app_splash_init): use gtk_widget_show_now() instead of the
67         gtk_main_iteration loop.
68         (app_splash_init): connecting gtk_widget_destroy to the destroy
69         signal of a widget seems pretty useless.
71 2000-11-23  Kevin Breit <battery841@users.sourceforge.net>
73         * doc/en/dia-manual.sgml:
74                 Added sect1 for advanced object types.  Starting development
75                 on that part.
77 2000-11-18  Kevin Breit <battery841@mediaone.net>
79         * doc/en/dia-manual.sgml:
80                 Stupid spelling fixes.
82 2000-11-18  Kevin Breit <battery841@mediaone.net>
84         * doc/en/dia-manual.sgml:
85                 Just some small changes I made.  Props to Greg LeBlanc on the
86                 recommendations.
88 2000-11-17  Alexander Larsson  <alla@lysator.liu.se>
90         * app/display.c:
91         (ddisplay_add_display_area): Clip input rectangle to
92         the visible part of the display.
93         (ddisplay_scroll): Optimization, don't scroll and
94         redraw if moving to the same position as before.
96         * app/render_libart.c (renderer_libart_copy_to_window):
97         Removed sanity check. Now moved to ddisplay_add_display_area().
99         * lib/diavar.h:
100         Added return at end of file.
101         
102 2000-11-13 Kevin Breit <battery841@mypad.com>
103         * doc/en/dia-manual.sgml
104                 Commited manual changes from Henry House <hajhouse@houseag.com>
106 2000-10-21 Hans Breuer <Hans@Breuer.Org>
107         * lib/beziershape.c :
108                 The previous code was accessing unowned memory due to IHMO
109                 wrong index calculation. Now it appears to be fixed.
110                 *Please Review!*
112         * lib/makefile.msc
113         * plug-ins/makefile.msc
114         * objects/makefile.msc
115         * app/makefile.msc: (new files)
116                 Makefiles for Dia on Win32, Micro$oft VC only.
118         * plug-ins/pstricks/render_pstricks.c
119         * plug-ins/dxf/dxf-import.c
120         * plug-ins/shape/shape-export.c
121         * plug-ins/svg/render_svg.c
122         * app/commands.c
123         * app/filedlg.c
124         * app/preferences.c
125         * app/render_eps.c
126         * lib/sheet.c
127         * lib/plug-ins.c
128         * objects/custom/custom.c
129         * objects/standard/image.c
130                 portability (not only win32): use HAVE_UNISTD_H, HAVE_DIRENT_H 
131                 where   appropriate, add missing prototypes like <string.h>
133         * plug-ins/wmf/wmf_gdi.cpp
134         * plug-ins/wmf/wmf_gdi.h:
135                 start of wmf write functions for non Win32 platform. Not 
136                 finished yet. The other way to get it working maybe to
137                 link the plug-in against wine libs.
138                 
139         * plug-ins/wpg/wpg.c : add missing brace
141         * app/load_save.c :
142                 Handling for unknown objects at load time. Previously Dia
143                 was crashing, if you try to load a file referencing objects
144                 whiches plug-ins aren't installed/available. Now it spits out 
145                 a warning and ignores the unknown objects.
147         * app/interface.c
148                 toolbox DND support for files like The Gimp does it.
150         * app/main.c
151         * app/app_procs.h
152                 Simple splash screen support and usage.
154         * app/app_procs.c
155                 Splash screen, portability fixes, dont' g_error if there is
156                 g_get_homedir return NULL. This may remove the one and only
157                 FAQ for Win32.
159         * app/menus.c :
160                 Make it compile without ENABLE_NLS
162         * app/render_libart.c :
163                 Sanity check to avoid calling libart with wrong window coordinates.
164                 They come from the update handler. Direct Gdk is dealing nicely
165                 with coordinates out of range, libart does access un-owned memory
166                 in this case, mostly causing crashes.
168         * app/winmain.c: (new file) Export the Win32 Gui version of the
169                 main function. This file is only required for Windoze.
171         * app/splash.c: (new file) splash screen implementation
173         * lib/color.h
174         * lib/font.h
175         * lib/diavar.h: (new file)
176                 moved special variable export code to diavar.h, because it is
177                 needed in color.h and font.h
179         * lib/paper.c :
180                 M$VC cann't export inlined functions. Quick hack to let it
181                 link again. Probably the glib mechanics should be used here?
183         * objects/UML/lifeline.c : initialize var before usage
185         * objects/GRAFCET/step.c : removed unused var
187 2000-10-14  James Henstridge  <james@daa.com.au>
189         * app/render_gnomeprint.c (draw_image): change code so images
190         don't get flipped when printing.
192         * app/paginate_gnomeprint.c (diagram_print_gnome): check to make
193         sure that the return value of
194         gnome_print_context_new_with_paper_size is not NULL.
196         * app/render_gnomeprint.c (draw_arc): add code to convert arcs
197         into a series of bezier segments.
198         (fill_arc): similar code to handle filled arc segments.
200 2000-10-12  Fredrik Hallenberg  <hallon@lysator.liu.se>
202         * app/app_procs.c
203         * app/commands.c
204         * app/dia-props.c
205         * app/diagram.c
206         * app/diagram.h
207         * app/disp_callbacks.c
208         * app/display.c
209         * app/linewidth_area.c
210         * app/paginate_psprint.c
211         * app/preferences.c
212         * app/undo.c
213         * app/font.c
214         * app/message.c
215         * app/neworth_conn.c
216         * app/orth_conn.c
217         * objects/standard/box.c: various small changes to get rid of 
218         annoying warnings (eg faulty prototypes and unused variables)
220         * app/disp_callbacks.c
221         * app/cursor.h
222         * app/magnify.c
223         * app/magnify.h: update magnify tool icon when pressing/releasing
224         shift. I will try to make something more general so that similar
225         things can be used by other tools.
227         * shapes/SDL/inout.shape
228         * shapes/SDL/return.shape: fixed some typos
230 2000-10-09  James Henstridge  <james@daa.com.au>
232         * objects/custom/shape_info.c (parse_path): apply patch from
233         Robert Young <robertdotyoung@dsto.defence.gov.au> to fix bug
234         #25221
236 2000-10-08  James Henstridge  <james@daa.com.au>
238         * objects/standard/image.c (image_set_props): if the file could not
239         be loaded, show the broken image icon.
241         * plug-ins/Makefile.am (SUBDIRS): add shape to the subdirs list.
243         * plug-ins/shape/*: the shape export plugin by Steffen Macke.
245         * app/interface.c (fill_sheet_wbox): use gdk-pixbuf to load the
246         object icon when loading from a file.  This allows you to have PNG
247         icon files for shapes.
249 2000-10-07  James Henstridge  <james@daa.com.au>
251         * app/Makefile.am (dia_LDADD): remove GDK_IMLIB_LIBS reference.
253         * lib/Makefile.am, app/Makefile.am (INCLUDES): remove
254         GDK_IMLIB_CFLAGS reference.
256         * app/commands.c (help_about_callback): remove imlib code.
258         * lib/dia_image.c: only include the pixbuf version of the image
259         routines.
261         * acconfig.h: remove the HAVE_GDK_PIXBUF flag from here.
263         * configure.in (CPPFLAGS): remove the check for imlib, as we now
264         require gdk-pixbuf.
266         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer):
267         conditionally define \setfont as well.
269 2000-10-05  James Henstridge  <james@daa.com.au>
271         * plug-ins/pstricks/render_pstricks.c (new_pstricks_renderer): fix
272         preamble so that we define \setlinejoinmode and \setlinecaps
273         commands conditionally on them being undefined.  This way, the
274         pstricks output files should work without modification, and will
275         support the commands when they are implemented in pstricks.
277 2000-10-05  Szabolcs Ban  <shooby@gnome.hu>
279         * dia.desktop: added hungarian translations to dia.desktop
281 2000-10-04  James Henstridge  <james@daa.com.au>
283         * sheets/UML.sheet: fix typo.
285         * objects/custom/shape_info.c: use strtod instead of g_strtod.
286         (parse_path): actually call setlocale around strtod calls.
288         * lib/dia_xml.c: use strtod rather than g_strtod.  We wrap each
289         call in setlocale(LC_NUMERIC, "C"), so there is no reason to call
290         the g_strtod wrapper.
292         * shapes/SDL/: add SDL shapes from Rubens Ramos
293         <rubens_ramos@yahoo.com>
295         * acinclude.m4 (DIA_CHECK_CFLAG): fix up macro.
297         * sheets/Makefile.am (SHEETS): add SDL.sheet to list.
299         * shapes/MSE/: add Mobile Subscriber Equipment shapes from
300         W. Michael Petullo <mike@flyn.org>.
302         * sheets/Makefile.am (SHEETS): add civil.sheet (which got missed
303         from the 0.86 tarball) and jigsaw.sheet.
305         * configure.in: add shapes/jigsaw/Makefile to list of generated files.
307         * shapes/jigsaw/: jigsaw shapes from Martin Hawlisch.
309         * shapes/network/: add network-additional shapes here.
311         * sheets/network.sheet: add the network-additional shapes from
312         Martin Hawlisch <Martin.Hawlisch@bflow.com> to the main network
313         sheet.
315 2000-09-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
317         * configure.in: Updated ALL_LINGUAS
319         * po/nl.po: Removed newline from translation
321 2000-09-17  Asbjorn Pettersen  <asbjornP@dualog.no>
323         * app/commands.c (help_about_callback): Use G_DIR_SEPARATOR_S in 
324         logo filename generation. 
326         * lib/dia_dirs.c (dia_get_data_directory): Handle empty subdir better.
327         Avoiding "//dia_logo.png".
329 2000-09-16  Asbjorn Pettersen  <asbjornP@dualog.no>
331         * app/filedlg.c: add include <sys/types.h> to
332         remove warning. (OS/2)
334 2000-09-13  Cyrille Chepelov <chepelov@calixo.net>
336         * objects/chronogram/chronoline_event.c (reparse_clevent):
337         the __checksum routine was simply bogus. Redone it in a slightly
338         saner way (reported by Michael Farr <mfarr@cs.latrobe.edu.au>).
340 2000-09-10  Asbjorn Pettersen  <asbjornP@dualog.no>
342         * app/create_object.c (create_object_button_press): 
343         * app/modify_tool.c (click_select_object): 
344         * lib/object.h: select renamed to selectf to prevent
345         compiler problems with function select().  OS/2 version.
347 2000-09-08  Karsten Weiss  <knweiss@gmx.de>
349         * po/de.po: Updated.
351 2000-09-07  Karsten Weiss  <knweiss@gmx.de>
353         * dia.desktop: Added German translation
354         * app/menus.c: "Diagram Propeties..." -> "Diagram Properties..."
356 2000-08-29  Manuel de Vega Barreiro <barreiro@arrakis.es>
358         * configure.in (ALL_LINGUAS): added "es"
360 2000-08-28  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
362         * app/magnify.c:
363         * app/cursor.h:
364         * app/cursor.c:
365         * app/scroll_tool.c:
366         Standardized cursor function get_cursor().  Magnify now has
367         looking-glass cursor with + and -.
369         * app/create_object.c (create_object_button_press): 
370         Newly created connections now snap to connection points even when
371         off the grid. 
373 2000-08-17  Daniel Egger  <egger@suse.de>
375         * app/menus.c: #ifdef'ed some code for the none GNOME
376         case.
377         * app/dia_embedd.c: Changed obvious hackery. Can anyone
378         please have a look at the GNOME UI menu creation? The
379         gnome-app-helper code is ages old and plainly broken!
381 2000-08-15  Daniel Egger  <egger@suse.de>
383         * app/commands.c:
384         * app/commands.h:
385         * app/diagram.c:
386         * app/display.c:
387         * app/menus.c:
388         * app/select.c: First big patch to get the menus
389         working again in the international version. Copied
390         some code written by Sven and me from GIMP and
391         thus implemented automatic tearoffmenu creation and
392         proper translation. I also removed that pseudo
393         radiomenu hack and cleaned up several translation
394         hacks which have never really worked. All in all
395         this is part I of the big menu patch. Enjoy and tell
396         me if you detect any problems.
398 2000-08-14  Daniel Egger  <egger@suse.de>
400         * sheets/UML.sheet: Changed one German translation as
401         suggested by Heribert Schuetz <hs@heribert-schuetz.de>.
403 2000-08-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
405         * app/diapagelayout.c:
406         * lib/diagramdata.c:
407         * lib/diagramdata.h:
408         * lib/Makefile.am:
409         * lib/paper.c:
410         * lib/paper.h: honour PAPERCONF env variable and /etc/papersize when
411         selecting paper size for a new diagram. TODO: Use libpaper if 
412         available and use gnome_paper-stuff if using GNOME.
414         * sheets/Electric.sheet: fixed typo.
415         
416 2000-08-08  James Henstridge  <james@daa.com.au>
418         * po/README: added a readme file to tell translators to translate
419         the .sheet files as well.
421         * app/commands.c (help_about_callback): fix small bug where we tried
422         to gdk_bitmap_unref() the mask for the about box image, even though
423         it was NULL.  Now check for a NULL mask.
425 2000-08-07  Daniel Egger  <egger@suse.de>
427         * sheets/*.sheet: Added translations for the name
428         in the toolbar tab. Brushed up some descriptions 
429         and some translations a bit.
431 2000-08-06  James Henstridge  <james@daa.com.au>
433         * plug-ins/svg/render_svg.c (new_svg_renderer): update public
434         identifier and dtd url for SVG output.
435         (new_svg_renderer): fix the output of the viewBox output.  The
436         second two numbers are the width and height -- not the right
437         and bottom sides of the box.
439         * shapes/*/*.shape: update svg namespace URI.
441         * objects/custom/shape_info.c (load_shape_info): change the
442         namespace URI for custom shapes yet again to match the Candidate
443         Recommedation.  It looks like this one will probably be the final
444         one.
446         * app/display.c (new_display): remove the code that sets ic and
447         ic_attr members to NULL, as one of the previous function calls
448         causes the display to be realised.  This means that the ic gets
449         lost.  Thanks to Yukihiro Nakai <ynakai@redhat.com> for finding
450         this one.
452 2000-08-06  James Henstridge  <james@daa.com.au>
454         * shapes/Makefile.am (SUBDIRS): add Civil back to list.
456         * NEWS: fixed date in NEWS file, as I will release today.
458         * README: updated the README a little.  Added note that Dia is now
459         a GNU program.
461         * dia.spec: fix up spec file.
463         * plug-ins/wpg/wpg.c: changed DIAG_NOTE stuff here as well.
465         * plug-ins/hpgl/hpgl.c: change Hans's DIAG_NOTE stuff so that we don't
466         get heaps of warnings when you turn off debugging.
467         Also made a few other warning fixes.
469 2000-08-02  James Henstridge  <james@daa.com.au>
471         * plug-ins/svg/Makefile.am (INCLUDES): add XML_CFLAGS to INCLUDES.
473         * configure.in: update version number.
475 2000-08-01  James Henstridge  <james@daa.com.au>
477         * app/commands.c (help_about_callback): add Hans to about dialog.
479         * doc/shape.dtd: dtd for shape file format.
481         * doc/custom-shapes: update doc file about creating custom shapes.
483         * shapes/*/*.shape: change namespace URI for the SVG portion to the
484         one for the latest draft.
486         * shapes/*/*.shape: fix up rect definitions.
488         * objects/custom/shape_info.c (load_shape_info): recognise newer
489         namespace tag for SVG.
490         (parse_svg_node): the rect element should take attributes x, y, width
491         and height -- not x1,y1,x2,y2.
493         * plug-ins/svg/render_svg.c (new_svg_renderer): updated doctype
494         output to use the newest draft DTD.
496         * plug-ins/svg/svg.c: initialisation code for plugin.
498         * plug-ins/svg/render_svg.c: move svg export code to a plugin.
500         * plug-ins/svg/Makefile.am: makefile for svg plugin.
502         * app/app_procs.c (internal_plugin_init): don't register the svg
503         export filter here.
505         * app/Makefile.am (dia_core_files): don't compile in render_svg.[ch]
507 2000-07-31  James Henstridge  <james@daa.com.au>
509         * objects/standard/textobj.c (textobj_get_defaults): 
510         * objects/standard/polygon.c (polygon_get_defaults): 
511         * objects/standard/image.c (image_get_defaults): 
512         * objects/standard/ellipse.c (ellipse_get_defaults): 
513         * objects/standard/box.c (box_get_defaults): 
514         * objects/standard/beziergon.c (beziergon_get_defaults): 
515         * objects/flowchart/parallelogram.c (pgram_get_defaults): 
516         * objects/flowchart/ellipse.c (ellipse_get_defaults): 
517         * objects/flowchart/diamond.c (diamond_get_defaults): 
518         * objects/flowchart/box.c (box_get_defaults): 
519         * objects/custom/custom_object.c (custom_get_defaults): 
520         * objects/FS/flow.c (flow_get_defaults): 
521         * objects/FS/flow-poly.c (flow_get_defaults): 
522         * objects/FS/flow-ortho.c (orthflow_get_defaults): ref and sink the
523         defaults widget.
525         * app/defaults.c (defaults_show): don't keep on ref'ing the defaults
526         widgets for various object types.
527         (create_dialog): ref and sink the no_defaults_dialog.
529         * app/preferences.c (prefs_create_dialog): change
530         gtk_container_border_width call to gtk_container_set_border_width.
532 2000-07-29  James Henstridge  <james@daa.com.au>
534         * app/commands.c (view_aa_callback): show a warning dialog if
535         you start AA mode.
537         * app/interface.c (fill_sheet_menu): don't add a menu item for
538         empty sheets.
540 2000-07-26  James Henstridge  <james@daa.com.au>
542         * plug-ins/dxf/dxf-export.c: updates from Steffen to fix bug #18677
544         * app/menus.c: remove edit grid menu item.
546         * app/commands.[ch] (view_edit_grid_callback): removed.
548         * app/display.c (new_display): don't initialise removed Grid members.
550         * app/grid.c: remove unused functions.
552         * app/grid.h: remove dialog related stuff from Grid structure.
553         Remove prototypes for dialog functions.
555         * app/menus.c: add to menus
556         
557         * app/commands.[ch] (view_diagram_properties_callback): new command
558         for showing the diagram properties dialog.
560         * app/dia-props.[ch]: a new diagram properties dialog.  To replace
561         the edit grid dialog.
563 2000-07-25  James Henstridge  <james@daa.com.au>
565         * app/grid.c (grid_x_update): 
566         (grid_y_update): as the grid setting is stored with the diagram,
567         update all displays when a change is made.
569         * app/modify_tool.c (modify_motion): use new snap_to_grid sig.
571         * app/create_object.c (create_object_button_press): 
572         (create_object_motion): use new snap_to_grid signature.
574         * app/grid.c (grid_draw): use the grid settings in the DiagramData,
575         and handle invisible grid lines.
576         (snap_to_grid): use new grid settings.  Also changed signature to
577         take a DDisplay rather than Grid pointer.
578         (grid_show_dialog): get the defaults from the correct place.
580         * app/display.c (new_display): do not set ddisp->grid.width_[xy].
582         * app/diagram.c (new_diagram): set the grid size defaults from the
583         user preferences.
585         * app/load_save.c (diagram_data_save): save grid and guide info to
586         diagram file.
587         (diagram_data_load): add guide and grid load support.
589         * lib/diagramdata.c (new_diagram_data): set the new DiagramData
590         members.
592         * lib/diagramdata.h: add members to DiagramData for grid and guide
593         settings.
595         * configure.in (BONOBO_LIBS): update configure scripts
597         * app/dia.oafinfo: oafinfo file for dia embeddables.
599         * app/dia_embedd.c: add OAF support.
601 2000-07-24  James Henstridge  <james@daa.com.au>
603         * plug-ins/wpg/Makefile.am: 
604         * plug-ins/pstricks/Makefile.am: 
605         * plug-ins/hpgl/Makefile.am: 
606         * plug-ins/dxf/Makefile.am: same here.
608         * plug-ins/cgm/Makefile.am: remove LIBADD.  Dia already links with
609         the required libraries, and the link line was causing libtool not
610         to build a shared library on some systems :(
612         * plug-ins/cgm/cgm.c (write_real): the initial if statement should
613         be checking x, not n.
615 2000-07-23  James Henstridge  <james@daa.com.au>
617         * app/preferences.c (prefs_data): set the "reset tools after
618         create" preference to true by default.  That seems to be what most
619         people expect.
621         * app/interface.c (create_sheets): instead of a notebook, use an
622         option menu that updates the sheet tools.  The notebook tabs were
623         getting a bit unwieldly, so the option menu should fix that.  This
624         also reduces the number of widgets in the tools radio button
625         group, which should make the UI a little more responsive.
627 2000-07-19  Fatih Demir <kabalak@gmx.net>
628         
629         * configure.in: Added tr to ALL_LINGUAS.
630                 [ Yeah, we're now having a Turkish translation,
631                    too. ]
632         
633         * dia.desktop: Added the Turkish entries.
635 2000-07-02  Fredrik Hallenberg  <hallon@lysator.liu.se>
637         * doc/diagram.dtd: changed string-element so it conforms to the
638         output from dia.
640 2000-06-30  Fredrik Hallenberg  <hallon@lysator.liu.se>
642         * configure.in: added chinese. 
643         Use AM_PROG_LIBTOOL instead of AC_PROG_LIBTOOL.
645         * app/app_procs.c:
646           app/load_save.c:
647           app/render_svg.c:
648           lib/dia_xml.c:
649           lib/plug-ins.c:
650           lib/sheet.c:
651           objects/custom/shape_info.c: 
652           shapes/Circuit/npn.shape:
653           shapes/Circuit/pnp.shape:
654           sheets/*.sheet: dia now works with libxml2.
655         Libxml2 is a bit more picky when parsing xml and reported errors on all 
656         sheet files because they use non ascii characters (added 
657         encoding="iso-8859-1"). Also "xml:lang=en@layman" is not proper xml so 
658         I commented out these.
660 2000-06-30  Christopher R. Gabriel  <cgabriel@linux.it>
662         * configure.in (ALL_LINGUAS): added Italian
664 2000-06-27  Sung-Hyun Nam  <namsh@lgic.co.kr>
666         * configure.in (ALL_LINGUAS): added Korean
668 2000-06-25  James Henstridge  <james@daa.com.au>
670         * objects/flowchart/parallelogram.c (pgram_create): use default font
671         and add properties interface support.
673         * objects/flowchart/ellipse.c (ellipse_create): use default font and
674         add properties interface support.
676         * objects/flowchart/diamond.c (diamond_create): use default font and
677         add properties interface code.
679         * objects/flowchart/box.c (box_create): use default font.
681         * objects/custom/custom_object.c (custom_create): use default font
682         here too.
684         * objects/standard/textobj.c (textobj_create): update to use default
685         font.
687         * lib/attributes.c: add implementations.
689         * lib/attributes.h (attributes_[gs]et_default_font): add function
690         prototypes for setting/getting a default font.
692 2000-06-24  James Henstridge  <james@daa.com.au>
694         * app/paginate_gnomeprint.h: updated prototype.
696         * app/paginate_gnomeprint.c (paginate_gnomeprint): update to use
697         diagram page settings.
699         * objects/standard/beziergon.c (beziergon_copy): same here.
701         * objects/standard/polygon.c (polygon_copy): copy the fill colour
702         as well.
704         * app/undo.h: 
705         * app/tool.h (tool_options_dialog_show): 
706         * app/scroll_tool.h (free_scroll_tool): 
707         * app/render_svg.h: 
708         * app/render_libart.h (renderer_libart_copy_to_window): 
709         * app/render_gdk.h (renderer_gdk_copy_to_window): 
710         * app/properties.h (properties_hide_if_shown): 
711         * app/preferences.h (prefs_load): 
712         * app/object_ops.h: 
713         * app/modify_tool.h (free_modify_tool): 
714         * app/magnify.h (free_magnify_tool): 
715         * app/linewidth_area.h (linewidth_area_create): 
716         * app/layer_dialog.h: 
717         * app/handle_ops.h (handle_is_clicked): 
718         * app/group.h: 
719         * app/grid.h (grid_destroy_dialog): 
720         * app/defaults.h (defaults_show): 
721         * app/cut_n_paste.h (cnp_exist_stored_objects): 
722         * app/create_object.h (free_create_object_tool): 
723         * app/connectionpoint_ops.h (diagram_unconnect_selected): 
724         * app/commands.h: 
725         * app/color_area.h (color_area_create): 
726         * app/app_procs.h (app_is_embedded): remove extern keyword from
727         function prototypes.
729         * lib/text.h: 
730         * lib/sheet.h (load_all_sheets): 
731         * lib/render_store.h: 
732         * lib/render_object.h (render_object_load): 
733         * lib/polyshape.h (polyshape_closest_segment): 
734         * lib/poly_conn.h (polyconn_closest_segment): 
735         * lib/orth_conn.h: 
736         * lib/object.h: 
737         * lib/objchange.h (new_object_state_change): 
738         * lib/neworth_conn.h (neworthconn_add_segment): 
739         * lib/message.h (message_error): 
740         * lib/lazyprops.h: 
741         * lib/geometry.h: 
742         * lib/font.h (font_descent): 
743         * lib/focus.h (remove_focus): 
744         * lib/element.h: 
745         * lib/diagramdata.h: 
746         * lib/dia_xml.h (data_add_composite): 
747         * lib/dia_image.h: 
748         * lib/connpoint_line.h: 
749         * lib/connection.h (connection_move_handle): 
750         * lib/color.h: 
751         * lib/attributes.h (attributes_set_default_line_style): 
752         * lib/arrows.h (arrow_draw): remove extern keyword from function
753         definitions.  It is not required for functions.
755         * plug-ins/dxf/Makefile.am (INCLUDES): 
756         * plug-ins/pstricks/Makefile.am (INCLUDES): 
757         * plug-ins/cgm/Makefile.am (INCLUDES): 
758         * objects/SADT/Makefile.am (INCLUDES): 
759         * objects/chronogram/Makefile.am (INCLUDES): 
760         * objects/GRAFCET/Makefile.am (INCLUDES): 
761         * objects/flowchart/Makefile.am (INCLUDES): 
762         * objects/sybase/Makefile.am (INCLUDES): 
763         * objects/FS/Makefile.am (INCLUDES): 
764         * objects/standard/Makefile.am (INCLUDES): 
765         * objects/network/Makefile.am (INCLUDES):
766         * objects/UML/Makefile.am (INCLUDES): same here.
768         * objects/ER/Makefile.am: changed inclusion of some macros to
769         variables.
771         * lib/plug-ins.c (dia_register_plugins_in_dir): use a few defines to
772         handle the plug in extension, rather than have all the #ifdef's in
773         the code.
775         * plug-ins/Makefile.am: add renderer.inc to dist.
777         * plug-ins/dxf/dxf-import.c: Updates from Steffen Macke.
779 2000-06-11  Asbjorn Pettersen  <asbjornP@dualog.no>
781         * lib/plug-ins.c: Handle OS/2 dll's too.
783 2000-06-07  James Henstridge  <james@daa.com.au>
785         * app/plugin-manager.c (get_plugin_manager): set some table
786         packing options to make it look a little nicer.
788         * plug-ins/hpgl/Makefile.am, plug-ins/wpg/Makefile.am: added
789         makefiles for these plug-ins.
791         * plug-ins/{hpgl,wmf,wpg}/*: removed dos style cariage returns.
793         * configure.in: added hpgl and wpg directories to build.  Added
794         note about whether gnome-print support was enabled, and noted that
795         it is not recommended.
797 2000-06-06  James Henstridge  <james@daa.com.au>
799         * plug-ins/{hpgl,wmf,wpg}/*: Hans Breuer's plug-ins.  They still need
800         a little work, but I am checking them in so I don't lose them.
802 2000-06-01  James Henstridge  <james@daa.com.au>
804         * objects/standard/arc.c: added extra properties.
806         * lib/beziershape.c (beziershape_closest_handle): fix a bug where I
807         was using the wrong index into the handles array.  This gets corner
808         type changing working correctly.
810         * lib/properties.[ch]: add support for BezPoint's and BezPoint arrays
811         to properties code (no editing or loading yet though).  Also added
812         support for point array manipulation through the offsets interfaces.
814         * lib/Makefile.am (INCLUDES): added include of gdk-pixbuf 
816         * app/interface.c (origin_button_press): changes so the origin
817         button doesn't grab the pointer when we pop up the menu.
819         * app/commands.c (help_about_callback): fix small memory leak in
820         about box code.
822         * app/menus.c (menus_init): fixed breakage I introduced in the non
823         gnome menus when I was doing the menu changes.  The tearoffs work
824         really nicely in plain gtk mode as well.
826         * objects/standard/beziergon.c (beziergon_create): changed the
827         returned handles to match the handle numbering changes.  Now
828         segment addition and removal works correctly with undo!
830         * lib/beziershape.c: various changes to the code.  Changed the
831         numbering of handles, and fixed the segment removal code.
833 2000-05-31  James Henstridge  <james@daa.com.au>
835         * objects/standard/beziergon.c: remove connection point handling.
836         There is still a bit of work to be done to get adding and removing
837         of segments working correctly.
839         * lib/beziershape.c: add connection point handling to beziershape.
840         I set it for two connection points per segment.
842 2000-05-30  James Henstridge  <james@daa.com.au>
844         * objects/standard/polygon.c: don't do connectionpoint handling.
846         * lib/polyshape.c: changed to handle connection points internally.
847         Also, don't worry about connections to handles on polyshape, as
848         all handles are non connectable.
850 2000-05-30 Ville Hautamaki <villeh@cs.joensuu.fi>
852         * configure.in: Added finnish
853         
854 2000-05-30  James Henstridge  <james@daa.com.au>
856         * sheets/*.sheet: translation updates to the .sheet files.
858         * po/fr.po: updated po file from Christophe Merlet.
860         * menus.h: removed prototypes for functions which have been removed.
862 2000-05-29  James Henstridge  <james@daa.com.au>
864         * app/layer_dialog.c (layer_dialog_set_diagram): set the selected
865         item in the option menu when changing selected diagram.
867         * app/dia_embedd.c (view_factory): fix up function to work with new
868         menus API.
870         * app/disp_callbacks.c (ddisplay_realize): remove call to
871         display_set_active from here.
872         (ddisplay_canvas_events): move call here.  This gets rid of all the
873         warnings, as the renderer has been fully set up correctly at this
874         point.
876         * app/menus.c (menus_init): add the tearoff item to the start of the
877         right click menu.
879         * app/app_procs.c (create_user_dirs): we don't need to create the
880         menus directory anymore.
882         * app/disp_callbacks.c (ddisplay_popup_menu): it should not be
883         necessary to update the menu state here, as it was done when the
884         active display was set.
886         * app/display.c (display_set_active): update the menu state when
887         changing active displays.
889         * app/interface.c (origin_button_press): set the display as active
890         when a click is made on the menu button.
892         * app/menus.c (menus_init): set up a quit function to save the accels
893         at exit.
894         Add tearoff items for the non GNOME menus, add accelerators for
895         several GNOME menus.
897         * app/disp_callbacks.c (ddisplay_popup_menu): get the menu with
898         menus_get_image_menu().
900         * app/menus.c (menus_get_item_from_path): use display_menus here
901         rather than ddisp->popup.
903         * app/display.h: remove the popup member in the DDisplay structure.
905         * app/interface.c: remove option of not using wrap box.
906         (create_toolbox): change to always use menus_get_toolbox_menubar
907         even when using gnome menus.
908         (create_display_shell): use menus_get_image_menu to load accelerators
909         only -- not the actual popup menu.
911         * app/menus.c (menus_init): new function to create the menus.
912         (menus_get_toolbox_menubar): use this function whether gnome is
913         in use or not.  Changed to use menus_init.
914         (menus_get_image_menu): same here.  Also, now this function always
915         returns the same menu, rather than a new one each time.
916         (menus_init): read a menurc file to load accelerators here.
918 2000-05-28  James Henstridge  <james@daa.com.au>
920         * app/display.c (ddisplay_really_destroy): unset active display if
921         active display is destroyed.
922         (ddisplay_active): simplify function to return active_display as set
923         by display_set_active.  This allows using a pinned menu with any
924         display -- not just the one it was popped up from.
925         (display_set_active): notify the layer dialog of change of diagrams
926         when active diagram changes.
928         * app/disp_callbacks.c (ddisplay_canvas_events): set active display
929         on button and key presses.
930         (ddisplay_realize): set active display on realize.
932         * app/display.c (display_set_active): simple implementation of this
933         function.
935         * app/display.h (display_set_active): add prototype for setting
936         the active display.
938         * app/interface.c (create_display_shell): don't give focus to the
939         menu button.
941         * app/menus.c: fix up menus for Beziergon.
943         * app/interface.c (create_display_shell): make the widget in the
944         top left corner a button that can be used to pop up the right click
945         menu, like in gimp and sketch.
947         * app/disp_callbacks.c (ddisplay_popup_menu): new function to popup
948         the display menu.
950         * objects/standard/beziergon.c (beziergon_set_corner_type_callback):
951         add code to set corner types for beziergon.
953         * lib/beziershape.c (beziershape_set_corner_type): fix up corner type
954         setting code.
955         (beziershape_move_handle): use the previous corner type for right
956         controls.
958         * app/interface.c (tool_data): add beziergon to toolbox.
960         * objects/standard/standard.c (dia_plugin_init): initialise the new
961         Beziergon object type.
963         * objects/standard/beziergon.c: an object based on BezierShape.
965         * lib/dummy_dep.h (dummy_dep): added to dummy_dep.
967         * lib/beziershape.[ch]: new files implementing a bezier shape.
969 2000-05-26  James Henstridge  <james@daa.com.au>
971         * lib/text.c (text_key_event): handle multibyte inserts.
972         (text_key_event): also add home and end keybindings.
974         * app/interface.c (create_display_shell): connect handlers for
975         focus_in_event, focus_out_event, realize and unrealize signals.
977         * app/display.[ch] (new_display): initialise input context members.
979         * app/disp_callbacks.[ch]: added XIM support here.
981         * lib/font.c (suck_font): the black and white pixel values should be
982         taken from a 1 bit colormap rather than the default colormap.
984         Hans Breuer's Windows patches ...
986         * lib/font.c: use Courier New for fixed width font on windows
987         machines.
989         * lib/dia_image.h: change to "struct _DiaImage".
991         * lib/dia_image.c: change "struct DiaImage" to "struct _DiaImage"
993         * app/disp_callbacks.c (ddisplay_canvas_events): allow ctrl+right
994         mouse button for object menu.  This will make two button mouse owners
995         happier.
997 2000-05-25  James Henstridge  <james@daa.com.au>
999         * app/filedlg.c (file_open_ok_callback): use diagram_load here.
1001         * app/app_procs.c (app_init): add extra NULL argument to call of
1002         diagram_load.
1004         * app/load_save.h: remove prototype.
1006         * app/load_save.c: remove diagram_data function here.
1008         * app/diagram.h: added prototype.
1010         * app/diagram.c (diagram_load): new function here, which uses import
1011         filters.
1013         * plug-ins/dxf/dxf.c: register the import filter as well.
1015         * plug-ins/dxf/dxf-import.c: added (unfinished) DXF import filter from
1016         Steffen Macke <macke@heini.fbbwu.fh-lueneburg.de>
1018         * objects/standard/line.c: add start_point and end_point properties
1019         to standard line object.
1021 2000-05-21  James Henstridge  <james@daa.com.au>
1023         * app/paginate_psprint.c: added missing include of locale.h.
1025         * objects/custom/custom_object.c (custom_draw): use fabs rather than
1026         abs for scaling factors.
1027         (custom_distance_from): same here.
1029         * dia.spec: make sure rpm doesn't bomb out when LINGUAS isn't set.
1031 2000-05-18  James Henstridge  <james@daa.com.au>
1033         * po/POTFILES.in: updated POTFILES.in.
1035         * dia.spec: incremented version number in spec file.
1037         * NEWS: added (lots of) news items for the 0.85 release.
1039         * app/preferences.c (prefs_save): set LC_NUMERIC to C while writing
1040         the config file.
1042         * configure.in: updated version number here.
1044         * app/Makefile.am (run_dia.sh): include plug-ins in the lib path.
1046 2000-05-17  James Henstridge  <james@daa.com.au>
1048         * app/app_procs.c (internal_plugin_init): register the native import
1049         filter.
1051         * app/load_save.c (diagram_data_load, diagram_load): split this
1052         function into two -- one that does all the work on the DiagramData
1053         structure, and the other that provides compatibility with the old
1054         function.
1055         (dia_import_filter): use diagram_data_load to define an import
1056         filter.
1058         * app/diagram.h (new_diagram): added const to prototype.
1060         * app/filedlg.c (file_open_callback): change to use new import filter
1061         code.
1063         * lib/filter.c: added import filter management functions.
1065         * lib/filter.h: added prototypes for import filter interface.
1067         * app/commands.c (help_about_callback): updated about dialog to
1068         contain a few more names.
1070 2000-05-16  James Henstridge  <james@daa.com.au>
1072         * configure.in (Configuration): added a status message to the end of
1073         the configure script to give the user some idea of what was
1074         configured.
1076         * plug-ins/dxf/Makefile.am: Makefile for new plugin.
1078         * plug-ins/dxf/dxf.c (dia_plugin_init): added file to initialise the
1079         plugin.
1081         * plug-ins/dxf/dxf-export.c: new file -- Steffen Macke's DXF export
1082         filter for dia.
1084         * configure.in (AM_PATH_LIBART): use the check function provided
1085         with libart rather than our own code.  It is more reliable, and
1086         it only requires that people who build out of CVS have libart.m4
1087         installed (not necessarily all of libart).
1088         (AM_PATH_GDK_PIXBUF): same here for gdk-pixbuf.
1090 2000-05-12  Andreas Hyden  <a.hyden@cyberpoint.se>
1092         * dia.desktop: Added Swedish translation.
1094 2000-05-09  James Henstridge  <james@daa.com.au>
1096         * lib/dia_xml.c: you can't free a const pointer, so remove const
1097         from variable definitions.
1099         Explicitely set LC_NUMERIC where needed, as sometimes it isn't
1100         initialised correctly.
1102         * app/render_svg.c (export_svg): set locale to C.
1104         * app/paginate_psprint.c (paginate_psprint): set locale to C.
1106         * app/render_eps.c (export_eps): set locale to C for EPS export.
1108         * lib/dia_xml.c (data_add_real): change to C locale for snprintf call.
1109         (data_add_point): same here.
1110         (data_add_rectangle): same here.
1111         (data_real): use g_strtod to convert strings to real numbers, so that
1112         locales are taken into account.
1113         (data_point): same here.
1114         (data_rectangle): same here.
1116         * AUTHORS: added Henk and Jacek to authors file.
1118         Daniel Egger's code cleanups.
1120         * app/select.c (select_invert_callback): remove unused variable.
1122         * app/plugin-manager.c (get_plugin_manager): fix typo.
1124         * app/load_save.c (read_connections, write_objects): 
1125         (write_connections): made some functions static.
1127         * app/interface.c (toolbox_delete, toolbox_destroy): made some
1128         functions static.
1130         * app/filedlg.c (file_export_callback): remove unused variable.
1132         * app/app_procs.c: various warning fixes.
1134         Integrating Jacek Pliszka's pstricks export filter.
1136         * plug-ins/pstricks/pstricks.c: code to initialise the plugin.
1138         * plug-ins/pstricks/render_pstricks.[ch]: Jacek Pliszka's pstricks
1139         renderer (with a few small modifications by me).
1141         * plug-ins/pstricks/Makefile.am: new makefile for pstricks plug-in.
1143         * plug-ins/Makefile.am (SUBDIRS): add pstricks subdirectory.
1145 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
1147         * configure.in:
1148         * sheets/Makefile.am:
1149         * shapes/Makefile.am:
1150         * shapes/Civil/Makefile.am:
1151         * sheets/civil.sheet:
1152         * shapes/Civil/*:
1153         Added civil/hydraulic/structural engineering objects from
1154         sdteffen <macke@heini.fbbwu.fh-lueneburg.de>.
1155         
1156 2000-05-07  Alexander Larsson  <alla@lysator.liu.se>
1158         * objects/FS/flow-poly.c:
1159         * objects/FS/flow.c:
1160         Fix division by zero in point_normalize().
1161         Patch by David Thompson <dcthomp@mail.utexas.edu>
1163 2000-04-27  Lars Clausen  <Lars R. Clausen <lrclause@cs.uiuc.edu>>
1165         * lib/arrows.c:
1166         * lib/bezier_conn.c:
1167         * lib/connpoint_line.c:
1168         Added checks for zero-length lines before calls to point_normalize.
1170 2000-04-24  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1172         * app/preferences.c (prefs_data): Changed
1173         reversed_dragging_intersects to not make the dialog ridiculously
1174         wide.
1175         
1176 2000-04-22  James Henstridge  <james@daa.com.au>
1178         Hans's win32 patches:
1180         * app/export_png.c: include message.h
1181         * app/interface.c: include dia_dirs.h
1182         * app/linewidth_area.c: check for rint
1183         * app/main.c: include interface.h
1184         * app/paginate_psprint.c: remove unused variable.
1185         * app/preferences.c: include message.h
1186         * app/render_svg.c: include stdlib.h
1187         * app/select.c: include object_ops.h
1188         * lib/dia_dirs.c: miscelaneous fixes for win32.
1189         * lib/dia_image.c: include string.h
1190         * lib/plug-ins.c: look for .dll files rather than .la files on win32.
1191         * lib/properties.c: include stdlib.h
1192         * lib/properties.h: define extra data for standard properties as
1193         static variables on win32 (to get around dynamic linker problems).
1194         * objects/standard/polygon.c: polygon_create_change missing return
1195         statement.
1197 2000-04-18  Pablo Saratxaga <pablo@mandrakesoft.com>
1199         * configure.in (ALL_LINGUAS): added Catalan
1201 2000-04-18  James Henstridge  <james@daa.com.au>
1203         * objects/standard/bezier.c (bezierline_get_object_menu): add a
1204         separator to the object menu between the add/remove segment items
1205         and the corner type items.
1206         (bezierline_get_object_menu): add code to disable the menu item for
1207         the current corner type.  Really just a cosmetic change.
1209         * app/disp_callbacks.c (create_object_menu): handle DiaMenuItems with
1210         a NULL for the label or with no associated callback.
1212         * objects/standard/bezier.c (bezierline_menu_items): use the
1213         enumeration values rather than numeric values for the corner types.
1215         * lib/bezier_conn.[ch]: added a corner_types member to the BezierConn
1216         structure, and add code to handle it.  Also, don't save the corner
1217         types inline in the bez_points node.  The way it is conditionally
1218         including the element just feels like it will break.
1220         * lib/geometry.h (BezPoint): removed the corner_type stuff from
1221         BezPoint.  The corner type stuff is a user interface level idea rather
1222         than something required by the renderer, so should be taken care of
1223         at the object level.
1225 2000-04-17  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1227         * configure.in: Fixed some problems with the gdk-pixbuf/imlib
1228         checks.  Weren't able to reproduce original bug, tough.
1230 2000-04-16  Cyrille Chepelov  <chepelov@calixo.net>
1232         * sheets/Electric.sheet:
1233         * sheets/Contact.sheet:
1234         * sheets/Pneumatic.sheet:
1235         * sheets/Circuit.sheet: sprayed some <br/>'s around.
1236         (added a few French translations in the last file)
1237         
1238 2000-04-16  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1240         * lib/geometry.h: 
1241         * lib/bezier_conn.h: 
1242         * objects/standard/bezier.c: 
1243         * lib/bezier_conn.c: Support for cuspy, smooth and symmetric
1244         bezier points.  Only one minor problem known:  Menus are active
1245         for endpoints minor handles.
1246         11:28: Save and load now works, too.
1247         (bezierconn_closest_major_handle): 12:03: New function to get the
1248         non-control point handle associated with the nearest control
1249         point.  
1250         Also fixed the menu activation problem, and made remove_segment
1251         not remove the endpoint.
1253 2000-04-15  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1255         * configure.in: Added check for gdk-pixbuf being >= 0.7.0 since
1256         new API is in use.
1258 2000-04-15  Asbjorn Pettersen  <asbjornP@dualog.no>
1260         * lib/plug-ins.c: Added <sys/types.h> and moved <fcntl.h> below
1261         <sys/stat.h>.   OS/2 patch.
1263 2000-04-15  James Henstridge  <james@daa.com.au>
1265         * objects/FS/flow-ortho.c, objects/FS/function.c: Applied David
1266         Thompson's patch that adds undo support to the function structure
1267         diagram objects.
1269 2000-04-14  James Henstridge  <james@daa.com.au>
1271         * objects/custom/custom_object.c (custom_distance_from): new
1272         implementation of distance algorithm that actually takes the
1273         display list into account when calculating the distance.  Much nicer
1274         than a simple bounding box.
1276 2000-04-13  Lars Clausen  <lrclause@cs.uiuc.edu>>
1278         * lib/geometry.c (line_crosses_ray): Fixed division by zero bug
1280 2000-04-12  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1282         * objects/standard/polygon.c: Start of polygons own changes (for
1283         connectionpoints).  Need to do seperate changes in polyshape, too,
1284         rather than reuse the bezier changes.
1286 2000-04-13  James Henstridge  <james@daa.com.au>
1288         * lib/dia_image.c (dia_image_draw): use the new enumeration values
1289         from after the gdk-pixbuf cleanup.
1291         * lib/geometry.c (bez_point_distance_and_ray_crosses): fix up limit
1292         on for loop.  Last set of coefficients were not beeing calculated,
1293         which caused a bit of breakage.
1295         * lib/bezier_conn.c (bezierconn_closest_segment): use the new
1296         functions in geometry.c for calculating the closest segment.
1297         (bezierconn_distance_from): use distance_bez_line_point to calculate
1298         the distance.
1300         * lib/geometry.c (distance_bez_line_point): new function to calculate
1301         the distance from an open bezier line to a point.
1302         (distance_bez_shape_point): new function to calculate the distance
1303         from a closed bezier shape.
1304         (distance_ellipse_point): new function to calculate the distance from
1305         a filled ellipse to a point.
1307         * lib/geometry.h (BezPoint): moved this structure here from render.h
1309 2000-04-12  James Henstridge  <james@daa.com.au>
1311         * lib/geometry.c (distance_bez_seg_point): new function to calculate
1312         the distance from a bezier segment.
1314         * lib/polyshape.c (polyshape_distance_from): use distance_polygon_point
1315         to calculate the distance from the object.
1317         * lib/geometry.c (distance_polygon_point): function for calculating
1318         the distance from a polygon to a point.
1320 2000-04-12  Cyrille Chepelov  <chepelov@calixo.net>
1322         * app/interface.c:
1323         * lib/sheet.[ch]: added a <br/> tag in sheet files, so that line 
1324         breaks can be inserted in the tool box. 
1326         * doc/sheet.dtd: updated the DTD
1327         * sheets/GRAFCET.sheet: tried <br/> on that sheet (more to come).
1328         
1329 2000-04-12  James Henstridge  <james@daa.com.au>
1331         * app/plugin-manager.c (get_plugin_manager): use the GTK_DIALOG
1332         macro if the dialog is a GtkDialog :(
1334 2000-04-11  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1336         * objects/standard/polygon.c: Connectionpoints now properly
1337         managed in a GList.  As far as I can tell, this will not dieturb
1338         the order (but I have the nagging doubt...)
1340         * lib/polyshape.c: No longer knows about connectionpoints.
1342 2000-04-11  James Henstridge  <james@daa.com.au>
1344         * app/Makefile.am: fix makefile for bonobo build.
1346         * configure.in: fix checks for bonobo.
1348         * app/menus.c: added entries for the plugin manager.
1350         * app/Makefile.am (dia_core_files): added plugin manager to files
1351         list.
1353         * app/plugin-manager.[ch]: the plugin manager dialog.
1355         * app/display.c (display_update_menu_state): set the antialiased
1356         menu entry to the correct value.
1358 2000-04-11  Cyrille Chepelov  <chepelov@calixo.net>
1360         * objects/custom/custom_object.c: not all renderers like ellipses with
1361         negative dimensions. This could cause ellipses to disappear when using
1362         the flip_h and flip_v functions.
1364         * samples/grafcet.dia: fixed speling and correctness.
1365         
1366 2000-04-11  James Henstridge  <james@daa.com.au>
1368         * lib/plug-ins.[ch]: added more accessors for use by a plugins dialog.
1369         exposed the dia_plugin_load and dia_plugin_unload functions.
1371         * lib/plug-ins.c (plugin_load): change plugin_load to work on an
1372         already created PluginInfo structure.
1374         * app/app_procs.c (app_exit): call dia_pluginrc_write() to write
1375         the pluginrc file.
1377         * lib/sheet.c: fix up call to dia_config_filename.
1379         * lib/plug-ins.[ch]: started writing code for handling a pluginrc
1380         file.  This would save information such as which plugins not to
1381         load during startup.
1383 2000-04-09  James Henstridge  <james@daa.com.au>
1385         * lib/sheet.c: use dia_config_filename to resolve file in ~/.dia.
1387 2000-04-10  Alexander Larsson  <alla@lysator.liu.se>
1389         * lib/plug-ins.c (dia_register_plugins):
1390         Don't free the value returned from g_getenv.
1392 2000-04-09  Anders Carlsson  <andersca@gnu.org>
1394         * app/preferences.h: Add reverse_rubberbanding_intersects preference variable.
1396         * app/preferences.c (prefs_data): Add reverse_rubberbanding_intersects preference data.
1398         * app/modify_tool.c (modify_button_release): If rubberbanding is done from 
1399         right to left, select objects that intersect the rubberbanding rectangle
1400         instead of selecting objects that are in the rectangle.
1402         * lib/diagramdata.c (layer_find_objects_intersecting_rectangle): Add function.
1404         * lib/diagramdata.h: Likewise.
1407 2000-04-09  James Henstridge  <james@daa.com.au>
1409         * lib/plug-ins.[ch]: add copyright messages to files.
1411         * plug-ins/cgm/cgm.c (dia_plugin_init): convert plugin over to new
1412         plugin interface.
1414         * objects/sybase/sybase.c (dia_plugin_init): 
1415         * objects/network/network.c (dia_plugin_init): 
1416         * objects/flowchart/flowchart.c (dia_plugin_init): 
1417         * objects/custom/custom.c (dia_plugin_init): 
1418         * objects/chronogram/chronogram.c (dia_plugin_init): 
1419         * objects/UML/uml.c (dia_plugin_init): 
1420         * objects/SADT/sadt.c (dia_plugin_init): 
1421         * objects/GRAFCET/grafcet.c (dia_plugin_init): 
1422         * objects/FS/fs.c (dia_plugin_init): 
1423         * objects/ER/er.c (dia_plugin_init): updated plugin load code for
1424         object libraries.
1426         * objects/standard/standard.c (dia_plugin_init): change over to new
1427         plugin interface.
1429         * lib/plug-ins.h (DIA_PLUGIN_CHECK_INIT): added a macro to define
1430         the version checker for plugins.
1432         * app/app_procs.c: remove plugin loading code from here, and use
1433         code from plug-ins.[ch].  Also move registration of internal
1434         objects/filters to a `builtin' plugin.
1436         * lib/Makefile.am (libdia_a_SOURCES): added plug-ins.[ch] to library.
1438         * configure.in: use AC_PROG_LIBTOOL rather than AM_PROG_LIBTOOL.
1440         * app/Makefile.am (EXTRA_DIST): you can't include a conditionally
1441         defined variable in EXTRA_DIST.
1443         * app/preferences.h: removed dia_config_filename from header.
1445         * app/preferences.c: removed dia_config_filename function.
1447         * lib/dia_dirs.c (dia_config_filename): moved function over to this
1448         file.  Also changed implementation slightly so that it should work
1449         on the win32 port correctly (and use NT home directories).
1451         * lib/dia_dirs.h (dia_config_filename): move dia_config_filename where
1452         it should have been.
1454         * lib/plug-ins.[ch]: new plugin loading code.
1456 2000-04-08  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1458         * objects/standard/polygon.c: Fixed startup crash bug (do'h!).
1460         * lib/polyshape.c: Fix closest segment finding, exposes deeper
1461         bugs in adding corners to 'wraparound' segment.
1463         * objects/standard/polygon.c: Added connection points (fixed so
1464         far), set menu sensitivity.
1466         * lib/polyshape.c: Changed to box-style handles, fixed for start
1467         and ends not being special, added initial connections,
1469         * lib/dummy_dep.h: Added polyshape (gotcha!)
1471         * objects/standard/pixmaps/ellipse.xpm: 
1472         * objects/standard/pixmaps/box.xpm: 
1473         Filled element pixmaps with white.
1475         * lib/polyshape.c: 
1476         * objects/standard/polygon.c: 
1477         * lib/polyshape.h: 
1478         * objects/standard/standard.c: 
1479         * objects/standard/Makefile.am (libstandard_objects_la_SOURCES): 
1480         * lib/Makefile.am (libdia_a_SOURCES): 
1481         * app/menus.c: 
1482         * app/interface.c (tool_data): 
1483         Added Standard/Polygon object and PolyShape lib object.  Still
1484         needs inside grab and connection points.
1486         * app/commands.c (help_about_callback): Now uses gdk-pixbuf if
1487         available. 
1489         * configure.in: Made imlib a fallback if gdk-pixbuf is absent or
1490         not wanted.
1492         * app/app_procs.c (app_init): Moved gtk_init outside #ifdef, moved
1493         if (argv) outside ifdefs.
1495 2000-04-04  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1497         * objects/standard/image.c (image_set_props): 
1498         Aspect ratio is back in town.
1500         * app/Makefile.am (dia_LDADD): 
1501         * acconfig.h: 
1502         * configure.in: 
1503         Check for gdk_pixbuf (by default disabled, for now)
1505         * app/render_eps.c (draw_image): 
1506         * app/render_libart.c (draw_image): 
1507         * app/render_gnomeprint.c (draw_image): 
1508         Support for alpha mask in rendering.  Color postscript, too.
1510         * lib/dia_image.c: 
1511         * lib/dia_image.h: 
1512         Support for gdk_pixbuf and proper masking for exports.
1514 2000-04-01  Kjartan Maraas  <kmaraas@online.no>
1516         * sheets/*.sheets: Updated Norwegian translations.
1517         
1518 2000-03-30  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
1520         * lib/text.c (text_insert_char): 
1521         * lib/render_store.c (add_data): 
1522         Made realloc double the alloced space rather than add
1523         a fixed amount, to reduce memory stress.
1525         * app/select.c: Added new select method 'Transitive'
1526         that select every reachable (by connections) object.
1528 2000-03-27  Kjartan Maraas  <kmaraas@online.no>
1530         * dia.desktop: Added Norwegian translation.
1531         
1532 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
1534         * app/render_eps.c:
1535         * app/render_svg.c:
1536         Don't dereference NULL pointer if the renderer
1537         couldn't open the file. Fix by Lars Clausen.
1538         Bug reported by Martin Chisholm <b1mt@unb.ca>
1539         
1540 2000-03-26  Alexander Larsson  <alla@lysator.liu.se>
1542         * dia.desktop:
1543         * po/pt.po:
1544         Updated pt translation from Pedro Morais <pmmm@rnl.ist.utl.pt>
1546 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
1548         * app/dia.gnorba (location_info):
1549         Changed to correct executable name.
1551 2000-03-25  Alexander Larsson  <alla@lysator.liu.se>
1553         * app/app_procs.c:
1554         Don't do any argument parsing or initialization
1555         if argv==NULL.
1557         * app/dia_embedd.c:
1558         Call init_server_factroy before app_init.
1559         Call app_init with argv==NULL
1560         Now we don't get any critical error on startup.
1562         * configure.in:
1563         Add Electric and Pneumatic to makefile list.
1564         
1565 2000-03-24  Cyrille Chepelov <chepelov@calixo.net>
1567         * shapes/Electric/*:
1568         * sheets/Electric.sheet:
1569         Add some Electric circuit shapes.
1571         * shapes/Pneumatic/*:
1572         * sheets/Pneumatic.sheet:
1573         Add some Pneumatic & Hydraulic circuit shapes
1574         (both sheets are still incomplete, though feature enough 
1575         things for basic circuits).
1577         * shapes/Contact/l_*.(xpm|shape):
1578         * sheets/Contact.sheet
1579         * shapes/Contact/Makefile.am
1580         made the older electric circuit shapes in Contact obsolete (disabled
1581         them in the sheet, made that sheet Ladder only). Fixed the makefile
1582         for forgotten items.
1583         
1584 2000-03-24  Alexander Larsson  <alla@lysator.liu.se>
1586         * app/Makefile.am:
1587         Add support for Dia bonobo component.
1588         Currently a bit raw, so it's commented out.
1589         
1590         * app/dia_embedd.c:
1591         * app/dia.gnorba:
1592         New files for embedding dia.
1593         The menu disabling hack is a bit gross. Esp. for GNOME.
1595         * app/app_procs.h:
1596         Add new function app_is_embedded();
1598         * app/diagram.c:
1599         Don't destroy diagram when last display is destroyed if embedded.
1600         
1601         * app/display.c:
1602         Change initialization of display so it works with embedding.
1604         * app/display.h:
1605         Clarify comment about display destruction.
1607         * app/interface.[ch]:
1608         Added top_level_window argument to create_display_shell.
1609         Don't open a top-level window if embedding.
1610         Don't quit app if trying to close toolbox window when embedding.
1611         Add toolbox_show() and toolbox_hide().
1613         * app/main.c:
1614         Added app_is_embedded() function (just returns false).
1615         Added toolbox_show() call in main().
1617         * app/menus.c:
1618         Added code for getting toolbox menus. This is used to
1619         hide some menu items when running embedded.
1620         
1621         * app/app_procs.c:
1622         Include sheet.h to remove warning.
1624         * objects/UML/association.c:
1625         Clarify association direction text.
1626         
1627 2000-03-16  Fredrik Hallenberg  <hallon@lysator.liu.se>
1629         * dia.1
1630         Fixed man page so whatis parsing works.
1632 2000-03-12  Alexander Larsson  <alla@lysator.liu.se>
1634         * app/render_libart.c (new_libart_renderer):
1635         Fix from segg <segg@infonet.ca> to compile without libart.
1636         I forgot to change the stub for new_libart_renderer when doing
1637         the interactive renderer stuff for libart.
1639 2000-03-11  Alastair McKinstry  <mckinstry@computer.org>
1641         * dia.desktop: Added Irish translation.
1642         
1643         * configure.in (ALL_LINGUAS): Added Irish (ga) translation.
1645 2000-03-07  Asbjorn Pettersen  <asbjornP@dualog.no>
1647         * app/load_save.c (fchmod): OS/2 defines only.
1649 2000-03-07  James Henstridge  <james@daa.com.au>
1651         * lib/properties.c (prop_get_widget): set the position in the option
1652         menu correctly.
1654 2000-03-06  Alexander Larsson  <alla@lysator.liu.se>
1656         * app/display.c:
1657         * app/export_png.c:
1658         * app/render_libart.[ch]:
1659         Don't export png:s with an interactive libart renderer.
1661 2000-03-03  Asbjorn Pettersen  <asbjornP@dualog.no>
1663         * lib/arrows.c (finite): define finite(d) isfinite(d)  for OS/2
1665 2000-03-02  James Henstridge  <james@daa.com.au>
1667         * dia.spec (%build): unset LINGUAS before running configure.  This
1668         ensures that all translations get included in the RPM.
1670         * lib/properties.c (object_create_props_dialog): put in a check for
1671         a NULL return from the describe_props() object method.
1672         (prop_desc_lists_union): make sure that the returned array is not
1673         NULL.
1674         (prop_desc_lists_intersection): same here.
1676 2000-02-29  Alexander Larsson  <alla@lysator.liu.se>
1678         * objects/ER/Makefile.am:
1679         * objects/FS/Makefile.am:
1680         * objects/UML/Makefile.am:
1681         Don't link object libs with gtk.
1683 2000-02-29  James Henstridge  <james@daa.com.au>
1685         * app/preferences.c (prefs_save): check to see if the file could
1686         be opened before writing the prefs.
1688         * app/disp_callbacks.c (popup_object_menu): pass the button event
1689         to gtk_menu_popup.  This allows you to click and release to open
1690         the object menu.
1691         (ddisplay_canvas_events): same here.
1692         (create_object_menu): set the object type menu item in the object
1693         menu to be insensitive.
1695         * app/render_svg.c (draw_string): call xmlEncodeEntitiesReentrant,
1696         as we are now requiring a new version of libxml.
1698         * dia.spec: updated version number.  Added requirement for
1699         libxml >= 1.8.5
1701         * configure.in: incremented version number to 0.84.
1702         Added check for libxml >= 1.8.5.  This will prevent some of the
1703         problems people have had with broken libxml versions.
1705         * NEWS: added news items.
1707         * app/interface.c (create_color_area): removed call to realize parent
1708         widget.  Segg <segg@infonet.ca> reported that it caused a warning,
1709         but I haven't seen it on my copy of dia.
1711 2000-02-28  James Henstridge  <james@daa.com.au>
1713         * app/export_png.c: added copyright notice, and made the band height
1714         a constant.
1716 2000-02-27  Alexander Larsson  <alla@lysator.liu.se>
1718         * lib/font.c (suck_font):
1719         Fixed off-by one bug in font pixmap height.
1720         Fixes the problem with garbage at the bottom of some text in aa mode
1721         and in png exported files.
1723 2000-02-27  James Henstridge  <james@daa.com.au>
1725         * app/app_procs.c: add the png export filter if it was compiled in.
1727         * app/export_png.c (export_png): new PNG export filter.  This requires
1728         the libart renderer to work as it needs a renderer that renders to a
1729         pixel buffer.
1731         * configure.in: add check for libpng.
1733         * lib/message.c (message_internal): use a GNOME dialog here as well.
1735         * app/display.c (ddisplay_close): use a GNOME dialog here.
1737         * app/render_eps.c (create_eps_renderer): use diagram scaling factor
1738         when exporting to EPS.  This is because some people said the EPS
1739         output was too large
1741 2000-02-26  James Henstridge  <james@daa.com.au>
1743         * app/defaults.c (create_dialog): use a GNOME dialog for the defaults
1744         window.
1746         * app/app_procs.c (app_exit): use a GNOME dialog here.
1748         * app/preferences.c (prefs_create_dialog): if GNOME support is
1749         enabled, show a GNOME dialog.
1751         * app/grid.c (grid_draw): use preferences when drawing page break
1752         lines.
1754         * app/preferences.c: add page break preferences to dialog.
1756         * app/preferences.h: added page break preferences.
1758 2000-02-25  James Henstridge  <james@daa.com.au>
1760         * sheets/UML.sheet: added new objects.
1762         * objects/UML/uml.c: link in the two new objects.
1764         * objects/UML/node.c: 
1765         * objects/UML/branch.c: new UML objects from Stfan Seefeld
1766         <seefelds@magellan.umontreal.ca>.
1768 2000-02-24  James Henstridge  <james@daa.com.au>
1770         * objects/custom/custom_object.c: converted to use the properties
1771         interface.  In the future, it would be nice to add support for
1772         defining custom properties for custom objects, but that can wait.
1774 2000-02-22  James Henstridge  <james@daa.com.au>
1776         * sheets/Circuit.sheet: added new circuit shapes to sheet.
1778         * plug-ins/cgm/cgm.c: cgm plugin updates from Henk Jan Priester
1779         <hj@justcroft.com>.  Fixes number encoding, colour encoding, fonts
1780         and adds a few new features.
1782 2000-02-21  Daniel Egger  <egger@suse.de>
1784         * sheets/*.sheets: Added German translations and made some
1785         corrections to the others.
1786         
1787 2000-02-21  James Henstridge  <james@daa.com.au>
1789         * shapes/Circuit/Makefile.am (SHAPES): added new shapes to list.
1791         * shapes/Circuit/...: added new shapes from Erik Janssens.
1793 2000-02-20  James Henstridge  <james@daa.com.au>
1795         * app/interface.c (create_color_area): realize the parent window
1796         first.
1798         * objects/standard/image.c: properties patch for standard image
1799         object, from Lars Clausen.
1801         * lib/properties.c: support for PROP_TYPE_FILE from Lars Clausen.
1803         * lib/properties.h (PropType): added file property type.
1805         * shapes/Circuit/speaker_de.xpm: changed size of pixmap to match
1806         other shapes.
1808         * app/interface.c: use wrap box for toolbox.
1810         * app/Makefile.am: added new files.
1812         * app/gtk*wrapbox.[ch]: added wrap box widget.
1814 2000-02-19  James Henstridge  <james@daa.com.au>
1816         * sheets/network.sheet: added extra shapes to networks sheet.
1818         * configure.in (AC_OUTPUT): added shapes/network/Makefile
1820         * shapes/network/*: added shapes that were posted to the list a while
1821         back.
1822         
1823         * shapes/Makefile.am (SUBDIRS): added network subdirectory
1825         * app/menus.c (toolbox_menu_items): don't right justify help menu for
1826         gtk+ version of menus.
1828         * app/properties.c (create_dialog): use a GnomeDialog if we happen
1829         to be using gnome.
1831 2000-02-18  James Henstridge  <james@daa.com.au>
1833         * objects/flowchart/box.c: set extra data for corner radius and text
1834         padding properties.
1836         * objects/standard/box.c: set extra data for corner radius property.
1838         * lib/properties.h: set extra data in some standard properties.
1840         * lib/properties.c (prop_get_widget): look at the extra data for
1841         int, real and enum property types.  They now use GtkSpinButton and
1842         GtkOptionMenu respectively.
1844         * lib/properties.h: extra data members for creating property setting
1845         widgets.
1847 2000-02-17  James Henstridge  <james@daa.com.au>
1849         * objects/flowchart/box.c: reverted load/save functions back to
1850         previous implementations.  Made box use standard property names.
1852         * plug-ins/cgm/cgm.c (set_linestyle): was missing a */
1854         * app/grid.c: add more digits to the grid edit dialog.  This patch
1855         was also from Lars Clausen.
1857         * objects/standard/zigzagline.c: 
1858         * objects/standard/textobj.c:
1859         * objects/standard/polyline.c:
1860         * objects/standard/line.c:
1861         * objects/standard/ellipse.c:
1862         * objects/standard/box.c: 
1863         * objects/standard/bezier.c: 
1864         * objects/standard/arc.c: patches to add properties code to standard
1865         objects.  Based on patches from Lars Clausen.  I have also removed
1866         some dead code from the files.
1868         * lib/properties.h (PROP_STD_*): define a number of standard
1869         properties.  Where appropriate, objects should include these
1870         properties in their PropDescription list.  This way, the intersection
1871         of properties of two different shapes will be greater.
1873 2000-02-14  James Henstridge  <james@daa.com.au>
1875         * objects/flowchart/box.c (box_load, box_save): use property save
1876         routines.  Make sure that any props not handled by object_load_props
1877         are loaded before calling object_load_props, or we get errors because
1878         update_data is called.
1880         * lib/properties.c (object_get_props_from_offsets): fixed an indexing
1881         error that could cause properties to be loaded incorrectly.
1882         (object_set_props_from_offsets): similar here.
1884         * lib/properties.[ch] (prop_{load,save}): functions for loading
1885         or saving a property in Dia's XML file format.
1886         (object_{load,save}_props): load or save some properties of an
1887         object.  These functions should help simplify the load/save methods
1888         of objects that implement the properties interface.
1890 2000-02-13  James Henstridge  <james@daa.com.au>
1892         * objects/flowchart/box.c: use offset code to simplify property
1893         get/set routines.
1895         * lib/element.h (ELEMENT_COMMON_PROPERTIES): standard element
1896         properties.
1897         (ELEMENT_COMMON_PROPERTIES_OFFSETS): offsets.
1899         * lib/object.h (OBJECT_COMMON_PROPERTIES): list of standard object
1900         properties.
1901         (OBJECT_COMMON_PROPERTIES_OFFSETS): the offsets of the properties.
1903         * lib/properties.[ch] (object_{get,set}_props_from_offsets): new
1904         functions 
1906 2000-02-12  Alexander Larsson  <alla@lysator.liu.se>
1908         * app/Makefile.am:
1909         Add the custom object to DIA_LIB_PATH in run_dia.sh
1911 2000-02-10  Cyrille Chepelov  <chepelov@calixo.net>
1913         * sheets/Circuit.sheet:
1914         * shapes/l_sout* (NEW):
1915         * shapes/l_outj.* (NEW): added new outputs : jump, and the power-saved
1916         variants of simple, inverted, set and reset outputs.
1917         Still to do: all Schneider/Telemecanique TSX *7 function blocks ; 
1918         probably a split of Contact and Ladder sheets. And then a major 
1919         revamping of the Contact sheet.
1921 2000-02-10  James Henstridge  <james@daa.com.au>
1923         * app/Makefile.am (dia_LDADD): don't link with libcustom_objects.
1925         * app/app_procs.c (register_all_objects): don't explicitely
1926         register the custom objects library -- let it be loaded by the
1927         normal plugin loading methods.
1929         * lib/Makefile.am (libdia_a_SOURCES): don't include custom.h here.
1931         * objects/custom/Makefile.am: build libcustom_objects as a shared
1932         library again.
1934         * objects/custom/shape_info.[ch]: don't read the description field
1935         of custom shapes.  It makes more sense to have these in the sheet
1936         file to localise the parts of dia that translators have to deal
1937         with.
1939         * objects/custom/custom_object.c (custom_object_new): do not
1940         create the sheet object for the new custom shape -- this is
1941         handled by the custom sheet code.
1943         * objects/custom/custom.c: change over to being a normal plug-in
1944         rather than being linked with the main dia executable.
1946 2000-02-09  James Henstridge  <james@daa.com.au>
1948         * sheets/Circuit.sheet: 
1949         * sheets/Flowchart.sheet: 
1950         * sheets/Contact.sheet: fixed up sheets.
1952         * objects/custom/custom_object.c (custom_object_new): set the
1953         extra ObjectType fields.
1955         * lib/sheet.c: use extra ObjectType fields when creating sheet
1956         objects.  Give a warning if <shape> tags are found in a sheet
1957         file.  Now the custom sheet code does not know about custom
1958         shapes -- they look like any other object type.
1960         * lib/object.h (ObjectType): added extra members
1962 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
1964         * app/linewidth_area.c:
1965         Added code to set arbitrary line width.
1966         Patch by Lars Clausen <lrclause@cs.uiuc.edu>
1968 2000-02-08  Alexander Larsson  <alla@lysator.liu.se>
1970         * app/linewidth_area.c: 
1971         * lib/font.[ch]:
1972         Add support for font-sucking.
1973         Implementation borrowed from gnome-canvas.
1974         
1975         * app/render_libart.[ch]:
1976         Implement text rendering.
1978 2000-02-07  Alexander Larsson  <alla@lysator.liu.se>
1980         * app/properties.c (create_dialog):
1981         ref and sink no_properties_dialog.
1983 2000-02-07  James Henstridge  <james@daa.com.au>
1985         * app/group.c (group_describe_props): new function.  Return the
1986         intersection of the properties of the contained objects that
1987         implement the describe_props interface.
1988         (group_get_props): implement by iterating through contained objects
1989         and calling their get_props method until all properties have been
1990         set.  Maybe this should go through all objects all the time??
1991         (group_set_props): implement by calling set_props method on all
1992         contained objects.
1993         (group_ops): use standard props dialog creation routines.
1995         * lib/properties.c (prop_desc_lists_intersection): fix implementation
1996         of intersection -- I was using i++ instead of i-- in a for loop :(
1998         * objects/custom/custom.c (custom_register_objects): fix usage
1999         of dia_get_data_directory again.
2001         * lib/sheet.c: fix up use of dia_get_data_directory, so that we
2002         actually read the sheets.
2004 2000-02-06  Alexander Larsson  <alla@lysator.liu.se>
2006         Win32 port by Hans Breuer <Hans@Breuer.org>
2008         * app/Makefile.am:
2009         Remove DATADIR and LIBDIR defines.
2011         * lib/Makefile.am:
2012         Add dia_dirs.c and dia_dirs.h
2013         Added DATADIR and LIBDIR defines.
2015         * lib/dia_dirs.[ch]:
2016         New files for handling special directories.
2018         * app/app_procs.c:
2019         * app/commands.c:
2020         * lib/sheet.c:
2021         * objects/custom/custom.c:
2022         Fix warnings.  Use directory functions.
2024         * app/diagram.h:
2025         Add prototype for diagram_redraw_all.
2027         * app/diaunitspinner.c:
2028         * app/filedlg.c:
2029         * app/interface.c:
2030         * app/preferences.c:
2031         Fix warning.
2033         * app/load_save.c:
2034         Win32 doesn't have mkstemp and fchmod.
2036         * app/paginate_psprint.c:
2037         Win32 calls popen _popen and pclose _pclose.
2038         
2039         * app/arrow.c:
2040         Win32 calls finite _finite.
2042         * lib/color.h:
2043         Win32 needs to dllexport the color vars.
2045         * objects/GRAFCET/step.c:
2046         * objects/chronogram/chronoref.c:
2047         snprintf -> g_snprintf
2049 2000-02-05  James Henstridge  <james@daa.com.au>
2051         * lib/properties.c: more fixes so that it doesn't crash when using
2052         properties.  The undo/redo stuff also works!!
2054         * objects/flowchart/box.c (box_{describe, get, set}_props): test
2055         object where I have implemented the new properties interface
2056         complete with automatic properties dialog generation.
2058         * lib/properties.c (object_apply_props): fixed stupid error when
2059         creating the old_props array.  Also, it no longer frees the props
2060         array -- you will have to do that yourself.
2062 2000-02-04  James Henstridge  <james@daa.com.au>
2064         * app/properties.c (properties_apply): pass object_part to
2065         apply_properties.
2067         * lib/object.h (ApplyPropertiesFunc): added widget argument.
2069         * lib/lazyprops.h (PROPDLG_CREATE): ref and sink properties dialogs
2070         created this way as well.
2072         * objects/*/*.c: ref and sink the properties dialog window for each
2073         widget.  It can't rely on ref count being incremented by
2074         properties_show anymore.
2076         * app/properties.c (properties_show): don't ref the widget before
2077         removing it, or its ref count will increase each time you open the
2078         properties dialog.  Don't unparent the widget, as container_remove
2079         does that for us.
2081         * lib/object.h: fixed up prototypes for new object methods.
2083         * lib/properties.[ch]: added functions for automatically creating
2084         a properties dialog from the output of describe_props, get_props and
2085         set_props.
2086         (object_apply_props): apply properties and return an ObjectChange
2087         structure that can be used for undo.
2089 2000-02-03  Cyrille Chepelov  <chepelov@calixo.net>
2091         * objects/GRAFCET/transition.c: minor leak plugged.
2093         * sheets/GRAFCET.sheet:
2094         * objects/GRAFCET/pixmaps/condition.xpm: (NEW)
2095         * objects/GRAFCET/condition.c: (NEW) added a new object type, action 
2096         conditions.
2097         * objects/GRAFCET/Makefile.am: fixed incorrect dependencies, added
2098         new ones (for condition.c).
2099         * objects/GRAFCET/action.c: added connection points for the conditions.
2100         * samples/grafcet.dia: updated the sample to improve conformance to
2101         IEC 848 and take advantage of dia's new features.
2102         
2103         * lib/geometry.h: (point_get_normed) fixed a typo.
2105 2000-02-02  James Henstridge  <james@daa.com.au>
2107         * lib/object.h: added object functions describe_props, get_props and
2108         set_props.  Do type definitions so that object.h doesn't need to
2109         include properties.h, since properties.h includes object.h.
2111         * lib/properties.[ch]: more hacking.
2113         * po/de.po: updated po file.
2115 2000-01-30  James Henstridge  <james@daa.com.au>
2117         * configure.in: don't add flags to CFLAGS unconditionally.  Instead,
2118         check to see if the C compiler accepts the flag beforehand.
2120         * lib/properties.[ch]: start of properties code.
2122         * shapes/Contact/Makefile.am (SHAPES): fix up makefile.
2124 2000-01-30  Cyrille Chepelov  <chepelov@calixo.net>
2125         
2126         * sheets/GRAFCET.sheet:
2127         * sheets/GRAFCET/etapemc.xpm: (NEW)
2128         * sheets/GRAFCET/etapesp.xpm: (NEW)
2129         * objects/GRAFCET/step.c: Added the macro and
2130         sub-program call step types.
2132         * objects/GRAFCET/receptivity.[ch]: renamed to 
2133         objects/GRAFCET/boolequation.[ch]. 
2134         * objects/GRAFCET/transition.c: changed (Receptivity *) to 
2135         (BoolEquation *)
2137         * lib/connpoint_line.[ch]: 
2138         * objects/chronogram/chronoline.c:
2139         * objects/chronogram/chronoref.c:
2140         * objects/GRAFCET/vergent.c:
2141         * objects/standard/line.c:
2142         * objects/SADT/box.c: Minor CPL interface changes, factored out the
2143         point count adjustment code into the CPL object.
2144         
2145 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
2147         * app/render_libart.c:
2148         Added support for images and bezier curves.
2149         Only text/fonts missing now.
2151         * app/render_gdk.c:
2152         Removed old erronous comment.
2154 2000-01-29  Cyrille Chepelov <chepelov@calixo.net>
2156         * objects/chronogram/chronoline_event.c: removed references to
2157         lround(). Please don't insist, I'm already red of shame.
2158         
2159 2000-01-29  Alexander Larsson  <alla@lysator.liu.se>
2161         * app/render_libart.[ch]:
2162         * app/Makefile.am:
2163         Non-finished libart renderer.
2165         * acconfig.h:
2166         Added HAVE_LIBART flag
2168         * configure.in:
2169         Added libart probe
2171         * app/app_procs.c:
2172         Call gdk_rbg_init().
2174         * app/connectionpoint_ops.c:
2175         * app/disp_callbacks.c:
2176         * app/grid.c:
2177         * app/handle_ops.c:
2178         * app/magnify.c:
2179         * app/modify_tool.c:
2180         Change ddisp->renderer type from RendererGdk * to Renderer *
2181         Draw zoom and select rects in ddisp->canvas->window instead
2182         of ddisp->renderer->renderer->pixmap.
2184         * app/display.[ch]:
2185         Add aa_renderer to DDisplay, and  support for it.
2186         New function ddisplay_set_renderer() for changing renderer.
2187         Add ddisplay_transform_coords_double() function, used by aa renderer.
2188         Change ddisp->renderer type from RendererGdk * to Renderer *
2190         * app/menus.c:
2191         Add antialias to menu.
2192         
2193         * app/commands.[ch]:
2194         add view_aa_callback function
2195         Change ddisp->renderer type from RendererGdk * to Renderer *
2197         * lib/geometry.[ch]:
2198         Added IntRectangle and int_rectangle_union.
2200 2000-01-28  James Henstridge  <james@daa.com.au>
2202         * app/commands.h: removed prototypes.
2204         * app/commands.c: removed the functions that have been moved to
2205         filedlg.c.
2207         * app/filedlg.h: added new prototypes.
2209         * app/filedlg.c (file_open_callback): move open dialog to this
2210         file.  This implementation should remember the current directory
2211         between file loads.
2212         (file_save_as_callback): moved this dialog as well.
2213         (file_save_callback): moved this function here.
2215         * app/paginate_psprint.c (paginate_psprint): if not in fit to mode,
2216         align page boundaries to the origin.
2218         * app/diagram.c (diagram_update_extents): redraw the diagram if the
2219         scaling factor changes while updating the extents.  This is so the
2220         page breaks get redrawn correctly.
2222         * app/pagesetup.c (pagesetup_apply): added diagram_flush call when
2223         applying changes.
2225         * app/grid.c (grid_draw): draw page breaks as well as grid lines.
2226         For normal mode, use (0,0) as the origin.  For `fit to' mode, use
2227         the corner of the bounding box.
2229         * app/pagesetup.c (create_page_setup_dlg): load new paper attributes
2230         into page setup dialog.
2231         (pagesetup_apply): apply new `fit to' attributes to the diagram.
2233         * app/load_save.c (diagram_load): load new paper `fit to' attributes.
2234         (diagram_data_save): save `fit to' data.
2236         * lib/diagramdata.c (new_diagram_data): initialise `fit to' members.
2237         (data_update_extents): when in `fit to' mode, update scale factor
2238         when we update the extents.
2240         * lib/diagramdata.h (PaperInfo): added `fit to' members to PaperInfo
2241         structure.
2243         * .../.cvsignore: added some cvsignore files to quieten cvs.
2244         
2245         * app/pagesetup.c (pagesetup_changed): added code to change the
2246         scaling/fit to values as you change the options in the page setup
2247         dialog.  I haven't added code so that the fit to options are saved
2248         though.
2250         * app/diapagelayout.[ch]: changed the scaling portion of the widget
2251         to make it easier to set a `fit to' style scaling factor.
2253 2000-01-27 Cyrille Chepelov <chepelov@calixo.net>
2254         * lib/neworth_conn.[ch]: (NEW) Temporary (hopefully) fork of orth_conn,
2255         but connpoint_line-based, so that there's a connection point at the 
2256         middle of each segment. Currently only the SADT arrow uses this.
2258         * objects/SADT/* (NEW): SADT (both idf0 and idf1) support.
2259         
2260 2000-01-26 Cyrille Chepelov <chepelov@calixo.net>
2261         * lib/lazyprops.[ch]:(NEW) Added a bunch of macros for loading, 
2262         saving and editing of properties (and default properties). 
2263         See the new objects (GRAFCET, SADT, chonograms) for examples.
2264         For already too hairy stuff, see objects/chronogram/chronoline.c.
2266         * lib/connpoint_line.[ch] (NEW): This subobject manages a line of 
2267         evenly spaced connection points, which the user can add or remove at
2268         will. An object can own several connection point lines. See the SADT
2269         Box, or the GRAFCET vergents for examples.
2271         * lib/dummy_dep.h: added dependencies to new files. Told gcc to keep 
2272         quiet about unused stuff.
2274         * objects/GRAFCET (NEW):
2275         * samples/grafcet.dia (NEW):
2276         Added support for GRAFCET charts. 
2278         * objects/chronogram (NEW):
2279         * samples/chronograms.dia (NEW):
2280         Added support for chronograms (feature requested by Ronald L. Chichest;
2281         I found I'd use it often, too).
2283         * objects/standard/line.c: Replace the middle connectionpoint by 
2284         a whole connection point line, which defaults to one point (hint, 
2285         hint). New Line object menu to take advantage of this. 
2286         "Bothwards" compatibility is preserved (although you may loose 
2287         connections if you load a newer file in a older dia).
2289         * app/lineprops_area.c:
2290         * lib/arrows.[ch]:
2291         * lib/widgets.c: Added hollow and filled ellipse arrow head type. 
2292         (feature requested by Benjamin Kahn).
2293         Merged in Steffen Macke's slashed arrow head type.
2295         * app/Makefile.am (app/run_dia.sh actually):
2296         Added $DEBUGGER in front of dia's invocation, so that
2297         you can call "DEBUGGER=ddd app/run_dia.sh" (maybe naive, but useful).
2298         Added $(EFENCE) to app/dia's LDFLAGS, so that you can do 
2299         "EFENCE=-lefence" to link with Electric Fence.
2301         * configure.in: Made gcc do more aggressive optimisations on i386, and
2302         enabled warnings.
2303         
2304 2000-01-24  James Henstridge  <james@daa.com.au>
2306         * lib/geometry.[ch]: added inline versions of functions.  Used
2307         glib's G_INLINE_FUNC stuff, so it should still work on systems
2308         without inline funcs.
2310         * plug-ins/cgm/cgm.c (draw_ellipse, fill_ellipse): fixed up so that
2311         it outputs the correct element id for the ellipse objects.
2313 2000-01-24 Cyrille Chepelov <chepelov@calixo.net>
2315         * lib/object.[ch]: added object_add_connectionpoint_at, similar to
2316         object_add_handle_at. Message typo fixed.
2317         
2318         * lib/sheet.c (load_register_sheet):
2319         potential bug fixed (warning hunt).
2321         * objects/custom/custom.c (custom_object_load): disabled an assertion
2322         which made dia abort upon failure to load a shape file. Fixed a
2323         subsequent crash. 
2325         * objects/custom/shape_info.c (load_shape_info): Made the custom 
2326         shape load code ignore XML comments between <?xml ...?> and the 
2327         root object (mostly useful to put the emacs magic comments).
2328         
2329         * app/load_save.c: Made dia do backup copies of files when saving,
2330         and complain in case of failure.
2332 2000-01-24  Cyrille Chepelov  <chepelov@calixo.net>
2334         * AUTHORS: fixed my address (ISP thought it was a great idea to change
2335         the domain name)
2336         
2337         * configure.in:
2338         * shapes/Contact:
2339         * shapes/Contact/*:
2340         * sheets/Contact.sheet:
2341         * sheets/Makefile.am:
2342         Added support for Contact and LADDER charts.
2344         * dia.desktop: Added a French translation.
2345         
2346 2000-01-23  James Henstridge  <james@daa.com.au>
2348         * app/commands.c (help_about_callback): don't die if can't load
2349         logo image.
2351         * app/render_gdk.c (bezier_add_lines): sanity check to try to weed
2352         out NaN's when performing bezier curve subdivision.
2354         * objects/custom/custom_object.c: initialise memory of Custom structs
2355         to zero.
2357         * app/render_svg.c (draw_image): added image support to the XML
2358         output filter.  The image is just referenced, rather than being
2359         included inline, so if you copy the SVG file somewhere else, you
2360         may need to move the images or fix up the links.
2362         * plug-ins/cgm/cgm.c (draw_string): output a text colour element,
2363         so the text is not just displayed in black all the time.
2365 2000-01-15  Fredrik Hallenberg  <hallon@lysator.liu.se>
2367         * configure.in: fixed libpopt test so we wont try to build with
2368         too old libpopt.
2370 1999-12-18  Yuri Syrota  <rasta@renome.rovno.ua>
2372         * configure.in: Added "uk" to ALL_LINGUAS.
2374 1999-12-24  James Henstridge  <james@daa.com.au>
2376         * po/ru.po: updated russian translation from Valek Filippov.
2377         
2378         * app/render_svg.c (new_svg_renderer): make output use 19991203
2379         version of SVG DTD.  Use viewBox to set the extents of the view.
2381         * INSTALL (FONTS): updated locations of gnome-xml and imlib.  List
2382         ftp.gnome.org as the download.
2384         * TODO (TODO): weeded out completed todo items and added a few extra.
2386         * Makefile.am (EXTRA_DIST): added documentation to EXTRA_DIST.
2388         * doc/sheet.dtd: first stab at a DTD for the sheet files.  It would
2389         be good to get rid of the object/shape distinction and separate
2390         the custom shape code out from the main application.
2392         * objects/custom/README, diagram.dtd: moved to new doc directory.
2393         Renamed the custom shapes README to custom-shapes.  Also updated
2394         custom shape docs a bit and removed the section on sheet files, as
2395         that has changed a bit.
2397         * plug-ins/cgm/cgm.c (draw_image): give an error if the row length
2398         of the image data is larger than the maximum cell array.  I should
2399         add code to break scan lines down further in this case, but for now
2400         an error message is better than an infinite loop.
2402         * app/filedlg.c (file_export_ok_callback): show a dialog if we
2403         couldn't determine the export filter to use.
2405         * app/commands.c (help_about_callback): fixed up about box logo
2406         expose bug.  Now just use a GtkPixmap widget rather than a
2407         GtkDrawingArea and calling gdk_imlib_paste_image.
2409         * app/Makefile.am (EXTRA_DIST): added print stuff to extra dist,
2410         because automake does not always get things right.
2412         * configure.in: updated version number to 0.83.
2414         * app/preferences.c (prefs_save): 
2415         * app/render_svg.c (new_svg_renderer): "wt" is not a valid flag string
2416         for fopen.  Text is the default file mode anyway.
2418         * app/commands.c (file_save_as_dialog_ok_callback, file_new_callback): 
2419         * app/grid.c (grid_x_update, grid_y_update, grid_show_dialog): 
2420         * app/load_save.c (write_objects, write_connections): 
2421         * app/filedlg.c (file_export_ok_callback): 
2422         * lib/dia_xml.c (data_add_int, data_add_enum, data_add_real): 
2423         * lib/dia_xml.c (data_add_point, data_add_rectangle): 
2424         * lib/font.c (init_x11_font, font_get_gdkfont): changed calls to
2425         snprintf to calls to g_snprintf.
2427         * plug-ins/cgm/cgm.c (export_cgm): write the original dia file name
2428         as the picture name.
2430 1999-12-23  James Henstridge  <james@daa.com.au>
2432         * plug-ins/cgm/cgm.c (write_int32, write_int16): fixed up output of
2433         negative numbers.  This fixes the upside down text problem I was
2434         having previously.
2435         (draw_image): implemented the image code.  It will try to split the
2436         image data up into bands if it is too big to fit into a single
2437         cgm cell array element.  It will have problems if you try to insert
2438         an image wider than about 10,000 pixels though.
2440         * Makefile.am: use gnomedatadir for the files that need to be
2441         installed in gnome's datadir.  This is mainly to help people doing
2442         packages for weird setups.
2444 1999-12-22  James Henstridge  <james@daa.com.au>
2446         * plug-ins/cgm/cgm.c: added support for text.  Now only images and
2447         beziers are left to do.  The text seems to be the wrong way up
2448         still.  This is probably a problem with character orientation
2449         element, but I have used what the settings given in the standard.
2450         Other than this, the CGMs dia produces are readable (and displayable)
2451         by ralcgm and corel draw.
2452         (draw_string): subtract from the X coord rather than the Y coord for
2453         center and right aligned text.
2455         * plug-ins/cgm/cgm.c: a few fixups for the output.  Use REALSIZE as
2456         the size of a real number, and changed name of write_double to
2457         write_real.  Consider changing to fixed real encoding.  Also, now
2458         all element headers are correct.  Once the real number encoding is
2459         fixed, only text, beziers and images are left to do.
2461 1999-12-21  James Henstridge  <james@daa.com.au>
2463         * Makefile.am (SUBDIRS): recurse into plug-ins.
2465         * configure.in: add plug-ins directory makefiles to list.
2467         * plug-ins/cgm/cgm.c: start of cgm export filter.  Beziers and text
2468         not done yet.  Also, the output files are not quite correct.
2470         * app/render_eps.c (print_reencode_font): don't reencode the Symbol
2471         font.  It doesn't work if you do.
2473 1999-12-20  James Henstridge  <james@daa.com.au>
2475         * app/app_procs.c (app_init): don't use diagram_export_to_eps to
2476         export the files.  Instead, use filter_guess_export_filter to
2477         guess the correct format to save in and use the appropriate filter.
2478         It defaults to postscript for compatibility.
2480         * app/diagram.[ch] (diagram_export_to_eps): removed export to eps
2481         function.
2483         * app/commands.[ch]: removed export to eps functions.
2485         * app/menus.c: removed export to eps menu items.
2487         * app/app_procs.c: register new export filters.
2489         * app/load_save.[ch]: define dia native export filter.
2491         * app/render_eps.[ch]: define eps export filter.
2493         * lib/filter.h: added diafilename argument to the DiaExportFunc
2494         prototype.  This is useful for putting the source of the diagram
2495         into the output file for instance.
2497         * app/app_procs.c (app_init): register the SVG export filter.  Have
2498         to get EPS code converted to this API, and maybe also allow saving in
2499         DIA's native format from the export dialog.  In fact, it is now
2500         possible to load an export filter from a shared library and it will
2501         integrate into the interface correctly.
2503         * app/menus.c: removed references to the SVG renderer.
2505         * app/commands.[ch]: removed svg stuff.
2507         * app/diagram.[ch]: removed diagram_export_to_svg function.
2509         * app/render_svg.[ch]: added a DiaExportFilter structure for this
2510         renderer.
2512         * app/filedlg.[ch]: code for the new export diagram dialog.  Will
2513         probably move the open/save dialogs to this file as well.
2515 1999-12-19  James Henstridge  <james@daa.com.au>
2517         * lib/filter.[ch]: start of interface for generalised handling of
2518         filters.  I have only done code for export filters so far.  I still
2519         need to do the gui for this, and convert the current SVG and EPS
2520         filters to the new API.
2522         * lib/bezier_conn.c (bezierconn_copy): fix up copy operation.  We
2523         weren't setting the last handle correctly.  It was actually assigning
2524         to the wrong position in the handles array, so the last handle was
2525         left as NULL, which caused the segfault.
2527         * objects/standard/image.c (image_copy): modified routine so that
2528         it just adds a reference to the DiaImage structure in the new image
2529         object.  This seems to have cleared up the problems with copying
2530         image objects.
2532         * dia.spec: spec file additions from John Gotts.
2534 1999-12-12  James Henstridge  <james@daa.com.au>
2536         * configure.in (GNOME_LIBS): updated version number to 0.82.  0.82
2537         has not been released yet though.
2539         * Makefile.am (EXTRA_DIST): distribute diagram.dtd.
2541         
2542         The following based on a patch from Lars Clausen:
2543         
2544         * objects/standard/bezier.c (bezierline_move_handle): when performing
2545         the initial drag of the bezierline, move the control points to keep
2546         the line straight.
2548         * lib/bezier_conn.c (bezierconn_add_segment): when adding a segment,
2549         make the new control points a bit closer to the major point.
2551         * app/create_object.c (create_object_motion): use HANDLE_MOVE_CREATE
2552         as the reason for the move.
2553         (create_object_button_release): use HANDLE_MOVE_CREATE_FINAL as the
2554         move reason.
2556         * lib/handle.h: new handle move reasons.
2558 1999-12-09  James Henstridge  <james@daa.com.au>
2560         * dia.spec: include the new files in RPMs.
2562         * Makefile.am: install these new files.
2564         * dia.keys.in: file describing actions and icon for dia diagrams for
2565         use in the gnome file manager.
2566         
2567         * dia.mime: a file defining the application/x-dia-diagram mime type.
2568         
2569         * dia-diagram.png: an icon for dia diagrams.
2571 1999-12-08  James Henstridge  <james@daa.com.au>
2573         * plug-ins/python/pydia-diagram.c: added heaps of new methods.
2575         * plug-ins/python/pydia-display.[ch]: wrapper for display.
2577         * objects/standard/ellipse.c: applied Lars's patch to optionally not
2578         draw the background of the ellipse.
2580         * app/load_save.c (read_connections): do some sanity checking on the
2581         handle and connection point numbers before performing the object
2582         connection.
2584         * lib/bezier_conn.c (bezierconn_load): give the correct number of
2585         handles when loading a BezierConn.
2587 1999-12-07  Kjartan Maraas  <kmaraas@online.no>
2589         * sheets/*.sheet: Finished Norwegian translations.
2590         
2591 1999-12-07  James Henstridge  <james@daa.com.au>
2593         * plug-ins/python/diamodule.c (PyDia_Load): load diagram function.
2594         (PyDia_GetObjectType): find object type function.
2596         * plug-ins/python/pydia-diagram.c (PyDiaDiagram_Save): added a save
2597         method for diagrams.
2599         * plug-ins/python/pydia-object.c: added methods for DiaObject and
2600         DiaObjectType.
2602         * AUTHORS: added Lars and Cyrille to the authors file.
2604         * objects/standard/bezier.c (bezierline_add_segment_callback): place
2605         new point correctly.
2607         * lib/bezier_conn.h (bezierconn_closest_segment): fixed prototype.
2609         * lib/bezier_conn.c: applied Lars's patch for placement of the new
2610         point when adding a segment to a BezierConn.
2612 1999-12-06  James Henstridge  <james@daa.com.au>
2614         * plug-ins/python/test.py: test script for the python plug-in.
2616         * plug-ins/python/python.c: this file contains the plug-in startup
2617         code for the python plugin.  Right now, it just initialises the
2618         dia module and executes a script.
2620         * objects/standard/polyline.c (polyline_draw): fix start arrow size.
2622         * objects/standard/bezier.c (bezierline_draw): draw control lines for
2623         bezier curve if we are using an interactive renderer (ie. only if
2624         displaying to the screen).
2626         * lib/bezier_conn.[ch] (bezierconn_draw_control_lines): function
2627         to draw control lines on to a bezier curve.  Based on implementation
2628         from Lars.
2630         * objects/standard/bezier.c (bezierline_delete_segment_callback):
2631         calculate segment number using closest_segment rather than
2632         closest_handle.  Sometimes the closest handle is part of a different
2633         segment.
2634         (bezierline_draw): use correct size for start arrow.
2636         The next few entries are from Peter Moulder <reiter@netspace.net.au>:
2637         * lib/geometry.c (distance_line_point): added notes to documentation
2638         in comment.
2639         * app/object_ops.c (object_list_align_v): 
2640         (object_list_align_h): fix of by one error when calculating free space
2641         for equal distance alignment.
2642         * app/menus.c (objects_align_h, objects_align_v): include align
2643         adjacent menu items in the gnome version of the menus.
2644         * app/diagram.c (diagram_update_menu_sensitivity): set sensitivity on
2645         align adjacent menu items correctly.
2648         * lib/dummy_dep.h (dummy_dep): added bezierconn to dummy dependency
2649         table.
2651         * objects/standard/bezier.c: converted bezierline to use BezierConn.
2652         Still a few bugs.  It crashes on deleting line segments.
2654         * lib/Makefile.am (libdia_a_SOURCES): added BezierConn to libdia.
2656 1999-12-05  James Henstridge  <james@daa.com.au>
2658         * lib/bezier_conn.[ch]: start of BezierConn object
2660         * app/interface.c: add bezierline to toolbox.
2662         * objects/standard/standard.c: initialise bezierline.
2664         * objects/standard/bezier.c: new object from Lars R. Clausen.  I have
2665         made a few modifications to get it working nicely.  It still needs
2666         a bit of work though.  Maybe create a BezierConn object in lib.
2668 1999-12-02  James Henstridge  <james@daa.com.au>
2670         * plug-ins/python/pydia-*.c: fixed compile errors in these files.
2671         
2672         * plug-ins/python/Makefile.am: tried building everything.  It is
2673         building as a library at the moment.  I will have to convert it
2674         to a libtool library and add some initialisation code.
2675         
2676         * plug-ins/python/diamodule.c: start of the dia module, using the
2677         other object wrappers.  Not complete.
2679 1999-12-01  James Henstridge  <james@daa.com.au>
2681         * plug-ins/python/pydia-object.c (PyDiaObject_GetAttr): implement
2682         the handles and connections attributes.
2684         * plug-ins/python/pydia-layer.c: added functions that use
2685         ConnectionPoint's.
2687         * plug-ins/python/pydia-handle.[ch]: wrapper for Handle's.
2689         * plug-ins/python/pydia-cpoint.[ch]: wrapper for ConnectionPoint's.
2691         * plug-ins/python/pydia-*.[ch]: starts of python scripting plug-in.
2692         I am currently wrapping the basic elements in the diagram in python
2693         objects -- nothing to see or play with yet.
2695 1999-11-30  Alexander Larsson  <alla@lysator.liu.se>
2697         * AUTHORS:
2698         * HACKING:
2699         James Henstridge <james@daa.com.au> is now the maintainer of Dia.
2701 1999-11-29  Alexander Larsson  <alla@lysator.liu.se>
2703         * configure.in:
2704         * po/ru.po:
2705         Added russian translation from Valek Filippov <frob@df.ru>
2707 1999-11-24  James Henstridge  <james@daa.com.au>
2709         * sheets/UML/*: 
2710         * sheet/ER/*: moved extra sheet pixmaps back to separate dirs as
2711         discussed with Alex.  Also added extra makefiles so that make install
2712         works correctly.
2714 1999-11-23  Alexander Larsson  <alla@lysator.liu.se>
2716         * app/preferences.[ch]:
2717         * app/display.c:
2718         Added snap to grid preference.
2719         Patch from Michael Leslie <mles@springboardwireless.com>
2721 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
2723         * app/load_save.c:
2724         * lib/dia_xml.c:
2725         * lib/sheet.c:
2726         * lib/text.c:
2727         * objects/custom/shape_info.c:
2728         All strings returned by libxml must be freed with free, not
2729         g_free, or there will be problems if you use memory debugging
2730         in glib.
2731         
2732 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
2734         * app/create_object.[ch]:
2735         * app/menus.c:
2736         * app/tool.[ch]:
2737         * app/commands.[ch]:
2738         * app/pixmaps.h:
2739         * app/interface.[ch]:
2740         Reverted the tool menu patch. It has some 'issues'.
2741         I liked it though, so it'll probably return.
2743 1999-11-21  Alexander Larsson  <alla@lysator.liu.se>
2745         Fixed a lot of memory leaks. Thanks to Bruce Mitchener
2746         <bruce@cybersight.com> for some purify runs and analysis.
2747         Also a great thank you to Owen Taylor for creating MemProf, a
2748         free memory leak detector that was used to find and verify a
2749         lot of these fixes.
2750         
2751         * app/diagram.c:
2752         * app/paginate_psprint.c:
2753         * app/render_eps.[ch]:
2754         * app/render_svg.[ch]:
2755         Free renderers.
2757         * app/interface.c:
2758         Don't add a reference to ddisp->shell. Why was this done in
2759         the first place?
2761         * app/load_save.c:
2762         * lib/dia_xml.c:
2763         * lib/sheet.c:
2764         * lib/text.c:
2765         Free all strings returned from xmlGetProp
2767         * app/modify_tool.c:
2768         Plug leak.
2770         * objects/custom/custom.c:
2771         Use closedir() after opendir().
2773         * objects/custom/shape_info.c:
2774         User g_free() instead of "if (tmp) free(tmp)".
2776         * sheets/ER.sheet:
2777         Add newline at end of file.
2778         
2780 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
2782         Based on patch from Patrick Reynolds <reynolds@cs.duke.edu>
2783         Adds tool menu and keyboard shortcuts.
2785         * app/create_object.[ch]:
2786         Use tool_set() instead of tool_reset().
2787         create_create_object_tool() takes extra type argument
2789         * menus.c:
2790         Add tools menu.
2791         
2792         * tool.[ch]:
2793         Moved tool_data here, export it.
2794         Add separate tool type for all create objects tools.
2795         new functions tool_set().
2797         * commands.[ch]:
2798         New callback tool_set_callback.
2800         * pixmaps.h:
2801         Moved some pixmaps to interface.c.
2802         
2803         * interface.[ch]:
2804         Remove tool_data array (moved to tool.c).
2805         Use the tool_data from tool.c.
2806         Remove modify_tool_button global var.
2807         
2808 1999-11-20  Alexander Larsson  <alla@lysator.liu.se>
2810         Patch from Patrick Reynolds <reynolds@cs.duke.edu>
2811         
2812         * app/app_procs.c:
2813         Interprets command-line arguments as files to open even when
2814         HAVE_POPT is not defined.
2816         * app/magnify.c:        
2817         Shift-clicking when zooming zooms out, like the Gimp.
2819         * app/menus.c:
2820         Has hotkeys for zoom-100% and snap-to-grid.
2822 1999-11-17  James Henstridge  <james@daa.com.au>
2824         * app/scroll_tool.c (scroll_motion): fixed shift style scrolling so
2825         that it is not jumpy.
2827         * app/Makefile.am (EXTRA_DIST): added extra files to extra dist list.
2829         * app/scroll_tool.c (scroll_motion): added `grabbing hand' type
2830         scrolling by pressing the shift key when using the scroll tool.
2832         * sheets/Makefile.am: fixed makefile so that install actually works
2833         if the directories $(pkgdatadir)/sheets/UML and $(pkgdatadir)/sheets/ER
2834         don't exist.
2835         (SHEETS): install Circuit.sheet
2837 1999-11-15  Alexander Larsson  <alla@lysator.liu.se>
2838         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
2840         * sheets/Circuit.sheet:
2841         * sheets/ER.sheet:
2842         * sheets/FS.sheet:
2843         * sheets/Flowchart.sheet:
2844         * sheets/UML.sheet:
2845         * sheets/network.sheet:
2846         * sheets/sybase.sheet:
2847         Changed name space
2849         * sheets/Circuit.sheet:
2850         added some missing French translations
2852         * lib/sheet.c:
2853         killed the temporary sheet namespace
2855         * objects/custom/custom.c:
2856         obsolete comment cleaned up
2858 1999-11-12  Alexander Larsson  <alla@lysator.liu.se>
2860         * configure.in:
2861         * po/pt.po:
2862         Added portugese translation from Pedro Morais
2863         <pmmm@rnl.ist.utl.pt>
2865 1999-11-11  Alexander Larsson  <alla@lysator.liu.se>
2867         Changed all sheets to be specified in xml.
2868         All sheet objects removed from the C code.
2869         Patch from Cyrille Chepelov <chepelov@rmcnet.fr>
2870         
2871         * Makefile.am:
2872         * configure.in:
2873         Adding shapes dir.
2874         Updated version to 0.81cvs.
2875         
2876         * app/Makefile.am:
2877         Update run_dia.sh with sheet-dir.
2878         
2879         * app/app_procs.c:
2880         Load all sheets on startup.
2881         Create sheet directory first time.
2882         Don't call custom_register_sheets().
2884         * lib/Makefile.am:
2885         Add sheetdir define
2887         * lib/custom.h:
2888         Remove custom_register_sheets().
2890         * lib/sheet.[ch]:
2891         Add sheet loading code.
2893         * sheet/Circuit.sheet:
2894         * sheet/ER.sheet:
2895         * sheet/FS.sheet:
2896         * sheet/Flowchart.sheet:
2897         * sheet/UML.sheet:
2898         * sheet/network.sheet:
2899         * sheet/sybase.sheet:
2900         Added sheet files.
2902         * sheet/ER/weakentity.xpm:
2903         * sheet/UML/aggregation.xpm
2904         * sheet/UML/umlclass_template.xpm
2905         Added sheet pixmaps.
2906         These are moved from their old places.
2908         * sheet/.cvsignore:
2909         Shut up cvs.
2911         * objects/*/*.c:
2912         Removed sheet objects and sheet registration.
2913         
2914         * objects/ER/Makefile.am:
2915         * objects/ER/pixmaps/weakentity.xpm:
2916         * objects/UML/Makefile.am:
2917         * objects/UML/pixmaps/aggregation.xpm:
2918         * objects/UML/pixmaps/umlclass_template.xpm:
2919         Removed alternative pixmaps. (Moved to sheet).
2921         * objects/custom/Makefile.am:
2922         * objects/custom/load_sheet.[ch]:
2923         Removed old sheet loading code.
2924         
2925         * objects/custom/custom.c:
2926         Load all shapes instead of sheets.
2927         Removed custom_register_sheets().
2929         * objects/custom/custom_object.c:
2930         Added debug code.
2932         * objects/custom/shape_info.[ch]:
2933         Added shape_info_getbyname().
2935         * objects/flowchart/Makefile.am:
2936         * objects/flowchart/collate.shape            
2937         * objects/flowchart/delay.shape              
2938         * objects/flowchart/display.shape            
2939         * objects/flowchart/document.shape           
2940         * objects/flowchart/extract.shape            
2941         * objects/flowchart/flowchart.c              
2942         * objects/flowchart/intstorage.shape         
2943         * objects/flowchart/magdisk.shape            
2944         * objects/flowchart/magdrum.shape            
2945         * objects/flowchart/magtape.shape            
2946         * objects/flowchart/manualinput.shape        
2947         * objects/flowchart/manualop.shape           
2948         * objects/flowchart/merge.shape              
2949         * objects/flowchart/offlinestore.shape       
2950         * objects/flowchart/offpageconn.shape        
2951         * objects/flowchart/or.shape                 
2952         * objects/flowchart/predefdproc.shape        
2953         * objects/flowchart/preparation.shape        
2954         * objects/flowchart/punchedcard.shape        
2955         * objects/flowchart/punchedtape.shape        
2956         * objects/flowchart/sort.shape               
2957         * objects/flowchart/sumjunction.shape        
2958         * objects/flowchart/terminal.shape           
2959         * objects/flowchart/transaction.shape        
2960         * objects/flowchart/transmittape.shape       
2961         * objects/flowchart/pixmaps/collate.xpm      
2962         * objects/flowchart/pixmaps/delay.xpm        
2963         * objects/flowchart/pixmaps/display.xpm      
2964         * objects/flowchart/pixmaps/document.xpm     
2965         * objects/flowchart/pixmaps/extract.xpm      
2966         * objects/flowchart/pixmaps/intstorage.xpm   
2967         * objects/flowchart/pixmaps/magdisk.xpm      
2968         * objects/flowchart/pixmaps/magdrum.xpm      
2969         * objects/flowchart/pixmaps/magtape.xpm      
2970         * objects/flowchart/pixmaps/manualinput.xpm  
2971         * objects/flowchart/pixmaps/manualop.xpm     
2972         * objects/flowchart/pixmaps/merge.xpm        
2973         * objects/flowchart/pixmaps/offlinestore.xpm 
2974         * objects/flowchart/pixmaps/offpageconn.xpm  
2975         * objects/flowchart/pixmaps/or.xpm           
2976         * objects/flowchart/pixmaps/predefdproc.xpm  
2977         * objects/flowchart/pixmaps/preparation.xpm  
2978         * objects/flowchart/pixmaps/punchedcard.xpm  
2979         * objects/flowchart/pixmaps/punchedtape.xpm  
2980         * objects/flowchart/pixmaps/sort.xpm         
2981         * objects/flowchart/pixmaps/sumjunction.xpm  
2982         * objects/flowchart/pixmaps/terminal.xpm     
2983         * objects/flowchart/pixmaps/transaction.xpm  
2984         * objects/flowchart/pixmaps/transmittape.xpm 
2985         Moved shapes and their pixmaps to shapes/flowchart
2987         * shapes/Circuit/Makefile.am:
2988         * shapes/Circuit/index.sheet:
2989         Removed index.sheet.
2990         
2991         * shapes/Makefile.am:
2992         * shapes/flowchart/Makefile.am:
2993         * shapes/flowchart/*.shape:
2994         * shapes/flowchart/*.xpm:
2995         Added flowchart shapes. (Moved from objects/flowchart)
2996         
2998 1999-11-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
3000         * app/app_procs.c: Fixed popt stuff.
3002 1999-11-01  James Henstridge  <james@daa.com.au>
3004         * shapes/Circuit/[hv]led_de.{shape,xpm}: new circuit shapes from
3005         Andreas Scherf.
3007 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
3009         * dia.spec:
3010         * configure.in:
3011         Update version to 0.81.
3012         
3013         * NEWS:
3014         Update with news for 0.81.
3015         
3016         * shapes/Circuit/*:
3017         * shapes/Circuit_eu/*:
3018         Moved european circuit objects to Circuit sheet.
3020 1999-10-31  Alexander Larsson  <alla@lysator.liu.se>
3021         
3022         * lib/diagramdata.[ch]:
3023         Added layer_set_object_list() function.
3025         * app/undo.[ch]:
3026         Added support for undo of reordered objects.
3027         Fix the undo of delete to keep the right order on undo.
3028         
3029         * app/diagram.c:
3030         changed loop to object_add_updates_list() calls.
3031         Added undo support to bring to front/back.
3033         * app/disp_callbacks.c:
3034         * app/paginate_psprint.c:
3035         Remove warnings.
3037 1999-10-30  Alexander Larsson  <alla@lysator.liu.se>
3039         This plugs some leaks. Thanks to
3040         Bruce Mitchener <bruce@cybersight.com> for running
3041         Dia through purify for me.
3042         
3043         * app/app_procs.c:
3044         Free displays and diagrams on exit.
3046         * app/modify_tool.c:
3047         Free gc when freeing tool.
3049         * lib/diagramdata.c:
3050         Free layer name.
3051         
3052         * app/display.c:
3053         Free update and display lists when destroying display.
3054         
3055         * lib/diagramdata.c:
3056         Don't leak layer name.
3058         * objects/custom/load_sheet.c: 
3059         * objects/custom/shape_info.c:
3060         Free loaded xml documents.
3062 1999-10-28  Alexander Larsson  <alla@lysator.liu.se>
3064         * app/commands.c:
3065         * app/object_ops.[ch]:
3066         Add undo handling to alignment ops.
3067         Based partially on patch by Dan Cohn <dan@internap.com>.
3069         * objects/standard/image.c (image_move_handle):
3070         Don't divide by zero for small images.
3071         Patch by Dan Cohn <dan@internap.com>.
3073         * objects/UML/class.c (umlclass_destroy): 
3074         * objects/custom/custom_object.c (custom_destroy):
3075         Don't free connectionpoints before calling element_destroy
3076         which unconnects them.
3078 1999-10-26  Alexander Larsson  <alla@lysator.liu.se>
3080         * objects/custom/custom_object.c: 
3081         Load and save padding too. Fixes strange load crashes.
3083         * app/group.c (group_destroy):
3084         Don't unconnect already freed connectionpoints when
3085         destroying group. Probably fixes bug reported by
3086         Elliot Lee <sopwith@redhat.com>.
3088         * app/render_gdk.c:
3089         Don't crash on zero-size (broken) bezier curves.
3090         Different sort of fix. This should work on closed bezier curves
3091         too.
3093         * objects/standard/textobj.c:
3094         Activate default properties dialog for Text objects.
3096         * app/render_eps.c: 
3097         * app/load_save.c:
3098         * app/preferences.c:
3099         * app/render_svg.c:
3100         fopen files in binary or text mode.
3102 1999-10-26  Alexander Larsson  <alex@cendio.se>
3104         * app/render_gdk.c (bezier_add_lines):
3105         Don't crash on zero-size (broken) bezier curves.
3106         Fixes a crashing bug.
3108 1999-10-25  James Henstridge  <james@daa.com.au>
3110         * app/Makefile.am (run_dia.sh): allow dia to find internal shape files
3111         before it is installed.
3113         * objects/flowchart/flowchart.c: use relative paths to find shapes.
3115         * objects/custom/custom.c (custom_object_load): take file names
3116         relative to $(pkgdatadir)/shape-internal, and check an environment
3117         variable for an alternative directory.
3119         * app/...: added copyright messages to the top of my new code.
3121         * app/paginate_psprint.c: some general clean ups.  Also, give an error
3122         dialog if we can't open the command or output file for writing.
3124         * app/diapagelayout.c (dia_page_layout_set_orientation): fixed
3125         function so it would set orientation to landscape correctly.
3127         * app/paginate_psprint.c: use the paper settings that come with
3128         the diagram.  Also implemented landscape printing.
3130         * app/render_eps.c (new_psprint_renderer): use diagram paper metrics
3131         in PS header.
3133         * app/commands.[ch] (file_pagesetup_callback): added callback for
3134         the page setup dialog.
3136         * app/menus.c: added page setup menu item.
3138         * app/pagesetup.[ch]: implementation of the page setup dialog.
3140         * app/diapagelayout.[ch]: added accessors for the scaling factor.
3141         
3142         * app/load_save.c (diagram_load): load paper information from save
3143         file.
3144         (diagram_save): save the paper info.
3146         * lib/diagramdata.c (new_diagram_data): initialise paper info section
3147         of DiagramData structure.
3148         (diagram_data_destroy): free the paper name.
3150         * lib/diagramdata.h: added a paper member to the DiagramData structure
3151         that holds the page layout info for a diagram.
3153 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
3155         * objects/flowchart/box.c:
3156         * objects/flowchart/ellipse.c:
3157         * objects/flowchart/diamond.c:
3158         * objects/flowchart/parallelogram.c:
3159         Load and save padding too. Fixes strange load crashes.
3161 1999-10-21  Alexander Larsson  <alla@lysator.liu.se>
3163         * app/app_procs.c (name_is_lib):
3164         .dll, .sl and .so.0.0.0 are also libraries.
3166 1999-10-20  James Henstridge  <james@daa.com.au>
3168         * configure.in: added extra makefile.
3169         
3170         * shapes/Circuit_eu/*: a new set of european circuit shapes from
3171         Andreas Scherf <scherfa@fh-trier.de>.  Made a few small modifications
3172         (added fuses to makefile, fill the area of some of the components).
3174 1999-10-19  Alexander Larsson  <alla@lysator.liu.se>
3176         * lib/Makefile.am:
3177         * app/Makefile.am: 
3178         Add GDK_IMLIB_CFLAGS to includes.
3179         Changed --export-dynamic to -export-dynamic
3181         * lib/widgets.c:
3182         * objects/UML/message.c:
3183         Removed c++ comment.
3185         * lib/render_store.[ch]:
3186         Don't use empty structure. That is not Ansi C.
3188 1999-10-19  James Henstridge  <james@daa.com.au>
3190         * app/diapagelayout.c (dia_page_layout_init): use DiaUnitSpinner's for
3191         the margin entries, as they allow interpretation of units.
3192         (paper_size_change): display the current page dimensions.
3194         * app/diaunitspinner.[ch]: a widget derived from the standard
3195         GtkSpinButton that tries to take units into account.  So if you enter
3196         "1in" into the entry, it will convert it to 2.54cm.
3198 1999-10-18  Alexander Larsson  <alla@lysator.liu.se>
3200         * app/app_procs.c:
3201         Removed include of dlfcn.h
3203 1999-10-18  James Henstridge  <james@daa.com.au>
3205         * app/diapagelayout.c (paper_size_change, orient_changed): set upper
3206         bound on margin widths.  It is set to the paper width/height.
3208         * objects/flowchart/diamond.c (diamond_distance_from): fixed distance
3209         routine for the diamond.  This bug was found and fixed by Daniel Wang
3210         <danwang@CS.Princeton.EDU>
3212 Sun Oct 17 19:46:36 1999  ape@gandalf.spacetec.no  (Asbjorn Pettersen)
3214         * app/commands.c: Add <sys/types.h> before <sys/stat.h> to
3215         remove warning (OS/2 version).
3217 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
3219         * README:
3220         Put a pointer to objects/custom/README.
3221         
3222 1999-10-17  Alexander Larsson  <alla@lysator.liu.se>
3224         * dia.spec:
3225         Updated version to 0.80
3227         * configure.in:
3228         Updated version to 0.80cvs
3230 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
3232         * Released Dia 0.80
3233         Tag called DIA_0_80
3234         
3235 1999-10-17  Fredrik Hallenberg  <hallon@lysator.liu.se>
3237         * app/Makefile.am
3238         * lib/Makefile.am
3239         * objects/UML/Makefile.am
3240         * objects/ER/Makefile.am
3241         * objects/network/Makefile.am
3242         * objects/standard/Makefile.am
3243         * objects/FS/Makefile.am
3244         * objects/sybase/Makefile.am
3245         * objects/flowchart/Makefile.am
3246         * objects/custom/Makefile.am
3247         Added -I$(top_srcdir)/intl which is needed for
3248         --with-included-gettext.
3250         * POTFILES.in
3251         Updated.
3252         
3253         * po/sv.po
3254         Updated swedish translation.
3256 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
3258         * configure.in:
3259         Updated version number to 0.80.
3261         * KNOWN_BUGS:
3262         New file.
3264         * TODO:
3265         Updated. Moved bugs to KNOWN_BUGS.
3267         * NEWS:
3268         Updated with 0.80 release notes.
3269         
3270 1999-10-16  Alexander Larsson  <alla@lysator.liu.se>
3271         
3272         * lib/orth_conn.c:
3273         For backwards compatibility, make sure handle 0 and 1 are the
3274         first and last handle. Fixes compatibility with 0.41, breaks
3275         compatibility with cvs version.
3276         Fixed bug in undo/redo of adding deleting endpoint segments
3277         when the endpoint was connected.
3278         Start OrthConn objects with three segments.
3280 1999-10-16  James Henstridge  <james@daa.com.au>
3282         * objects/custom/custom_object.c (custom_update_data): changed
3283         resizing behaviour a bit so that shapes don't grow huge when you try
3284         to resize them to smaller than the size required by the text box.
3285         Also, now shapes will not grow with fixed aspect ratio when you enter
3286         text into them unless the shape has the fixed aspect ratio flag set.
3288 1999-10-15  James Henstridge  <james@daa.com.au>
3290         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
3292         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
3294         * objects/flowchart/magdrum.shape: 
3295         * objects/flowchart/offlinestore.shape: 
3296         * objects/flowchart/punchedtape.shape: 
3297         * objects/flowchart/transmittape.shape: 
3298         * objects/flowchart/punchedcard.shape: new shapes.
3300         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
3302         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
3304         * objects/flowchart/collate.shape:
3305         * objects/flowchart/delay.shape:
3306         * objects/flowchart/extract.shape:
3307         * objects/flowchart/intstorage.shape:
3308         * objects/flowchart/magdisk.shape:
3309         * objects/flowchart/magtape.shape:
3310         * objects/flowchart/merge.shape:
3311         * objects/flowchart/or.shape:
3312         * objects/flowchart/sort.shape:
3313         * objects/flowchart/sumjunction.shape: new shapes.
3315 1999-10-15  Alexander Larsson  <alla@lysator.liu.se>
3317         * TODO (BUGS):
3318         Added bug:
3319         Entering an erronous command as print command
3320         crashes dia.
3322         * app/paginate_psprint.c:
3323         Save all print dialog values for next time.
3324         
3325         * app/Makefile.am:
3326         Remove custom lib from DIA_LIB_PATH.
3328 1999-10-14  James Henstridge  <james@daa.com.au>
3330         * objects/flowchart/flowchart.c: add new shapes to flowchart sheet.
3332         * object/flowchart/pixmaps/...: corresponding pixmaps for new shapes.
3333         
3334         * objects/flowchart/offpageconn.shape: 
3335         * objects/flowchart/manualop.shape: 
3336         * objects/flowchart/preparation.shape: 
3337         * objects/flowchart/manualinput.shape: 
3338         * objects/flowchart/predefdproc.shape: 
3339         * objects/flowchart/terminal.shape: new shapes in the flowchart sheet.
3341 1999-10-13  James Henstridge  <james@daa.com.au>
3343         * app/diapagelayout.[ch]: added accessors to paper information.  The
3344         widget should be just about complete now.
3346         * app/diapagelayout.[ch]: fleshed out the page setup widget a bit more.
3347         It actually does something now.
3349 1999-10-12  James Henstridge  <james@daa.com.au>
3351         * app/pixmaps/portrait.xpm, app/pixmaps/landscape.xpm: support pixmaps
3352         for the page layout widget.
3354         * app/diapagelayout.[ch]: start of page layout widget.  Not actually
3355         built yet as it is not complete.
3357         * objects/flowchart/flowchart.c: added new shapes to sheet.
3359         * objects/flowchart/display.shape:
3360         * objects/flowchart/transaction.shape: new shapes.
3362         * AUTHORS: added my name to the spec file.
3364         * dia.spec: include the dia desktop entry to the spec file.
3366         * Makefile.am: install the dia.desktop file.
3368         * dia.desktop: added a gnome desktop entry so you can start dia
3369         from the gnome panel menu.
3371 1999-10-11  James Henstridge  <james@daa.com.au>
3373         * objects/custom/custom_object.c:
3374         * objects/custom/shape_info.c: warning fixes.
3376         * objects/flowchart/document.shape: a shape file for the `document'
3377         flowchart shape.
3379         * lib/custom.h: new header with the custom shape prototypes.
3381         * app/app_procs.c: register custom objects as well.
3382         (register_objects_in): close shared libraries if they don't load
3383         correctly, and call g_module_make_resident on libraries that load
3384         correctly.
3386         * app/Makefile.am (dia_LDADD): added libcustom_objects.a to link list.
3388         * objects/custom/custom.c: removed get_version, added custom_ prefix
3389         to register_objects and register_sheets.
3391         * objects/custom/Makefile.am: converted to a normal library.
3393 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
3395         * app/lineprops_area.c:
3396         * app/render_svg.c:
3397         * lib/objchange.c:
3398         * objects/custom/shape_info.c:
3399         * objects/flowchart/box.c:
3400         * objects/flowchart/diamond.c:
3401         * objects/flowchart/ellipse.c:
3402         * objects/flowchart/parallelogram.c:
3403         * objects/network/flash.c:
3404         * objects/network/scead-plug.c:
3405         * objects/sybase/client.c:
3406         Removed -Wall warnings.
3407         
3408         * objects/network/bus.c:
3409         Removed unused functions.
3411         * objects/FS/flow-ortho.c:
3412         * objects/FS/flow-poly.c:
3413         * objects/FS/flow.c:
3414         * objects/FS/function.c:
3415         
3416         Implemented "non-implemented" undo for FS objects.
3417         Now at least it won't crash.
3418         
3419 1999-10-10  Alexander Larsson  <alla@lysator.liu.se>
3421         * objects/network/bus.c:
3422         Implemented undo.
3423         Handles are now added and removed using the object menu.
3424         Default to 6 handles instead of 10.
3425         Changed name from "Standard - Bus" to "Network - Bus". Kept old
3426         name for backwards compatibility.
3428         * objects/network/network.c:
3429         Changed name from "Standard - Bus" to "Network - Bus". Kept old
3430         name for backwards compatibility.
3432         * app/properties.[ch]:
3433         * app/undo.c:
3434         Update properties in properties dialog if the shown object
3435         is part of and ObjectChange (undo or redo).
3437         * lib/poly_conn.c:
3438         Remove old known bugs list.
3440         * objects/UML/class_dialog.c:
3441         Removed debug printf's.
3443 1999-10-10  James Henstridge  <james@daa.com.au>
3445         * objects/custom/custom.c (custom_object_load): new function that
3446         provides a nice entry point to the custom shape code for when it
3447         gets used by other libraries.
3449         * configure.in: removed 11 makefiles from AC_OUTPUT list.  This
3450         speeds builds up a bit.
3452         * */Makefile.am (EXTRA_DIST): include pixmaps in distribution.
3453         (SUBDIRS): do not descend into pixmaps subdirs.
3455         * */pixmaps/Makefile.am: removed -- incorporate into parent makefiles.
3456         This speeds up build process.
3458         * objects/custom/custom.c (sheets): made variable static.
3460         * objects/custom/custom_util.[ch] (custom_get_relative_filename):
3461         renamed function.
3463         * objects/custom/load_sheet.[ch] (custom_sheet_load): renamed function.
3465         * objects/custom/custom.c: look in ~/.shapes instead of
3466         ~/.dia_shapes as the per-user shapes directory.
3468         * app/preferences.c (prefs_save): save config to ~/.diarc.
3469         (prefs_load): load configuration from ~/.diarc.  If the file
3470         does not exist, fallback on the old ~/.diarc location.
3472         * app/app_procs.c (create_user_dirs): create the ~/.dia directory
3473         on startup.
3474         (register_all_objects): look for user specific objects in
3475         ~/.objects rather than ~/.dia_libs.
3477 1999-10-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
3479         * configure.in:
3480         * app_procs.c:
3481         * objects/flowchart/box.c
3482         * objects/flowchart/ellipse.c
3483         * objects/flowchart/flowchart.c 
3484         Use gmodule for dynamic linking. As gmodule is using
3485         RTLD_GLOBAL i had to change flowchart box and ellipse
3486         so the typenames doesn't conflict with the standard
3487         box and ellipse.
3489         * message.c
3490         * commands.c
3491         Use button box to make dialogs look better.
3493 1999-10-09  Alexander Larsson  <alla@lysator.liu.se>
3495         * objects/UML/class_dialog.c:
3496         * objects/UML/class.h:
3497         Implemented undo for "UML - Class" objects.
3498         Not 100% tested yet.
3500         * objects/UML/classicon.c:
3501         * objects/UML/constraint.c:
3502         * objects/UML/dependency.c:
3503         * objects/UML/generalization.c:
3504         * objects/UML/implements.c:
3505         * objects/UML/large_package.c:
3506         * objects/UML/lifeline.c:
3507         * objects/UML/message.c:
3508         * objects/UML/object.c:
3509         * objects/UML/realizes.c:
3510         * objects/UML/state.c:
3511         * objects/UML/usecase.c:
3512         Removed warnings.
3513         
3514         * lib/connectionpoint.h:
3515         Fixed typo.
3516         
3517 1999-10-09  James Henstridge  <james@daa.com.au>
3519         * objects/custom/*.[ch]: added copyright notices to custom object
3520         files.
3522         * shapes/Circuit/hdiode.shape:
3523         * shapes/Circuit/hzener.shape: 
3524         * shapes/Circuit/opamp.shape:
3525         * shapes/Circuit/vdiode.shape:
3526         * shapes/Circuit/vzener.shape: made adjustments to make the circuit
3527         shapes look nice after the custom shape code changes.
3529         * objects/custom/README: updated docs to cover changes to drawing
3530         code.
3532         * objects/custom/custom_object.c (custom_draw): honour the line
3533         properties when drawing the shape.
3535         * objects/custom/shape_info.[ch]: added support for setting line
3536         properties for individual drawing elements in a custom shape.  You
3537         can set the dash style, dash length, cap style and join style.
3539 1999-10-07  James Henstridge  <james@daa.com.au>
3541         * objects/custom/shape_info.c (parse_style): added a few extra synonyms
3542         for foreground and background.
3544         * objects/custom/custom_object.c (custom_draw): use the new style
3545         information when drawing the object.
3547         * objects/custom/shape_info.[ch]: store all shape style info in the
3548         GraphicStyle structure.  This makes adding support for extra CSS
3549         attributes easier -- we don't have to keep adding extra arguments to
3550         a lot of functions.
3552 1999-10-05  James Henstridge  <james@daa.com.au>
3554         * lib/intl.c (unalias_lang): merged in changes from the i18n code
3555         swiped from gnome-libs.
3557 1999-10-03  Alexander Larsson  <alla@lysator.liu.se>
3559         * objects/standard/image.c (get_directory):
3560         Fix memleak. Found by Kjartan Maraas <kmaraas@online.no>
3562 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
3564         * lib/poly_conn.c (polyconn_destroy):
3565         Fix bug. Access of freed memory.
3566         Rememeber, you can't free the handles of an object
3567         before calling object_destroy(), as it unconnects the handles
3568         therefore referencing them.
3570 1999-09-28  Alexander Larsson  <alla@lysator.liu.se>
3572         * app/undo.c:
3573         undo_clear() didn't set stack->depth to zero.
3574         This made other undo functions crash after this had been called
3575         on a "full" stack.
3576         
3577         * dia.xpm:
3578         Slightly modified by Chris Love <clove@exactis.com>
3580 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
3582         * objects/UML/class.h: 
3583         * objects/UML/class_dialog.c:
3584         Retrun NULL ObjectChange on class property change.
3585         This means no crashes, but "UML - Class" doesn't support undo yet.
3586         
3587 1999-09-19  Alexander Larsson  <alla@lysator.liu.se>
3588         
3589         * lib/text.c:
3590         Indentation fix.
3592         * objects/UML/classicon.c:
3593         * objects/UML/dependency.c:
3594         * objects/UML/generalization.c:
3595         * objects/UML/implements.c:
3596         * objects/UML/large_package.c:
3597         * objects/UML/lifeline.c:
3598         * objects/UML/message.c:
3599         * objects/UML/object.c:
3600         * objects/UML/realizes.c:
3601         * objects/UML/state.c:
3602         * objects/UML/usecase.c:
3603         Update to new undo (w. get/set_state).
3604         Add object menu to add/delete segments.
3606 1999-09-17  Alexander Larsson  <alla@lysator.liu.se>
3608         * app/menus.c:
3609         Add equal distance alignment.
3611         * app/object_ops.c:
3612         Add equal distance alignment.
3613         Fix bug in adjacent alignment.
3615 1999-09-16  Alexander Larsson  <alla@lysator.liu.se>
3617         * objects/UML/constraint.c: 
3618         Update to new undo (w. get/set_state).
3620 1999-09-15  Alexander Larsson  <alla@lysator.liu.se>
3622         * app/paginate_psprint.c:
3623         Save (parts, more todo) of the info in the print dialog to the
3624         next time it's opened.
3625         Patch from Yo Ric Dude <ricdude@toad.net>
3627 1999-09-14  Alexander Larsson  <alla@lysator.liu.se>
3629         * configure.in:
3630         Updated version string to 0.41cvs.
3632         * objects/UML/assocition.c:
3633         Update to new undo (w. get/set_state).
3634         Add object menu to add/delete segments.
3636         * app/app_procs.c:
3637         Added function debug_break() and called it after all
3638         objects and sheets are loaded. Place a breakpoint here if you
3639         want to debug objects. All symbols should be loaded.
3641 1999-09-12  James Henstridge  <james@daa.com.au>
3643         * app/menus.c (display_menu_items): added print menu item.
3644         (filemenu): always add print menu item -- even if gnome-print is
3645         not installed.
3647         * app/commands.h, app/commands.c (file_print_callback): the print
3648         menu item is now available for both gnome-print and non gnome-print
3649         setups.
3651         * app/paginate_psprint.c (diagram_print_ps): show a dialog to let you
3652         print with the non gnome-print driver.
3654 1999-09-11  James Henstridge  <james@daa.com.au>
3656         * app/paginate_gnomeprint.c (diagram_print_gnome): moved the gnome
3657         printer dialog code out of commands.c.
3659         * app/paginate_psprint.c: new file containing the pagination code for
3660         psprint.
3662         * app/render_eps.c: made a few modifications so as well as producing
3663         EPS files, this renderer can be set up to do postscript printing.
3664         This basically entailed adding an extra function to create a RenderEPS
3665         renderer which did not bother setting the viewport for the document.
3666         That was left for the pagination code.
3668 1999-09-10  James Henstridge  <james@daa.com.au>
3670         * app/render_gnomeprint.c (draw_ellipse, fill_ellipse): since
3671         gnome-print does not support elliptic arcs at the moment, approximate
3672         the ellipse with eight bezier curves.  This gives a pretty good
3673         match to a true ellipse.
3675 1999-09-09  James Henstridge  <james@daa.com.au>
3677         * app/commands.c (file_gnome_print_callback): added support for
3678         scaling the diagram.  Also fixed a few other bugs.
3680         * app/paginate_gnomeprint.c (print_page): added ability to scale
3681         document.  Fixed up test to see if the page has no objects on it.
3682         This should prevent some blank pages being printed.  Non square
3683         objects such as lines could still cause problems.
3685 1999-09-08  James Henstridge  <james@daa.com.au>
3687         * app/commands.c (file_gnome_print_callback): changed from using the
3688         standard printer selection dialog to one that also has a paper size
3689         selector as well.
3691         * commands.[ch]: added callbacks for the print menu item.  Currently
3692         it only does A4 output.  I will make it configurable soon.
3693         
3694         * app/menus.c: add a print diagram menu item if gnome-print support
3695         is enabled.
3696         
3697         * app/paginate_gnomeprint.c, app/paginate_gnomeprint.h: this is a
3698         bit higher level than the gnome-print renderer.  It splits the
3699         diagram into page size chunks and then renders them.  For each
3700         page, it only renders the objects whose bounding box intersects
3701         the page, and it sets the clip mask so that the diagram does not
3702         overlap the margins.
3703         
3704         * app/render_gnomeprint.c, app/render_gnomeprint.h: added a renderer
3705         that uses gnome-print as its back end.
3706         
3707         * configure.in: added a check for gnome-print.  It is disabled by
3708         default because the code is not really working correctly yet.
3710         * app/menus.c: the delete object menu item was missing from the
3711         GnomeUIInfo style menus.
3713 1999-09-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
3715         * configure.in
3716         Added japanese to ALL_LINGUAS.
3717         Fix for Linux on Alpha.
3719 1999-09-07  Alexander Larsson  <alla@lysator.liu.se>
3721         * app/create_object.c (create_object_button_press):
3722         Always initialize tool->obj. Otherwise we store a null
3723         in the undo Change.
3725         * lib/text.c:
3726         Set linestyle before drawing cursor.
3727         Fix undo of backwards delete.
3729 1999-09-05  James Henstridge  <james@daa.com.au>
3731         * dia.spec: updated spec file to distribute $(prefix)/share/dia.
3733         * app/render_svg.c (draw_image): some fixes so that the appropriate
3734         style attributes are set.  Before it was setting line styles on
3735         fill_* functions.  Now it only does this for the draw_* variants.
3737         * app/Makefile.am (run_dia.sh): set the DIA_SHAPE_PATH environment
3738         variable so that custom shapes can be loaded.
3740         * shapes/: new directory for custom shapes.  The Circuit sheet has
3741         been moved here.
3743 1999-09-02  James Henstridge  <james@daa.com.au>
3745         * TODO: removed a few todo items that have been implemented.
3747         * app/interface.c (create_sheets): enabled the popup page menu to the
3748         notebook.  This can make it easier to select different sheets.
3750         * object/custom/Circuit/: added diode, zener diode, ground point and
3751         operational amplifier shapes.
3752         
3753         * objects/custom/Makefile.am: added a note about adding DEBUG_CUSTOM
3754         if you want the output.
3756         * objects/custom/shape_info.c (parse_path): same here.
3758         * objects/custom/load_sheet.c (load_with_readdir): don't print so
3759         much debugging output.  To get the previous level of output, define
3760         DEBUG_CUSTOM.
3762         * objects/custom/shape_info.c (parse_svg_node): polygons were being
3763         recorded as polylines in the ShapeInfo structure.
3765         * objects/custom/README: some notes on writing new custom shapes.
3766         
3767 1999-09-01  James Henstridge  <james@daa.com.au>
3769         * objects/custom/Circuit/hinductor.*:
3770         * objects/custom/Circuit/vinductor.*: added inductor shapes that
3771         also test out the bezier curve and SVG path support.
3772         
3773         * objects/custom/custom_object.c (custom_draw): added support for
3774         drawing bezier paths and filled shapes.
3776         * objects/custom/shape_info.c (parse_path): new function to parse
3777         SVG path elements.  It does not do quadratic beziers or elliptic
3778         arcs though.  Only moves, lines and cubic beziers.
3779         (*): added support for paths.
3781 1999-08-31  James Henstridge  <james@daa.com.au>
3783         * objects/sybase/ltm.c (render_to_store): use the newer bezier API.
3785         * app/render_svg.c (draw_bezier, fill_bezier): updated renderer
3786         interface
3788         * app/render_eps.c (draw_bezier, fill_bezier): updated renderer
3789         interface
3791         * app/render_gdk.c (draw_bezier, fill_bezier): updated renderer
3792         interface.
3794         * lib/render_store.[ch]: use newer bezier functions.
3796         * lib/render.h: changed the bezier drawing functions to use an array
3797         of BezPoint structures instead of normal Point structures to allow
3798         lineto's mixed in with the curveto's.
3799         
3800         * objects/custom/Circuit/pnp.*: added pnp transistor shape.
3801         
3802         * objects/custom/Circuit/Makefile.am (SHAPES): added index.sheet and
3803         xpm images for different shapes to Makefile.
3805         * objects/custom/custom_object.c (custom_object_new): set the icon
3806         for the sheet button if there is one.  Otherwise fall back on the
3807         default custom object icon.
3809         * objects/custom/shape_info.c (load_shape_info): read the sheet
3810         icon name from the shape file.
3812         * app/interface.c (create_sheet_page): if sheet_obj->pixmap == NULL,
3813         check the pixmap_file field for the name of a pixmap file to load
3814         for the tool.
3816         * lib/sheet.h (SheetObj): added pixmap_file field to structure.  It is
3817         at the end of the structure, and it isn't used if the pixmap field
3818         is non NULL, so it should not break binary compatibility.
3820         * objects/custom/load_sheet.[ch]: moved sheet loading code here.  Also
3821         added support for the use of an index.sheet file so you can specify
3822         the ordering of the shapes in the sheet, and also internationalise
3823         the sheet name and actually be able to give a description.  The old
3824         readdir based sheet loading code acts as a fallback if an index.sheet
3825         file can not be found.
3827         * objects/custom/custom_util.[ch]: new file containing useful routines
3828         needed by the custom object code.  Currently only contains a simple
3829         routine for resolving relative paths.
3831         * objects/custom/custom_object.c (custom_draw): fixed problem with
3832         drawing rectangles if the shape has been flipped.
3834 1999-08-30  James Henstridge  <james@daa.com.au>
3836         * objects/custom/custom_object.c (custom_get_object_menu): allow
3837         flipping of custom shapes.  This uses the miggle click object
3838         menu.
3840         * objects/custom/Circuit/npn.shape: fix aspect ratio.
3842         * objects/custom/custom_object.c (custom_update_data): honour the
3843         aspect ratio constraints.
3845         * objects/custom/shape_info.c (load_shape_info): updated aspect ratio
3846         tag parsing, so you can specify a free, fixed or a range for aspect
3847         ratios for the shape.
3849 1999-08-29  James Henstridge  <james@daa.com.au>
3851         * objects/custom/test.xml, objects/custom/Circuit/*.shape: fixed
3852         up shape namespace tag.
3854         * objects/custom/shape_info.c (load_shape_info): check xml:lang
3855         attribute on <description> elements to support i18n for custom
3856         shape descriptions.
3857         Also changed the shape namespace for custom shapes to something
3858         a little more sensible.
3860         * lib/dummy_dep.h (dummy_dep): added extra dummy dependency.
3862         * lib/intl.c: new file containing some functions for i18n stuff.
3864         * app/layer_dialog.c (create_button_box): fixed a warning.
3866         * objects/custom/custom_object.c: use current line style.  Save dash
3867         length.
3869         * objects/flowchart/diamond.c: use current line style.  Save dash
3870         length.
3872         * objects/flowchart/parallelogram.c: use current line style.  Save
3873         dash length.
3875         * objects/flowchart/ellipse.c: use current line style.  Save dash
3876         length.
3878         * objects/flowchart/box.c: use current line style.  Save dash length.
3880         * objects/standard/ellipse.c: make ellipse use current line style.
3882         * objects/standard/box.c: use the line style set in the toolbox for
3883         new boxes, and remember the dash length.
3885         * app/commands.c (view_toggle_rulers_callback): fix reshowing of
3886         rulers.
3888 1999-08-24  James Henstridge  <james@daa.com.au>
3890         * objects/flowchart/ellipse.c (ellipse_update_data): made some changes
3891         to try to stop ellipse to get infinite width/height when we resize,
3892         while trying to keep the text inside the ellipse.
3894         * objects/flowchart/box.c, objects/flowchart/parallelogram.c,
3895         * objects/flowchart/diamond.c, objects/flowchart/ellipse.c: fixed
3896         resizing behaviour, so that you can't push objects round the screen
3897         with the resize handles.
3899         * app/lineprops_area.c (dia_arrow_chooser_init, dia_line_chooser_init):
3900         get the OK buttons in the dialogs to take default clicks.
3902         * objects/custom/custom_object.c: added code so that resizing the
3903         shape does not end up pushing it round the screen.
3905 1999-08-23  Alexander Larsson  <alla@lysator.liu.se>
3907         * app/display.[ch]:
3908         Generate rectangle with the union of the damaged regions.
3909         This is used to optimize the grid paint and the object rendering.
3910         display_render_pixmap passes this info to grid_draw() and data_render().
3912         * app/grid.[ch]:
3913         grid_draw doesn't draw grid lines outside of damaged rectangle.
3914         Sets dashlength when drawing non-solid grid.
3915         
3916         * lib/diagramdata.[ch]:
3917         data_render() and layer_render() takes an optional damaged rectangle
3918         argument. No objects not intersecting this are drawn.
3920         * app/diagram.c:
3921         Fix warning.
3922         Call data_render with NULL update rectangle.
3923         
3924 1999-08-23  James Henstridge  <james@daa.com.au>
3926         * objects/custom/custom_object.c (custom_update_data): if the aspect
3927         ratio is fixed, make sure the shape is not distorted.
3929         * object/custom/shape_info.h, objects/custom/shape_info.c: notice if
3930         a <fixaspectratio/> tag is given in the shape file.
3932         * objects/custom/shape_info.[ch], objects/custom/custom_object.c:
3933         added support for stroke-width, stroke and fill CSS attributes
3934         specified in style attributes of the SVG elements.  The line width
3935         is relative to the user specified line width.  The stroke and fill
3936         attributes can only be used to swap the foreground/background
3937         colours.
3939         * lib/widgets.c (dia_line_style_selector_set_linestyle): set the
3940         sensitivity on the dash length selector when this function is called.
3942         * objects/standard/arc.c: same.  Also handle dash length.
3943         * objects/standard/zigzagline.c: same.
3944         * objects/standard/polyline.c: same.  Also handle dash length.
3945         * objects/standard/line.c: use default arrow/line styles.
3947         * app/interface.c: added callbacks to set the default attributes.
3949         * lib/attributes.c: added implementations of these functions.
3951         * lib/attributes.h: added extra prototypes for the new line properties
3952         area in the toolbox.
3954         * app/interface.c (create_lineprops_area): added line properties
3955         area to bottom of toolbox.
3957         * app/lineprops_area.h: a header exporting a few routines of the
3958         line properties area widgets.
3960         * app/lineprops_area.c: new file containing a selector for arrows
3961         and line styles to go in the main toolbox.
3963 1999-08-22  Alexander Larsson  <alla@lysator.liu.se>
3965         * HACKING:
3966         Update Gtk+ 1.0.5 comment to 1.2.0.
3968         * INSTALL:
3969         Demand libtool 1.3
3971         * acconfig.h:
3972         Add HAVE_LIBPOPT
3974         * configure.in:
3975         Make sure we don't propagate -ldl and -lpopt to all LIBS
3976         by adding new var APP_LIBS that only app/dia links with.
3977                 
3978         * app/Makefile.am:
3979         Update run_dia.sh to load custom and flowchart objects.
3981         * objects/ER/Makefile.am:
3982         * objects/FS/Makefile.am:
3983         * objects/UML/Makefile.am:
3984         * objects/network/Makefile.am:
3985         * objects/standard/Makefile.am:
3986         * objects/sybase/Makefile.am:
3987         Don't build versioned libs.     
3988         
3989 1999-08-22  James Henstridge  <james@daa.com.au>
3991         * configure.in: added objects/custom/Circuit/Makefile to AC_OUTPUT
3992         list.
3994         * objects/Makefile.am (SUBDIRS): added custom to subdir list -- it
3995         should actually work a bit now.
3997         * objects/custom/Circuit/*: a test sheet for the custom shape code.
3998         It is a small collection of circuit elements.
4000         * objects/custom/shape_info.c: fixed up loading of polylines and
4001         polygons.  Before it was removing negative signs :(
4003         * objects/custom/pixmaps/custom.xpm: drew the custom shape icon.  A
4004         placeholder was here before.  I still need to work out how to set
4005         icons for individual custom shapes.
4006         
4007         * objects/custom/custom.c: added code to load the shapes into sheets
4008         properly.  The shape files should be arranged into directories, and
4009         each directory represents a different sheet in the toolbox.  This
4010         will make it very easy to distribute a collection of dia shapes as
4011         a tarball.  I still need to work out internationalisation, and maybe
4012         also shape ordering in the sheet.
4014         * objects/custom/custom_object.c: fixed up dialogs for these objects.
4015         (custom_create): fix for objects without text areas.
4017         * objects/custom/shape_info.h, objects/custom/custom_object.c: loading
4018         and saving of custom object works correctly now.
4020 1999-08-21  James Henstridge  <james@daa.com.au>
4022         * objects/flowchart/ellipse.c: 
4023         * objects/flowchart/diamond.c: 
4024         * objects/flowchart/parallelogram.c: 
4025         * objects/flowchart/box.c: Fixed up a few bugs in these objects when
4026         copying or loading these object types.  Not all the connection
4027         points would be initialised correctly.
4029         * objects/flowchart/Makefile.am (libflowchart_objects_la_LDFLAGS):
4030         similar here.
4032         * objects/custom/Makefile.am (libcustom_objects_la_LDFLAGS): do not
4033         build a versioned library.  It will only ever be dlopen'd, so this
4034         is not a problem.
4036         * objects/custom/custom_object.c (custom_distance_from): allow
4037         selecting the object by clicking on the text.  This fixes problems
4038         where the text box is outside the graphic.
4040         * objects/custom/shape_info.c (load_shape_info): fixed up reading
4041         of connections points.  It should be possible to add connections
4042         to custom objects now.
4044         * objects/custom/custom_object.c (custom_update_data): fixed resizing
4045         due to changes to text.
4047         * configure.in: added extra makefiles.
4048         
4049         * objects/custom/shape_info.[ch]:
4050         * objects/custom/custom_object.c:
4051         * objects/custom/custom.c: the starts of custom shape support in dia.
4052         This is not built by default at the moment, since it is not quite
4053         complete.  When it is, it will let you create more shapes for dia
4054         without writing a line of C.  Its implementation includes buzzwords
4055         such as XML and SVG, so it must be good :)
4057 1999-08-19  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
4059         * app/app_procs.c (app_exit): Use button labels "Quit" and
4060         "Cancel" instead of "Yes" and "No".
4061         Set default action to "Cancel" instead of "Quit".
4063 1999-08-19  James Henstridge  <james@daa.com.au>
4065         * objects/flowchart/flowchart.c: added ellipse object.
4066         
4067         * objects/flowchart/ellipse.c: a new shape for the flowchart toolbox.
4069 1999-08-18  James Henstridge  <james@daa.com.au>d
4071         * app/color_area.c (color_area_edit): small fix to prevent dia from
4072         segfaulting when you try to change the default foreground/background.
4074 1999-08-17  Alexander Larsson  <alla@lysator.liu.se>
4076         * app/diagram.[ch] (diagram_redraw_all):
4077         Added function that redraws all diagrams.
4079         * app/preferences.c (prefs_apply):
4080         Call diagram_redraw_all when prefs are changed.
4082         * app/render_svg.c:
4083         Don't use xmlEncodeEntitiesReentrant(). It doesn't exist on
4084         older libxml's, and the old version works good enought here.
4085         
4086 1999-08-17  James Henstridge  <james@daa.com.au>
4088         * lib/widgets.c: changed handlers that were connected to the GtkButton
4089         "pressed" signal to connect to the "clicked" signal.  This removes the
4090         problem where dialogs are inactive until you click a mouse button
4091         after using a colour selector.
4093         * configure.in: added extra makefiles to AC_OUTPUT list.
4094         
4095         * objects/Makefile.am (SUBDIRS): added flowchart module
4097         * objects/flowchart/*: a collection of shapes for use in flowcharts.
4099         * app/color_area.c (color_area_events): similar here.
4101         * app/linewidth_area.c (linewidth_area_events): sometimes a configure
4102         event is recieved with event->width == 0, which causes a warning if we
4103         try to create a pixmap of that width.
4105         * app/preferences.c, app/preferences.h, app/grid.c: added code to
4106         allow you to configure the colour of the grid, and also lets you
4107         set the grid to use dotted lines instead of solid ones.
4108         
4109         * app/commands.c, app/commands.h, app/diagram.c, app/diagram.h,
4110         app/menus.c, app/Makefile.am: added menu entry for exporting SVG files.
4111         
4112         * app/render_svg.h, app/render_svg.c: an SVG (Scalable Vector Graphics)
4113         export filter.  It is not quite complete, but for most shapes it
4114         works as expected.  Fonts still need a bit of work.
4116 1999-08-11  Robert Brady  <rwb197@ecs.soton.ac.uk>
4118         * configure.in: Added "en_GB" to ALL_LINGUAS.
4120 1999-08-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
4122         * menus.c
4123         Added Undo and Redo to GNOME menus.
4124         
4125         * objects/ER/attribute.c:
4126         * objects/ER/entity.c:
4127         * objects/ER/participation.c:
4128         * objects/ER/relationship.c:
4129         Added get/set_state functions.
4131         * objects/ER/participation.c:
4132         Added add/delete segment.
4134         * po/sv.po
4135         Updated Swedish translation.
4137 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
4139         * app/preferences.[hc]:
4140         Added undo_depth pref.
4141         
4142         * app/undo.[ch]:
4143         Never grow stack larger than pref.undo_depth.
4144         undo_depth == 0 means unlimited.
4145         Converted printfs to conditionally compiled DEBUG_PRINTFs.
4146         
4147 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
4149         * app/diagram.c:
4150         * app/group.c:
4151         * lib/object.h:
4152         * lib/render_object.c:
4153         * objects/ER/attribute.c:
4154         * objects/ER/entity.c:
4155         * objects/ER/participation.c:
4156         * objects/ER/relationship.c:
4157         * objects/FS/flow-ortho.c:
4158         * objects/FS/flow-poly.c:
4159         * objects/FS/flow.c:
4160         * objects/FS/function.c:
4161         * objects/UML/actor.c:
4162         * objects/UML/association.c:
4163         * objects/UML/class.c:
4164         * objects/UML/classicon.c:
4165         * objects/UML/component.c:
4166         * objects/UML/constraint.c:
4167         * objects/UML/dependency.c:
4168         * objects/UML/generalization.c:
4169         * objects/UML/implements.c:
4170         * objects/UML/large_package.c:
4171         * objects/UML/lifeline.c:
4172         * objects/UML/message.c:
4173         * objects/UML/note.c:
4174         * objects/UML/object.c:
4175         * objects/UML/realizes.c:
4176         * objects/UML/small_package.c:
4177         * objects/UML/state.c:
4178         * objects/UML/usecase.c:
4179         * objects/network/bus.c:
4180         * objects/standard/arc.c:
4181         * objects/standard/box.c:
4182         * objects/standard/ellipse.c:
4183         * objects/standard/image.c:
4184         * objects/standard/line.c:
4185         * objects/standard/polyline.c:
4186         * objects/standard/textobj.c:
4187         * objects/standard/zigzagline.c:
4188         Removed all traces of is_empty(). It doesn't work in an
4189         Undo/Redo world.
4191 1999-07-25  Alexander Larsson  <alla@lysator.liu.se>
4193         * app/diagram.c:
4194         * app/group.[ch]:
4195         * app/undo.[ch]:
4196         Undoable grouping and ungrouping.
4198         * app/layer_dialog.c:
4199         * lib/diagramdata.[ch]:
4200         Undoable layer ops.
4202         * app/modify_tool.c:
4203         Undoable unconnect on handle move.
4205         * lib/orth_conn.[ch]:
4206         Working undoable add/remove segment.
4207         Removed endpoint_handles from OrthConn, renamed
4208         midpoint_handles to handles and put the endpoint
4209         handles there.
4211         * objects/standard/zigzagline.c:
4212         * objects/ER/participation.c:
4213         * objects/UML/association.c:
4214         * objects/UML/dependency.c:
4215         * objects/UML/generalization.c:
4216         * objects/UML/realizes.c:
4217         Update for the changes in OrthConn
4218         
4219 1999-07-23  Karsten Weiss  <karsten@addx.au.s.shuttle.de>
4221         * configure.in: Added "de" to ALL_LINGUAS.
4223 1999-07-17  Alexander Larsson  <alla@lysator.liu.se>
4225         * dia.1:
4226         Fixed typo.
4228         * app/display.c:
4229         * po/da.po:
4230         * po/fr.po:
4231         * po/hu.po:
4232         * po/no.po:
4233         * po/pl.po:
4234         * po/sv.po:
4235         Don't have the <Display> etc part of the menu strings
4236         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
4238         * app/diagram.c:
4239         Don't have the <Display> etc part of the menu strings
4240         i18n:ed. Patch from Fabrice.Bellet@imag.fr.
4241         Don't remove is_empty() objects, that don't work with undo.
4243         * lib/objchange.[ch]:
4244         New files.
4245         Definition of ObjectChange. This is essentially an Change
4246         exported to the object libs. It encapsulates a change made
4247         to an objects internals. It can be applied, reverted and freed.
4248         There are also utility functions for doing ObjectChanges that
4249         only get/set the whole state of an object to store the change.
4250         This cannot be used when the object change deletes or adds a
4251         object which has references from other objects, eg. Handles which
4252         might be connected.
4254         * lib/Makefile.am:
4255         Added objchange.c and objchange.h.
4257         * lib/dia_image.c:
4258         Return NULL when loading fails.
4260         * lib/diamenu.h:
4261         Menu callbacks return an ObjectChange.
4263         * lib/dummy_dep.h:
4264         Reference objchange.o
4266         * lib/focus.h:
4267         Key events return ObjectChange if they modify the object.
4269         
4270         * lib/object.h:
4271         Added object_add_handle_at() function.
4272         Apply properties returns an ObjectChange.
4273         Remove ObjectState and the get/set state functions, these
4274         don't always work. Use the new ObjectChange instead.
4275         
4276         * lib/object.c:
4277         Added object_add_handle_at() function implementation.
4278         
4279         * lib/orth_conn.[ch]:
4280         Use ObjectChange. Not finished yet.
4281         Removed get/set/free state functions
4283         * lib/poly_conn.[ch]:
4284         Use ObjectChange.
4285         Don't remove segments that are small.
4286         Removed get/set/free state functions
4288         * lib/text.[ch]:
4289         Use ObjectChange.
4290         Added functions to get/set all text attributes.
4292         * objects/standard/arc.c:
4293         * objects/standard/box.c:
4294         * objects/standard/ellipse.c:
4295         * objects/standard/image.c:
4296         * objects/standard/line.c:
4297         * objects/standard/polyline.c:
4298         * objects/standard/textobj.c:
4299         * objects/standard/zigzagline.c:
4300         Use ObjectChange.
4301         fixed bug in image_set_state.
4302         zigzagline.c not finished yet.
4304         * app/disp_callbacks.c:
4305         Use ObjectChange that are returned from menu callbacks and
4306         key_events for undo.
4308         * app/properties.c:
4309         Use ObjectChange that are returned from properties apply
4310         for undo.
4312         * app/undo.c:
4313         * app/undo.h:
4314         New undo type: ObjectChangeChange. This wraps a change to the
4315         internals of an object (and ObjectChange) in code that does
4316         app specific stuff (object_add_updates etc.)
4318 1999-07-11  Alexander Larsson  <alla@lysator.liu.se>
4320         * lib/orth_conn.[ch]:
4321         Added code for add/delete segment.
4323         * objects/standard/zigzagline.c:
4324         Use the new orth_conn code.
4325         
4327 1999-07-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
4329         * objects/FS/Makefile.am
4330         Removed fs.h from sources.
4332         * Makefile.am
4333         * dia.1
4334         Added man page.
4336 1999-07-07  Alexander Larsson  <alla@lysator.liu.se>
4338         * app/disp_callbacks.c (ddisplay_canvas_events):
4339         Fix for bug. Every other arrow-key press got lost.
4340         patch from Mr. Data Esq. <data@r47h102.res.gatech.edu>
4342         * INSTALL:
4343         change automake.sh to autogen.sh
4344         
4345 1999-06-24  Alexander Larsson  <alla@lysator.liu.se>
4347         * app/diagram.c:
4348         Don't remove 'empty' objects.
4349         This violent destruction of objects won't work
4350         with the new undo framework.
4352         * app/disp_callbacks.c:
4353         Save undo info for object menu calls and key_events.
4355         * app/properties.c:
4356         Save undo info on properties apply.
4358         * lib/dia_image.[ch]:
4359         Add refcounting for images.
4361         * app/render_eps.c:
4362         * app/render_gdk.c:
4363         * lib/render.h:
4364         DiaImage * -> DiaImage
4366         * app/undo.[ch]:
4367         Add undo functions for object state changes.
4369         * lib/focus.h:
4370         * lib/text.c:
4371         change of semntics for focus->key_event.
4372         Now returns TRUE if the object recieving the event
4373         was changed.
4375         * lib/object.h:
4376         Comment changes.
4378         * lib/orth_conn.[ch]:
4379         Don't automatically create and delete segments when
4380         handles are moved. This is incompatible with undo.
4381         Added state get, set and free functions.
4383         * lib/orth_conn.[ch]:
4384         Added state get, set and free functions.
4386         * objects/UML/object.c:
4387         * objects/UML/uml.c:
4388         Fixed typo "UML - Objet" -> "UML - Object".
4389         Saved old for backwards compatibility.
4391         * objects/standard/arc.c:
4392         * objects/standard/box.c:
4393         * objects/standard/ellipse.c:
4394         * objects/standard/image.c:
4395         * objects/standard/line.c:
4396         * objects/standard/polyline.c:
4397         * objects/standard/textobj.c:
4398         * objects/standard/zigzagline.c:
4399         Added get/set state functions.
4400         Textobj has a redo crash-bug.
4401         Zigzagline needs object menus to add segments.
4402         
4404 1999-06-20  Alexander Larsson  <alla@lysator.liu.se>
4406         * app/render_eps.c (set_dashlength):
4407         Don't generate eps files with zero dash-length.
4409 1999-06-16  Alexander Larsson  <alla@lysator.liu.se>
4411         * app/commands.c:
4412         * app/create_object.c:
4413         * app/undo.[ch]:
4414         Finished undo for create and paste.
4415         
4416         * lib/object.h:
4417         Started properties undo.
4419 1999-06-14  Alexander Larsson  <alla@lysator.liu.se>
4421         * TODO:
4422         Added resizeable groups.
4424         * app/app_procs.c:
4425         Removed unused variable.
4427         * app/commands.c:
4428         * app/undo.[ch]:
4429         Undo/redo for cut/delete done.
4431         * app/create_object.c:
4432         * app/modify_tool.c:
4433         * lib/diagramdata.[ch]:
4434         * app/diagram.[ch]:
4435         renamed diagram_add_selected -> diagram_select
4436         renamed diagram_remove_selected -> diagram_unselect
4437         
4438         * app/properties.[ch]:
4439         Added properties_hide_if_shown() function.
4441 1999-06-13  Alexander Larsson  <alla@lysator.liu.se>
4443         * app/undo.[ch]:
4444         * app/Makefile.am:
4445         Undo functions.
4446         
4447         * app/commands.[ch]
4448         * app/modify_tool.[ch]
4449         * app/object_ops.[ch]
4450         * app/connectionpoint_ops.c
4451         * app/menus.c
4452         Use undo functions.
4453         WARNING: Not finished. Will break.
4454         Finished: move object, move handle.
4456         * app/diagram.[ch]
4457         Added diagram_selected_break_external() function.
4458         It removes all connections between selected objects
4459         and non-selected.
4460         Add undo stack to Diagram.
4461         
4462         * lib/diagramdata.[ch]
4463         Added layer_remove_objects() function
4464         
4465 1999-06-11  Fredrik Hallenberg  <hallon@lysator.liu.se>
4467         * objects/FS/Makefile.am
4468         * objects/sybase/Makefile.am
4469         Now uses GNOME_CFLAGS.
4471         * app/app_procs.c
4472         Now compiles with GNOME even if popt.h isn't available.
4474 1999-06-10  Alexander Larsson  <alla@lysator.liu.se>
4476         * configure.in
4477         * objects/Makefile.am
4478         * objects/sybase/*
4479         First version of sybase objects from
4480         Brian Bruns <camber@umcc.ais.org>
4482 1999-06-10  Fredrik Hallenberg  <hallon@lysator.liu.se>
4484         * configure.in
4485         Added fr to ALL_LINGUAS
4487 1999-06-09  Fredrik Hallenberg  <hallon@lysator.liu.se>
4489         * configure.in
4490         * app/app_procs.c
4491         Popt-code is activated if popt is available.
4493 1999-06-08  Alexander Larsson  <alla@lysator.liu.se>
4495         This is a patch from David Thompson <dcthomp@mail.utexas.edu>
4496         
4497         * lib/orth_conn.[ch]:
4498         Added orthconn_get_middle_handle()
4500         * lib/text.[ch]:
4501         Added text_set_cursor_at_end()
4502         
4503         * objects/FS/*
4504         Added first version of functions structure diagrams.
4505         
4506 1999-05-24  Alexander Larsson  <alla@lysator.liu.se>
4508         * app/modify_tool.c:
4509         Include math.h to remove warning.
4511         * app/commands.c (dialogs_properties_callback):
4512         Bring up correct properties dialog when selected
4513         from menu.
4514         From Dan Cohn <dan@internap.com>
4516 1999-05-20  Alexander Larsson  <alla@lysator.liu.se>
4518         Patch from Lars R. Clausen 
4519         
4520         * app/modify_tool.c:
4521         Changed abs to fabs.
4523 1999-05-19  Alexander Larsson  <alla@lysator.liu.se>
4525         * INSTALL: 
4526         * configure.in:
4527         Require Gtk+ 1.2.0
4529 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
4531         Patches from Dan Cohn <dan@internap.com>
4532         
4533         * app/commands.[ch]: 
4534         * app/display.[ch]: 
4535         * app/menus.c:
4536         * app/preferences.[ch]:
4537         Implements ability to turn on/off connection points in
4538         current drawing and in global prefs.
4540 1999-05-18  Alexander Larsson  <alla@lysator.liu.se>
4542         * lib/widgets.c (dia_line_style_selector_init): 
4543         Fixed warnings.
4544         
4545         * lib/diagramdata.c (layer_update_extents):
4546         Fixed uninitialized variable error.
4548 1999-05-17  Alexander Larsson  <alla@lysator.liu.se>
4550         * lib/dia_image.c:
4551         Made some changes to the gdk_imlib visual+colormap setup.
4553 1999-05-17  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4555         * objects/UML/usecase.c: 
4556        * objects/UML/lifeline.c
4557         Fine tunning.
4559         * objects/UML/object.c: 
4560         * objects/UML/message.c: 
4561         Changed font from Courier to Helvetica.
4563         * lib/widgets.c: 
4564         * lib/widgets.h:
4565         Added dash lenth to the LineStyle widget.
4566         
4567         * objects/standard/ellipse.c :
4568         * objects/standard/zigzagline.c: 
4569         * objects/standard/line.c: 
4570         Added dash lenght property.
4572 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
4574         * app/render_eps.c:
4575         First shot at latin1 encoded eps files.
4576         Works, but the eps files get a bit large.
4577         
4578 1999-05-16  Alexander Larsson  <alla@lysator.liu.se>
4580         * objects/UML/class.[ch]: 
4581         * objects/UML/uml.[ch]:
4582         Reverted the line wrap changes.
4583         Some day this might return, but it has to be selectable and
4584         default to off for loaded objects, otherwise it breaks file
4585         format compatibility.
4586         There was also some complains about how it looked, so a making it
4587         selectable is good for this too.
4589 1999-05-15  Alexander Larsson  <alla@lysator.liu.se>
4591         * objects/UML/class.[ch]:
4592         Some indentation cleanup.
4593         Added wrap_lines variable to class.
4594         I'll fix the line break stuff tomorrow.
4596 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
4598         * lib/dummy_dep.h:
4599         Added ref to poly_conn.o.
4601         * objects/standard/polyline.c (polyline_draw): 
4602         * objects/standard/zigzagline.c (zigzagline_draw): 
4603         * objects/standard/arc.c (arc_draw): 
4604         * objects/standard/line.c (line_draw):
4605         Draw lines before arrows. This makes hollow arrows not
4606         show the line.
4608 1999-05-13  Alexander Larsson  <alla@lysator.liu.se>
4610         Changes from Kim Peasley <kpeasley@ior.com> 
4611                 
4612         * objects/UML/class.c:
4613         Break lines with long operations so classes won't be
4614         so wide.
4616         * objects/UML/uml.[ch]:
4617         Helperfunctions for the above.
4618         
4619         * objects/UML/objects.c:
4620         Fix bug that duplicated the text in the attributes
4621         textwidget each time the object was selected.
4622         
4623 1999-05-12  Alexander Larsson  <alla@lysator.liu.se>
4625         Changes from Lars R. Clausen <lrclause@cs.uiuc.edu>
4626         
4627         * app/modify_tool.c:
4628         * app/modify_tool.h:
4629         Control-drag is restricted to vertical/horizontal movement
4630         
4631         * lib/object.h:
4632         ModifierKeys argument added to object_move_handle
4634         * app/connectionpoint_ops.c:
4635         * app/create_object.c:
4636         * app/object_ops.c:
4637         * objects/ER/attribute.c:
4638         * objects/ER/entity.c:
4639         * objects/ER/participation.c:
4640         * objects/ER/relationship.c:
4641         * objects/UML/actor.c:
4642         * objects/UML/association.c:
4643         * objects/UML/class.c:
4644         * objects/UML/classicon.c:
4645         * objects/UML/component.c:
4646         * objects/UML/constraint.c:
4647         * objects/UML/dependency.c:
4648         * objects/UML/generalization.c:
4649         * objects/UML/implements.c:
4650         * objects/UML/large_package.c:
4651         * objects/UML/lifeline.c:
4652         * objects/UML/message.c:
4653         * objects/UML/note.c:
4654         * objects/UML/object.c:
4655         * objects/UML/realizes.c:
4656         * objects/UML/small_package.c:
4657         * objects/UML/state.c:
4658         * objects/UML/usecase.c:
4659         * objects/network/bus.c:
4660         * objects/standard/arc.c:
4661         * objects/standard/box.c:
4662         * objects/standard/ellipse.c:
4663         * objects/standard/image.c:
4664         * objects/standard/line.c:
4665         * objects/standard/polyline.c:
4666         * objects/standard/textobj.c:
4667         * objects/standard/zigzagline.c:
4668         Changed calls to move_handle to pass the new argument.
4669         
4670         * lib/widgets.c:
4671         * lib/widgets.h:
4672         Default line width, color etc #define'd
4673         
4674         * po/da.po:
4675         Updates of danish menus
4677 1999-05-08  Fredrik Hallenberg  <hallon@lysator.liu.se>
4679         * dia.xpm
4680         * dia_gnome_icon.png
4681         * dia_gnome_menu_icon.png
4682         * dia_logo.png
4683         Graphics by Toussaint Frédéric <ftoussin@club-internet.fr>.
4685         * app/commands.c
4686         About dialog shows dia_logo.png. Removed the GNOME about dialog.
4688         * Makefile.am
4689         Distribute the icons and install logo in pkgdatadir.
4690         
4691         * app/Makefile.am
4692         Added DATADIR-define.
4693         
4694 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
4695         Patches from Enrico Scholz <enrico.scholz@wirtschaft.tu-chemnitz.de>
4697         * dia.spec:
4698         Updated version number, made setup quiet, can build from cvs,
4699         --enable-gnome, now using automake 1.4 DESTDIR feature, install-strip
4701         * lib/Makefile.am
4702         * objects/ER/Makefile.am
4703         * objects/UML/Makefile.am
4704         * objects/network/Makefile.am
4705         * objects/standard/Makefile.am
4706         now builds better with gnome
4708         * objects/UML/class_dialog.c
4709         Fixed typo -> po files must be updated too!!
4710         
4711 1999-04-28  Alexander Larsson  <alla@lysator.liu.se>
4713         * lib/dummy_dep.h:
4714         Added reference so that widgets.o gets linked to the app.
4716 1999-04-23  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4718         * objects/UML/classicon.c: 
4719         Added object mode.
4721         * objects/UML/actor.c: 
4722         Changed position of 'snap-to-grid' so connection points are
4723         in the grid.
4725 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
4727         * objects/UML/classicon.c:
4728         Changed position of 'snap-to-grid'.
4729         By Alejandro Aguilar Sierra <asierra@servidor.unam.mx>
4730         
4731 1999-04-22  Alexander Larsson  <alla@lysator.liu.se>
4733         * objects/network/antenna.c
4734         * objects/network/flash.c
4735         * objects/network/hub.c
4736         * objects/network/modem.c
4737         * objects/network/modularswitch.c
4738         * objects/network/rj45plug.c
4739         * objects/network/scead-plug.c
4740         * objects/network/network.c
4741         * objects/network/Makefile.am
4742         * objects/network/pixmaps/antenna.xpm
4743         * objects/network/pixmaps/flash.xpm
4744         * objects/network/pixmaps/hub.xpm
4745         * objects/network/pixmaps/modem.xpm
4746         * objects/network/pixmaps/modularswitch.xpm
4747         * objects/network/pixmaps/rj45plug.xpm
4748         * objects/network/pixmaps/sceadplug.xpm
4749         * objects/network/pixmaps/Makefile.am
4750         Lots of new network objects from
4751         Roland Steinbach <roland@support-system.com>.
4753 1999-04-15  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4755         * objects/UML/classicon.c: 
4756         Fixed connection positions, saved type as int (it has 3 states),
4757         and other small fixes.
4758         
4759 1999-04-14  Alexander Larsson  <alla@lysator.liu.se>
4761         * app/preferences.c:
4762         * app/load_save.c:
4763         Added preference compress_save. It lets dia save uncompressed
4764         xml files.
4766         * objects/UML/class.c:
4767         Fixed bug with size calculation on methods that had class scope.
4768         
4769 1999-04-13  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4771         * objects/UML/usecase.c: 
4772         Added collaboration mode
4773         Fixed connection points with text > ellipse bug and other 
4774         small things
4776         * objects/UML/state.c:
4777         Fixed bug of bad position of text after being either end
4778         or begin, moved and returned to text
4780 1999-04-12  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
4782         * app/preferences.c: Add prototype declaration for prefs_apply.
4784 1999-04-11  Alexander Larsson  <alla@lysator.liu.se>
4786         * app/preferences.c:
4787         Added 'ok' button.
4788         Apply don't hide window.
4790         * app/properties.c:
4791         Add 'ok' button.
4793         * objects/UML/object.c:
4794         * objdcts/UML/state.c:
4795         Some data was not copied on copy.
4797         This patch is from
4798         Ben Hochstedler <benh@eeyore.moneng.mei.com>
4800 1999-04-09  Alexander Larsson  <alla@lysator.liu.se>
4802         * app/Makefile.am:
4803         Changed link order between X and libxml.
4804         Some people had problems with an old libz in their
4805         x11 directory.  
4807 1999-04-09  Kjartan Maraas  <kmaraas@online.no>
4809         * po/no.po: updated translation.
4810         
4811 1999-04-08  Lars R. Clausen <lrclause@cs.uiuc.edu>
4813         * lib/message.c (message_error):
4814         Fixed small error.
4816         * app/commands.[ch]:
4817         * app/diagram.[ch]:
4818         Added begining of xfig importing
4820 1999-04-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4822         * objects/UML/pixmaps/state.xpm: 
4823         * objects/UML/state.c: 
4824         New UML object state machine.
4826         * objects/UML/uml.c:
4827         * objects/UML/Makefile.am:
4828         * objects/UML/pixmaps/Makefile.am:
4829         Added the state object.
4830         
4831 1999-04-08  Alejandro Aguilar Sierra  <ale@bucefalo>
4833         * objects/UML/usecase.c: 
4834         Added dialog to allow move text outside the ellipse.
4836 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
4838         * Released Dia 0.41
4839         Tag called DIA_0_41
4841         * NEWS:
4842         Updates for 0.41.
4843         
4844 1999-04-08  Alexander Larsson  <alla@lysator.liu.se>
4846         * configure.in:
4847         Updated version number to 0.41
4849         * po/*.po:
4850         Update po-files
4852 1999-04-04  Fredrik Hallenberg  <hallon@lysator.liu.se>
4854         * app/app_procs.c
4855         Changed errormessage for --export-to-ps. Removed call to 
4856         g_log_set_always_fatal().
4858         * app/diagram.c
4859         * app/disp_callbacks.c
4860         * app/load_save.c
4861         (i18n) Removed gettext from some debugmessages.
4863         * app/menus.c
4864         Small fix in GNOME-menus. Added warning that will help track
4865         problems with translations.
4867         * po/sv.po
4868         (i18n) Updated swedish translation.
4870 1999-04-02  Alexander Larsson  <alla@lysator.liu.se>
4872         * po/da.po:
4873         New updates
4875 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
4877         * po/da.po:
4878         * po/no.po:
4879         Some fixes.
4880         
4881 1999-04-01  Alexander Larsson  <alla@lysator.liu.se>
4883         * po/da.po:
4884         (i18n) Updated the danish translation.
4885         From Lars R. Clausen.
4887 1999-04-01  Fredrik Hallenberg  <hallon@lysator.liu.se>
4889         * app/menus.c
4890         (i18n) The popup menu is translated now.
4892         * po/sv.po
4893         (i18n) Updated swedish translation.
4895 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
4897         * Released Dia 0.40
4898         Tag called DIA_0_40
4900         * NEWS:
4901         Updated for new release
4902         
4903 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
4905         * objects/network/bus.c:
4906         Added initialization of properties dialog to NULL.
4908         * app/commands.c (edit_cut_callback):
4909         Update menu sensitivity when cut object.
4911         * app/modify_tool.c (click_select_object):
4912         * app/modify_tool.c (modify_button_release): 
4913         Call diagram_update_menu_sensitivity() when
4914         selecting objects to update stuff that depends
4915         on selected/not selected.
4917 1999-03-29  Alexander Larsson  <alla@lysator.liu.se>
4919         * Makefile.am:
4920         Change order of subdir so that libintl.a builds.
4921         Now passed make distcheck.
4923 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
4925         * lib/font.c (init_x11_font):
4926         Stupid bug fixed.
4928 1999-03-28  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
4930         * objects/UML/pixmaps/classicon.xpm: 
4931         * objects/UML/classicon.c:
4932         * objects/UML/uml.c:
4933         Added the class stereotype icon objects.
4935         * app/commands.c:
4936         Changed default ps extension from .ps to .eps.
4937         
4938 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
4940         * lib/Makefile.am:
4941         Added diamenu.h and intl.h
4943         * lib/font.c:
4944         Stupid typo fix.
4945         
4946         * objects/UML/pixmaps/Makefile.am:
4947         Added message.xpm
4949         * objects/standard/pixmaps/Makefile.am:
4950         Added image.xpm
4952 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
4954         * lib/font.c:
4955         Use a scalable font before fixed when real font not found.
4957         * app/commands.c:
4958         Removed warning.
4960         * objects/standard/image.c:
4961         Better handling of loading/saving of images.
4963         * INSTALL:
4964         Added some text about cvs, fonts and rewrote some parts.
4966         * TODO:
4967         Updated with new stuff.
4968         
4969         * configure.in:
4970         Bump up version number to 0.40.
4971         
4972 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
4974         * app/display.c:
4975         Moved diagram_add_ddisplay() call into new_display().
4976         Fixed new_display to not use uninitialized variables
4977         causing loaded files to show up as black (or garbage).
4978         
4979         * app/commands.c:
4980         * app/app_procs.c:
4981         Removed unneeded calls to diagram_add_ddisplay().
4982         
4983 1999-03-28  Alexander Larsson  <alla@lysator.liu.se>
4985         * objects/UML/lifeline.c:
4986         Fixed bug in copy.
4987         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
4989         * objects/UML/message.c:
4990         Fixed bug loading messages with null-text.
4991         Patch from Andreas Jaeger <aj@arthur.rhein-neckar.de>.
4993 1999-03-27  Fredrik Hallenberg  <hallon@lysator.liu.se>
4995         * po/sv.po
4996         Updated swedish translation.
4998         * app/menus.c
4999         (GNOME) Removed help-browser from help menu. Fixed typo.
5001         * app/interface.c
5002         (GNOME) Accelerators in diagrams should work now. 
5004 1999-03-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
5006         * app/app_procs.c
5007         * app/commands.c
5008         * app/defaults.c
5009         * app/disp_callbacks.c
5010         * app/display.c
5011         * app/interface.c
5012         * app/menus.c
5013         * app/preferences.c
5014         * app/render_eps.c
5015         * lib/diagramdata.c
5016         * lib/font.c
5017         * lib/message.c
5018         * lib/widgets.c
5019         * objects/ER/*.c
5020         * objects/UML/*.c
5021         * objects/network/*.c
5022         * objects/standard/*.c
5023         * po/update_pofiles_in.sh
5024         * po/POFILES.in
5025         More i18n. All strings (expect rare debug messages) can be
5026         translated now. Moved intl.h from app to lib. Updated
5027         update_pofiles_in.sh to check all .c-files.
5029 1999-03-23  Alexander Larsson  <alla@lysator.liu.se>
5031         * app/disp_callbacks.c (ddisplay_canvas_events):
5032         Don't drop keys while num-lock, scroll-lock etc is on.
5034 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
5036         * app/render_eps.c (draw_image):
5037         Fixed exporting of images.
5038         Still not perfect, but not outright buggy.
5039         
5040 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
5042         * configure.in:
5043         * po/hu.po:
5044         Added hungarian translation. By Shooby Ban <bansz@szif.hu>.
5046         * app/Makefile.am:
5047         Added $* to the dia call in run_dia.sh
5049 1999-03-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
5050         
5051         * lib/color.[ch]:
5052         Added color_equals() call.
5054         * objects/standard/arc.c:
5055         * objects/standard/line.c:
5056         Don't save unneccesary data.
5057         
5058         * objects/standard/box.c:
5059         * objects/standard/ellipse.c:
5060         * objects/standard/image.c:
5061         * objects/standard/polyline.c:
5062         * objects/standard/zigzagline.c:
5063         Share properties dialog.
5064         Don't save unneccesary data.
5065         
5066 1999-03-22  Seth Alves  <alves@hungry.com>
5068         * app/menus.c:
5069         * app/diagram.c:
5070         * app/display.c:
5071         small changes so that gnome menus aren't broken
5072         
5073 1999-03-22  Alexander Larsson  <alla@lysator.liu.se>
5075         * po/da.po:
5076         Added danish translation from lrclause@cs.uiuc.edu.
5078         * po/POFILES.in:
5079         Updated file.
5081         * po/update_pofiles_in.sh:
5082         Added script that updates POFILES.in.
5083         This should probably be run automatically from somewhere.
5085 1999-03-19  Alexander Larsson  <alla@lysator.liu.se>
5087         * app/diagram.[ch]:
5088         Added function diagram_update_menu_sensitivity() which
5089         sets the sensitivity of some menu items. This function
5090         is called at each diagram state change (from diagram_modified()).
5091         This is needed  because otherwise the keyboard accelerators
5092         don't work correctly.
5094         * app/display.[ch]:
5095         Changed display_set_menu_sensitivity() to display_update_menu_state().
5096         Moved lots of code to diagram_update_menu_sensitivity() in
5097         diagram.c. Optimized to only look up menu-items from path:s once.
5098         
5099         * app/disp_callbacks.c:
5100         * app/interface.c:
5101         When we get a GDK_FOCUS_CHANGE, update menu sensitivity.
5102         Need to set GDK_FOCUS_CHANGE_MASK.
5103         
5104         * app/create_object.c:
5105         Call diagram_modified when an object has been created and
5106         selected so that the menu sensitivity is updated. 
5108         * app/menus.[ch]:
5109         removed menus_set_sensitive() and menus_set_state(). Exported
5110         renamed function menus_get_item_from_path().
5112 1999-03-15  Alexander Larsson  <alla@lysator.liu.se>
5114         * app/disp_callbacks.c:
5115         Show (empty) object menus on object that has none.
5116         Show title on object menus.
5118         * app/display.c:
5119         Set zoom factor correctly when opening new displays.
5120         Better setting of scrollbars.
5122         * app/grid.c:
5123         * app/menus.h:
5124         Some reformating cleanup.
5126         * lib/diamenu.h:
5127         Added title to object menus.
5129         * objects/*/*.c:
5130         Added object menu method (NULL-valued) to all objects.
5132         * objects/standard/polyline.c:
5133         Added title to object menu.
5135 1999-03-14  Alexander Larsson  <alla@lysator.liu.se>
5137         * app/preferences.[ch]:
5138         New files. Implements the preferences dialog and
5139         loading/saving of ~/.diarc.
5141         * app/Makefile.am:
5142         Added preferences.[ch].
5144         * app/app_procs.c:
5145         Load preferences on startup.
5147         * app/commands.[ch]:
5148         Added file_preferences_callback to show the preferences dialog.
5150         * app/create_object.c:
5151         Update extents when creating object.
5152         Use the reset_tools_after_create preferences setting.
5154         * app/display.c:
5155         Use preferences when creating new display.
5157         * app/menus.c:
5158         Add preferences to menu.
5160         * app/defaults.c:
5161         * app/layer_dialog.c:
5162         * app/properties.c:
5163         Don't allow shrinking of dialog.
5164         Add i18n of some strings.
5166 1999-03-11  Kjartan Maraas  <kmaraas@fib.hl.no>
5167         * po/no.po:
5168         Norwegian translation added.
5169         
5170 1999-03-11  Alexander Larsson  <alla@lysator.liu.se>
5172         * objects/standard/line.c: 
5173         * objects/standard/arc.c: 
5174         * objects/standard/polyline.c: 
5175         * objects/standard/zigzagline.c:
5176         Loading of arrow data fixed.
5178 1999-03-09  Alexander Larsson  <alla@lysator.liu.se>
5180         * app/commands.c:
5181         Update extents when saving and exporting to postscript.
5182         Fixes a bug with postscript bounding-box being wrong.
5184         * app/defaults.c:
5185         Changed border width from 5 to 2.
5187         * app/group.c:
5188         Move grouped objects by the move-point of the first object.
5189         Fixes bug that made all objects in the group be off-grid
5190         when moving the group, even though all objects was on-grid.
5192         * app/layer_dialog.c:
5193         Update extents when changing layer.
5195 1999-03-08  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5197        * objects/UML/uml.c: 
5198        * objects/UML/component.c: 
5199        * objects/UML/pixmaps/component.xpm: 
5200        Added the UML component object
5201         
5202 1999-03-04  Seth Alves  <alves@hungry.com>
5204         * objects/UML/generalization.c (generalization_create): avoid
5205         math on uninitialized genlz->text_width (NaN causes sigfpe)
5206         
5207         * objects/UML/realizes.c (realizes_create): same
5209         * objects/UML/dependency.c (dependency_create): same
5211 1999-03-01  Seth Alves  <alves@hungry.com>
5213         * app/display.c (ddisplay_active): don't fly a warning panel
5214         if ddisplay_active is called when no views are open.
5216         * app/commands.c (set_default_file_selection_directory): set
5217         file selector's default directory if there is already
5218         a document open.
5220 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
5222         * INSTALL:
5223         New info about imlib requirements.
5225         * Configure.in:
5226         Added lib/pixmaps/Makefile to created makefiles.
5228         * app/app_procs.c:
5229         * app/commands.c:
5230         Change from obsoleted to newer gtk calls.
5231         
5232         * load_save.c:
5233         Pass filename of the diagram when loading and saving.
5234         This creates better oportunities to handle filename saving.
5236         * lib/object.h:
5237         Pass filenames to load and save methods.
5238         
5239         * lib/dia_image.[ch]:
5240         Added dia_image_get_broken() call that returns a image which
5241         is used for 'broken' images.
5242         
5243         * lib/pixmaps/.cvsignore:
5244         * lib/pixmaps/Makefile.am:
5245         * lib/pixmaps/broken.xpm:
5246         New files for the broken image bitmap.
5248         * lib/widgets.c:
5249         Fixed bug with double destroyed filedialog.
5251         * objects/*/*.c:
5252         Updated load and save prototypes to use the new filename argument.
5254         * objects/image.c:
5255         Render broken image instead of line when got no image.
5256         Use the new filename in load and save to save (if possible)
5257         relative pathnames and to better try to find loaded images.
5259 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
5261         * TODO:
5262         Some updates to the todo file.
5263         
5264         * app/menus.c:
5265         * app/display.c:
5266         Place over/place over => sent to back/bring to front.
5267         Added some keyboard shortcuts to menus.
5268         
5269 1999-02-28  Alexander Larsson  <alla@lysator.liu.se>
5271         * lib/dia_xml.c:
5272         Changed string saving/loading to a new method. This should
5273         be much better att handling &,<,> and whitespaces.
5274         Loading strings of the old kind is still supported for backwards
5275         compatibility.
5277         * samples/ER-demo.dia:
5278         * samples/UML-demo.dia:
5279         Updated to use the new strings.
5280         
5281         * app/load_save.c:
5282         statusbar modified update fix.
5284 1999-02-27  Seth Alves  <alves@hungry.com>
5286         * app/app_procs.c (app_init): added a --export-to-ps option
5287         which will cause dia to load a dia file and save it as ps
5288         and then exit.  this is a little bogus, because it still
5289         pops up a window.  this option only shows up if --enable-gnome
5290         is used
5292         * app/display.c (display_set_menu_sensitivity): no Edit/Delete
5293         menu when built with --enable-gnome
5295         * app/interface.c (create_display_shell): build status bar
5296         even if --enable-gnome is used
5298         * app/menus.c: menu fixes for --enable-gnome
5300         * app/commands.c (file_open_dialog_ok_callback): fixed up
5301         menus when --enable-gnome is used
5302         (file_export_to_eps_callback): set a default file name
5303         when dialog is created
5305 1999-02-27  Alexander Larsson  <alex@c125.ryd.student.liu.se>
5307         * objects/UML/association.c (association_create):
5308         Fixed usage of not initialized variable.
5309         Pointed out by Seth Alves <alves@hungry.com>.
5311 1999-02-24  Alexander Larsson  <alex@c125.ryd.student.liu.se>
5313         * configure.in:
5314         Fixed detection of gnome-xml.
5315         From Valtteri Vuorikoski <vuori@k.notcom.org>.
5316         
5317         * app/app_procs.c:
5318         Fixed error detection on dlsym calls. 
5319         From Valtteri Vuorikoski <vuori@k.notcom.org>.
5321 1999-02-23  Alexander Larsson  <alla@lysator.liu.se>
5323         * objects/UML/message.c (fill_in_dialog):
5324         Fixed warnings.
5326 1999-02-22  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
5328         * objects/standard/zigzagline.c:
5329         * objects/standard/polyline.c:
5330         * objects/standard/line.c:
5331         * objects/standard/arc.c:
5332         * lib/widgets.h:
5333         * lib/arrows.h:
5334         * lib/widgets.c:
5335         Support for sizeable arrows. 
5337         * objects/standard/box.c:
5338         * objects/standard/ellipse.c:
5339         * objects/standard/image.c:
5340         Changed creation handle to lower-right.
5341         Transparent box/ellipse.
5342         
5343         * objects/standard/image.c:
5344         Better layout of properties boxes.
5346 1999-02-20  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5348         * objects/UML/message.c (fill_in_dialog): 
5349         Fixed dialog fill in. Common dialog for all messages.
5351         * objects/UML/object.c: 
5352         Added multiple instance. Dialog related bugs fixed.
5353         Common dialog for all instances. Completed copy and destroy.
5355         * objects/UML/lifeline.c (lifeline_load): 
5356         Conn initialization bug fixed and few bad loading prevention flags.
5357         Common dialog for all lifeline objects.
5358         
5359 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
5361         * lib/dia_image.[ch]:
5362         More work on the DiaImage abstraction.
5363         
5364         * app/app_procs.c:
5365         * app/render_eps.c:
5366         * app/render_gdk.c:
5367         * objects/standard/image.c:
5368         Use the new DiaImage calls.
5370 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
5372         * app/menus.c:
5373         * app/display.c:
5374         Reversed the meaning of align horizontal/vertical.
5376 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
5378         * app/load_save.c (diagram_load):
5379         Statusbar update fix.
5381 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
5383         * app/interface.c (create_display_shell):
5384         Fixed status bar size.
5385         
5386 1999-02-15  Alexander Larsson  <alla@lysator.liu.se>
5388         * lib/dia_image.[ch]:
5389         Added extern declaration for dia_image_release.
5390         Removed dia_image_draw, as it's not neseccary.
5392 1999-02-14  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5393         
5394         * app/object_ops.c: 
5395         * app/menus.c: 
5396         Added equal distance alignment both vertical and horizontal.
5397         
5398         * objects/UML/object.c: 
5399         Added a couple of attributes to load/read that were missing.
5401         * objects/UML/lifeline.c: 
5402         Better handling of handles. Fixed another bug I forgot to add
5403         to my last patch.
5404         
5405 1999-02-13  Alexander Larsson  <alla@lysator.liu.se>
5407         Patch from Lars Clausen <lrclause@shasta.cs.uiuc.edu>
5408         
5409         * lib/dia_image.[ch]:
5410         * lib/Makefile.am:
5411         New files. DiaImage wraps the GdkImlibImage.
5413         * lib/render.h:
5414         * app/render_eps.c:
5415         * app/render_gdk.c:
5416         * lib/render_store.[ch]:
5417         * objects/standard/image.c:
5418         Use the new DiaImagetype.
5420         * lib/widgets.c:
5421         Removed unused variable to eliminate  warning.
5423 1999-02-11  Alexander Larsson  <alla@lysator.liu.se>
5425         * objects/standard/box.c:
5426         Added rounded corners on the box object.
5428         * lib/widgets.[ch]:
5429         Updated the DiaFileSelector widget.
5430         
5431 1999-02-09  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5433         * objects/UML/object.c (objet_draw): 
5434         Completed underlining of all object name lines. 
5436         * objects/UML/message.c (fill_in_dialog): 
5437         Fixed a bug that filled incorrectly the message's dialog.
5439         * objects/UML/lifeline.c (lifeline_load): 
5440         Some cleanning and fixed a couple of bugs that caused
5441         crashes after reading diagrams with lifelines.
5443         * lib/text.c: 
5444         Added flags to prevent crash with void strings
5446 1999-02-07  Matthias Köster <Matthias.Koester@Informatik.Uni-Oldenburg.DE>
5447         * app/display.[ch]:
5448         Added statusbar to the display widget. Currently shows the zoom
5449         factor and modified flag of the viewed diagram. The statusbar is
5450         updated upon calls to ddisplay_zoom and ddisplay_update_statusbar.
5451         This caused the following additions:
5452         
5453         * app/diagram.[ch]:
5454         Added function diagram_set_modified. Calls
5455         ddisplay_update_statusbar for all displays showing the modified diagram.
5456         Changed diagram_modified to call diagram_set_modified.
5457         
5458         * app/interface.c:
5459         Added the creation of the statusbar.
5460         
5461         * app/load_save.c:
5462         diagram_save now calls diagram_set_modified instead of setting
5463         dia->modified. Needed to force call to display_update_statusbar
5464         
5465         * app/commands.c:
5466         Changed the way view_show_all works. Now calls ddisplay_zoom
5467         instead of directly setting the zoom_factor, so the zoom factor is
5468         correctly shown in the statusbar.
5470         * app/magnify.c:
5471         Fixed rubberband zoom to use ddisplay_zoom().
5472         
5473 1999-02-07  Fredrik Hallenberg  <hallon@lysator.liu.se>
5475         * app/app_procs.c
5476         Rudimentary GNOME session management.
5477         
5478         * app/disp_callbacks.c
5479         * app/interface.c
5480         * app/menus.c
5481         * app/menus.h
5482         GNOME menus. Problems: 
5483         Callbacks doesn't get user_data.
5484         Weird warnings when creating popup menus.
5485         menus_set_sensitive(), menus_set_state() doesn't work.
5487 1999-02-05  Lars Clausen  <lrclause@shasta.cs.uiuc.edu>
5489         * configure.in:
5490         Add AM_PATH_GDK_IMLIB() call.
5492         * app/Makefile.am:
5493         Add gdk_imlib to linking flags.
5495         * app/app_procs.c:
5496         Init gdk_imlib.
5497         Print library-loading error messages on stdout too.
5499         * app/interface.c:
5500         Add standard image to toolbox.
5501         
5502         * app/render_eps.c: 
5503         Set a more reasonable dot length.  Fixed
5504         missing initialization of dot length.
5505         Added draw_image methods.
5507         * app/render_gdk.c (new_gdk_renderer): 
5508         Dot a bit wider.  Looks good in normal mode now.
5510         * objects/standard/image.c:
5511         * objects/standard/pixmaps/image.xpm:
5512         New files. Standard object for images.
5513         
5514         * app/render_eps.c (set_linestyle):
5515         * app/render_gdk.c (set_linestyle):
5516         * lib/widgets.c (dia_line_style_selector_init): 
5517         * lib/render.h: 
5518         New line style DOTTED.
5520         * lib/render.h:
5521         * lib/render_store.c:
5522         Change DrawImage call to use gdk_imlib.
5524         * lib/widgets.[ch]:
5525         Added widgets for selecting files.
5526         Added dotted to the linestyle selector.
5528 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
5530         * objects/network/printer.c:
5531         * objects/network/network.c:
5532         * objects/network/pixmaps/printer.xpm:
5533         * objects/network/.cvsignore:
5534         * objects/network/Makefile.am:
5535         * objects/network/pixmaps/Makefile.am:
5536         New printer object in network.
5537         From Martin Hawlisch <hawlisch@roxi.rz.fh-mannheim.de>
5539         * TODO:
5540         Added known XML bug.
5541         
5542 1999-02-06  Alexander Larsson  <alla@lysator.liu.se>
5544         * app/load_save.c:
5545         * lib/dia_xml.c:
5546         Reverted back from #include <gnome-xml/tree.h> to
5547         #include <tree.h> as this is fixed by the xml-config program.
5548         The former way broke for some people.
5549         Reported by blizzard@redhat.com.
5551         * objects/UML/lifeline.c:
5552         * objects/UML/message.c:
5553         * objects/UML/object.c:
5554         Removed some warnings.
5555         
5556 1999-02-04  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5558         * objects/UML/lifeline.c: 
5559         Fixed connection points over the life line when the focus of
5560         control is not drawn.
5562         * objects/UML/message.c: 
5563         Now a recursive message can be freely resized using the handles.
5565 1999-02-02  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5567         * objects/UML/lifeline.c:
5568         Added connection points.
5569         Added properties dialog with the option to draw/hide focus of control
5570         box and destruction mark.
5572         * objects/UML/object.c: 
5573         Added properties dialog and stereotype, explicit state and attributes. 
5574         It's also possible to mark the object as active.
5576         * objects/UML/pixmaps/object.xpm: 
5577         Cosmetic change.
5579         * objects/UML/message.c:
5580         Added "recursive" message type (was not necessary to use OrthConn).
5582 1999-02-02  Alexander Larsson  <alla@lysator.liu.se>
5584         * objects/standard/arc.c:
5585         Removed old debug code. Fixes a visual bug. From lrclause@cs.uiuc.edu.
5587 1999-02-01  Alexander Larsson  <alla@lysator.liu.se>
5589         Patch from Lars R. Clausen <lrclause@cs.uiuc.edu>
5590         
5591         * app/load_save.c:
5592         * lib/dia_xml.c:
5593         Update xml includes to gnome-xml/*.h.
5595         * objects/standard/arc.c:
5596         Only one property dialog per type.
5597         Fix arrows directions.
5599         * objects/standard/box.c:
5600         * objects/standard/ellipse.c:
5601         * objects/standard/textobj.c
5602         Added default properties dialog.
5603         
5605 1999-01-31  Alejandro Aguilar Sierra  <asierra@servidor.unam.mx>
5607         * objects/UML/Makefile.am: 
5608         * objects/UML/uml.c:
5609         * objects/UML/lifeline.c: 
5610         * objects/UML/object.c: 
5611         * objects/UML/message.c:
5612         * objects/UML/pixmaps/lifeline.xpm: 
5613         * objects/UML/pixmaps/object.xpm: 
5614         * objects/UML/pixmaps/message.xpm:
5615         Added 3 new UML objects for dynamic modeling. To avoid internal 
5616         conflicts, the name "objet" is used for object "object".        
5618         * lib/arrows.[ch]: 
5619         Added ARROW_HALF_HEAD arrow type to allow drawing asynchronous
5620         UML messages.
5621         
5622 1999-01-30  Alexander Larsson  <alla@lysator.liu.se>
5624         * app/display.[ch]:
5625         * app/modify_tool.c:
5626         Added autoscrolling while doing rubber-band select.
5627         This patch from Matthias Köster
5628         (Matthias.Koester@Informatik.Uni-Oldenburg.DE)
5629         
5631 1999-01-28  Alexander Larsson  <alla@lysator.liu.se>
5633         * app/defaults.[ch]:
5634         New files, deals with default properties dialog.
5636         * lib/diamenu.h:
5637         New file. Contains definitions for the new object menu.
5639         * lib/poly_conn.[ch]:
5640         New file. Base class for poly-line like objects.
5642         * objects/standard/polyline.c:
5643         * objects/standard/pixmaps/polyline.xpm:
5644         New files. Polyline object.
5646         * app/app_procs.c:
5647         Fixed bug with infinite loop when registering sheets.
5648         
5649         * app/commands.c:
5650         Removed unneccesary stuff.
5652         * app/disp_callbacks.c:
5653         Support for object menus.
5655         * app/interface.c:
5656         Added polyline to toolbox.
5657         Added call to tool_options_dialog_show() when double clicking on
5658         tool.
5660         * app/tool.[ch]:
5661         New function tool_options_dialog_show() for tool properties.
5663         * lib/arrows.[ch]:
5664         Added ARROW_NONE.
5666         * lib/object.h:
5667         Added ObjectType methods for handling object default dialogs.
5668         Added Object method for handling object_menu.
5669         Added unused methods to ObjectTypeOps for future binary
5670         compatibility.
5672         * lib/widgets.[ch]:
5673         Added DiaArrowTypeSelector widget.
5675         * objects/standard/arc.c:
5676         * objects/standard/zigzagline.c:
5677         Added support for default properties.
5679         * objects/standard/line.c:
5680         Added support for default properties.
5681         Just use one properties dialog for all line objects. NOTE: This
5682         seems to have a bug. We're working on it.
5684         * standard/standard.c:
5685         Add the polyline object.
5687 1999-01-27  Alexander Larsson  <alla@lysator.liu.se>
5689         * app/modify_tool.c:
5690         Commented out buggy transitive select function. It wasn't really
5691         meant to go into cvs.
5692         
5694 1999-01-25  Fredrik Hallenberg  <hallon@lysator.liu.se>
5696         * autogen.sh:
5697         * acconfig.h:
5698         * configure.in:
5699         * Makefile.am:
5700         * app/Makefile.am:
5701         * po/POTFILES.in:
5702         * app/intl.h
5703         i18n-support.
5705         * po/sv.po:
5706         Swedish translation. Not completed.
5707         
5708         * configure.in:
5709         * acconfig.h:
5710         Added possibility to enable GNOME specific code with configure.
5712         * configure.in:
5713         Added possibility to set debug level with configure.
5715         * commands.[hc]:
5716         Added about dialog.
5718         * app_procs.c
5719         * commands.c
5720         * interface.c
5721         * menus.c
5722         Added some GNOME specific code. Not ready for use.
5724 1999-01-24  Alexander Larsson  <alla@lysator.liu.se>
5726         * INSTALL:
5727         Added text about needing gtk 1.1.13 and gnome-xml.
5728         
5729         * NEWS:
5730         Described changes since last version (0.20).
5732         Released version 0.30, tagged DIA_0_30.
5734 1999-01-22  Alexander Larsson  <alla@lysator.liu.se>
5736         * app/magnify.c (magnify_button_release):
5737         Fixed a problem when zooming in on a very small box would
5738         not release the grabbed pointer-focus.
5740 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
5742         * app/load_save.c (diagram_load):
5743         Be somewhat more robust when loading files that
5744         are not diagrams.
5745         
5746 1999-01-21  Alexander Larsson  <alla@lysator.liu.se>
5748         * app/app_procs.c:
5749         * objects/ER/er.c:
5750         * objects/UML/uml.c:
5751         * objects/network/network.c:
5752         * objects/standard/standard.c:
5753         Added versioning of object libraries.
5755         * app/create_object.c:
5756         Don't change tool when an object is created.
5757         
5758         * objects/network/network.c:
5760         * TODO:
5761         Update
5763 1999-01-19  Alexander Larsson  <alla@lysator.liu.se>
5765         * configure.in:
5766         Updated gtk requirement to Gtk+ 1.1.13.
5768         * app/display.c:
5769         Always add one screenful of scrolling space on
5770         each side of a diagram window.
5772 1999-01-19  Jeff Garzik  <jgarzik@pobox.com>
5774         * autogen.sh:
5775         Tell automake to auto-install missing files.
5777         * app/menus.c:
5778         Renamed deprecated Gtk+ function.
5780 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
5782         * Makefile.am:
5783         * configure.in:
5784         * samples/Makefile.am:
5785         * samples/ER-demo.dia:
5786         * samples/UML-demo.dia:
5787         Added samples directory.
5788         Added samples for ER and UML.
5789         
5790         * app/commands.c:
5791         * app/disp_callbacks.c:
5792         * app/menus.c:
5793         Zoom is done by sqrt(2) instead of 2.
5794         Lots of more zoom options in the menu.
5796         * objects/ER/relationship.c:
5797         Relationships have 8 connectionpoints instead of 4.
5799         * objects/UML/class.c:
5800         UML class name font a bit smaller.
5801         Fixed stupid bug in the copy operation.
5802         
5803         * app/display.c:
5804         Displays are opened at 500x400 instead of 256x256.
5806         * app/load_save.c:
5807         Fixup of internal error message.
5809         * app/color_area.c:
5810         * app/diagram.c:
5811         * app/modify_tool.c:
5812         * lib/object.c:
5813         Removed debug printf's.
5814         
5815         * TODO (BUGS):
5816         Added new known bug.
5818 1999-01-16  Alexander Larsson  <alla@lysator.liu.se>
5820         * app/interface.c:
5821         * app/menus.c:
5822         Fixed so accelerator groups work in all windows.
5823         Updated to new gtk function names.
5825         * TODO (BUGS):
5826         Removed fixed bug.
5828         * app/display.c:
5829         Updated to new gtk function names.
5830         Set sensitivity of the align menu items.        
5832         * objects/ER/pixmaps/Makefile.am:
5833         * objects/UML/pixmaps/Makefile.am:
5834         * objects/network/pixmaps/Makefile.am:
5835         Fix so that make dist works.
5837         * app/app_procs.c:
5838         * app/color_area.c:
5839         * app/commands.c:
5840         * app/diagram.c:
5841         * app/grid.c:
5842         * app/layer_dialog.c:
5843         * app/load_save.c:
5844         * app/object_ops.c:
5845         * app/properties.c:
5846         * lib/diagramdata.[ch]: 
5847         * lib/message.c:
5848         * lib/objects/ER/attribute.c:
5849         * lib/objects/ER/entity.c:
5850         * lib/objects/ER/participation.c:
5851         * lib/objects/ER/relationship.c:
5852         * lib/objects/ER/.c:
5853         * objects/UML/actor.c:
5854         * objects/UML/association.c:
5855         * objects/UML/class_dialog.c:
5856         * objects/UML/dependency.c:
5857         * objects/UML/generalization.c:
5858         * objects/UML/large_package.c:
5859         * objects/UML/realizes.c:
5860         * objects/UML/.c:
5861         * objects/UML/.c:
5862         Updated to new gtk function names.
5863         Removed warnings.
5865 1999-01-15  Alexander Larsson  <alla@lysator.liu.se>
5867         * TODO:
5868         Update TODO.
5870         * app/app_procs.c:
5871         Fixed loading of diagrams specified as arguments.
5873         * objects/ER/attribute.c:
5874         * objects/ER/entity.c:
5875         * objects/ER/er.c:
5876         * objects/ER/participation.c:
5877         * objects/ER/relationship.c:
5878         Updated the ER objects.
5879         
5881 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
5883         * configure.in:
5884         * app/Makefile.am:
5885         * objects/Makefile.am:
5886         * objects/ER/attribute.c:
5887         * objects/ER/entity.c:
5888         * objects/ER/er.c:
5889         * objects/ER/participation.c:
5890         * objects/ER/relationship.c:
5891         * objects/ER/pixmaps/Makefile.am:
5892         * objects/ER/pixmaps/attribute.xpm:
5893         * objects/ER/pixmaps/entity.xpm:
5894         * objects/ER/pixmaps/participation.xpm:
5895         * objects/ER/pixmaps/relationship.xpm:
5896         * objects/ER/pixmaps/weakentity.xpm:
5897         First commit of entity relationship objects.
5898         These were done by hallon@lysator.liu.se.
5899         There are still stuff to do on these.
5900         
5901 1999-01-14  Alexander Larsson  <alla@lysator.liu.se>
5903         * TODO:
5904         Updates.
5906         * app/diagram.[ch]:
5907         Change diagram_remove_all_selected to take new argument
5908         delete_empty. Empty objects are deleted only if it is TRUE.
5909         Removed call to close_eps_renderer. This is now done in end_render
5910         in the eps renderer.
5912         * app/create_object.c:
5913         * app/layer_dialog.c:
5914         Update calls to diagram_remove_all_selected.
5916         * app/commands.c:
5917         Update calls to diagram_remove_all_selected.
5918         Some code reformating.
5919         Changed order of adding updates i align_h and align_v.
5921         * app/modify_tool.c:
5922         Update calls to diagram_remove_all_selected.
5923         Added pointer grab when doing rubber-band selection, this fixes
5924         the bug when draging the box over to another window.
5926         * app/connectionpoint_ops.[ch]:
5927         diagram_update_connections_object changed to take an argument
5928         update_nonmoved. This lets connections that has not moved, but
5929         the stuff they're connected to has been moved work.
5930         Update calls to the new diagram_update_connections_object.
5932         * app/properties.c:
5933         Update calls to the new diagram_update_connections_object.
5934         Update extents when properties are applied.
5935         
5936         * app/disp_callbacks.c:
5937         Added support for zooming with the '+' and '-' keys.
5939         * app/menus.c:
5940         Removed old keyboard shortcuts for zoom.
5942         * lib/render.h:
5943         Added calls begin_render and end_render to renderer.
5944         These can be used for setup and cleanup.
5946         * lib/diagramdata.c:
5947         Added calls to begin_render and end_render in data_render.
5949         * app/render_gdk.c:
5950         Added begin_render and end_render.
5952         * app/render_eps.[ch]:
5953         Added begin_render and end_render.
5954         Moved close_eps_renderer code to end_render.
5955         Various fixes to the generated eps code. This fixes importing
5956         generated eps into LYX.
5957         
5958 1999-01-12  Alexander Larsson  <alla@lysator.liu.se>
5960         * TODO:
5961         Update of todo.
5962         
5963         * app/menus.c:
5964         Menus for alignment updated.
5966         * app/object_ops.[ch]:
5967         Functions for object alignment updated.
5969         * app/commands.[ch]:
5970         Object alignment callbacks updated.
5971         New diagrams are called Untitled-<nr>.
5973         * app/layer_dialog.c:
5974         Active layer selected when showing layers from new
5975         diagram.
5977         * app/load_save.c:
5978         Compress xml files when saving.
5979         Use xml namespace 'dia'.
5981         * lib/object.h:
5982         Minor comment update.
5984         * objects/UML/class_dialog.c:
5985         Cleanup of the gkt_list_item moving code.
5986         Fixed bug with update of operation when moving parameters.
5988 1999-01-10  Alexander Larsson  <alla@lysator.liu.se>
5990         * app/layer_dialog.[ch]:
5991         Fixed the rest of the layers dialog.
5993         * app/dialog.c:
5994         Added call to redo layer dialogs diagram list when changing
5995         diagram name.
5997         * lib/diagramdata.[ch]:
5998         Added data_raise_layer and data_lower_layer functions for
5999         raising/lowering layers. Added data_add_layer_at for adding a
6000         layer at a specified index.
6002 1999-01-05  Alexander Larsson  <alla@lysator.liu.se>
6004         This is the asierra-990105 patch done by asierra@servidor.unam.mx.
6005                 
6006         * app/app_procs.c:
6007         Added support for reading diagrams from the command line.
6009 1998-12-21  Alexander Larsson  <alla@lysator.liu.se>
6011         This is the asierra-981220 patch done by asierra@servidor.unam.mx.
6012                 
6013         * app/commands.[ch]:
6014         Added objects_align_callback().
6016         * app/menus.c:
6017         Added align objects to menu.
6019         * app/object_ops.[ch]:
6020         Add object_list_align().
6021         
6022 1998-12-17  Alexander Larsson  <alla@lysator.liu.se>
6023         * app/layer_dialog.[ch]:
6024         New files. Handles the layers dialog. Needs a bugfix for glib to
6025         work. Sent patch to gtk-list.
6026         
6027         * app/pixmaps/new.xpm:
6028         * app/pixmaps/eye.xbm:
6029         * app/pixmaps/lower.xpm:
6030         * app/pixmaps/raise.xpm:
6031         * app/pixmaps/delete.xpm:
6032         New files. Images for the layer dialog buttons.
6033         
6034         * lib/diagramdata.h
6035         * lib/diagramdata.c
6036         New files for the DiagramData and Layer structures and functions.
6037         
6038         * app/app_procs.c:
6039         Added call to create_layer_dialog() on startup.
6040         
6041         * app/commands.[ch]:
6042         New callbacks for showing the properties and layout dialog.
6043         Changes for the new DiagramData structure.
6045         * app/connectionpoint_ops.c:
6046         * app/cut_n_paste.c:
6047         * app/diagram.[ch]:
6048         * app/display.[ch]:
6049         * app/group.c:
6050         * app/modify_tool.c:
6051         * app/object_ops.[ch]:
6052         * app/render_eps.c:
6053         * lib/object.[ch]:
6054         Changes for the new DiagramData structure.
6056         * app/interface.c:
6057         * app/properties.c:
6058         Set correct wmclasses.
6060         * app/load_save.c:
6061         Fix load and save of layers.
6063         * diagram.dtd:
6064         Update DTD for layers.
6065         
6066         * app/menus.c:
6067         New menus for dialogs.
6069         
6070         * TODO:
6071         Some updates.
6072         
6073 1998-12-06  Alexander Larsson  <alla@lysator.liu.se>
6075         * TODO:
6076         Removed the gtk 1.1.5 stuff.
6078         * configure.in:
6079         Updated gtk check to version 1.1.5.
6080         Updated version from 0.20 to 0.30
6082         * app/commands.[ch]:
6083         Updated some callbacks to be of type GtkItemFactoryCallback1.
6084         Not all are done yet, but it works anyway.
6086         * app/display.h:
6087         Removed Gtk 1.0.0 GtkAcceleratorTable references.
6088         
6089         * app/interface.c:
6090         * app/menus.[ch]:
6091         Update to Gtk 1.1.x functions.
6092         Use ItemFactory instead of MenuFactory.
6093         
6094         * app/render_gdk.c:
6095         Removed Gtk 1.0.0 references.
6097         * objects/UML/class_dialog.c:
6098         Scrolled window updates for Gtk 1.1.5.
6099         
6100         * lib/dia_xml.c:
6101         Removed ugly fix for gnome-xml bug. Make sure you get the
6102         newest version of gnome-xml from CVS.
6103         
6104 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
6106         * TODO:
6107         Removed the xml load/save line.
6109         * lib/files.[ch]:
6110         Removed files.
6111         
6112         * lib/Makefile.am:
6113         Removed building of files.c
6115         * app/load_save.c:
6116         * lib/connection.c:
6117         * lib/element.c:
6118         * lib/object.c:
6119         * lib/orth_conn.c:
6120         * lib/render_object.c:
6121         * objects/UML/actor.c:
6122         * objects/UML/association.c:
6123         * objects/UML/class.c:
6124         * objects/UML/constraint.c:
6125         * objects/UML/dependency.c:
6126         * objects/UML/generalization.c:
6127         * objects/UML/implements.c:
6128         * objects/UML/large_package.c:
6129         * objects/UML/note.c:
6130         * objects/UML/realizes.c:
6131         * objects/UML/small_package.c:
6132         * objects/UML/uml.c:
6133         * objects/UML/usecase.c:
6134         * objects/network/bus.c:
6135         * objects/standard/arc.c:
6136         * objects/standard/box.c:
6137         * objects/standard/ellipse.c:
6138         * objects/standard/line.c:
6139         * objects/standard/textobj.c:
6140         * objects/standard/zigzagline.c:
6141         Removed all includes of files.h
6143         
6144 1998-12-05  Alexander Larsson  <alla@lysator.liu.se>
6146         * dialog.dtd:
6147         Made the val property of string be implied.
6148         This makes it possible to save strings that
6149         are NULL. Just leave out val.
6151         * objects/lib/dia_xml.c:
6152         Fixed string so that it is possible to save strings
6153         that are NULL. Also made an ugly workaround of a
6154         bug in gnome-xml which removes empty properties.
6155         
6156         * objects/lib/orth_conn.c:
6157         Fixed a bug in saving. Forgot to step through the
6158         directions.
6159         
6160         * objects/UML/association.c: 
6161         * objects/UML/class.c: 
6162         * objects/UML/constraint.c: 
6163         * objects/UML/dependency.c: 
6164         * objects/UML/generalization.c: 
6165         * objects/UML/implements.c: 
6166         * objects/UML/large_package.c: 
6167         * objects/UML/note.c: 
6168         * objects/UML/small_package.c:
6169         * objects/UML/realizes.c:
6170         * objects/UML/usecase.c: 
6171         * objects/UML/actor.c: 
6172         Fixed UML objects to save as xml.
6173         The last two were done by asierra@servidor.unam.mx (asierra-981204)
6174         
6175         * objects/UML/uml.[ch]:
6176         Updated *_write() and *_read() functions to use xml.
6178         * objects/network/bus.c: 
6179         * objects/network/computer.c: 
6180         * objects/network/disc.c: 
6181         * objects/network/monitor.c:
6182         Updated network diagrams to use xml.
6184 1998-12-02  Alexander Larsson  <alla@lysator.liu.se>
6186         * dialog.dtd:
6187         New file. DTD that describes the xml file format
6188         dia uses.
6190         * lib/dia_xml.[ch]:
6191         New files. Support for saving object to xml files.
6193         * configure.in:
6194         * app/Makefile.am:
6195         * lib/Makefile.am:
6196         Added check for and usage of gnome-xml library.
6198         * app/load_save.c:
6199         Major chages. Now saves/loads diagrams as xml.
6201         * lib/object.[ch]:
6202         * lib/element.[ch]:
6203         * lib/connection.[ch]:
6204         * lib/orth_conn.[ch]:
6205         * lib/render_object.[ch]:
6206         * lib/text.[ch]:
6207         Updated object support load/save functions for xml:
6209         * object/standard/arc.c:
6210         * object/standard/box.c:
6211         * object/standard/ellipse.c:
6212         * object/standard/line.c:
6213         * object/standard/textobj.c:
6214         * object/standard/zigzagline.c:
6215         Updated all standard objects to use xml.
6216         
6217         NOTE NOTE NOTE
6218         Only the standard objects are converted right now, don't
6219         save or load uml or network diagrams yet. Also, since this
6220         is new code it is deemed a bit unstable.
6221         
6222         * TODO
6223         Added a know bug.
6225 1998-12-01  Alexander Larsson  <alla@lysator.liu.se>
6227         * objects/UML/class.c:
6228         Changed classname font to Helvetica.
6229         Added more space above the classname
6231         * objects/UML/usecase.c:
6232         Correct placements of connectionpoints on ellipse.
6233         Better algorithm for deciding aspect ration on
6234         ellipse.
6236         These changes were made by Alejandro Aguilar Sierra
6237         <asierra@servidor.unam.mx>. (asierra-981201)
6239 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
6241         * objects/UML/actor.c:
6242         Changed the extents and alignment of the element
6243         and the text.
6245         * objects/UML/.cvsignore:
6246         Added usecase.lo and actor.lo.
6248 1998-11-30  Alexander Larsson  <alla@lysator.liu.se>
6250         * objects/UML/actor.c:
6251         * objects/UML/usecase.c:
6252         * objects/UML/pixmaps/actor.xpm:
6253         * objects/UML/pixmaps/case.xpm:
6254         New files. Implements usecase and actor UML objects.
6255         These objects are done by Alejandro Aguilar Sierra
6256         <asierra@servidor.unam.mx>.
6257         
6258         * objects/UML/Makefile.am:
6259         * objects/UML/pixmaps/Makefile.am:
6260         Added usecase and actor to makefile.
6261         
6262         * AUTHORS:
6263         Added Alejandro and Jerome to autors list.
6264         
6265 1998-11-25  Alexander Larsson  <alla@lysator.liu.se>
6267         * objects/UML/class.c (umlclass_load):
6268         Fixed typo. Reported by Jerome.Abela@solsoft.fr
6270 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
6272         * app/properties.c:
6273         Update connections when doing apply in the properties window.
6275         * objects/UML/uml.[ch]:
6276         * objects/UML/class.[ch]:
6277         * objects/UML/class_dialog.c:
6278         Added connection points on both sides of attributes and
6279         operations in UML classes.
6280         Based on idea from Jerome.Abela@solsoft.fr
6281         
6282 1998-11-24  Alexander Larsson  <alla@lysator.liu.se>
6284         * README:
6285         Some new documentation about handles and connectionpoints.
6286         
6287         * lib/object.[ch]:
6288         Added functions object_add_connectionpoint and
6289         object_remove_connectionpoint for handling a dynamic
6290         number of connectionpoints.
6292         * objects/UML/class.c:
6293         Only reserve space for stereotype when it is shown.
6295         These changes are from Jerome Abela <Jerome.Abela@solsoft.fr>
6297 1998-11-08  Alexander Larsson  <alla@lysator.liu.se>
6299         * app/connectionpoint_ops.c:
6300         * app/commands.c:
6301         * app/disp_callbacks.c:
6302         * app/display.[ch]:
6303         * app/grid.c:
6304         * app/handle_ops.c:
6305         * app/magnify.c:
6306         * app/modify_tool.c:
6307         * app/render_gdk.[ch]:
6308         * lib/render.h:
6309         Huge cleanup of internal rendering system.
6310         Moved a lot of data (pixmap, width, height & gc) into the GdkRenderer.
6311         This gives a few new methods for Interactive Renderers for setting
6312         clipping regions and drawing pixel based lines and rects.
6313         Updated the rest of the code to use the new stuff.
6314         
6315         * app/render_eps.c:
6316         Fixed warning.
6318         * lib/widgets.c:
6319         * objects/standard/zigzagline.c
6320         Fixed unused variable warnings.
6322         * lib/font.c:
6323         Fixedbug with stringwidth where width==0.
6325         * TODO:
6326         Added known bug.
6328 1998-11-02  Alexander Larsson  <alla@lysator.liu.se>
6330         * lib/widgets.[ch]:
6331         Added suppot for setting the font of a
6332         DiaFontSelector widget.
6333         Also fixed some typos in the header.
6335         * lib/object.h: 
6336         Added a comment about the GetPRoperties method call.
6337         You have to make sure to update widget state when
6338         this method is called. (Not all objects do this yet,
6339         to be fixed.)
6341         * TODO:
6342         Some small updates
6344 1998-11-01  Alexander Larsson  <alla@lysator.liu.se>
6346         * lib/font.c
6347         Fixed problem with height of ascent and descent for fonts.
6348         It didn't use the whole height (==ascent+descent) when calculatine
6349         ascent_ratio and descent_ratio.
6351         * objects/standard/textobj.c:
6352         * objects/standard/box.c:
6353         * objects/standard/ellipse.c:
6354         * objects/standard/line.c:
6355         * objects/standard/arc.c:
6356         Updated and added property dialogs for these objects.
6357         Also added line width/color/style to those objects
6358         that didn't have it.
6359         This change breaks fileformat compatibility for these objects.
6360         
6361         * objects/standard/zigzagline.c:
6362         Changed zigzagline to be based on OrthConn, much nicer.
6363         Also added line style and color to properties.
6364         This change breaks fileformat compatibility for zigzagline.
6366         * lib/message.c:
6367         Fixed bug in message(). Forgot a pair of '&'.
6369 1998-10-29  Alexander Larsson  <alla@lysator.liu.se>
6371         * lib/widgets.[ch]:
6372         Added DiaColorSelector widget.
6373         This is a colored button that pops up a color selection
6374         dialog when pressed.
6376 1998-10-28  Alexander Larsson  <alla@lysator.liu.se>
6378         * lib/widgets.[ch]:
6379         * lib/Makefile.am:
6380         New files, added widgets for selecting fonts, alignment
6381         and line-style. Will be used later.
6383 1998-10-12  Alexander Larsson  <alla@lysator.liu.se>
6385         * app/Makefile.am:
6386         * lib/Makefile.am:
6387         * objects/UML/Makefile.am:
6388         * objects/network/Makefile.am:
6389         * objects/standard/Makefile.am:
6390         Changed "CFLAGS = -Wall -g" to "CFLAGS = @CFLAGS@"
6391         in all Makefile.am.
6393 1998-10-03  Alexander Larsson  <alla@lysator.liu.se>
6395         * app/handle_ops.c (handle_draw):
6396         connected HANDLE_MINOR_CONTROL also becomes red.
6398 1998-10-02  Alexander Larsson  <alla@lysator.liu.se>
6400         * Makefile.am:
6401         removed -ldl from linking. This is added if needed by configure.
6403         * app/app_procs.c:
6404         Open dlls with RTLD_LAZY if it is defined.
6405         Some cleanups: char *error -> const char *error
6406         Added fprintf()'s to where we exited because of errors.
6408         * lib/files.c:
6409         Include <sys/types.h>
6411 1998-10-01  Alexander Larsson  <alla@lysator.liu.se>
6413         * acconfig.h:
6414         * configure.in:
6415         * app/app_procs.c:
6416         Detect dlopen better.
6417         Detect wether dlopen needs an underscore in the identifier.
6418         This code was mostly borrowed from guile.
6420         * lib/sheet.[ch]:
6421         * app/app_procs.c:
6422         * objects/standard/standard.c:
6423         * objects/network/network.c:
6424         * objects/UML/uml.c:
6425         * most objects:
6426         Changed the way sheets reference objects to use just the
6427         name. Changed module loading to a two stage model:
6428         First register_objects() is called for all modules.
6429         Then register_sheets() is called. This means that
6430         sheets can safely include objects from other modules.
6431         
6433 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
6435         * objects/network/bus.c:
6436         * objects/network/network.c:
6437         * objects/network/Makefile.am:
6438         New file bus.c. Added new object: Ethernet bus.
6440         * objects/standard/box.c:
6441         Added call to gtk_spin_button_set_numeric for linewidth spinner
6442         in property dialog.
6444 1998-09-30  Alexander Larsson  <alla@lysator.liu.se>
6446         * app/connectionpoint_ops.c:
6447         * app/create_object.c:
6448         * app/group.c:
6449         * app/handle_ops.c:
6450         * app/modify_tool.c:
6451         * lib/connection.c:
6452         * lib/element.c:
6453         * lib/handle.h:
6454         * lib/object.c:
6455         * lib/orth_conn.c:
6456         * loads of objects:
6457         Changed handle->connectable to handle->connect_type.
6458         Now handles can be HANDLE_CONNECTABLE_NOBREAK, which means
6459         that their connections don't break when moving objects.
6461         * app/diagram.c:
6462         Always select the last handle in an object that has
6463         the closest distance.
6464         
6465         * lib/geometry.[ch]:
6466         Added rectangle_add_point function.
6467         
6469 1998-09-27  Alexander Larsson  <alla@lysator.liu.se>
6471         * app/properties.[ch]: New files. Handles the new properties
6472         dialog.
6474         * app/modify_tool.c: Changed to use new properties dialog.
6476         * app/object_ops.[ch]: Removed object_changed_callback, as it's
6477         not needed anymore. This is now handled differently in
6478         properties.c
6480         * lib/object.[ch]:
6481         Changed the properties ops for objects. Removed typedefs
6482         ChangedObjectTime and ObjectChangedFunc needed for the old way.
6483         Added object_return_null function.
6484         
6485         * app/group.c:
6486         * lib/render_object.c:
6487         * objects/*/*.c:
6488         Changed objects to use the new properties dialog.
6489         
6491 1998-09-14  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
6493         * */Makefile.am (INCLUDES): Changes to work with srcdir !=
6494         builddir.
6496         * autogen.sh: New file. Copied from gtk and added a call to
6497         libtoolize. Anyone knows why this isn't done in gtk?
6499         * Removed autogenerated files.
6501 1998-09-12  Alexander Larsson  <alla@lysator.liu.se>
6503         * Added call setlocale(LC_NUMERIC, "C") so that formating of
6504           floating-point numbers in postscript output will be correct.
6505         * Did some cleanup of generated postscript files.